見出し画像

BizOpsで実装した連携・自動化・Botたちをご紹介!

はじめに

この記事は、BizOpsアドベントカレンダー19日目の記事です。
前回は境勇人さんの「起業して最初に導入すべき最強コーポレートツールまとめ(銀行口座・会計ソフト・請求書管理・コーポレートカード・デジタル名刺)#BizOpsアドカレ」でした。

自己紹介

コーポレートエンジニアとBizOpsをやっているよこやまです。
SIerから情シスに転向してもう7年くらい経ちまして、1年半前からBizOpsも兼務しています。Salesforceを中心にシステム連携やオペレーションの構築をメインに、これからはBizOpsに絡めたデータ分析の方をやっていきたいと思っています。

この記事では、BizOpsとして作った一部の自動化やBotをご紹介し、いいなと思ったらぜひみなさんの会社でも使ってみてください!という内容のものです。
ただ、今回はどう実装するかの詳細までは書いていません🙇

前提

環境によっては制限があったりするので前提として記載します。

  • Salesforce:Sales Cloud Enterprise

  • Zapier:Professional (5,000task/mo)

紹介

商談情報のSlack通知

これはフローで簡単に実装できるのでやっているところが多いかもしれませんが、以下のタイミングでSlack通知をするようにしています。()内は名前です。

  • 受注(受注ノ富士)

  • 失注(失注丸)

  • 商談化(商談ノ海)

  • SQL(SQL昇龍)

商談化した時のSlack通知

単なる通知ではなく、次のアクションに繋げてもらうための視聴率を意識して作っています。通知する内容は精査し、できるだけ特定の部署に寄った内容にしないことやコア顧客であれば@channelメンションを付けるといったかたちで工夫が必要です。

この手の類の通知は、とりあえず通知すれば見るだろう、見るべきだという人がいるかもしれませんが、まったくそんなことはありません。ちゃんと見てもらい人にとって有益で見たくなるようなデザインにしなければいけません。

取引先が重複したらSlack通知する

以上。

じゃなくて、解説ですね。
ロジックはシンプルで取引先が作成されたのをトリガーにZapierで名前の重複をチェックしてSlack通知するような仕組みです。
ちなみに取引先が被ってるので歌舞伎丸です。これ分かった人は結構すごい。

弊社のメンバーが優秀なせいで最近会えていません。

Salesforceから申請してSlackで承認する

商談のフェーズが進むと様々な申請を提出する必要があります。
ロゴの掲載、事例協力、値引申請、セキュリティチェック、法務チェック…申請する場所が統一されていないと複雑でややこしいですよね。

一部の申請は、Salesforceから申請すると申請内容がSlackに通知、承認の絵文字が押されると承認済みとしてSalesforceに返却されるようになっています。

承忍くん

Slack通知まではSalesforceのフローで実装しています。特定のチャンネルで承認が押されたらZapierがトリガーされ、対象の投稿を取得して分解、対象のレコードを特定してZapierで更新する、といった実装になっています。
これの難しいところは最終的にSlackからSalesforceに値を返すところでしょうか…ZapierがなければGASとSalesforce APIで実装することもできます。

今回、スマホからでも承認できるようにあえて承認方法をカジュアルにしています。いつ承認したか記録が取れない、絵文字を間違って押してしまう、絵文字を押した後に取り消されてしまう、ここらへんはもちろん把握して運用しています。

今後、営業活動で発生する申請はSalesforceに集約したいのですが、そうするとより厳格な申請も出てくるので承認方法は改善の余地ありですね。

RedashからデータをSalesforceに連携する

最後はもう少し高度なものになります。
弊社はRedashを使ってSalesforceやプロダクトのデータを可視化、分析等で利用しているのですが、全員がSQLを習得しているわけではありません。仮にSQLが書けるとしてもSalesforceとプロダクトどちらのデータ構造も理解していないとデータを正しく取得できません。

CS向けのSalesforce開発でプロダクトのデータをRedashから取得してSalesforceに連携する実装をしました。
まずはRedashでSalesforceに連携したいデータを取得するクエリを作成し、その結果をAPI経由で取得できるようにURLを取得します。

Results in CSV format:
https://analytics.xxx.com/api/queries/xxx/results.csv?api_key=xxx

Results in JSON format:
https://analytics.xxx.com/api/queries/xxx/results.json?api_key=xxx

そしてApexで上記のURLからクエリ結果を取得、そのままApex上でレコードの追加・更新ができます。そのApexを日次フローで呼び出して毎日指定した時間にRedashからデータが連携されるようにしています。

今回の実装はGASでも同じことができます。ただ、GASだと制限が多くてこういった件数が多くて今後も増えていくデータを扱うには適していないと判断してApexで実装してみました。

まとめ

こういった取り組みには工数の削減のような数値化しやすいもの以外にもっと大きな効果があります。会社のカルチャーを醸成させたり、営業と開発のコミュニケーションのきっかけを作ったり、失敗してもいいという雰囲気ができたり、このあたりはまた別で話したいと思います。
だって重複する取引先を作ったら歌舞伎丸が現れてみんなから喜ばれるんですよ、素敵じゃないですか。

遊び心とユーモアは大切に、怒られない程度にこれからも職人やっていきたいです。


ちなみに社内にはコーポレートエンジニアとして作ったBotもたくさんありますので、これはまた情シスの方でアウトプットします。

この記事が気に入ったらサポートをしてみませんか?