スクリプト
スクリプト
IF 条件式
If
目的
論理値計算式を評価し、評価結果に基づいて条件分岐を行います。
構文
If [<論理値計算式>]
オプション
[指定...] をクリックすると、論理値計算式を定義することができます。[計算式の指定] ダイアログボックスに計算式を入力するか、左側のフィールドリストと右側の関数リストを算術演算子や文字列演算子とともに使用して、計算式を作成します。
互換性
スクリプトステップを実行する場所
サポート
FileMaker? Pro
はい
FileMaker? Server スクリプトスケジュール
はい
FileMaker? Go
はい
カスタム Web 公開
はい
FileMaker? WebDirect?
はい
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
レコードのソート [記憶する; ダイアログなし]
203