If

論理値計算式を評価し、評価結果に基づいて条件分岐を行います。

オプション 

評価する論理値の計算式を指定します。

互換性 

製品 サポート
FileMaker Pro はい
FileMaker Go はい
FileMaker WebDirect はい
FileMaker Server はい
FileMaker Cloud はい
FileMaker Data API はい
カスタム Web 公開 はい

起点バージョン 

6.0 以前のバージョン

説明 

計算結果がゼロ以外の数字であれば、計算式は真 (True) と評価され、後に続くスクリプトステップが実行されます。結果がゼロになった場合、結果にデータがない場合、または結果が数字に解決されない場合は、計算式は偽 (False) と評価され、後に続くスクリプトステップは実行されません。

[If] スクリプトステップを記述した場合は、その後に必ず同じインデント位置で対応する [End If] スクリプトステップを記述します。[If] スクリプトステップを使用すると、スクリプト編集パネルで [End If] スクリプトステップが自動的に入力されます。

また、[Else If] スクリプトステップおよび [Else] スクリプトステップを使用して、さらに条件を追加することもできます。

メモ 

  • 計算式を指定しなかった場合や、計算式を実行できなかった場合、偽 (False) が返されます。これらのエラーを処理するには、Get (最終エラー) 関数を使用します。

例 1 

検索を実行します。レコードが見つからない場合は、すべてのレコードを表示してソートします。

コピー
検索実行 [記憶する]
If [Get (対象レコード数) = 0]
    全レコードを表示
    レコードのソート [記憶する; ダイアログあり: オフ]
End If

例 2 

検索を実行します。レコードが見つからない場合は、カスタムダイアログボックスを表示します。レコードが見つかった場合は、対象レコードをソートします。

コピー
検索実行 [記憶する]
If [Get (対象レコード数) = 0]
    カスタムダイアログを表示 ["レコードの検索"; "レコードが見つかりません。"]
Else
    レコードのソート [記憶する; ダイアログあり: オフ]
End If

例 3 

検索を実行します。レコードが見つからない場合は、カスタムダイアログボックスを表示します。1 つのレコードが見つかった場合、「請求書詳細」レイアウトに切り替えます。複数のレコードが見つかった場合、「請求書」レイアウトに切り替えます。

コピー
検索実行 [記憶する]
If [Get (対象レコード数) = 0]
    カスタムダイアログを表示 ["レコードの検索"; "レコードが見つかりません。"]
Else If [Get (対象レコード数) = 1]
    レイアウト切り替え [「請求書詳細」]
Else
    レイアウト切り替え [「請求書」]
End If

例 4

検索を実行します。レコードが見つからない場合は、「請求書の検索」スクリプトを実行して再度検索できるようにカスタムダイアログボックスを表示します。1 つのレコードが見つかった場合、「請求書詳細」レイアウトに切り替えます。複数のレコードが見つかった場合、「請求書」レイアウトに切り替えます。

スクリプト: 請求書の検索

コピー
検索実行 [ ]
If [Get (対象レコード数) = 0]
    カスタムダイアログを表示 ["レコードが見つかりませんでした"; "レコードが見つかりません。再度検索しますか?"]
    If [Get (最終メッセージ選択) = 1]
        # このスクリプトをサブスクリプトとして再度呼び出します。
        スクリプト実行 [指定: 一覧から;「請求書の検索」; 引数: ]
    Else
        全レコードを表示
    End If
Else If [Get (対象レコード数) = 1]
    レイアウト切り替え [「請求書詳細」]
Else
    レイアウト切り替え [「請求書」]
End If
レコードのソート [記憶する; ダイアログあり: オフ]