Skip to main content

DOCX および PPTX ドキュメントテンプレートを作成する

学習の目的

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

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

DOCX および PPTX ドキュメントテンプレート

Sophia のチームは Web ドキュメントテンプレートを気に入りました。さらに、厳格な書式設定とドキュメント表示のコントロールが必要な Word ドキュメントと PowerPoint ドキュメントも生成する必要があります。Felix がテンプレートに取りかかる前に、埋め込みトークンについて学習しておきましょう。

埋め込みトークン

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

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

Felix がトークンを使用して新しい Microsoft Word .docx テンプレートを作成する手順を見てみましょう。

変数トークン

テンプレートには登録者名、町名・番地、市区郡、都道府県、郵便番号、国などの情報を取得する必要があります。このような変数の埋め込みトークンが含まれたサブスクリプション契約テンプレートの例を次に示します。

変数トークンが含まれた Microsoft Word ドキュメントテンプレートの例

この例では、登録者名はお客様の名前です。

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

生成されたドキュメントには、取引先名、町名・番地、市区群、都道府県、郵便番号、国が表示されます。

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

サブスクリプション契約にはすべての商品がリストされるセクションが含まれています。この場合は、お客様が注文を検討している通信商品です。

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

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

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

最終出力ドキュメントには複数の商品行を表示するテーブルが含まれ、お客様が注文を検討している商品が表示されています。 

条件評価トークン

多くの場合、契約にはコンプライアンスの詳細 (商品の輸出・輸入に関する情報など) を含める必要があります。この例では、輸出コンプライアンスは米国外に住むお客様にのみ適用されます。そのため、Infiwave のサブスクリプション契約では、配送先住所が米国外のお客様にのみこの条項を表示する必要があります。

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

条件評価トークンの例

この条項を設定するには、Felix はドキュメントテンプレート内で条件評価トークンを使用します。こうすることで、米国外のお客様向けの最終出力ドキュメントにはこの条項が含まれます。その他の国のお客様の場合、条項は非表示になります。条件評価トークンは true/false ステートメントでのみ機能します。

テンプレート作成

次に Felix は Document Template Designer を使用してテンプレートを作成します。

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

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

次に Felix はテンプレートをテストします。 

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

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

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

Data Mapper によるデータマッピング

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

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

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

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

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

トークンマッピング方法としてカスタムクラスを選択すると、プロセスは Data Mapper によるデータマッピングと同様ですが、やや高度なものになります。 

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

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

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

リソース 

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

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

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