Skip to main content
Build the future with Agentforce at TDX in San Francisco or on Salesforce+ on March 5–6. Register now.

ドキュメントテンプレートを作成する

学習の目的

この単元を完了すると、次のことができるようになります。

  • OmniStudio Document Generation で使用される 3 種類のトークンとその構文について説明する。
  • Document Template Designer でドキュメントテンプレートを作成する。
  • OmniData Transform とカスタムクラスのデータマッピングフローについて説明する。

前提条件

開始する前に、次の必須コンテンツを完了していることを確認してください。

次の推奨コンテンツを完了することも検討してください。

Cloud Kicks でのドキュメント生成

「OmniStudio Document Generation の基礎」モジュールでは、Cloud Kicks がデジタルドキュメント生成を使用してセールスプロセスの簡略化と高速化を実現した方法について学習しました。 

Cloud Kicks の営業担当である Candace Evans は、ドキュメント生成の利点と機能を学びました。

Cloud Kicks の営業担当である Candace。

常に意欲的に Cloud Kicks の成功に取り組んでいる Candace は、この多機能のドキュメント生成システムを設定したいと考えています。

Cloud Kicks には信頼できる Salesforce システム管理者の Linda Rosenberg がいます。 

Cloud Kicks の Salesforce システム管理者である Linda。

Linda は OmniStudio Document Generation ソリューションの実装と管理に必要なロジックを設定する方法を知っています。そこで Candace とそのチームをサポートすることになりました。 

ドキュメントテンプレートについて

OmniStudio Document Generation では、チームがドキュメントを簡単に生成できるように Microsoft Word や PowerPoint のテンプレートを設計することができます。ビジネスプロセスを最適化するために、テンプレートは必要に応じてシンプルにも高度にもできます。ドキュメントテンプレートの作成は、ドキュメント生成システムを設定するときに取り組む最初のプロジェクトです。 

テンプレートをデザインするときに標準要素、条件要素、動的要素を含めることができます。そうすると、エンドユーザーがテンプレートから新しいドキュメントを生成するとき、多くのコンテンツがすでに入力されているため、作業の大部分は完了しています。

このソリューションを使用して、テンプレートに標準のコンテンツ、トークン、表示条件を使用します。たとえば、見積テンプレートには大抵、会社名、取引先責任者詳細などの標準要素が必要です。テンプレートでは、見積価格と共に、お客様が選択した商品や機能など動的要素を使用する場合もあります。ドキュメントによっては、特定の条件下でのみ表示するセクションが必要になる場合もあります。心配はいりません。それも OmniStudio Document Generation で対応が可能です。

テンプレートの準備ができたら

  1. ファイルを Document Template Designer にアップロードします。
  2. テンプレートメタデータ (名前や型など) を指定します。
  3. データのマッピングと抽出に必要な Data Mapper を選択します。
  4. テンプレートをテストします。

テンプレートに問題がなければ、ロールアウトすることができます。

ドキュメントテンプレートの設定について学んでいるとワクワクします。この時点で、Salesforce システム管理者の Linda は営業の Candace のために見積ドキュメントテンプレートを作成しています。

埋め込みトークン

トークンとは、入力データを対応付けて動的な生成を可能にするテンプレート内のプレースホルダーのことです。.docx テンプレートと .pptx テンプレートでは、変数、繰り返しコンテンツ、条件評価などのさまざまな種別のトークンを埋め込むことができます。

トークン種別をクリックすると詳細を確認できます。 

メモ

ナレッジ記事「Known Limitations in Client Side Document Generation (クライアント側ドキュメント生成の既知の制限事項)」「Known Limitations in Server Side Document Generation (サーバー側ドキュメント生成の既知の制限事項)」を参照してください。クライアント側とサーバー側のドキュメント生成については、このモジュールで後ほど詳しく学習します。

Linda が見積テンプレートでトークンをどのように使用しているかを見てみましょう。

変数トークン

Linda の見積ドキュメントには、会社名、見積番号、見積日などの変数が含まれています。彼女は変数トークンを使用してテンプレートの変数を表しています。 

次の例では、取引先の名前とトークンが太字になっています。取引先名とはお客様の会社名です。

変数トークンを使用した見積テンプレートの例。

最終出力ドキュメントには、取引先名、見積番号、見積日が表示されます。トークンと同じように、取引先名も太字になっています。

変数トークンを使用した最終出力ドキュメント。

繰り返しコンテンツトークン

見積ドキュメントにはすべての商品 (この例では、お客様が注文したい履き心地抜群のスニーカー) をリストするセクションが含まれています。 

繰り返しコンテンツトークンの例。

この変数の場合、Linda は表形式で繰り返しコンテンツトークンを使用しています。 

繰り返しコンテンツトークンを使用した最終出力ドキュメント。

最終出力ドキュメントには複数の商品行を表示するテーブルが含まれ、お客様が購入を検討している各種類のスニーカーをリストしています。 

条件評価トークン

Cloud Kicks では、アラスカとハワイのお客様の場合、靴の配送にかかる日数が他州よりも長くなります。したがって、アラスカとハワイのお客様の見積ドキュメントには配送日数に関する免責事項のセクションが含まれます。納入先住所がアラスカまたはハワイのお客様のみに免責事項を表示する必要があります。

これを設定するために、Linda は条件条項を作成します。 

条件評価トークンの例。

この条項を設定するために、Linda はドキュメントテンプレート内で条件評価トークンを使用します。 

これにより、アラスカとハワイのお客様の最終出力ドキュメントには免責事項が含まれます。その他の州のお客様の場合、テンプレートの免責事項は非表示になります。条件評価トークンは true/false ステートメントでのみ機能します。

Document Template Designer

.docx または .pptx テンプレートを作成したら、次のステップはそれを Document Template Designer にアップロードすることです。Linda は Designer を使用してドキュメントテンプレートを定義し、テストします。

  1. アプリケーションランチャーに移動し、[Document Template Designer] を開きます。
  2. [New (新規)] をクリックします。[Start New Template (新規テンプレートを開始)] ウィンドウが開きます。[Template Settings (テンプレート設定)] セクションと [Attach File (ファイル添付)] セクションが含まれる [Start New Template (新規テンプレートを開始)] 画面が表示されている Document Template Designer の UI。
  3. テンプレートの名前を入力します (例: Sales Quote Template (販売見積テンプレート)) (1)。
  4. [Template Type (テンプレートの種類)] で Microsoft Word または Microsoft PowerPoint を選択します (2)。
     [Token Mapping (トークンマッピング)] 設定でトークンがどのように入力されるかを決定します。OmniDataTransform またはカスタムクラスを使用できます。詳細は、「リソース」を参照してください。
  5. [Token Mapping Method (トークンマッピング方法)] で方法を選択します。たとえば、Data Mapper を使用してマッピングを作成する場合は OmniDataTransform を選択します (3)。
    マッピング Data Mapper (4) は .docx または .pptx テンプレートからトークンを抽出して Salesforce 内の項目にマッチさせます。時間を節約するために、Data Mapper Designer の Quick Match 機能を使用して項目を自動的にマッチさせます。
  6. トークンで使用するためにデータを変換する [Mapping Data Mapper Bundle Name (マッピング Data Mapper バンドル名)] を入力します。上記の画面の例では、DRTranformQuote という名前が入力されています (4)。
  7. 必要に応じて、トークンで使用するために Salesforce データを取得する [Data Extract Data Mapper Bundle Name (データ抽出 Data Mapper バンドル名)] (5) を入力します。画面の例には、DRExtractQuote という名前が入力されています。このステップを実行する必要があるのは、ドキュメントテンプレートのデータの収集に OmniScript を使用している場合のみです。
  8. コンピューターから .docx または .pptx ファイルを Document Template Designer の [Attach File (ファイル添付)] 領域にドラッグするか、[Browse (参照)] をクリックしてファイルを見つけます (6)。
  9. [Save Template Details (テンプレートの詳細を保存)] (7) をクリックします。

新しい Microsoft Word .docx テンプレートが使用できる状態になりました。

テンプレートをテストします。

サンプルのクライアント側 OmniScript を使用してドキュメントを生成します。ドキュメントの内容が適切に表示されるかどうかを確認します。満足できるまで、Document Template Designer を使用してトラブルシューティングして調整してください。

ドキュメント生成でのデータマッピング

ここまでで、ドキュメント生成プロセスでのデータマッピングについて学習しましたが、さらに詳しくデータがどのようにドキュメントに取得されるかを知りたい方もいらっしゃるかと思います。そこで、OmniDataTransform とカスタムクラスというトークンマッピング方法を詳しく見てみましょう。

OmniDataTransform によるデータマッピング

トークンマッピング方法として OmniDataTransform を使用すると、Data Mapper によってデータが抽出されテンプレート項目にマッピングされます。Linda の見積ドキュメントは、取引先名や見積番号といった、Salesforce に保存されているデータを必要とします。このデータをテンプレートで使用するには、Data Mapper Extract を使用して、Salesforce データベースからデータを JSON 形式で取得します。 

JSON ベースのドキュメント生成データフローとデータマッピングを示す図。

抽出された JSON は、そのままではまだ使用できません。各ドキュメントテンプレートに Data Mapper Transform という 2 つ目の Data Mapper を使用する必要があります。これにより、JSON コードが Document Generator で読み取り可能なフォーマットに変換されます。 

変換された JSON コードは、ドキュメントを生成する OmniScript のインプットとして使用することができます。エンドユーザーが OmniScript に入力すると完了です。最終的な Microsoft Word、Microsoft PowerPoint、または .pdf ドキュメントが完成します。

カスタムクラスによるデータマッピング

トークンマッピング方法としてカスタムクラスを選択した場合、プロセスは OmniDataTransform によるデータマッピングと同様ですが、ステップが少し増えます。 

カスタムクラスのデータマッピングフローを示す図。

Linda の見積ドキュメントテンプレートの場合、Apex カスタムクラスを独立して作成します。これはドキュメント生成 OmniScript への JSON インプットとして機能します。最終結果は同じく一意のフォーマットされた Microsoft Word、Microsoft PowerPoint、または .pdf ドキュメントになります。

ドキュメントを生成する OmniScript について説明してきましたが、まだ続きがあります。次は OmniStudio Document Generation の他の部分を見てみましょう。 

リソース

Salesforce ヘルプで Trailhead のフィードバックを共有してください。

Trailhead についての感想をお聞かせください。[Salesforce ヘルプ] サイトから新しいフィードバックフォームにいつでもアクセスできるようになりました。

詳細はこちら フィードバックの共有に進む