Robotic Crowd

Robotic Crowd

Compareアクションを使った条件式の作成方法

Author: Kanako Takei 60 views

この記事では、Compare(比較する)アクションを使って条件分岐に必要な条件式を作成する方法を紹介します

【できるようになること】

  • Compareを使って条件式を作れるようになる

  • 分岐処理を設定できるようになる

 

 条件式とは

ワークフローが処理を行う中で、「〜のときは〇〇させたい」「〜でないときはXXさせたい」のように条件によって処理を分岐させたい場合があるかと思います。この時に使う「〜のとき」というのが条件式になります。

例)

年齢が30歳以下のとき
好きなペットボトル緑茶が綾鷹であるとき

 

もう少し詳しく見ると以下のように3つに分割することができます。

A = 比較基準

B = 比較対象

C = 比較方法

つまりはAをCという方法でBと比較をします。
分かりにくいので言い換えますと、「好きなペットボトル緑茶の名前が”綾鷹”という文字と等しいかどうか比較する」となります。

例えば、好きなペットボトル緑茶が生茶の場合は”生茶”と”綾鷹”を比較し、文言が等しくないので条件に一致せず、”綾鷹”だった場合の処理は実行されません。

 

 Compareアクションの使用方法

次に条件式を作成するCompareの説明です。

先ほど条件式を分割しましたが、同様にアクションのパラメータを分割すると以下のようになります。

先述の条件式「好きなペットボトル緑茶が綾鷹であるとき」をCompareを用いて作成します。

そして、今回は好きなペットボトル緑茶の名前を元に、変数が好きな好きなペットボトル緑茶がどうかを判定していきます。

※今回は比較方法「等しい」だけで作成しましたが、以下のように他にも多くの「比較方法」がございますので是非ご活用ください。

それではまず、好きなペットボトル緑茶を変数に保存し(本来値はどんな文字でも構いませんが今は”綾鷹”とします)、その変数をCompareの「比較基準」に設定します(変数についてはこちら)。

 

まず、”綾鷹”を「比較対象」に設定し、「比較方法」はそのまま「と等しい」とします。最後にIFを設定してCompareのアウトプットを紐付け、任意の処理をIFの中に設定したら完了です。

 


実行するとIFがtrue(条件に一致)で任意の処理が実行されます。

 
 


変数に”綾鷹”以外の文字を入れると、以下のようにIFがfalse(条件に一致しない)となり、IFで囲んだアクションは実行されずワークフローが完了します。

 

 

 

次は、「好きなペットボトル緑茶が綾鷹ではないとき」という条件式を設定します。

Compareの「ではない。」をONにします。そうすると、比較方法は「等しい」なので、結果「等しくない」という比較方法になります。これで条件式の完成です。

変数の値を”綾鷹”以外にしても、今回は先ほどと違い、IFの中のアクションが実行されていることを確認できます。

 

 

 
# 変数に保存_好きなペットボトル緑茶
+store_value_1:
action>: StoreValue
key: pet_tea_brand
value: '綾鷹'

# 比較する
+compare_1:
action>: Compare
subject: ${pet_tea_brand}
compare_with: '綾鷹'
method: EQUALS
not: false

# 真のとき_好きなペットボトル緑茶が綾鷹のとき
+if_1:
if>: +compare_1
_do:

# テキストを作成
+text_1:
action>: Text
text: '選ばれたのは、綾鷹でした。'
# 変数に保存_好きなペットボトル緑茶
+store_value_1:
action>: StoreValue
key: pet_tea_brand
value: '伊右衛門'

# 比較する
+compare_1:
action>: Compare
subject: ${pet_tea_brand}
compare_with: '綾鷹'
method: EQUALS
not: true

# 真のとき_好きなペットボトル緑茶が綾鷹のとき
+if_1:
if>: +compare_1
_do:

# テキストを作成
+text_1:
action>: Text
text: '選ばれたのは、綾鷹ではなく${pet_tea_brand}でした。'

このページは役に立ちましたか?