はじめに
今回は、Salesforceを用いて帳票出力する方法を、いくつか紹介していきます。
帳票出力とは
一般的に、システム上に入力して蓄積されたデータを、ユーザーの要求に従って成形・出力するものを「帳票」と呼ぶ。具体的には、見積書、請求書、承認書類などを指し、ビジネス業務の中で頻度高く使用される書類に対しては、帳票出力のニーズが高い。
Salesforceで提供されている帳票出力
1. 差し込み印刷
Salesforceが標準で提供している帳票出力の機能。大きく2種類存在し、①差し込み印刷、②拡張差し込み印刷である。
差し込み印刷には非常に厳しい動作要件があるため、現実的に使用されることは少ない。具体的には下記のような制約がある。
- ブラウザはIEの特定バージョンに限定される。
- Wordは最新のバージョンをサポートしていない。
- クライアントOSが限定され、更に利用できる期間もTLS1.0が無効化されるまで。
一方、拡張差し込み印刷においてもいくつかの弱点が存在する。
- Lightning Experienceでは利用できない。
- 複数オブジェクトの複数データを1帳票上に出力できない。
- 操作が煩雑である。
したがって、これらの制約条件がある中、差し込み印刷で業務要件を満たせるケースは非常に限られる。
2. レポート機能
Salesforceの標準機能であるレポートを使用して、Excelファイルを出力する方法。
レポート機能で作成可能なデータ範囲であれば、帳票出力も可能である。例えば、以下の要件を満たすことが可能。
- 複数のオブジェクトを組み合わせる。
- レポートの絞り込み条件を使用して、特定のレコードのみを表示する。
- 行・列をグループ化する。
制約事項として、一覧形式(Excelファイル)は出力できるが、一覧形式以外は出力することができず、帳票のデザインに対する自由度は低いことが挙げられる。
3. Visualforce
Salesforceの開発言語であるVisuaforceを使用して、帳票出力する方法。
ページ属性にrenderAs=PDFを指定することで、そのページ内で表現される内容をPDF形式でブラウザに返すことができる。
帳票出力までの操作イメージは下記の通り。
- レコード詳細画面上のカスタムボタンを押下する。
- 出力したい帳票のプレビュー画面が表示される。
- PDFファイルの帳票が画面に表示される。
※複数のレコードを事前に選択する、出力した帳票を該当レコードの添付ファイルに保存する、といったことも可能。
利点として、出力する帳票のデザインを自由度高く設定できる。一例は下記の通り。
- 出力する帳票のサイズ
- 上下左右の余白
- フォントサイズ・太さ
- 色の有無
※注意点として、フォントスタイルが1種類に限定されている。
サードパーティの帳票出力サービス
数を挙げれば、キリがないが、代表的なサービスのみを抜粋。
1. SVF Cloud for Salesforce(ウイングアーク1st)
SalesforceのAppExchangeの中で、代表的な帳票出力のサービスの一つ。
Word、Excelから帳票のひな型を作成し、そのひな形に対してSalesforceの項目をマッピング(ドラッグ&ドロップ操作)していく。
※マッピング操作にあたって、SVF Cloud専用のアドオンを搭載する必要がある。
また操作は簡易であり、基本的なマウス操作のみで完結する。Visualforceのように高度なプログラミングツールは不要である。
2. OPROARTS(オプロ)
SVF Cloudと同様、Salesforceの帳票出力サービスの代表的なものの一つ。
Excel/Word/PowerPointにOfficeアドインをインストールして設定する他、ウェブブラウザ上で動くデザインツールを使用して帳票テンプレートを作成できる。
3. その他の帳票出力ツール
- Smart Report Meister
- freee for Salesforce
- Fleekform
- Canon Business Imaging Online
帳票出力機能の設計の流れ
帳票出力の提供サービスは複数あるものの、案件上での設計・開発フェーズの作業は共通化できる部分がある。以下の通りまとめる。
1. 帳票のレイアウトイメージの作成
ExcelやWordを使って、レイアウトをまとめていくのが一般的である。
2. 帳票に表示するオブジェクトの項目定義
特にAPI名、項目名は帳票を設定前に確定させる。五月雨式に変わってしまうと、その都度設計書の変更が発生してしまうため。
3. マッピング仕様書の作成
作成した帳票のレイアウトに対して、Salesforceのどの項目を表示するのかを記したものを作成する。
まとめ
- 帳票出力のサービスは複数あるが、帳票のデザインの自由度、開発工数などを総合的に鑑みて、サービスを選定する必要がある。
- ただのExcel上の一覧形式であれば、レポート機能で充分だろうし、リッチな帳票を作り込みたい場合は、AppExchangeの使用を検討する、など。
- 帳票出力の設計においては、いかに手戻りを発生させないかが、重要である。
- 帳票のデザインは、ユーザ側も拘る部分である。デザインの確定後、複数の変更要求が提出され、開発の手戻りが発生する、といったことがないよう、ユーザ側との調整が必要である。