前回のテンプレートファイル作成に続き、今回はテンプレートレコードを作成します。
前回は、SalesforceでExcelの帳票を作成する– Office File Creator Excel編 – ①テンプレートファイル作成をご参照ください。
テンプレートレコードを作成する
テンプレートの設定を保存するOFC_Template__cオブジェクトのレコードを作成します。アプリケーションランチャーよりOFC_Template__cタブを表示させます。
リストビューより新規ボタンをクリックします。
各項目の値を入力します。
情報セクション
名前
テンプレートレコードを管理するための名前です。ここでは、わかりやすくオブジェクト名とファイル形式を名前に含め、「商談請求書_Excel」とします。
カテゴリ
名前と同様、テンプレートレコードを管理するためのカテゴリです。ここでは営業部が使用するものとし、「営業部」とします。
テンプレートApi名
これは後で設定するカスタムボタンのリンクに使用するものなので何でもいいのですが、「OpportunityBillExcel」とします。英数字とアンダースコアのみ使用可能です。
オブジェクトApi名
出力するレコードの主オブジェクトのオブジェクトApi名です。今回商談を主オブジェクトとするので、「Opportunity」を入力します。
ファイル形式セクション
出力ファイル種類
今回Excelを出力するので、Excel(.xlsx)を選択します。
出力ファイル名
出力するファイル名は、請求書_取引先名_商談名とします。取引先名と商談名に差し込み項目を設定し、請求書_{!Opportunity.Account}_{!Opportunity.Name}を入力します。
必須項目はここまでなので、ここで一度保存します。
これより下の(オプション)のセクションは任意入力となりますので、特別に設定したい内容がある場合のみ入力します。
(オプション)参照項目セクション
参照項目は商談のレコード詳細ページやリストビューなどではName項目が表示されますが、Dataloaderなどで出力時はId項目が出力されます。例えば、商談の参照項目である取引先項目は、Dataloaderで出力時、取引先Idが出力されます。
Office File Creatorで出力時に取引先Idではなく、取引先名を出力したい場合は、「参照項目はId項目ではなくName項目を出力する」をチェックオンにします。そのままIdを出力する場合は、チェックオフにします。デフォルトはチェックオンです。
(オプション)ファイルに保存セクション
Office File Creatorは、「ファイルに出力」と、レコードに「ファイルとして保存」、「添付ファイルとして保存」の3パターンの出力タイプが可能です。
ファイルとして保存する場合、「レコードに添付されたファイルのアクセス権限」を設定します。
「閲覧者」を選択した場合、レコードアクセス権があるユーザは、レコードに添付されたファイルへの閲覧者アクセス権を持ちます。
「レコードごとに設定」を選択した場合、レコードの参照・更新アクセス権があるユーザは、レコードに添付されたファイルへの編集アクセス権を持ちます。
例えば、商談のレコード詳細ページよりOffice File Creatorでレコードにファイルを保存後、保存したユーザ以外にはファイルの編集を許可しない場合、「閲覧者」を設定します。
他の人がそのファイルのバージョンアップを保存、または削除することを許可する場合は、「レコードごとに設定」を選択します。デフォルト値は「閲覧者」です。
(オプション)子オブジェクト1セクション
このセクションは、ファイル出力時、子オブジェクトの条件を絞って出力したい場合や並び替えを行いたい場合に入力します。これらの設定をしなくとも差し込み項目の子オブジェクトは出力されます。
今回、例として並び替えと条件を指定します。※子オブジェクト=関連オブジェクトです。
今回商談商品にカスタム項目で「キャンセル」という項目名で、API名がIsCancel__cというチェックボックス項目を作成しています。キャンセルがTrueのものは出力しないものとします。
(子1)子リレーション名
商談商品の子リレーション名「OpportunityLineItems」を設定します。検索条件もしくは並び替えを指定する場合は、必ず入力してください。
(子1)検索項目 Api名
「IsCancel__c」を設定します。
(子1)検索演算子
キャンセルがTrueではないものなので、キャンセル=Falseとし、演算子は「=」を選択します。
(子1)検索値
Falseを入力します。
続いて、並び替えを設定します。ここでは、商談商品の商品コードで昇順、数量で降順とします。
まず、一つ目の並び替え項目の商品コードで昇順を設定します。
(子1)並び替え項目1 Api名
商談商品の商品コードの項目API名「ProductCode」を設定します。
(子1)並び替え項目1 並び順
昇順(NULLS LAST)を設定します。NULLS FIRSTは空欄の場合に先頭にし、NULLS LASTは最後にします。
二つ目の並び替え項目の数量で降順を設定します。
(子1)並び替え項目2 Api名
商談商品の数量の項目API名「Quantity」を設定します。
(子1)並び替え項目2 並び順
降順(NULLS LAST)を設定します。
(オプション)子オブジェクト2セクション
関連オブジェクトを複数出力する場合で、条件や並び順を設定したい2つ目の関連オブジェクトがある場合、上記同様に設定します。
(オプション)子オブジェクト3セクション
関連オブジェクトを複数出力する場合で、条件や並び順を設定したい3つ目の関連オブジェクトが有る場合、上記同様に設定します。
メモ
テンプレートファイルに設定する関連オブジェクト数の上限はありませんが、出力条件や並び順を指定できる関連オブジェクトは3つまでです。
メモセクション
テンプレートレコードの管理用です。テンプレートファイルの変更履歴など、任意のメモを入力します。
テンプレートファイルをアップロードする
作成したテンプレートファイルをテンプレートレコード詳細ページのテンプレートファイルアップロード欄にドラッグ&ドロップでアップロードします。
テスト出力と差し込み項目の検証
テンプレートファイルの差し込み項目やテンプレートレコードが正しく設定されているか、実際にファイルを出力してテストをします。「テスト出力と差し込み項目の検証」のテキストボックスに主オブジェクトのレコードIdを入力します。ここでは商談のレコードIdを設定します。
Idの確認方法は主オブジェクトのレコード詳細ページを開き、URLのオブジェクト名の次に表示されているものがレコードIdとなります。
例えば、商談のレコード詳細ページのURLが以下の場合、商談のレコードIdは0069D00000OSH6mQAHとなります。
https://yourdomain.lightning.force.com/lightning/r/Opportunity/0069D00000OSH6mQAH/view
レコードIdを入力後、ファイル出力ボタンをクリックします。
出力されたファイルを開き、中身を確認します。
差し込み項目がすべて正しく出力されているか?
ファイル名が正しく出力されているか?
レイアウトが崩れていないか?
関連オブジェクトの検索条件、並び替えは正しいか?
など。
続いて、カスタムボタンを作成します。
SalesforceでExcelの帳票を作成する– Office File Creator Excel編 – ③カスタムボタン作成をご参照ください。