現在、Box Doc Genテンプレートタグでは、英語のみがサポートされています。 実稼働環境で使用する前に、テンプレートをテストして、言語の要件を満たしていることを確認してください。
1. テキストタグ
テキストタグは、文字列型、数値型、または日付型のデータフィールドです。 以下の例では、id、date、customerId、customerName、currency、amountをテキストタグに変換できます。
Doc Genタグでは、タグ内のキーワード間のスペースやハイフンはサポートされていません。 例えば、
**{{first name}}**や**{{first-name}}**はサポートされません。省略可能なタグ
デフォルト値
テキストタグの書式設定
リッチテキスト
Box Doc Genでは、リッチテキストを含むドキュメントを生成できます。 入力用のJSONデータにHTMLタグ (太字、斜体、下線、改行、段落、アンカー、画像など) が含まれている場合、Doc Genでは、自動的にそのタグがリッチテキストとして解釈され、関連する書式が適用されます。| HTMLタグ | JSONデータ | 出力 |
|---|---|---|
| 太字 | { “company”: “<b>Acme Inc.</b> ロードランナーショーでお約束のギャグとして登場する有名な架空の会社。 電話:<b> 999-999-9999</b>” } | Acme Inc. ロードランナーショーでお約束のギャグとして登場する有名な架空の会社。 電話: 999-999-9999 |
| 斜体 | { “company”: “<i>Acme Inc.</i> ロードランナーショーでお約束のギャグとして登場する有名な架空の会社。 電話:<i> 999-999-9999</i>” } | Acme Inc. ロードランナーショーでお約束のギャグとして登場する有名な架空の会社。 電話: 999-999-9999 |
| 下線 | { “company”: “<u>Acme Inc.</u> ロードランナーショーでお約束のギャグとして登場する有名な架空の会社。 電話:<u> 999-999-9999</u>” } | Acme Inc. ロードランナーショーでお約束のギャグとして登場する有名な架空の会社。 電話: 999-999-9999 |
| 太字、斜体、下線 | { “company”: “<b><i><u>Acme Inc.</u></i></b>ロードランナーショーでお約束のギャグとして登場する有名な架空の会社。 電話:<b><i><u> 999-999-9999</u></i></b>” } | Acme Inc. ロードランナーショーでお約束のギャグとして登場する有名な架空の会社。 電話: 999-999-9999 |
| 強調 | { “company”: “<strong>Acme Inc.</strong> ロードランナーショーでお約束のギャグとして登場する有名な架空の会社。 電話:<strong> 999-999-9999</strong>” } | Acme Inc. ロードランナーショーでお約束のギャグとして登場する有名な架空の会社。 電話: 999-999-9999 |
| 範囲 | { “company”: “<span>Acme Inc.</span> ロードランナーショーでお約束のギャグとして登場する有名な架空の会社。 電話:<span> 999-999-9999</span>” } | Acme Inc. ロードランナーショーでお約束のギャグとして登場する有名な架空の会社。 電話: 999-999-9999 |
| 強調 (斜体) | { “company”: “<em>Acme Inc.</em> ロードランナーショーでお約束のギャグとして登場する有名な架空の会社。 電話:<em> 999-999-9999</em>” } | Acme Inc. ロードランナーショーでお約束のギャグとして登場する有名な架空の会社。 電話: 999-999-9999 |
| 改行 | { “company”: “<b>Acme Inc.</b> \n ロードランナーショーでお約束のギャグとして登場する有名な架空の会社。 \n 電話:<b> 999-999-9999</b>” } | Acme Inc. ロードランナーショーでお約束のギャグとして登場する有名な架空の会社。 電話: 999-999-9999 |
| 段落 | { “company”: “<b>Acme Inc.</b> <p> ロードランナーショーでお約束のギャグとして登場する有名な架空の会社。 </p> <p> 電話:<b> 999-999-9999</b>”</p> } | Acme Inc. ロードランナーショーでお約束のギャグとして登場する有名な架空の会社。 電話: 999-999-9999 |
| 順序付きリスト | <ol><li>青</li><li>緑</li><li>赤</li></ol> |
|
| 順序なしリスト | <ul><li>青</li><li>緑</li><li>赤</li></ul> |
|
2. 画像タグ
Doc Genでは、Box内の任意の画像ファイルを、生成されたドキュメントに埋め込むことができます。 そのためには、以下の手順に従う必要があります。1. 画像ファイルをBoxにアップロードする
ドキュメント生成に使用される画像ファイルは、Boxにアップロードする必要があります。 APIを使用してドキュメントを生成する APIを使用してドキュメントを生成する際にサービスアカウントを使用している場合は、そのサービスアカウントでファイルにアクセスできることを確認してください。2. Doc Genテンプレートを作成する
Doc Genでは、以下の方法で、画像を使用したドキュメントの生成が可能です。- プレースホルダ画像からドキュメントを生成する
- HTML画像を使用してドキュメントを生成する
プレースホルダ画像からドキュメントを生成する
Microsoft Word用アドインを使用したDoc Genテンプレートの作成 アドインを使用して画像タグを挿入するには、以下の手順に従います。- Box Doc Gen Template Creatorアドインで、希望するプレースホルダ画像を使用して画像タグを作成します。
- [ドキュメントタグ] > [画像タグ] に移動します。
- ドキュメント内で、画像タグを挿入する領域を選択します。
- 画像タグをダブルクリックして挿入します。
- image-pathは、ドキュメント生成リクエストを作成する際に使用されるJSONペイロード内の画像に関する主要なフィールドです。
- プレースホルダ画像の追加も可能です。追加するには、その画像をドキュメントにドラッグアンドドロップするか、画像のプレースホルダを挿入するだけです。 ただし、必要なコードは必ず、ALT TEXTフィールドに手動で入力してください。
{{ tablerow item in multipleImages }} | |
{{ item.name }} | image-pathを含むJSONが代替テキストに設定された埋め込み画像 |
{{ endtablerow }} |
画像のALT TEXTセクションに必ず画像パスを含めるようにしてください。
HTML画像を使用してドキュメントを生成する
JSONペイロードからHTML画像を含むドキュメントを生成するには、テンプレートにテキストタグを含めます。この方法は、単純な画像の生成のみに対応しており、ForループやTableループで繰り返される画像の生成には対応していません。
3. ドキュメントを生成するためのJSONペイロードを作成する
プレースホルダ画像からドキュメントを生成する
Box内の画像ファイルを含むドキュメントを生成するには、以下のスキーマを使用します。- プレースホルダ画像で使用されるキー (例: singleImage)
- id - Box内の画像ファイルのファイルIDを渡すため
- type - これがドキュメントに埋め込む画像ファイルであることを示すため
ここで言及されている画像ファイルIDは、Box内のファイルIDを指しています。
HTML画像を使用してドキュメントを生成する
HTML画像タグを使用してBox内の画像をドキュメントに含めるには、次の形式でJSONスキーマを定義します。- **file://[FILE_ID]**は、Boxに保存されている画像のファイルIDを指します
- heightとwidthでは、画像の表示サイズを定義します
- altでは、画像の代替テキストを指定します
4. ドキュメント生成リクエストを作成する
Doc Genを使用すると、Boxから直接取得した画像が埋め込まれたドキュメントを作成できます。 生成されたドキュメントに画像を含めるには、以下のいずれかの方法を使用できます。- Box Doc Gen API – 画像を含むドキュメントをプログラムで生成します。 手順を説明するガイダンスについては、Box Doc Gen APIのドキュメントを参照してください。
- Box Doc Genウェブアプリ – ウェブインターフェースを使用して、画像が埋め込まれたドキュメントを作成します。 手順の詳細については、ドキュメントを参照してください。
3. 表タグ
入力データの配列を使用して、表を生成して動的に書式設定できます。 以下に例を示します。itemsは、動的な表として表示することができる配列です。id、name、quantity、price、amountは、配列内の変数であり、個々の列として動的な表に表示されます。
ドキュメントテンプレート
タグが挿入されたドキュメントテンプレートは次のようになります。| ID | 名前 | 数量 | 価格 |
|---|---|---|---|
{{tablerow item in invoice.items}} | |||
{{item.id}} | {{item.name}} | {{item.quantity}} | {{item.price}} |
{{endtablerow}} | |||
出力
Box Doc Genは、ドキュメントテンプレートに追加された表タグを自動的に識別して、入力JSONデータのフィールドと照合し、反復処理を数回実行して入力データに対応した表全体を生成します。 生成されたドキュメントに出力される表は次のようになります。4. リストタグ
入力データの配列を使用して、順序付きリストまたは順序なしリストを動的に生成できます。 以下に例を示します。itemsは、動的なリストとして表示することができる配列です。id、name、quantity、price、amountは、配列内の変数であり、リスト内で繰り返されるフィールドとして表示されます。
リストの書式設定
Box Doc Genテンプレートは、ドキュメントテンプレートで使用できるさまざまなカスタムコードをサポートしています。 次のJSON入力データを参考に、さまざまな区切り記号や区切り文字を使用できます。5. 条件
条件を使用して、出力ドキュメントに入力を追加できます。 Box Doc Gen Template Creatorアドインは、ドキュメントテンプレート内でこれらの条件を定義するのに役立ちます。サポートされている条件と演算子
| タグの種類 | サポートされている条件 | 条件のつなぎとしてサポートされている演算子 |
|---|---|---|
| 文字列 | == (に等しい)、!= (に等しくない)、isPresent | AND、OR |
| 日付 | isPresent | AND、OR |
| 数値 | <、>、==、!=、>=、<= | AND、OR |
表を伴う条件
Doc Genでは、表や画像など、任意のコンテンツを条件に応じて表示できます。{{ if invoice.customerId isPresent }}
| ID | 名前 | 数量 | 価格 |
|---|---|---|---|
{{tablerow item in invoice.items}} | |||
{{item.id}} | {{item.name}} | {{item.quantity}} | {{item.price}} |
{{endtablerow}} | |||
{{ endif }}
表内の条件
Doc Genでは、表内の列で条件に応じてコンテンツを表示できます。 例| ID | 名前 | 数量 | 価格 |
|---|---|---|---|
{{ tablerow item in invoice.items }} | |||
{{ item.id}} | {{ item.name}} | {{ item.quantity}} | {{ if item.price isPresent}}{{item.price}}{{ else }}-{{ endif }} |
{{ endtablerow }} | |||
6. 計算
Box Doc Genテンプレートは動的な計算をサポートしています。 手動でタグ付け言語に計算コードを書き込むか、Box Doc Gen Template Creatorアドインを使用することができます。 サンプルコードの計算は以下のようになります。- 請求書: 個々の明細項目から正味請求額の合計を決定する。 例: Sum (請求書の個々の明細項目の金額)
- 発注書: 最大調達額の上限を設定する。 例: 5% * 正味発注額
- 販売契約書: SLA違反に対する違約金を定義する。 例: 10% * 総販売額
以下のJSONを、ドキュメントテンプレートに計算を追加するための入力とします。