繰り返しテーブル
繰り返しテーブルとは、テンプレート内の1行がPortantのワークフロー実行時に複数行へ展開される仕組みです。1行をデザインするだけで、Portantがソース内の各明細項目ごとにその行を複製します。
これは見積書、請求書、梱包明細書、作業範囲書、その他可変数の項目を一覧表示するあらゆる文書を作成するための仕組みです。

仕組み
通常のタグは単一の値に置き換えられます。明細項目タグはリスト形式の値に置き換えられ、1行につき1つの値が入ります。Portantは明細項目タグが配置されている位置を確認し、次のように動作します。
- タグがテーブルの行内にある場合、Portantはその行を項目ごとに1回ずつ複製します。
- タグがテーブルの外にある場合、Portantは値を結合して1つのテキストブロックとして出力します。
したがって、ルールはシンプルです。行を繰り返すには、タグをテーブルの1行内に配置してください。
繰り返し行の設定方法
必要な列数のテーブルをテンプレートに挿入します。
必要に応じて、列タイトルを記載したヘッダー行を先頭に追加します(この行は出力時にそのまま維持されます)。
明細項目タグを1行追加します。例:
| {{Item Name}} | {{Quantity}} | {{Unit Price}} | {{Line Total}} |必要に応じて、タグ数式を使用した合計行を末尾に追加します。例として、右端の列に
{{=SUM(Line Total)}}を配置します。
ワークフローが実行されると、タグの行は明細項目ごとの1行に置き換えられます。ヘッダー行と合計行はそのまま維持されます。テーブルの上下にある内容は変更されません。
繰り返し行に配置するもの
繰り返し行には、明細項目自体に属するタグのみを配置してください。顧客名、住所、見積番号などはドキュメントレベルのフィールドであるため、テーブルの外に配置する必要があります。
両者を混在させると、Portantはすべての行に顧客名を繰り返して出力します。これは通常、意図した動作ではありません。
ソース別の設定方法
仕組みはどこでも同じですが、ソースが明細項目を提供する方法は異なります。
- HubSpot. 各HubSpotの取引には、関連オブジェクトとして複数の明細項目を持つことができます。HubSpotの詳細な設定については、1つの文書への複数明細項目の追加を参照してください。
- Google Sheets. 繰り返し行はグループ化列と組み合わせて使用することで、Portantがどの行をまとめるかを認識できます。Google Sheetsのデータグループ化を参照してください。
- Webhooks. ペイロードに項目の配列が含まれている場合、Portantは各配列要素を明細項目として扱います。Webhookのデータグループ化を参照してください。
よくある注意点
- タグは必ず1行にまとめてください。明細項目タグを2行に分けて配置した場合、Portantは繰り返しパターンを認識できません。
- ヘッダー行とフッター行は個別にスタイルを設定でき、複製されません。
- SUMやAVGなどの数式は、明細項目セットに含まれるフィールドにのみ使用できます。タグ数式を参照してください。