Yoomでジョブカンと連携する



まずは、マイアプリの登録

+ [ジョブカン経費精算・ワークフローのマイアプリ登録方法](https://intercom.help/yoom/ja/articles/5561703-%E3%82%B8%E3%83%A7%E3%83%96%E3%82%AB%E3%83%B3%E7%B5%8C%E8%B2%BB%E7%B2%BE%E7%AE%97-%E3%83%AF%E3%83%BC%E3%82%AF%E3%83%95%E3%83%AD%E3%83%BC%E3%81%AE%E3%83%9E%E3%82%A4%E3%82%A2%E3%83%97%E3%83%AA%E7%99%BB%E9%8C%B2%E6%96%B9%E6%B3%95)


テストしたらエラーです。

:::note alert
{
  "error_message": "直近1時間以内にトリガーとなるアクションが実施されていないようです。"
}
:::

そういえば、１つも実行してないな


フォームIdってどこにある？意味が分からん form_idのこと？

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/ad0b64d1-732f-5abe-fd06-7fda7c93cb2c.png)


:::note
{
id: "55",
title: "10007 xxxxxx 1111/A内販 20/30/M1 T/ /5000000 463-8511 名古屋市xxxx xxxxx/学校長/201602事務所・自宅の新築・リニューアル大坪 啓二",
form_id: 39534073,
form_name: "035_得意先慶弔贈答申請書",
form_type: "general",
settlement_type: null,
status: "completed",
applied_date: "2024-10-01T14:57:36+09:00",
applicant_code: "21807",
applicant_last_name: "大坪",
applicant_first_name: "啓二",
applicant_group_name: "情報システム",
applicant_position_name: "",
proxy_applicant_last_name: null,
proxy_applicant_first_name: null,
group_name: "情報システム",
group_code: "073",
project_name: null,
project_code: null,
flow_step_name: null,
is_content_changed: false,
total_amount: null,
pay_at: null,
final_approval_period: null,
final_approved_date: "2024-10-01T17:07:06+09:00",
applicant_group_code: "073"
}
:::

上記のタイトルの中にSalesforceの得意先コードが埋め込まれています。先頭の10007

正規表現で抜けそうです。

```
(^[0-9]{5})
```

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/01daf245-74aa-6a15-5128-2d2b77262543.png)

Salesforce側ではジョブカンのURLも格納したい

ジョブカンからのメールに以下のような記述がありました。

```
詳細は以下のURLから確認できます。
https://ssl.wf.jobcan.jp/#/requests/62
```

62がどうも申請IDみたいなので、URLを組み立てることはできそうです

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/414f41d6-e7a3-cfd9-cb14-8d651763a9d7.png)


+ [正規表現の記載方法](https://intercom.help/yoom/ja/articles/5765750-%E6%AD%A3%E8%A6%8F%E8%A1%A8%E7%8F%BE%E3%81%AE%E8%A8%98%E8%BC%89%E6%96%B9%E6%B3%95)
+ [「テキストからデータを抽出する」の設定方法](https://intercom.help/yoom/ja/articles/9614864-%E3%83%86%E3%82%AD%E3%82%B9%E3%83%88%E3%81%8B%E3%82%89%E3%83%87%E3%83%BC%E3%82%BF%E3%82%92%E6%8A%BD%E5%87%BA%E3%81%99%E3%82%8B-%E3%81%AE%E8%A8%AD%E5%AE%9A%E6%96%B9%E6%B3%95)

+ [♻「データを操作・変換する」の設定方法](https://intercom.help/yoom/ja/articles/8034054-%E3%83%87%E3%83%BC%E3%82%BF%E3%82%92%E6%93%8D%E4%BD%9C-%E5%A4%89%E6%8F%9B%E3%81%99%E3%82%8B-%E3%81%AE%E8%A8%AD%E5%AE%9A%E6%96%B9%E6%B3%95)





種別をタイトルに保存しているのですが、うまく正規表現で抽出できませんね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/2b0a8fa8-9cdf-94ef-11af-75d4409d6de8.png)



「事務所・自宅の新築・リニューアル」を抽出したい

```
title: "10007 xxxxxx 1111/A内販 20/30/M1 T/ /5000000 463-8511 名古屋市xxxx xxxxx/学校長/201602事務所・自宅の新築・リニューアル大坪 啓二",
```

２時間色々触ったけどできませんね。やっぱり無理っぽいですね。数式でこの文字列を含んでいたらとかできたらいいのですが無い。これだから正直なとこころノーコードのツールは好きではありません。

仕方ないので、Salesforce側で処理することにしました。５分でフローができた...アホくさいなぁ。

フローでは以下の数式で抽出できました。

```
IF( CONTAINS({!$Record.title__c}, "弔事"),"弔事",
IF( CONTAINS({!$Record.title__c}, "ご結婚"),"ご結婚",
IF( CONTAINS({!$Record.title__c}, "ご出産"),"ご出産",
IF( CONTAINS({!$Record.title__c}, "事務所・自宅の新築・リニューアル"),"事務所・自宅の新築・リニューアル",
IF( CONTAINS({!$Record.title__c}, "傷病・入院"),"傷病・入院",
IF( CONTAINS({!$Record.title__c}, " 周年記念")," 周年記念",
IF( CONTAINS({!$Record.title__c}, "役員就任・昇進"),"役員就任・昇進",
"035種別エラー")))))))
```


申請IDを使って、申請の詳細情報を取得（汎用フォーム）を行えば内容を取得できそう。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/15253f79-0a3c-a1c6-63cb-9efbdc80a4c0.png)


### ロングテキスト項目で改行を使う。

正規表現によるデータの置換の置換対象では改行で保存できる。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/e06e513b-825f-ad20-a266-fb9ee3adc9b8.png)

この処理結果を使うと改行がついたままSalesforceに渡せますね。

レコードの追加のところでは、改行を入力しても無視されます。置換後の値を使うと何故か機能する

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/7ab243d8-9777-1223-28d8-45412aaec48e.png)


結果

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/5e6bb59a-db39-18dd-b751-d41574568765.png)


スマホで見ても改行されています。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/72b8b01b-8904-2ff4-55e7-ef4c9b107a60.png)



# 作ったフローボットを移動させる

+ [プロジェクト間におけるデータベース・フローボットの移動方法](https://intercom.help/yoom/ja/articles/7252883-%E3%83%97%E3%83%AD%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88%E9%96%93%E3%81%AB%E3%81%8A%E3%81%91%E3%82%8B%E3%83%87%E3%83%BC%E3%82%BF%E3%83%99%E3%83%BC%E3%82%B9-%E3%83%95%E3%83%AD%E3%83%BC%E3%83%9C%E3%83%83%E3%83%88%E3%81%AE%E7%A7%BB%E5%8B%95%E6%96%B9%E6%B3%95)