IF 条件

IF 条件を使用すると、レシピフローにより多くのロジックを追加できます。IF 条件で優先度をチェックして、緊急のサポートチケットをエスカレートしたり、IF 条件を使用して有効なメールかどうかをチェックしてから、オンボーディングの招待状を送信したりできます。

WORKATO ACADEMY

Workato Academy で、IF 条件に関する実践的なチュートリアルを体験してください。このコースを修了すると「Automation Pro」の認定を取得できます。詳細については、こちらを参照してください。

IF 条件は、Workato の複数の機能で使用されています。

トリガー条件トリガーに対して IF 条件を設定して、レシピが処理すべきトリガーイベントのサブセットを定義できます。たとえば、種類が「顧客」の新しい Salesforce アカウントのみや、評価が「Hot」である Salesforce リードのみを処理することを指定できます。トリガーの IF レシピの例
この Salesforce トリガーには、ステータスが「Closed」の新規または更新済みのケースのみを処理するトリガー条件が設定されています。
条件付きのアクションステップレシピ内に IF 条件を設定して、ワークフローの処理ロジックをより適切に定義できます。たとえば Zendesk 組織が見つかった場合は Zendesk 組織を更新し、見つからない場合は新しい Zendesk 組織を作成します。
条件付きステップレシピの例条件付きステップを使用して、Zendesk 組織を作成するか更新するかを決定するレシピ。サンプルレシピ
エラー監視ステップの自動再試行機能IF 条件を設定して、自動再試行を実行する条件を指定できます。たとえば、スローされたエラーがタイムアウトであるか、一時的なネットワークの問題の場合に限り、 Monitor ブロックのステップを自動再試行することを指定できます。
自動再試行条件再試行条件フィールドの設定。この例では、エラーメッセージに401エラーコードが含まれていない場合に限り、Monitor ブロックのアクションが再度実行されます。サンプルレシピ

条件

各条件は、データ、条件、値の3つの部分から構成されます。通常、データ (左側) はアプリから取得した変数データ (ケースのステータスやリードの評価など) です。値 (右側) は、照合したい静的な値 ([Closed] や [Hot] など) です。データと値は大文字と小文字が区別されます。

この記事では、選択可能な14の条件について説明します。例として、トリガー条件を使用します。さらに、AND または OR 演算子を使用して複数の条件を結合することにより、複雑な条件を設定することができます。

各条件は、さまざまなデータ型に対応しています。条件を無効なデータ型で使用しようとすると、レシピが正常に開始されない場合があります。

動画チュートリアル : 条件内の無効なデータ型の処理方法

さらに、トリガーに対して無効な IF 条件を設定すると、次のような問題が発生する可能性があります。

  • 開始されたレシピがトリガーエラーをスローし、トリガーイベントを処理できなくなる。
  • レシピがすべてのトリガーイベントを除外する。

contains

この条件では、データに指定した値が含まれているかどうかを確認します。大文字と小文字が区別されます。 大文字と小文字の区別にこだわらない場合は、比較する前に両方を小文字にするか、両方を大文字にしてください。条件には、任意の文字、数字、単語、記号を使用できます。

contains レシピの例件名に単語「bug」を含む新しい Zendesk チケットのみを処理するようにレシピに指示するトリガー条件

有効な型

この条件は、配列および文字列データ型のみに対応しています。

トリガーデータ条件/値レシピによる処理の有無
"UI bug"contains "bug"あり
"UI BUG"contains "bug"なし
"Instructions unclear"contains "bug"なし
""contains "bug"なし
nilcontains "bug"なし
12345contains 123なし
[1, 2, 3]contains 1あり
[1, 2, 3]contains [1, 3]なし
["abc", "pqr", "xyz"]contains "abc"あり
["abc", "pqr", "xyz"]contains ["abc", "pqr"]なし

starts with

この条件では、トリガーデータの文字列が指定した値で始まるかどうかをチェックします。大文字と小文字が区別されます。大文字と小文字の区別にこだわらない場合は、比較する前に両方を小文字にするか、両方を大文字にしてください。

starts with レシピの例文字列 “(408)” または “(669)” で始まる電話番号を持つ新しい Zendesk ユーザーのみを処理するようにレシピに指示するトリガー条件

starts with 条件は、完全な一致のみを検索します。null 値は処理されません。

有効な型

この条件は文字列データ型のみに対応しています。

トリガーデータ条件/値レシピによる処理の有無
"(408) 555-6928"starts with "(408)"あり
"408 555-6928"starts with "(408)"なし
"(650) 555-2395"starts with "(408)"なし
""starts with "(408)"なし
nilstarts with "(408)"なし
12345starts with 123トリガーエラーがスローされる
numeric_type_pillstarts with 123トリガーエラーがスローされる
numeric_type_pillstarts with "123"あり #pill = 12345の場合

特殊な非文字列データ型のケース

starts with 条件で非文字列データ型同士を比較しようとすると、トリガーエラーがスローされます。たとえば、数値型を数値型と比較すると、エラーがスローされます。

starts with 条件で数値型同士を比較starts with 条件で数値型同士を比較するとトリガーエラーがスローされる

ただし、トリガーデータの入力フィールドが非文字列のデータピルであり、値が文字列の場合、Workato はデータピルの値を文字列値に変換し、比較を行います。変換された値が条件に一致していると、true に評価されます。

starts with 条件で数値型同士を比較値が文字列の場合、非文字列のデータピルは文字列に変換されて比較される


ends with

この条件では、トリガーデータが指定した値で終わるかどうかをチェックします。大文字と小文字が区別されます。大文字と小文字の区別にこだわらない場合は、比較する前に両方を小文字にするか、両方を大文字にしてください。条件には、任意の文字、数字、単語、記号を使用できます。

ends with レシピの例送信者のメールアドレスが文字列「@workato.com」で終わる場合に限り、新しいメールを処理するようにレシピに指示するトリガー条件

使用しているアプリケーションで、条件で指定したフィールドが空白のままになっている場合、イベントは処理されません。

有効な型

この条件は文字列データ型のみに対応しています。

トリガーデータ条件/値レシピによる処理の有無
"(408) 555-6928"ends with "6928"あり
"408 555-6928"ends with "(6928)"なし
"(650) 555-2395"ends with "6928"なし
""ends with "6928"なし
nilends with "6928"なし
12345ends with 345トリガーエラーがスローされる
numeric_type_pillends with 345トリガーエラーがスローされる
numeric_type_pillends with "345"あり #pill = 12345の場合
numeric_type_pillends with "345"なし #pill = 123の場合

特殊な非文字列データ型のケース

ends with 条件で非文字列データ型同士を比較しようとすると、トリガーエラーがスローされます。たとえば、数値型を数値型と比較すると、エラーがスローされます。

ends with 条件で数値型同士を比較ends with 条件で数値型同士を比較するとトリガーエラーがスローされる

ただし、トリガーデータの入力フィールドが非文字列のデータピルであり、値が文字列の場合、Workato はデータピルの値を文字列値に変換し、比較を行います。変換された値が条件に一致していると、true に評価されます。

ends with 条件で数値型同士を比較値が文字列の場合、非文字列のデータピルは文字列に変換されて比較される


doesn't contain

この条件は、contains 条件の逆です。この条件では、トリガーデータに指定した値が 含まれない かどうかをチェックします。大文字と小文字が区別されます。大文字と小文字の区別にこだわらない場合は、比較する前に両方を小文字にするか、両方を大文字にしてください。

doesn't contain レシピの例商品のタイトルに文字列「Shirt」が含まれていない場合に限り、新しい Shopify 商品を処理するようにレシピに指示するトリガー条件

使用しているアプリケーションで、指定したフィールドが空白のままになっている場合、 doesn’t contain 条件はそのフィールドを考慮せず、イベントは処理されません。これは以下の「 is true 」セクションで示すように、文字列関数で is true または is not true 条件を使用するか、doesn’t contain 条件と is present 条件をペアにして使用することで回避できます。

有効な型

この条件は、配列および文字列データ型のみに対応しています。

トリガーデータ条件/値レシピによる処理の有無
"UI bug"doesn't contain "bug"なし
"UI BUG"doesn't contain "bug"あり
"Instructions unclear"doesn't contain "bug"あり
""doesn't contain "bug"あり
nildoesn't contain "bug"なし
12345doesn't contain 123なし
[1, 2, 3]doesn't contain 1なし
[1, 2, 3]doesn't contain [1, 3]あり
["abc", "pqr", "xyz"]doesn't contain "abc"なし
["abc", "pqr", "xyz"]doesn't contain ["abc", "pqr"]あり

doesn't start with

この条件は、starts with 条件の逆です。この条件では、トリガーデータ文字列が指定した値で 始まらない かどうかをチェックします。大文字と小文字が区別されます。大文字と小文字の区別にこだわらない場合は、比較する前に両方を小文字にするか、両方を大文字にしてください。

doesn't start with レシピの例Opportunity フィールドが文字列「B」から始まらない場合に限り、新しいか更新された Quick Base 商談レコードを処理するようにレシピに指示するトリガー条件

使用しているアプリケーションで、指定したフィールドが空白のままになっている場合、 doesn’t start with 条件はそのフィールドを考慮せず、イベントは処理されません。 doesn’t contain トリガー条件と同様に、これは以下の「 is true 」セクションで示すように、文字列関数で is true 関数を使用するか、doesn’t start with 条件を is present 条件とペアにして使用することで回避できます。

有効な型

この条件は文字列データ型のみに対応しています。

トリガーデータ条件/値レシピによる処理の有無
"(408) 555-6928"doesn't start with "(408)" or "(669)"なし
"408 555-6928"doesn't start with "(408)" or "(669)"あり
"(650) 555-2395"doesn't start with "(408)" or "(669)"あり
""doesn't start with "(408)" or "(669)"あり
nildoesn't start with "(408)" or "(669)"なし
12345doesn't start with 123トリガーエラーがスローされる
numeric_type_pilldoesn't start with 123トリガーエラーがスローされる
numeric_type_pilldoesn't start with "123"なし #pill = 12345の場合
numeric_type_pilldoesn't start with "123"あり #pill = 345の場合

特殊なケース

  1. 非文字列データ型

doesn't start with 条件で非文字列データ型同士を比較しようとすると、トリガーエラーがスローされます。たとえば、数値型を数値型と比較すると、エラーがスローされます。

doesn't start with 条件で数値型同士を比較doesn't start with 条件で数値型同士を比較するとトリガーエラーがスローされる

ただし、トリガーデータの入力フィールドが非文字列のデータピルであり、値が文字列の場合、Workato はデータピルの値を文字列値に変換し、比較を行います。変換された値が条件に一致していると、true に評価されます。

doesn't start with 条件で数値型同士を比較値が文字列の場合、非文字列のデータピルは文字列に変換されて比較される

  1. Nil/null

トリガーデータが nil (null とも呼ばれる) の場合、たとえば「nil が "345" で始まらない」など、トリガーデータが条件に一致するように見えても、トリガーイベントはレシピによって処理されません。


doesn't end with

この条件は、ends with 条件の逆です。この条件では、トリガーデータ文字列が指定した値で 終わらない かどうかをチェックします。大文字と小文字が区別されます。大文字と小文字の区別にこだわらない場合は、比較する前に両方を小文字にするか、両方を大文字にしてください。条件には、任意の文字、数字、単語、記号を使用できます。

doesn't end with レシピの例[Full Name] が文字列「Skywalker」で終わらない場合に限り、新しいか更新された Microsoft Dynamics 365 顧客を処理するようにレシピに指示するトリガー条件

使用しているアプリケーションで、指定したフィールドが空白のままになっている場合、 doesn’t end with 条件はそのフィールドを考慮せず、イベントは処理されません。 doesn’t contain トリガー条件と同様に、これは以下の「 is true 」セクションで示すように、文字列関数で is true 関数を使用するか、doesn’t end with 条件と is present 条件をペアにして使用することで回避できます。

有効な型

この条件は文字列データ型のみに対応しています。

トリガーデータ条件/値レシピによる処理の有無
"(408) 555-6928"doesn't ends with "6928"なし
"408 555-6928"doesn't ends with "(6928)"あり
"(650) 555-2395"doesn't ends with "6928"あり
""doesn't ends with "6928"あり
nildoesn't ends with "6928"なし
12345doesn't ends with 345トリガーエラーがスローされる
numeric_type_pilldoesn't ends with 345トリガーエラーがスローされる
numeric_type_pilldoesn't ends with "345"なし #pill = 12345の場合
numeric_type_pilldoesn't ends with "345"あり #pill = 123の場合

特殊なケース

  1. 非文字列データ型

doesn't end with 条件で非文字列データ型同士を比較しようとすると、トリガーエラーがスローされます。たとえば、数値型を数値型と比較すると、エラーがスローされます。

doesn't end with 条件で数値型同士を比較doesn't end with 条件で数値型同士を比較するとトリガーエラーがスローされる

ただし、トリガーデータの入力フィールドが非文字列のデータピルであり、値が文字列の場合、Workato はデータピルの値を文字列値に変換し、比較を行います。変換された値が条件に一致していると、true に評価されます。

doesn't end with 条件で数値型同士を比較値が文字列の場合、非文字列のデータピルは文字列に変換されて比較される

  1. Nil/null

トリガーデータが nil (null とも呼ばれる) の場合、たとえば「nil が "345" で終わらない」など、トリガーデータが条件に一致するように見えても、トリガーイベントはレシピによって処理されません。


equals

この条件では、トリガーデータが指定した値と等しいかどうかをチェックします。大文字と小文字が区別されます。大文字と小文字の区別にこだわらない場合は、比較する前に両方を小文字にするか、両方を大文字にしてください。条件には、任意の文字、数字、単語、記号を使用できます。

equals レシピの例大文字と小文字が区別されるステータスが「Closed」の、新しいか更新された Salesforce ケースのみを処理するようにレシピに指示するトリガー条件

有効な型

この条件は、整数、浮動小数点数、日付、配列など、あらゆるデータ型に対応しています。

トリガーデータ条件/値レシピによる処理の有無
"Closed"equals "Closed"あり
"Closed"equals "closed"なし
""equals "Closed"なし
""equals nullなし
'null'equals nilあり
nilequals "Closed"なし
12345equals 12345あり
12345equals "12345"あり
6 - 1equals 5あり
"Closed".present?equals trueあり
"Closed".present?equals "true"なし
"Closed".present?equals 1なし

特殊な文字列変換のケース

非文字列データ型のトリガーデータを文字列データ型の値と比較しようとすると、Workato は、比較のためにトリガーデータを文字列に変換します。たとえば、「12345 equals "12345"」は true に評価されます。


does not equal

この条件は、equal 条件の逆です。この条件では、トリガーデータが指定した値に 等しくない かどうかをチェックします。大文字と小文字が区別されます。大文字と小文字の区別にこだわらない場合は、比較する前に両方を小文字にするか、両方を大文字にしてください。条件には、任意の文字、数字、単語、記号を使用できます。

does not equal レシピの例優先順位が大文字と小文字が区別される文字列「Low」と等しくない、新しい Zendesk チケットのみを処理するようにレシピに指示するトリガー条件

有効な型

この条件は、整数、浮動小数点数、日付、配列など、あらゆるデータ型に対応しています。

トリガーデータ条件/値レシピによる処理の有無
"Closed"does not equal "Closed"なし
"Closed"does not equal "closed"あり
""does not equal "Closed"あり
""does not equal nullあり
'null'does not equal nilなし
nildoes not equal "Closed"あり
12345does not equal 12345なし
12345does not equal "12345"なし
6 - 1does not equal 5なし
"Closed".present?does not equal trueなし
"Closed".present?does not equal "true"あり
"Closed".present?does not equal 1あり

greater than

この条件では、トリガーデータが指定した値より大きいかどうかをチェックします。

greater than レシピの例SLA 有効期限の日付が日付「12/21/2018」より後の場合に限り、新しい Salesforce アカウントを処理するようにレシピに指示するトリガー条件

value が数値に設定され、 trigger data フィールドに null 値がある場合、コンピューターでは数値を null 値と比較できないため、レシピはトリガーエラーを発生させます。この問題を解決するには、 is present 条件と greater than 条件を一緒に追加します。

is present および greater than レシピの例既存の [SLA expiration] フィールドがあり (is present)、12/21/2018以降に有効期限が切れるように (greater than) 設定されている場合に限り、新しい Salesforce 商談を処理するようにレシピに指示するトリガー条件

有効な型

この条件は、文字列、整数、数値のデータ型に対応しています。

トリガーデータ条件/値レシピによる処理の有無
"2017-06-31T12:00:00.252805--07:00"greater than "2017-12-31T12:00:00.252805--07:00"なし
"2017-06-30T12:00:00.252805--07:00"greater than "2017-01-31T12:00:00.252805--07:00"あり
"2017-06-31"greater than "2017-12-31"なし
"2017-06-31"greater than "2017-01-31"あり
5greater than 10なし
5greater than 1あり
1.5greater than 10.5なし
1.5greater than 1.23あり
"abc"greater than "abcde"なし #ASCII 値の比較
"abc"greater than "a"あり #ASCII 値の比較
nilgreater than "2017-01-31T22:00:00.252805--07:00"トリガーエラーがスローされる
"2017-06-31"greater than nilトリガーエラーがスローされる
nilgreater than 10トリガーエラーがスローされる
1.5greater than nilトリガーエラーがスローされる
"abc"greater than nilトリガーエラーがスローされる

less than

この条件では、トリガーデータが指定した値より小さいかどうかをチェックします。

is less than レシピの例バリアント価格が50未満になった場合に限り、新しい Shopify 商品バリアントを処理するようにレシピに指示するトリガー条件

value が数値に設定され、 trigger data フィールドに null 値がある場合、コンピューターでは数値を null 値と比較できないため、レシピはトリガーエラーを発生させます。この問題を解決するには、 is present 条件と less than 条件を一緒に追加します。

有効な型

この条件は、文字列、整数、数値のデータ型に対応しています。

トリガーデータ条件/値レシピによる処理の有無
"2017-06-31T12:00:00.252805-07:00"less than "2017-12-31T12:00:00.252805-07:00"あり
"2017-06-30T12:00:00.252805-07:00"less than "2017-01-31T12:00:00.252805-07:00"なし
"2017-06-31"less than "2017-12-31"あり
"2017-06-31"less than "2017-01-31"なし
5less than 10あり
5less than 1なし
1.5less than 10.5あり
1.5less than 1.23なし
"abc"less than "abcde"あり #ASCII 値の比較
"abc"less than "a"なし #ASCII 値の比較
nilless than "2017-01-31T22:00:00.252805-07:00"トリガーエラーがスローされる
"2017-06-31"less than nilトリガーエラーがスローされる
nilless than 10トリガーエラーがスローされる
1.5less than nilトリガーエラーがスローされる
"abc"less than nilトリガーエラーがスローされる

is true

この条件では、トリガーデータが true かどうかをチェックします。

is true レシピの例[variant's requires shipping] フィールドが true に設定されている場合に限り、新しい Shopify 商品バリアントを処理するようにレシピに指示するトリガー条件

トリガーデータの入力フィールドに指定された関数が true に評価されるかどうかをチェックするためにも使用できます。たとえば文字列関数から得られた文字列型のデータピルを、boolean に評価される条件に変換することができます。以下の例とともに、こちらを参照してください。

boolean レシピの例関数 amount.blank? が true に評価される場合 ([amount] フィールドが空白の場合) に限り、新しい Quick Base 商談レコードを処理するようにレシピに指示するトリガー条件

有効な型

この条件は、boolean データ型のみに有効です。この条件を使用して boolean データピルと照合するか、true または false に評価される関数と照合できます。

トリガーデータ条件/値レシピによる処理の有無
pill.present?is trueなし #pillnil または null 値があるか、pill が空の文字列 "" の場合
pill.present?is trueあり #pill に値がある場合
"Advanced Solutions".include?("Solutions")is trueあり
"Advanced Solutions".include?("solutions")is trueなし

is not true

この条件は、is true 条件の逆です。この条件では、トリガーデータが true ではない かどうかをチェックします。

is not true レシピの例Salesforce ケースがクローズされていない場合に限り、新しい Salesforce ケースを処理するようにレシピに指示するトリガー条件

トリガーデータの入力フィールドに指定された関数が false に評価されるかどうかをチェックするためにも使用できます。たとえば文字列関数から得られた文字列型のデータピルを、boolean に評価される条件に変換することができます。以下の例とともに、こちらを参照してください。

トリガーデータ条件/値レシピによる処理の有無
pill.present?is not trueなし #pillnil または null 値があるか、pill が空の文字列 "" の場合
pill.present?is not trueなし # pill に値がある場合
"Advanced Solutions".include?("Solutions")is not trueなし
"Advanced Solutions".include?("solutions")is not trueあり

is present

この条件はトリガーデータをチェックします。データが存在する場合、トリガーイベントはレシピによって処理されます。入力データが null または空の文字列の場合、トリガーイベントはレシピによって処理されません。

is present レシピの例ファイルに名前がある場合に限り、新しい Box ファイルを処理するようにレシピに指示するトリガー条件

有効な型

この条件は、整数、浮動小数点数、日付、配列など、あらゆるデータ型に対応しています。

トリガーデータ条件/値レシピによる処理の有無
"Advanced Solutions"is presentあり
12345is presentあり
""is presentなし
nilis presentなし

is not present

この条件はトリガーデータをチェックします。データが存在する場合、トリガーイベントはレシピによって 処理されません。 入力データが null または空の文字列の場合、トリガーイベントはレシピによって 処理されます。

is not present レシピの例エージェントが割り当てられていない新しい Zendesk チケットのみを処理するようにレシピに指示するトリガー条件

有効な型

この条件は、整数、浮動小数点数、日付、配列など、あらゆるデータ型に対応しています。

トリガーデータ条件/値レシピによる処理の有無
"Advanced Solutions"is not presentなし
12345is not presentなし
""is not presentあり
nilis not presentあり

Last updated: