GetField

フィールド名を評価して、指定したフィールドの内容を返します。

構文 

GetField (フィールド名)

引数 

フィールド名 - テキスト式、またはフィールドの名前を参照するテキストフィールド

戻り値のデータタイプ 

テキスト、数字、日付、時刻、タイムスタンプ、オブジェクト

起点バージョン 

6.0 以前のバージョン

説明 

GetField は、[フィールド名] を評価し、結果を計算が実行されたテーブルのフィールドと照合して、そのフィールドの内容を返します。

複数のテーブル間で同じフィールド名を持つフィールドの値を返すには、GetField ("フィールド名") のように、フィールド名をダブルクォーテーションマークで囲みます。

たとえば、「顧客」テーブルで GetField が計算される場合、GetField ("電話") は、「顧客::電話」からの値を返し、「所属」テーブルで GetField が計算される場合は、「所属::電話」を返します。

複数のフィールドの値を返すには、GetField (フィールド名) のようにフィールド名をクォーテーションマークで囲まず、テーブルの別のフィールドの名前と一致する値を含むフィールドを指定します。GetField が返す値を変更するには、テーブルの別のフィールドの名前と一致するように、指定されたフィールドで値を変更します。

たとえば、テーブルに次の 3 つのフィールドがあります: 顧客::連絡方法、顧客::電話、顧客::電子メール。「顧客::連絡方法」に「電話」が含まれている場合、GetField (連絡方法) は、「顧客::電話」の内容を返します。ただし、「顧客::連絡方法」に「電子メール」が含まれている場合、GetField (連絡方法) は、「顧客::電子メール」の内容を返します。

例 1 

GetField 関数で定義された計算フィールドでレコードをソートすると、レコードを動的にソートし、GetField で指定されたフィールドの値を変更して、小計データを表示できます。

データベースに次のような 4 つのフィールドがあるとします:

  • 顧客名 (テキストフィールド)
  • 都道府県 (テキストフィールド)
  • ソート選択 (グローバルフィールド)
  • ソートキー (GetField (ソート選択) として定義される計算フィールド)

このスクリプトは「請求書」レイアウトに切り替えて、ソートキーフィールドのレコードをソートします:

コピー
レイアウト切り替え [「請求書」 (請求書)]
レコードのソート [記憶する; ダイアログあり: オフ]
# ソートキーフィールドを条件としたソート
レコード/検索条件/ページへ移動 [最初の]

ソート選択に「顧客名」が含まれている場合、ソートキーは顧客名フィールドの値を返し、対象レコードは顧客名でソートされます。ソートキーでレコートがソートされたときに表示されるように指定された小計データは、顧客名フィールドから表示されます。

ソート選択に「都道府県」が含まれるように変更すると、ソートキーは都道府県フィールドの値を返し、対象レコードは都道府県で再ソートされるように設定され、小計データは都道府県フィールドから表示されます。

対象レコードはソートキーでソートされ、ソートキーの変更で値が返されるときに、ソート情報は自動的に更新されるため、別にソート操作を実行する必要はありません。