[toc]
概要
本記事では、ViewFramerを利用してSalesforceのリッチテキスト項目をExcelファイルに出力する方法を説明します。
リッチテキスト形式で入力したデータを、書式を保持したまま帳票として出力できます。
前提条件
- Salesforceオブジェクトにリッチテキスト項目が設定されていること
- Officeアドイン「Document Designer for Office」がインストールされていること
- ViewFramerの基本的な設定方法を理解していること
ViewFramerからExcel出力するための詳しい設定方法については、 【TECH COLUMN】SalesforceからExcel帳票(見積書)を出力する方法(Officeアドイン版)をご参照ください。
リッチテキスト項目を持つ Salesforce オブジェクトを用意する
以下の項目を持つカスタムオブジェクトを作成するか、既存のオブジェクトに項目を追加します。
データ型以外の項目は、任意の名前を設定してください。
本記事では、以下の項目名で説明を進めます。
| ラベル名 | API 参照名 | データ型 |
|---|---|---|
| タイトル | Title__c | テキスト(50) |
| メモ | Rich_Text_Memo__c | リッチテキストエリア(32768) |
Officeアドイン「Document Designer for Office」インストール
インストール方法、操作の詳細については、[Officeアドイン]ドキュメント の「操作手順書」をご参照ください。
Officeアドインのインストール方法は操作手順書の2.1.5「テンプレート作成|アドイン入り Excel アップロード」に記載されていますので、インストールが済んでいない方はインストールを済ませてから先のステップにお進みください。
Excelテンプレートをデザインする
Excelファイルの見た目を作成する
-
Excelで帳票の見た目をデザインします。
- Officeアドイン「Document Designer for Office」を開きます。
-
「OPROARTS」をクリックします。
フィールドを設定する
- フィールド名をカンマ区切りで入力します。
-
「+」をクリックするとCSVフィールドが設定されます。
フィールド名をマッピング対象の項目名と同じ名前にすると、自動でマッピングすることが可能になります。
テンプレートにフィールドを設定する
-
「Title」フィールドのデータ型を「文字列」に設定し、出力タグを挿入します。
-
「Created_at」フィールドのデータ型を「日付」に変更し、出力タグを挿入します。
-
Created_at フィールドには、Salesforce 作成日項目の値が入りますが、「入力形式」はそのままで、「出力形式」をお好みのものをお選びください。
💡補足入力形式はSalesforceから受け取るデータの形式を、出力形式はExcelファイルでの表示形式を指します。
例)「yyyy/MM/dd」を選ぶと、2019/05/02と出力されます。 -
「Rich_Text_Memo」フィールドのデータ型を「リッチテキスト」し、出力タグを挿入します。
⚠️注意セルに対してリッチテキストを出力する場合、あらかじめ該当するセルに対して「折り返して全体を表示する」を設定することをお勧めします。設定しない場合、外見上は改行が設定されているように見えません。
-
「Title」「Created_at」「Rich_Text_Memo」の設定をした Excelファイルは以下のような見た目になります。
テンプレートをアップロードする
- Salesforceにログインします。
- アプリケーションランチャーから「OPROARTS Connector」アプリを開き、「OPROARTS」タブに移動します。
-
「START」ボタンをクリックし、OPROARTS Designerを開きます。
-
「新規作成」をクリックします。
-
「Excel」タブの「アドイン入りExcelアップロード」を選択します。
-
以下の設定を行い、「作成」ボタンをクリックします。
- 連携方法:CSV を指定
- テンプレート名:任意の名称を入力
- Excel文書:デザイン済みのExcelファイルを選択
-
データの作成が確認できたら、「配備」ボタンをクリックします。
-
テンプレート配備ウィザードで、再度「配備」ボタンをクリックし、配備を完了します。
ViewFramer の設定
ビューを設定する
- ビューを新規作成し、名称とタグに任意の値を設定します。
- リレーション設定では、用意したカスタムオブジェクト「リッチテキスト出力」を選択します。 リッチテキスト項目を既存オブジェクトに追加、任意のカスタムオブジェクトを作成して追加した場合は、そのオブジェクトを選択します。
-
テンプレート作成時に設定したCSVフィールド「Title」「Created_at」「Rich_Text_Memo」のそれぞれについて、カスタムオブジェクトの項目「タイトル」「作成日」「メモ」を用意します。
-
出力条件設定で、パラメータ名「ID」を設定し、ビューを保存します。
💡補足パラメータ「ID」は Salesforce から ViewFramer へ帳票出力のリクエストをする際に使用され、パラメータの値には帳票出力ボタンを押下した詳細画面で表示中のレコードのIDが入ります。
マッピングを設定する
-
マッピングを新規作成し、帳票タイプに「単票型」を選択します。 作成したビューの項目を取得します。
-
「Documentizer」タブで、作成したExcelテンプレートとビューの項目の紐づけを行い、「配備」ボタンをクリックしてマッピングを配備します。
出力ボタンを設置する
Salesforce側で、ViewFramerへリクエストするためのアクションボタンを作成します。 作成したボタンを、「リッチテキスト出力」オブジェクトの詳細画面に配置します。
ボタン作成の詳細は、「SalesforceからExcel帳票(見積書)を出力する方法(Officeアドイン版)」の「4. ボタンを作成する」セクションをご参照ください。
帳票を出力する
- レコードの詳細画面に表示された出力ボタンをクリックします。
- 帳票が Excelファイルで出力されます。
リッチテキスト出力時の注意点
Excel上に反映される書式
以下の書式がExcel上に適用されます。
- 太字
- 斜体
- 取消線
- 文字サイズ
- 下線
- 文字の色
リッチテキスト上の改行は、Excel上では改段落として表現されます。
文字サイズの調整
Salesforce のリッチテキスト編集画面では、文字のサイズをポイント単位で指定することができます。
Excel ドキュメントを出力する際には、設定された文字のサイズがそのまま反映されます。
テンプレート上の差込タグに設定された文字のサイズは無視されます。
Excel上に反映されない書式
以下の書式はExcel上に再現されません。
- 文字の背景色
- 水平方向の文字寄せ位置
- インデント
- 連番
- 箇条書き
- リンク
- 画像
多量出力モード使用時の注意
設定欄の「多量出力モード」が「使用する」に設定されている場合、書式が出力結果に反映されません。
ただし、改行は反映されます。
リッチテキスト書式を反映する必要がある場合は「使用しない」を選択してください。
ただし「使用しない」を選択した場合、明細行の出力可能行数が最大 1万件に制限されます。
書式の引き継ぎ
リッチテキスト上で書式の指定がない場合は、テンプレート上の差込タグに設定された書式が引き継がれます。