UiPath PR

【UiPath】条件分岐、スイッチ、フロー条件分岐、フロースイッチの使い分け

記事内に商品プロモーションを含む場合があります

UiPath Studioの開発で、条件によって処理を分けたいことがあります。

しかし、条件によって処理を分ける方法は、複数存在するため、どれを使用して良いか分からない方も多いと思います。

この記事では、条件によって処理を分けるアクティビティの「条件分岐 (If)」、「スイッチ (Switch)」、「フロー条件分岐 (Flow Decision)」、「フロースイッチ (Flow Switch)」の使い分けについて、紹介します。

目次へ進む

 関連記事 【UiPath】Udemyのオンラインコースでワンランク上のロボット作成技術を学ぶ

当ブログ『エフペンITブログ』の運営者

 

「条件分岐 (If)」、「スイッチ (Switch)」、「フロー条件分岐 (Flow Decision)」、「フロー スイッチ (Flow Switch)」の使い分け

「条件分岐 (If)」、「スイッチ (Switch)」は、フローチャートとシーケンスの両方で使えますが、前のアクティビティへ戻ることが出来ません。

「フロー条件分岐 (Flow Decision)」と「フロー スイッチ (Flow Switch)」は、フローチャートでのみ使用出来て、前のアクティビティへ戻ることが出来ます。

表にすると以下の通りです。

アクティビティ フローチャート シーケンス 複数分岐 前のアクティビティへ戻る
条件分岐 (If) × ×
スイッチ (Switch) ×
フロー条件分岐 (Flow Decision) × ×
フロースイッチ (Flow Switch) ×
エフペン
エフペン
基本的には、フローチャートではフロー条件分岐かフロースイッチ、シーケンスでは条件分岐かスイッチを使用すると、理解しやすいプロセスを作成できます。

 

条件分岐 (If)

条件分岐 (If)は、アクティビティのSystem>Activities>Statements にあります。

条件分岐 (If)は、条件を満たすとき、満たさない時によって、処理を変えることが出来ます。

条件を満たすかを判定する式(condition)には、Boolean型を入れます。

 

String型str1とstr2が一致するかを判定する式(condition)のサンプルコード

str1 = "abc"
str2 = "xyz"
String.Equals(str1,str2)

 

サンプルワークフロー
str1とstr2の文字列が一致しているか判定して、Trueの場合は”Yes”、Falseの場合は”No”のメッセージを出力します。

・実行結果

 

 

int型int1よりint2が大きいかを判定する式(condition)のサンプルコード

int1 = 100
int2 = 10
int1 > int2

 

サンプルワークフロー

・実行結果

 

スイッチ (Switch)

スイッチ (Switch)は、アクティビティのSystem>Activities>Statements にあります。

スイッチ (Switch)は、複数の条件で処理を変えたい時に使用します。

 

サンプルワークフロー1
str1が、東京、大阪、愛知、それ以外かで判定して、各条件のメッセージボックスを実行します。

・スイッチのプロパティ

※TypeArgumentをStringに変更しています。

・実行結果1

エフペン
エフペン
Expressionの値がCaseと一致する場合、そのCaseの処理が実行されます。

 

サンプルワークフロー2
str1が、東京、大阪、愛知、それ以外かで判定して、各条件のメッセージボックスを実行します。

・スイッチのプロパティ

※TypeArgumentをStringに変更しています。

・実行結果

ラッコくん
ラッコくん
Expressionの値が、どのCaseとも一致しない場合、Defaultの処理が実行されます。

 

フロー条件分岐 (Flow Decision)

フロー条件分岐 (Flow Decision)は、ワークフロー>フローチャート にあります。

フロー条件分岐 (Flow Decision)は、フローチャート上で、2つの条件によって処理を変えたい時に使用します。

 

サンプルワークフロー1
int1よりint2が大きいか判定して、TrueかFalseに応じて処理を行います。

・フロー条件分岐のプロパティ

・実行結果

 

エフペン
エフペン
条件分岐 (If)と違い、前のアクティビティの処理へ戻ることも出来ます。

サンプルワークフロー2
ダイアログの入力結果の値を10以下か判定して、TrueならOKのメッセージボックス、Falseなら再入力を促すメッセージボックスを表示し、ダイアログ入力に戻ります。

・入力ダイアログ

・フロー条件分岐のプロパティ

 

・実行結果2-1

ラッコくん
ラッコくん
フロー条件分岐が 1<=10となり条件を満たすので、Trueの後の処理の「OK メッセージボックス」が実行されます。

 

・実行結果2-2


エフペン
エフペン
フロー条件分岐が 100<=10となり条件を満たさないので、Falseの後の処理の「再入力 メッセージボックス」→「入力ダイアログ」が実行されます。

 

フロー スイッチ (Flow Switch)

フロー スイッチ (Flow Switch)は、ワークフロー>フローチャート にあります。

フロー スイッチ (Flow Switch)は、フローチャート上で、複数の条件によって処理を変えたい時に使用します。

 

サンプルワークフロー
str1の値が各Caseの値と一致するか判定し、各Caseに一致したメッセージボックスを出力します。条件に一致しない場合は、DefaultのCaseが実行されます。

・フロースイッチのプロパティ

・分岐条件のプロパティ

エフペン
エフペン
分岐の条件は、矢印をクリックして、Caseの値を編集することで、設定できます。

・実行結果

 

まとめ

  • 条件を満たすとき、満たさない時によって、処理を変えることのは、条件分岐 (If)を使用します。
  • 複数の条件で処理を分けたい場合は、スイッチ (Switch)を使用します。
  • フローチャートで条件を分けて処理をしたい、前のアクティビティの処理へ戻りたい場合は、フロー条件分岐 (Flow Decision)、フロー スイッチ (Flow Switch)を使用します。

目次へ戻る

 関連記事 【UiPath】Udemyのオンラインコースでワンランク上のロボット作成技術を学ぶ

 


 

ラッコくん
ラッコくん
IT未経験からITエンジニア目指すなら、何から始めれば良い?
エフペン
エフペン
もし、エフペンが未経験からITエンジニア目指すなら、プログラミングスクールのディープロの4ヶ月短期集中コースへ入会します。  

\教育訓練給付金対象講座なら受講料最大45万円給付/

ディープロのオンライン個別説明会&相談会の日程を予約する

*オンライン個別説明会&相談会への参加は無料

ディープロ公式サイトの4ヶ月短期集中コースサイト

 関連記事 現役SEエフペンがもしIT未経験からWebエンジニアを目指すならプログラミングスクール【ディープロ】を受講する

エフペン
エフペン
プログラミングだけでなく、要件、設計、開発、テスト、環境構築とプログラミング以外のスキルも丁寧に学べるので、卒業後1人前とみなされて転職活動できるからです。

 

ABOUT ME
エフペン
システム開発,クラウド構築,サービス企画まで幅広い経験を持つITエンジニア。当ブログでは、UiPathや資格取得のノウハウを発信します。profile詳細 / twitter:@fpen17