ここは旧式の4DドキュメントWebサイトです。最新のアップデートされたドキュメントを読むには新サイトをご利用下さい→ developer.4d.com

ホーム

 
4D v20 R7
Structure file

Structure file 


 

Structure file {( * )} -> 戻り値 
引数   説明
演算子 in ホストデータベースのストラクチャファイルを返す
戻り値  文字 in データベースストラクチャファイルのパス名

説明   

Structure file コマンドは、現在使用しているデータベースのストラクチャファイルのパス名を返します。

  • バイナリーモードのデータベースでは、コマンドは.4db ファイルのパス名を返します。
  • プロジェクトモードのデータベースでは、コマンドは.4dproject ファイルのパス名を返します。

注: データベースがコンパイルされて4D Volume Desktopに統合されている場合、WindowsおよびmacOSでこのコマンドはアプリケーションファイル(実行可能なアプリケーション)のパス名を返します。macOS上では、このファイルはソフトウェアパッケージの中の[Contents:Mac OS]フォルダに置かれます。これは以前のメカニズムに起因するものであり、互換性のため保持されています。ソフトウェアパッケージ自体のフルアクセスパスを取得したい場合には、Application file コマンドの利用をお勧めします。方法としては、Application type コマンドを使用してアプリケーションタイプを調べた後、その結果に応じてStructure file またはApplication file を実行します。

警告: 4Dをリモートモードで使用中にこの関数を呼び出すと、パス名ではなくストラクチャファイル/プロジェクトファイルの名前だけが返されます。

オプションの * 引数はコンポーネントを使用したアーキテクチャで有用です。コマンドが呼び出されたコンテキストで、ホストデータベースまたはコンポーネントどちらのストラクチャファイルのパス名を取得するか指定するために、使用できます:

  • コマンドがコンポーネントから呼び出された場合:
    • * 引数が渡されていると、コマンドはホストデータベースのストラクチャファイルのパス名を返します。
    • * 引数が渡されないと、コマンドはコンポーネントのストラクチャファイルのパス名を返します。
      コンポーネントのストラクチャファイルは、データベースの“Components”フォルダに置かれた.4dbまたは.4dcファイルに対応します。しかしコンポーネントはエイリアス/ショートカット、または.4dbaseフォルダ/パッケージでインストールすることもできます:
      • エイリアス/ショートカットでインストールされたコンポーネントの場合、コマンドはオリジナルの.4dbまたは.4dcファイルのパスを返します (エイリアスやショートカットは解決されます)。
      • .4dbaseフォルダ/パッケージでインストールされたコンポーネントの場合、コマンドはこのフォルダ/パッケージ内の.4dbまたは.4dcファイルのパスを返します。
  • ホストデータベースのメソッドからコマンドが呼ばれた場合、常にホストデータベースのストラクチャファイル/プロジェクトファイルのパス名を返します。* 引数は無視されます。

以下の例は、現在使用中のストラクチャファイルの名前と配置場所を表示します:

 C_OBJECT($fullpath)
 C_TEXT($name;$path)
 If(Application type#4D Remote mode)
    $fullpath:=Path to object(Structure file)
    $name:=$fullpath.name
    $path:=$fullpath.parentFolder
    ALERT("You are currently using the database "+Char(34)+$name+Char(34)+" located at "+Char(34)+$path+Char(34)+".")
 Else
    ALERT("You are connected to the database "+Char(34)+Structure file+Char(34))
 End if

以下の例題は、メソッドがコンポーネントから呼び出されているか知るために使用できます:

 C_BOOLEAN($0)
 $0:=(Structure file#Structure file(*))
  ` $0=メソッドがコンポーネントから呼び出されている場合、True



参照 

_o_DATA SEGMENT LIST
Application file
COMPONENT LIST
Data file

 
プロパティ 

プロダクト: 4D
テーマ: 4D環境
番号: 489

This command can be run in preemptive processesリモートモードでは動作が異なります。

 
ページの目次 
 
履歴 

変更: 4D v11 SQL

 
ARTICLE USAGE

ランゲージリファレンス ( 4D v20 R7)