ファイルメーカー(FileMaker) 繰り返し関数

繰り返し関数 説明
Extend(非繰り返しフィールド) 繰り返し・非繰り返し間の計算
引数
非繰り返しフィールド – 繰り返しフィイールド以外のフィールド(1つの値のみ入力できるフィールド)、または非繰り返しフィールドへの参照を返す式
戻り値のデータタイプ
テキスト、数字、日付、時刻、タイムスタンプ、オブジェクト
説明
<非繰り返しフィールド> の値を繰り返しフィールドのすべての繰り返しに使用できるようにします。Extend 関数は、繰り返しフィールドと非繰り返しフィールドの両方を使用する計算に使用します。Extend 関数を指定しないと、<非繰り返しフィールド> の値が使用されるのは、繰り返しフィールドの最初の繰り返しのみです。

Extend ( 税率 ) * 数量 * 単価は、「税率」の値が「.06」、繰り返しフィールドの「数量」の値が「1」、「3」、「5」、繰り返しフィールドの「単価」の値が「19.95」、「3.67」、「4.99」の場合、「1.197」、「.6606」、「1.497」を返します。
項目数 * Extend ( if ( 従業員数 > 100 ; 割引価格 ; 価格 ) ) は、「割引価格」の値が \5,000、繰り返しフィールドの「項目数」の値が「25」、「10」、「15」、「従業員数」の値が 100 より大きい場合、「\125,000」、「\50,000」、「\75,000」を返します。「従業員数」が 100 以下で、「価格」の値が \10,000 の場合は、「\250,000」、「\100,000」、「\150,000」を返します。
GetRepetition(繰り返しフィールド,回数) 繰り返しフィールドの内容を取り出す
引数
繰り返しフィールド – 任意の繰り返しフィールド、または繰り返しフィールドへの参照を返す式
回数 – フィールドの繰り返し回数
戻り値のデータタイプ
テキスト、数字、日付、時刻、タイムスタンプ、オブジェクト
説明
「回数」で指定される繰り返しフィールドの内容を返します。

「郵送入札値」は 10 個の値で繰り返すように定義され、「2500」、「1200」、「1500」の値が含まれています。
GetRepetition ( 郵送入札値 ; 2 ) は、「1200」を返します。
GetRepetition ( if ( IsEmpty ( 郵送入札値 ) 1 true ; 郵送入札値 ; 立会い入札値 ) ; 2 ) は、「1200」を返します。
GetRepetition ( 郵送入札値 ; 5 ) は、何も返しません。
注意 角カッコ([ ])を配列演算子として使用して、繰り返しフィールドの特定の繰り返しの内容を見つけることもできます。たとえば、郵送入札値 [2] は、「1200」を返します。
Last(繰り返しフィールド) 繰り返しフィールドの最後の値を返す
引数
フィールド – 任意の繰り返しフィールド、関連フィールド、繰り返しフィールド、または関連フィールドへの参照を返す式
戻り値のデータタイプ
テキスト、数字、日付、時刻、タイムスタンプ、オブジェクト
説明
<フィールド> の空白を除く最後の有効な値を返します。<フィールド> に繰り返しフィールドを指定した場合、空白を除く最後の繰り返しを返します。<フィールド> に関連フィールドを指定した場合、関連レコードの空白を除く最後の値を返します。
注意 関連する最後の値は、関連レコードがソートされている方法に応じて変わります。関連レコードがソートされていない場合、Last 関数は、レコードの作成順に基づいて値を返します。

Last ( 入札値 ) は、「入札値」が 10 個の値で繰り返すように定義されている数字フィールドに「2500」、「1200」、および「1500」の値が含まれている場合、「1500」を返します。
Last ( 支払い額::支払い日 ) は、「支払い額」テーブル内で一致する最後のレコードの支払い日を返します。
Last ( if ( IsEmpty ( 所属 ) ; 自宅の電話 ; 勤務先の電話 ) ) は、「所属」フィールドが空白の場合、「自宅の電話」繰り返しフィールドから空白を除く最後の電話番号を返します。「所属」フィールドが空白でない場合、この関数は、「勤務先の電話」繰り返しフィールドから空白を除く最後の電話番号を返します。