# データピル
データピルとは、トリガーまたはアクションステップからの出力データです。これは、ビジネスロジックをレシピステップにマッピングするために使用できる変数です。たとえば、Salesforce アカウントから Zendesk オーガナイゼーションを作成するには、レシピアクションで Salesforce アカウントから Zendesk オーガナイゼーションにデータピルを割り当てます。
データピルは、[App Data] セクション内のデータツリーに含まれています。任意のレシピステップにおいて、[App Data] セクションには、トリガーからの出力と、そのステップより前のすべてのアクションが含まれています。
レシピステップ内のデータツリー
データツリーは、レシピエディターで最大化できます。
展開されたデータツリー
Automation Institute
Workato の Automation Institute で、データピルの操作に関する実践的なチュートリアルを体験してください。このコースを修了すると「Automation Pro」の認定を取得できます。詳細については、こちら (opens new window)を参照してください
# デフォルトのデータピル
すべてのジョブには、以下のデータピルが含まれています。データツリーの最上部で確認できます。
すべてのレシピのデフォルトのデータピル
データピル | 説明 |
---|---|
User ID | ユーザーの ID。ワークスペースにいる場合、ここにはワークスペースの ID が表示されます。 |
User name | ユーザーの名前。ワークスペースにいる場合は、ここにはワークスペースの名前が表示されます。 |
User email | ユーザーのメールアドレス。ワークスペースにいる場合は、ここにはワークスペースのメールアドレスが表示されます。 |
Recipe ID | レシピ ID。 |
Recipe URL | レシピの URL。 |
Recipe name | レシピの名前。 |
Recipe path | レシピが含まれるディレクトリのパス。 |
Job ID | ジョブ ID。各ジョブには一意のジョブ ID があります。 |
Job URL | ジョブレポートの URL。各ジョブには一意のジョブ URL があります。 |
Job created at | このジョブが作成された日時。 |
Master job ID | ジョブが再実行されている場合は、最初のジョブ ID が表示されます。 |
Calling recipe ID | ジョブが別のレシピによってトリガーされた場合、呼び出し元のレシピ ID が表示されます。 |
Calling job ID | ジョブが別のジョブによってトリガーされた場合、呼び出し元のジョブ ID が表示されます。 |
Is repeat | これが再実行されたジョブであるかどうかを示します。 |
Is test | これがテストジョブであるかどうかを示します。 |
Repeat count | このジョブの再実行の回数です。 |
Repeated job? 廃止 | この項目は_廃止_されました。代わりに [Is repeat] を使用してください。 これが再実行されたジョブであるかどうかを示します。 |
Parent job ID 廃止 | この項目は_廃止_されました。代わりに [Master job ID] を使用してください。 ジョブが再実行されている場合は、最初のジョブ ID が表示されます。 |
# データ型
データピルは、以下のデータ型にすることができます。
- 文字列
- 整数または数値
- 日付または日時
- 配列またはハッシュ (リスト)
- オブジェクト
- Boolean
データピルをマッピングする場合、「型」に互換性があることが重要です。あいまいさや情報の損失が発生することなく変換を実行できる場合は、デフォルトの型変換が実行されます。
データピルをそのままマッピングするだけでなく、formula モードでレシピステップを開いて Workato でデータを変換することもできます。
# ルートレベルのデータピル
ルートレベルのデータピルは、すべてのトリガーとアクションで利用でき、レシピステップの入力項目で formula モードを選択した場合にアクセスできます。
トリガー出力データピル
このデータピルには、トリガーやアクションの完全な出力スキーマが含まれます。これらのスキーマは、たとえばフォーマットのために .to_json
と共に使用したり、または内部のデータやキーにアクセスするために .pluck
と共に使用することができます。
# 型変換
特定のデータ型は、formula を使用して別のデータ型に変換できます。たとえば、算術演算を実行するために数値の文字列を整数型に変換したり、アプリで日時が文字列として表現されるが、適切な日時型に変換したい場合などがあります。
次に、一般に使用される型変換の formula のリストを示します。
- to_currency
- to_date
- to_f
- to_i
- to_s
- to_time
その他の型変換については、formula エディターを確認してください。
formula モードでの型変換の検索
# データのプレビュー
Workato には、アプリ内のデータについて理解しやすくするために、データピルと共に (アカウントから取得された) サンプルデータが表示されます。
以下の例では、データピルの横にイタリック体でサンプルデータが表示されています。
Salesforce の新しいアカウントトリガーの出力データツリー
# 項目のマッピング
項目のマッピングは、アクションまたはトリガーの入力項目に対するデータピル (変数) または絶対値 (定数) の割り当てとして定義されます。これは、アプリ間のデータフローを制御します。
Salesforce アカウント (トリガー) から Zendesk オーガナイゼーション作成アクションに項目をマッピングすることにより、Zendesk オーガナイゼーションと Salesforce アカウントが同じデータを持つようにできます。
すべてのレシピステップにおいて、以前の全ステップからのデータピルにアクセスできます。このデータピルを使用して、現在のステップの入力項目を設定できます。
# 例
次の例では、Salesforce の [New account] トリガーから [Send email] アクションの [Message] 入力項目に、 [Account Name] データピルをマッピングします。
[Message] 入力項目への [Account Name] データピルのマッピング
# マッピング定数とマッピング変数
Workato の入力項目には、変数 (データピル) または定数 (絶対値) を割り当てることができます。
# 変数のマッピング
変数 Account name
は、[Name] 入力項目にマッピングされています。つまり、作成されるすべての Salesforce 新規アカウントで、Salesforce アカウントのアカウント名は、今後作成する Zendesk オーガナイゼーションの組織名として使用されます。たとえば、 Sattei Winery という名前の Salesforce の新規アカウントを作成すると、 Sattei Winery という名前の Zendesk オーガナイゼーションが作成されます。
変数がマッピングされた入力項目
# 定数のマッピング
一方、入力項目 [Notes] には、定数 (テキスト "Synced over from Salesforce"
) がマッピングされています。これは、Workato を介して新規作成するすべての Zendesk オーガナイゼーションの [Notes] 項目に、「Synced over from Salesforce」という文字列が入力されることを意味します。
定数がマッピングされた入力項目
次に、定数と変数がマッピングされた新しい Zendesk オーガナイゼーションの例を示します。
新規作成した Zendesk オーガナイゼーション Sattei Winery
# 定数と変数の両方のマッピング
指定するデータに対して、入力項目で定数と変数を組み合わせることもできます。
# 例
このレシピでは、サインアップしたすべての Salesforce リードに対してウェルカムメールを送信します。
新しい Salesforce リードにウェルカムメールを送信するレシピ。サンプルレシピ (opens new window)
[Send email] アクション内で、 [New Salesforce lead] データツリーからのデータピルが入力項目にマッピングされました。
アクションステップにマッピングされているデータピルの例
データピルは変数であるため、その値は特定のトリガーイベントまたはアクションに応じて変化します。この例で、[To] 入力項目に割り当てられる値は、新しい各リードの [email
] の値に応じて変化します。
このレシピは、新しいリードのデータから [name
] (Madison Diaz) と [email
] (madisondiaz82@gmail.com) を読み取り、以下のメールを送信します。
To: madisondiaz82@gmail.com
Hi Madison,
Thanks for joining our mailing list! We're excited to have you!
# データ変換
あるアプリのデータ項目は、別のアプリのデータ項目に直接マッピングできないことがあります。以下に例を示します。
- 営業アプリでは単一の項目 [氏名] に名前が格納されるが、マーケティングアプリでは、[名] と [姓] の2つの項目が使用される
- e コマースアプリでは住所が個別の項目 [都道府県]、[市町村]、[住所行1]、[住所行2] として格納されるが、会計処理アプリでは、単一の [請求先住所] 項目のみが受け入れられる
- 発券アプリの優先度は [低]、[中]、[高] として格納されるが、販売システムでは [低]、[標準]、[緊急] となっている
このような場合は、formula を使用して、Workato のデータ変換機能を活用できます。
# 項目をマッピングする際のよくある問題
以下に、項目のマッピング中に生じるよくあるエラーをいくつか示します。
- 実行時に必須項目に値が割り当てられていない
設計時 (レシピの作成時) に、すべての必須項目がマッピングされることになると想定されます。必須項目が空のままの場合は、レシピの開始が拒否され、エラーがスローされます。
しかし、設計時に入力項目がマッピングされている場合でも、実行時 (トリガーイベントが発生し、ジョブが処理されるとき) に実際には値が割り当てられていないことがあります。このような場合、その特定のジョブはエラーをスローし、失敗します。
実行時に必須項目が値を受け取っていない場合に、どのように処理するかを決定する必要があります。それが解決する必要があるビジネスロジックエラーである場合は、ジョブを失敗させ、そのリードレコードを作成した従業員に通知することができます。たとえば、レシピが営業アプリから新しいリードを移動しようとしたが、[メールアドレス] が空であることがわかる場合があります。
- 間違ったデータツリーからのデータピル
入力項目にデータピルをマッピングする場合、データツリー内に同じ名前のデータピルが複数存在することはよくあります (Salesforce の Email
と Zendesk の Email
など)。したがって、関連するステップから適切なデータピルをマッピングしていることを確認するのは、非常に重要です。
- レシピの間違った部分からのデータピル
レシピに条件付きステップ (If .. Else
) がある場合、各ジョブには処理されないステップがあります。このような場合、処理されないステップに対するデータツリーの値は、通常空白になります。
このようなステップからのデータピルを使用している場合は、データピルが null になる可能性があります。
Last updated: 2023/8/31 1:07:14