Workatoを初めて触ってみる②（初心者向け）

※2022年4月時点の情報に基づいています

# はじめに
Workatoを始めてみたので、Recipeを自力で作るところまでの記録を残しておきます。
本稿では、Recipe作成が対象です。

Project作成からConnection作成までは、前回の記事をご覧ください。

https://qiita.com/shuy/items/6b97408de1000d229719

# 作ってみるフロー
実際の業務とはかけ離れていますが、練習目的で以下のフローを自動化してみます。
1は手動で行い、2以降はWorkatoが自動的に行います。

1. Salesforceにて、行動を新規作成する。　←トリガー
1. カスタム項目「Web会議」を「Zoom」にすると、Zoomのミーティング予定を作成する。
1. Zoomの会議情報を１で作成した行動の「場所」に書き込む。
![SFDC1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/89445/64af7965-06b2-9137-af06-40e3a707eff1.png)

# Recipeを作る
Recipeを作ってみます。
今回は、Salesforceのレコード作成をトリガとしたフローとするため、「Trigger from an app」を選択します。
![Recipe1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/89445/4428aedb-9f42-c5b1-ef64-512fff984c3b.png)

## Step1. Salesforceの活動が作成されたことをトリガとする
「Choose an app」にて、「Salesforce」を選びます。
![Recipe2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/89445/f7337f8c-6ba3-07cd-9da6-95a38a1e8e66.png)

トリガアクションを選びます。今回は、「New record（Real-time）」とします。
![Recipe3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/89445/8a01f4df-4847-bb6e-652f-2e52aad88053.png)

認証に使用するConnectionを選びます。前もって作成しておいたConnectionを選択します。
![Recipe4.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/89445/179032bc-8a0d-7bac-e5d7-78b03488ce18.png)

トリガの対象オブジェクトと、取得した項目を選択します。
今回は、オブジェクトは「行動」、取得項目は、「Web会議（カスタム項目）」、「開始日時」、「終了日時」、「件名」とします。
![Recipe5.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/89445/9699f968-a650-7e7c-0bcd-5e1a6b137560.png)

Salesforceのトリガは以上となります。

## Step2. 条件分岐（Web会議がZoomかどうか）
Web会議がZoomだったら、Zoomの予約をしたいので、条件分岐を入れます。
「IF/ELSE condition」を選択します。
![Recipe6.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/89445/914f0eac-7f3d-71a7-252a-b616b3009106.png)

条件式を定義します。
Data fieldは「Web会議」、Conditionは「equals」、Valueは「Zoom」とします。
Data fieldを入力する際は、Recipe dataに表示されているように、Step1で取得した値を選ぶことができます。
![Recipe7.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/89445/6c497ccb-7fd0-be61-5c93-16273cd8809d.png)

## Step3. Zoomのミーティングを予約する
Step2条件分岐のYesのアクションを追加します。
![Recipe8.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/89445/b9fec7bf-08f1-194e-19f1-c62586e3aefd.png)

Step1と同様に、アプリケーションとアクション、Connectionを選択したら、必要な設定事項を入力します。
TopicはSalesforce行動の件名、Start timeはSalesforce行動の開始日時（+9時間したもの）、Durationは、Salesforce行動の終了日時と開始日時の差（Zoomに指定する単位は分なので、60で割る）とします。
日付などの関数は以下のリンクを参照ください。

https://docs.workato.com/formulas/formula-mode.html

![Recipe9.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/89445/203b2d65-8efb-0912-2169-4b2e0fd8428e.png)

## Step4. 活動の「場所」にZoomの会議情報を設定する
ここまでのStep3までと同様に設定します。
更新するレコードのキー（行動ID）は、Step1の行動ID（活動ID）とします。
![Recipe10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/89445/85b9cf30-ffc7-9900-752e-b7adca930de2.png)

## Step5～7. 条件分岐Elseの場合
Step4と同じなので割愛します。
![Recipe11.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/89445/1f0cd2e9-dc40-c526-e76a-dc7271cb8032.png)
![Recipe12.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/89445/b7dac446-28da-d79d-8f8a-7ef9ab2463b7.png)

# テスト
リリースする前にテストをすることができます。
各Stepで発生したデータの状況を確認することができます。
![テスト.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/89445/9c3ac852-b04f-3ece-2025-24c940bcce22.png)

# リリース
テストが完了したら、Start recipeを押してリリース完了です。
![リリース.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/89445/ad771237-8209-881e-10db-b3a98626b57c.png)

試してみます。
まず最初に、Salesforceにて行動を作成します。Web会議は「Zoom」とします。
![sfdc1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/89445/9b12acef-3ea0-c8b3-5ee8-99854e514851.png)

しばらくすると、Zoomにミーティング予定が作成されていました。
![zoom.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/89445/402f1ff2-d678-9e22-0178-5898e3078257.png)

さらに、Salesforceには、会議情報が設定されました。
![sfdc2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/89445/a4064844-9b4f-f497-2e79-be0b2add9c93.png)

# さいごに
思った以上に簡単にRecipeを作成できました。
日本語対応がされていない点が少々残念ではありますが、それでも直感で操作できたので、差し引いても評価が高いと思います。