ADVERTISEMENT

【Googleドキュメント】Salesforceとのドキュメント連携!営業資料自動生成

【Googleドキュメント】Salesforceとのドキュメント連携!営業資料自動生成
🛡️ 超解決

営業資料の作成に毎回多くの時間を費やしていませんか。Salesforceに蓄積された顧客データを手作業でGoogleドキュメントに転記するのは非効率で、ミスも発生しやすいものです。この記事では、GoogleドキュメントとSalesforceを連携し、営業資料を自動生成する方法をご紹介します。具体的には、Google Apps Scriptを活用してデータを取得し、定型のテンプレートに反映させる手順を解説します。

【要点】SalesforceデータからGoogleドキュメントの営業資料を自動生成する3つのステップ

  • Apps ScriptでSalesforce APIに接続: スクリプトエディタからREST APIを呼び出し、データを取得します。
  • テンプレートのプレースホルダー設定: ドキュメント内に「{{会社名}}」などのタグを埋め込み、自動置換の準備をします。
  • トリガーによる自動実行: スプレッドシートの更新や時間指定でスクリプトを自動起動し、常に最新の資料を生成します。

ADVERTISEMENT

SalesforceとGoogleドキュメントの連携の仕組み

SalesforceのデータをGoogleドキュメントで利用するには、Google Apps Script(GAS)を経由してREST APIにアクセスする方法が一般的です。Apps ScriptはGoogleのサーバー上で実行されるJavaScriptベースのスクリプトで、OAuth 2.0認証を用いて安全にSalesforceと通信します。取得したデータは、あらかじめ用意したテンプレート文書内のプレースホルダー(例:{{会社名}})と置き換えることで、瞬時に営業資料を生成します。この仕組みを応用すれば、見積書や提案書、案件サマリーなど、あらゆる定型文書を自動化できます。

営業資料自動生成の具体的な手順

事前準備(APIアクセス権限とテンプレート作成)

  1. Salesforceで接続アプリケーションを作成する
    設定メニューから「アプリケーションマネージャ」を開き、新しい接続アプリケーションを作成します。コールバックURLには「https://script.google.com/macros/done」を指定し、OAuth 2.0のスコープに「API」を追加します。作成後、コンシューマ鍵と秘密鍵を控えてください。
  2. Googleドキュメントでテンプレートを作成する
    新しいドキュメントを開き、営業資料のレイアウトをデザインします。データを差し込む位置には二重中括弧で囲んだキー名(例:{{会社名}}、{{担当者名}}、{{案件名}})を入力します。このキー名は後ほどスクリプトで使用するため、Salesforceの項目名と一致させると便利です。

Apps Scriptでデータ取得と文書作成のコードを書く

  1. スクリプトエディタを開く
    テンプレートドキュメントの「拡張機能」メニューから「Apps Script」を選択します。プロジェクト名は「Salesforce連携」などわかりやすい名前に変更してください。
  2. OAuth認証コードを記述する
    スクリプト内でSalesforceのREST APIを呼び出すため、OAuth 2.0の認証フローを実装します。Scriptサービスを使ってアクセストークンを取得し、後続のリクエストに使用します。鍵と秘密鍵はプロパティに保存し、コードに直接記述しないよう注意してください。
  3. データ取得と文書作成の関数を実装する
    Salesforceから必要なオブジェクト(取引先責任者、商談など)をクエリし、レスポンスを解析します。その後、テンプレートドキュメントをコピーし、本文内のプレースホルダーを取得したデータで置換します。置換にはDocumentAppのreplaceTextメソッドを使用します。完成した文書は指定したフォルダに保存します。

トリガーを設定して自動化を完成させる

  1. スクリプトにトリガーを追加する
    Apps Scriptエディタの左メニューから「トリガー」を開き、「トリガーを追加」ボタンをクリックします。実行する関数を選択し、イベントのソースを「時間主導型」または「スプレッドシートから」に設定します。例えば、毎日午前9時に実行すれば、営業開始時に最新の資料が準備されるでしょう。
  2. 初回の認証を済ませる
    トリガーを設定後、一度スクリプトを手動実行してSalesforceの認証画面を通過します。承認が完了すれば、以降は自動実行でも安全にデータを取得できます。認証情報はスクリプトのプロパティに保存され、繰り返し使用されます。

よくあるトラブルと対処法

API接続エラーが出るとき

Salesforce APIへの接続に失敗する場合、まずOAuthのスコープとコールバックURLを確認してください。スコープに「refresh_token」が含まれているか、コールバックURLが正しいスペルであることが重要です。また、接続アプリケーションのIP制限がかかっていないかも確認しましょう。Googleのサーバーからのアクセスを許可する必要があります。

テンプレートの置換が正しく行われない

置換されないプレースホルダーがある場合、キー名のスペルミスや大文字小文字の違いが原因です。Salesforceの項目名とテンプレート内のキー名を厳密に一致させてください。また、replaceTextメソッドは正規表現を受け入れるため、特殊文字が含まれていると誤動作することがあります。プレースホルダーは英数字とアンダースコアのみで構成することをおすすめします。

スクリプトの実行時間が長すぎるとき

大量のデータを処理する場合、Apps Scriptの1回の実行時間制限(6分)を超えることがあります。その場合は、処理を分割して複数のトリガーで実行するか、Salesforceのクエリにフィルターをかけて一度に取得するレコード数を減らしてください。また、不要な項目を除外してレスポンスを軽量化するのも効果的です。

ADVERTISEMENT

手動作成と自動生成の比較

項目 手動作成 自動生成
1件あたりの作成時間 15~30分 数秒
データ入力ミスの発生率 高い ほぼゼロ
大量生成時の負荷 人的リソースを圧迫 サーバーに任せられる
フォーマット統一 個人差が生じる 完全に統一される

まとめ

SalesforceとGoogleドキュメントをApps Scriptで連携することで、営業資料の作成時間を大幅に短縮できます。本記事で紹介した手順を実践すれば、テンプレートにデータを流し込む一連の流れを自動化できます。さらに応用として、複数のテンプレートを切り替えたり、添付ファイルを自動でメール送信する仕組みも構築可能です。まずは簡単な案件サマリーから自動生成に挑戦してみてください。


ADVERTISEMENT

📄
Googleドキュメントトラブル完全解決データベースこの記事以外にも、書式・共有・Apps Script・引用など様々な困りごとへの解決策をまとめています。逆引きに活用してください。
この記事の監修者
✍️

超解決 第一編集部

疑問解決ポータル「超解決」の編集チーム。正確な検証と、現場視点での伝わりやすい解説を心がけています。