[toc]
概要
本記事では、Salesforceのレコード画面からViewFramerを経由してD3Workerを呼び出し、帳票を作成してメール配信するまでの設定方法を説明します。
前提条件
本手順を実施するために、以下の環境・設定が必要です。
- Salesforce環境が利用可能であること
- Salesforceに「OPROARTS Connector」がインストールされており、初期設定(認証情報の登録など)が完了していること
- D3WorkerおよびViewFramerが利用可能であること
データの流れ
Salesforceから抽出したデータがViewFramerを経由してD3Workerへ、そして最後に帳票テンプレートへと受け渡されます。
データの最終的な受け取り先は帳票テンプレートであるため、帳票テンプレートのCSVフィールドに合わせてD3Workerのマッピングとデータソースを設定し、 更にそれに合わせてViewFramerのビュー、マッピングを設定する必要があります。
データの流れのイメージは以下のようになります。
各設定は、後の工程で作成済みのデータやテンプレートを指定する必要があるため、以下の順で行うとスムーズです。
- 帳票テンプレート(データ受け取り先)
- D3Worker(文書化、配信、保管設定など)
- Salesforceオブジェクト(データ抽出元 ※未作成の場合)
- ViewFramer(CSVデータ生成)
帳票テンプレートの用意
本記事では、SalesforceからD3Worker間のデータ連携に焦点を当てるため、サンプルテンプレート(見積書3)を使用します。
テンプレート作成の詳細につきましては、[Connector/ViewFramer]ドキュメント一覧の<ViewFramer>セクションに掲載されている 「ユーザーガイド(PDF帳票)」をご参照ください。
以下は、デザイナー画面の例です。
設定したマッピング内容は、後の「ワーク設定(文書とデータのマッピング)」で使用します。
D3Workerの設定
D3Workerの設定はサービス > エンベロープ > ワークの順に設定を行います。
サービス、エンベロープ、ワーク設定の詳細については【TECH COLUMN】D3Workerの設定手順(Salesforce)をご参照ください。
サービス設定
サービス「OPROARTS」と「メール送信」を作成します。
エンベロープ設定
作成した「OPROARTS」サービスを文書化サービスに、「メール送信」サービスを配送サービスに設定します。
ワーク設定(データソース)
ViewFramerから渡されるCSVデータのフィールドの並びを順番通りに定義します。
- ViewFramerから渡されるCSVデータの並び順に合わせて、データソースのフィールドを上から順に作成します。
- 設定したフィールド1~9には、ViewFramerから渡されるCSVデータの各項目が順番に格納されます。
- データソース定義とViewFramerのマッピングは、後のViewFramer設定で行います。
ワーク設定(エンベロープ)
ワークにエンベロープを設定します。
-
「エンベロープ設定」で作成したサービスを選択します。
-
必要に応じてエンベロープフィールドを指定します。
ワーク設定(文書とデータのマッピング)
データソースとして渡された値を、帳票テンプレートのCSVフィールドに割り当てます。
マッピング手順
- データソースの各フィールドから、帳票テンプレートに渡すCSVフィールドを選択します。
- ヘッダー明細型テンプレートの場合は、データセット1(ヘッダー)とデータセット2(明細)に分けて定義します。
- 各フィールドをテンプレートのCSVフィールド順に合わせて配置します。
テンプレート名の前に必ず「live_」を記載すること。
Salesforceオブジェクトの作成
帳票出力元となるオブジェクトを作成します。
オブジェクトの用意がすでに完了している場合は、本セクションの対応は不要です。
見積書テンプレート用のオブジェクト構成
| オブジェクト | 役割 | 説明 |
|---|---|---|
| 見積 | 親オブジェクト | ヘッダー部分のデータ元(見積番号、日付など) |
| 見積商品 | 子オブジェクト | 明細部分のデータ元(商品情報) |
リレーション設定
見積と見積商品を親子リレーション(主従関係 または 参照関係)で紐付けます。
ViewFramerの設定
同じブラウザで複数のビューやマッピングを同時編集すると上書きされる可能性があります。
- 操作は必ず1タブのみで実施
- 参照する場合は別ブラウザで開き、閲覧のみに限定
- 別ブラウザでも複数ビューの同時表示は不可
上書きリスクを防ぐため、上記の点にご留意ください。
ビュー設定
Salesforceオブジェクトの各項目をViewFramerが生成するCSVデータのフィールドに紐付けます。
ヘッダービュー
帳票のヘッダー部分(見積書の基本情報)として出力する項目を指定します。
- 主オブジェクトを「見積」に指定します。
- 必要に応じてリレーション先オブジェクトを追加します。
- 出力項目を設定します。
-
出力条件で、Salesforceから該当レコードを抽出する条件を設定します。
明細ビュー
帳票の明細部分(見積商品の情報)として出力する項目を指定します。
- 主オブジェクトを「見積」に指定します。
- 関連オブジェクトに「見積商品」を指定します。
-
両オブジェクトを見積オブジェクトIDで紐付けます。
-
出力項目を設定します。
マッピング設定
作成したヘッダー・明細ビューを関連付け、D3Workerへデータを渡すためのマッピングを行います。
- マッピングタイプとして「ヘッダー明細型」を選択します。
- 主データにヘッダービューを、明細データに明細ビューを指定します。
-
「主データとの結合」にて、ヘッダーと明細を紐づけるキー項目を指定します。
D3Worker連携設定
-
「D3Worker」タブを開きます。
-
D3WorkerのURLを入力し、「接続」をクリックしてD3Workerに接続します。
<https://d3w.ap.oproarts.com/d3w/api/{お客様用テナント}/>
ワーク選択とフィールドマッピング
- D3Workerのワークリストが表示されます。
- 「D3Workerの設定」で作成したワークを選択します。
-
「Workフィールド」(ワークのデータソース)に、「データフィールド」(ビューの出力項目)をマッピングします。
- すべてのマッピングが終了したら設定を「保存」し、最後に「配備」を実行します。
- すべてのマッピングが終了したら設定を「保存」し、最後に「配備」を実行します。
アクションボタンの作成
ViewFramerからVisualforceページコードを取得し、Salesforceにボタンを配置します。
-
ViewFramerのマッピング一覧画面で、対象マッピングの「APIサンプル」をクリックします。
- 「サービス」と「形式」を以下の通り設定し、「Visualforceページ」ボタンをクリックします。
- サービス:D3Worker
-
形式:PDF
サービスは必ず「D3Worker」を選択してください。 「Documentizer」のままでは、D3Workerを呼び出すアクションボタンが正しく作成されない可能性があります。
- Visualforceページのコードを含んだテキストファイルがダウンロードされます。
アクションボタンの配置
ダウンロードしたファイルをもとにVisualforceページを作成し、そのVisualforceページを使用して帳票出力用のアクションボタンを配置します。
詳細なVisualforceページの作成・アクションボタンの設定方法については、Lightning Experienceの詳細ページ用 ボタン作成 (ViewFramer)を参照してください。
リストビューページにボタンを配置する場合は、 Lightning Experienceのリストビューページ用 ボタン作成(ViewFramer)をご参照ください。
出力結果の確認
作成したボタンをクリックすると、D3Worker経由で帳票PDFが添付されたメールが指定の宛先に送信されます。
-
Salesforce上の出力ボタンをクリック
-
メールが送信される
-
帳票(PDF)が添付される
SalesforceとD3Workerを連携することで、Salesforce上のレコードをもとに帳票の作成・出力が可能になります。 また、作成した帳票はメール配信だけでなく、外部サービスと連携することでFAX配信やDM配送、クラウドストレージへの保管など、さまざまな用途に活用できます。