テンプレートファイルを出力するファイル形式と同じファイル形式で、Excel(.xlsx, .xlsm)、Word(.docx, .docm)、PowerPoint(.pptx, pptm)のいずれかの形式で作成してください。PDF出力の場合、Word(.docx)形式で作成してください。主オブジェクトと関連する子オブジェクトの項目を差し込み項目として使用することができます。
主オブジェクトの差し込み項目
主オブジェクトの差し込み項目を、以下の形式で設定します。
差し込み項目形式
{!オブジェクト名.項目名}
差し込み項目例
{!Opportunity.Name} *標準オブジェクト.標準項目
{!Bill__c.IssueDate__c} *カスタムオブジェクト.カスタム項目
子オブジェクトの差し込み項目
子オブジェクトの差し込み項目は、1行のみ入力してください。子レコード数に応じた行数が出力されます。参照項目がカスタム項目の場合、子リレーション名の末尾に"__r"を付与します。
差し込み項目 (2階層)
差し込み項目形式
{!子リレーション名.項目名}
差し込み項目例
{!OpportunityLineItems.Name} *親の参照項目が標準項目.標準項目
{!BillDetails__r.IssueDate__c} *親の参照項目がカスタム項目.カスタム項目
子リレーション名の確認方法
- オブジェクトマネージャーより該当の子オブジェクトの項目一覧を確認します。
- 子オブジェクトの項目一覧より、主オブジェクトの参照項目の項目名をクリックします。
- 項目の設定情報内の子リレーション名に表示されている内容が子リレーション名です。この時、親オブジェクトの参照項目がカスタム項目の場合、表示されている子リレーション名の末尾に「__r」を付与したものが子リレーション名になります。
連番
子レコードの連番を出力する場合、{!number()}を入力してください。1から始まる連番が出力されます。
子レコードの出力条件
子レコードの出力条件について、子レコードの出力条件設定を参照してください。
子レコードの並び替え出力
子レコードの並び順について、子レコードの並び替え出力を参照してください。
子レコードの3階層以降出力
3階層以降の子レコードの出力について、子レコードの3階層以降出力を参照してください。
子レコード1レコードにつき複数行出力
子レコード1レコードにつき複数行出力について、以下を参照してください。
パッケージオブジェクトの差し込み項目
パッケージオブジェクトの差し込み項目は、先頭に名前空間プレフィックス+「__」を付与します。
パッケージオブジェクトの主オブジェクトの差し込み項目
差し込み項目形式
{!名前空間プレフィックス__オブジェクト名.項目名}
差し込み項目例
パッケージの名前空間プレフィックスが"BillingMaster"の場合、オブジェクト名が"BM_Bills__c"の場合
{!BillingMaster__BM_Bills__c.Name}
パッケージオブジェクトの子オブジェクトの差し込み項目
差し込み項目形式
{!名前空間プレフィックス__子リレーション名.項目名}
差し込み項目例
パッケージの名前空間プレフィックスが"BillingMaster"、子リレーション名が"BM_BillDetail_Bills"の場合
{!BillingMaster__BM_BillDetail_Bills__r.Name}
項目の出力値
データ型 | 説明 |
参照関係/主従関係 |
|
日付 | Excel・・・シリアル値が出力されます。
Word/PowerPoint/PDF・・・Salesforceのレコード画面の書式で出力されます。 書式は、日付・日付/時間項目の書式設定を参照してください。 |
日付/時間 | Excel・・・シリアル値が出力されます。
Word/PowerPoint/PDF・・・Salesforceのレコード画面の書式で出力されます。 書式は、日付・日付/時間項目の書式設定を参照してください。 |
通貨 | 通貨記号は、出力されません。
書式は、通貨・数値項目の書式設定を参照してください。 ※Ver.1は、通貨・数値項目の書式設定 (Ver.1) |
数値 | 書式は、通貨・数値項目の書式設定を参照してください。
※Ver.1は、通貨・数値項目の書式設定 (Ver.1) |
リッチテキストエリア |
|
テキスト(暗号化) | レコード詳細ページでユーザーに表示されている内容と同様に、マスクされた値が出力されます。 |
項目の参照権限が無いユーザー
ファイルを出力するユーザーに差し込み項目の参照権限がない場合、差し込み項目は空欄で出力されます。
小数点の考慮事項
商談金額や見積金額など一部の標準項目は、レコード画面上小数点が表示されない場合も、Salesforceには小数点以下が保存されている場合があります。例えば、商談の数量が小数点以下の数値を含む場合、金額のデータ型は"通貨(16、0)"にも関わらず、金額は小数点を含む値が保存されます。Salesforceに保存されている値は、開発者コンソールやDataloaderで確認してください。
考慮事項・制限事項
- すべてのレイアウトや出力パターンに対応していません。複雑なレイアウトはサポートされません。
- 差し込み項目に{!If(xxxxx)}のような数式を使用することはできません。
- ファイルサイズは1~2MB以内を目安にしてください。1~2MB以内でもファイルにテキストや画像が大量に含まれる場合、ファイルの出力に失敗します。
- テンプレートファイルは、Microsoft Officeデスクトップ版で作成してください。オンライン版等、他のアプリケーションで作成されたテンプレートファイルはサポートされません。
- Officeファイルの全ての機能を使うことはできません。一部の機能は無視されます。
- テンプレートファイルに会社のロゴなどの画像を含めることができます。但し、画像のファイルサイズによっては、出力に時間がかかったり、出力エラーになる場合があります。また、PDFの場合、レイアウトが崩れる場合があります。テスト環境で実際に出力してご確認ください。
参考
トラブルシューティング
- 差し込み項目がレコード値に置き換わらず、そのまま出力されます。
- リッチテキストエリア項目の値がHtmlのタグ付きで出力されます。
- 通貨項目の通貨記号が出力されません。
- 数値項目の3桁カンマ区切りが出力されません。
- 数値項目の小数点の桁数が余分に表示されます。
- 差し込み項目の値が2重に出力されます。
- 日付の検索条件「2024/12/31」がエラーになります。
- 表の罫線が表示されません。
- グラフが正しく出力されません。
- カスタムボタンから連続してファイルをダウンロードできません。
- リストビューから一括出力時、複数ファイルをダウンロードできません。
- 「アクセス権がありません アクセス権がないため要求を実行できません。データの所有者、またはシステム管理者にお問い合わせください。」が表示されます。
- 「「OFCController」という名前の Apex クラスへのアクセス権がありません。」が表示されます。
- 「テンプレートAPI名が"XXX"のOFC_Templateレコードは存在しません。テンプレートAPI名が正しいか確認してください。」が表示されます。
- 「テンプレートファイルのサイズが大きすぎるか、または内容が多すぎます。テンプレートファイルのサイズを小さくするか、内容を減らしてください。Apex heap size too large: XXX」」が表示されます。
- 「子レコードの出力数が許容値を超えています。出力ファイルにロングテキストエリアまたはリッチテキストエリア項目が含まれる場合、子レコード数は約100~200レコードが上限です。上限値はデータ型の長さによって異なります。Aggregate query has too many rows for direct assignment」が表示される。
- 「テンプレートファイルの読み取りに失敗しました。ファイル形式が正しくないか、またはファイルが壊れている可能性があります。」が表示されます。
- 「List has no rows for assignment to SObject」がゲストユーザーのファイル保存時に表示されます。