変数の値に応じて処理を分岐する
[条件]-[Switch]アクションを利用することで、式の値に応じて複数分岐を表現できます。「式Aが1であれば●○、2であれば▲△、それ以外であれば□■」のような表現です。
以下では、簡単な例として、選択ダイアログから食べたいものを選択することで、おすすめの店をメッセージ表示させてみます。
[1][リストから選択ダイアログを表示]アクションを配置する
[メッセージボックス]-[リストから選択ダイアログを表示]アクションをワークスペースに配置します。
パラメーター選択画面が表示されるので、
- [ダイアログメッセージ]に「何が食べたいですか?」と入力
- 選択元のリストに「カレー」「ハンバーグ」「ラーメン」「冷やし中華」「つけ麵」を改行区切りで入力
します。入力できたら[保存]ボタンをクリックして画面を閉じます。
[2][Switch]アクションを配置する
[条件]-[Switch]アクションを[リストから選択ダイアログを表示]アクションの次に配置します。
パラメーターの選択画面が表示されるので、[チェックする値]に、「%SelectedItem%(選択ダイアログで選択された項目)」と入力して、[保存]ボタンをクリックします。
[3][Case]アクションを配置する
[条件]-[Case]アクションを[Switch]-[End]の間に配置します。[Case]は、先ほど設定した「チェックする値(ここでは選択された項目)」と指定された値とが等しい場合に、対応するフローを実行します。
パラメーターの選択画面が表示されるので、[比較する値]に選択肢の一つである[カレー]と入力します。
[4][メッセージを表示]アクションを配置する
[メッセージボックス]-[メッセージを表示]アクションを[Case]-[End]の中に配置します。これで、カレーが選択されたら指定のメッセージを表示する、という意味になります。
[表示するメッセージ]に[カレーはA店がおすすめです。]と入力して、[保存]ボタンをクリックします。
[5]別の[Case]アクションを配置する
[条件]-[Case]アクションを[メッセージを表示]-[End]の間に配置します。
パラメーターの選択画面が表示されるので、[比較する値]に選択肢の一つである[ハンバーグ]と入力します。
[6][メッセージを表示]アクションを配置する
[メッセージボックス]-[メッセージを表示]アクションを[Case]-[End]の中に配置します。
[表示するメッセージ]に[ハンバーグはB店がおすすめです。]と入力して、[保存]ボタンをクリックします。[5][6]は[3][4]の手順と同じですね。このように[Case]アクションは分岐の数に応じて繰り返すことができます。
[7][Default case]アクションを配置する
最後に、[条件]-[Default case]アクションを[メッセージを表示]-[End]の間に配置します。他の[Case]に合致する値が無かった場合に実行されるフローを表します。
[8][メッセージを表示]アクションを配置する
[メッセージボックス]-[メッセージを表示]アクションを[Case]-[End]の中に配置します。
[表示するメッセージ]に[%SelectedItem%はC店がおすすめです。]と入力して、[保存]ボタンをクリックします。
[9]フローを実行する
フローを実行してみましょう。ドロップダウンリストが表示されるので、適当な項目を選択して、[OK]ボタンをクリックします。選択した値によって、[Case]や[Default Case]の次にあるアクションが実行されることが確認できます。
まとめ
今回は、フローを制御するための条件分岐構文としてIf、Switchアクションについて解説しました。次回は、同じくフローを作成するのに欠かせないループ(繰り返し)構文について紹介する予定です。