4D v16.3

FORM GET NAMES

ホーム

 
4D v16.3
FORM GET NAMES

FORM GET NAMES 


 

FORM GET NAMES ( {aTable ;} arrNames {; filter {; marker}}{; *} ) 
引数   説明
aTable  テーブル in テーブル参照
arrNames  テキスト配列 in フォーム名の配列
filter  テキスト in 名前のフィルター
marker  倍長整数 in 返す最古のカウンター
in 最新のカウンター
演算子 in 指定時 = コンポーネントで実行されたとき、コマンドはホストデータベースに適用される (コンポーネントのコンテキスト以外ではこの引数は無視されます)

説明   

FORM GET NAMESコマンドはアプリケーション中のフォーム名をarrNames配列に返します。

aTable引数を渡すと、コマンドはそのテーブルに属するテーブルフォームの名前を返します。この引数を省略するとデータベースプロジェクトフォーム名が返されます。

filter引数に比較文字列を渡すことでフォームのリストを制限できます。この場合、フィルターにマッチする名前を持つフォームだけが返されます。"@"をワイルドカードとして使用することができます。空の文字列を渡した場合、filter引数は無視されます。

任意の marker 引数を使うことによってもフォームのリストを制限することができます。使用した場合、arrNames に返されるフォームを、ある時点以降に変更されたものだけに制限することが出来ます。バージョンコントロールシステムの一部として、この引数は最後のバックアップ以降に変更されたフォームのみをアップデートすることを可能にします。

原理は以下の通りです。4Dは内部にデータベースリソース変更のカウンターを維持しています。フォームはリソースですから、フォームが作成、または保存されるたびにこのカウンターは増加していきます。marker parameter,引数を渡すと、コマンドはmarker の値以上の値を持つフォームのみをarrNames の中に返します。さらに、marker の中に変数を渡すと、コマンドはカウンターの新しい値を返します。つまり、最大の値をこの変数の中に返すという事です。この値を保存することによって、次の FORM GET NAMES の呼び出しの際に新しく作成または変更されたフォームのみを取得することができます。

コマンドがコンポーネント内で実行された場合、デフォルトではコンポーネントのプロジェクトフォーム名が返されます。* 引数を渡すとホストデータベースのフォーム名を受け取ることができます。

注: ゴミ箱内のフォームは返されません。

例題  

典型的な使用例:

  // データベース中すべてのプロジェクトフォームを取得
 FORM GET NAMES(arr_Names)
 
  // [Employees]テーブルのフォームを取得
 FORM GET NAMES([Employees] ;arr_Names)
 
  // [Employees]テーブル中"input_"で始まるフォームを取得
 FORM GET NAMES([Employees] ;arr_Names;"input_@")
 
  // データベース内で、最後の同期の後に変更された全てのプロジェクトフォームを取得
  // vMarker には数字の値が入ります
 FORM GET NAMES(arr_Names;"";vMarker)
 
  // コンポーネントからホストのテーブルフォームを取得
  // テーブル名が不明なためポインターを使用
 FORM GET NAMES(tablePtr->;arr_Names;*)



参照 

METHOD GET PATHS FORM

 
プロパティ 

プロダクト: 4D
テーマ: デザインオブジェクトアクセス
番号: 1167

 
履歴 

初出: 4D v13
変更: 4D v14

 
ARTICLE USAGE

ランゲージリファレンス ( 4D v16)
ランゲージリファレンス ( 4D v16.1)
ランゲージリファレンス ( 4D v16.2)
ランゲージリファレンス ( 4D v16.3)