リファレンス > スクリプトステップリファレンス > 制御に関連するスクリプトステップ > If
 

If

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

参照 

オプション 

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

互換性 

 

製品 

サポート 

FileMaker Pro Advanced 

はい 

FileMaker Go 

はい 

FileMaker WebDirect 

はい 

FileMaker Server 

はい 

FileMaker Cloud 製品 

はい 

FileMaker Data API 

はい 

カスタム Web 公開 

はい 

Runtime ソリューション 

はい 

起点 

FileMaker Pro 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
レコードのソート [記憶する; ダイアログあり: オフ]

関連項目 

計算フィールドの定義

If 関数

If 構造の例

スクリプトステップリファレンス (名前順)

スクリプトステップリファレンス (種類順)

計算式について