今回、フローでOffice File Creatorの帳票出力と商談を更新する手順をご紹介します。Office File Creatorは、画面フローに組み込むことが可能です。
※本手順はOffice File Creator Ver.2.xx用です。Ver.1.xxをご利用の場合は、Salesforceのフローで帳票出力と商談を更新する(OFC ver.1用) – Office File Creator応用編 –を参照してください。
完成イメージ
完成イメージとして、「帳票出力」ボタンをクリックでポップアップ画面が表示され、フローを実行すると帳票出力と商談の請求書出力日に日付が設定されます。
デモ
フロー作成のポイント
- レコード画面からレコードIdをフローで受け取るパラメータは、「recordId」です。フローでテキスト型の変数「recordId」を作成します。他の変数名はレコードIdを受け取ることができません。
- Office File Creatorでの帳票出力は、ofcForFlowScreenコンポーネントを画面フローに配置します。帳票作成結果(成功・失敗)を返し、失敗の場合はエラーメッセージを返却します。
- ofcForFlowScreenコンポーネントのパラメータ、戻り値の詳細は、設定マニュアルを参照してください。
フロー処理概要
作成するフローの全体像です。
1. トップ画面
実行確認メッセージを表示します。
ofcForFlowScreenコンポーネントを画面フローに配置し、帳票出力を実行します。
2. OFCエラー判定
帳票出力の成功・エラーを判定し、処理を分岐します。成功の場合、3の処理へ進みます。エラーの場合、2eの処理へ進みます。
2e. エラー画面
エラーメッセージを表示し、フローを終了します。
3. 請求書出力日更新
商談の請求書出力日に今日の日付で更新します。
4. 完了画面
完了メッセージを表示します。
フロー作成
それでは、フローを作成していきましょう。設定よりフローを開き、「新規フロー」ボタンをクリックします。
「画面フロー」を選択し、「作成」ボタンをクリックします。
レコードId変数作成
画面左上の「ツールボックスを切替」ボタンをクリックし、「新規リソース」ボタンをクリックします。
レコードIdの変数を作成します。設定後、「完了」ボタンをクリックします。
リソース種別: 変数
API参照名: recordId
データ型: テキスト
入力で使用可能: チェックオン
※recordIdはレコード画面からのレコードIdを受け取る変数です。"recordId"(Iだけ大文字)で設定してください。他の変数名はレコードIdを受け取ることができません。
最初にフローを一度保存しておきます。「保存」ボタンをクリックします。
任意の名前で保存します。ここでは以下で保存しています。
フローの表示ラベル: 帳票出力画面フロー
フローのAPI参照名: OFC_OutputInvoiceScreenFlow
「この問題を確認」の注意メッセージが表示されるので、「×」ボタンで閉じます。
1. トップ画面
画面フローの下の「+」マークをクリックします。
※〇マークにカーソルを当てると、「+」マーク(要素を追加)が表示されます。
「画面」を選択します。
画面のプロパティを設定します。
表示ラベル: トップ画面
API参照名: TopScreen
フッターを表示: チェックオフ
左のコンポーネント内の「表示テキスト」をクリックし、プロパティを設定します。
API参照名: dispConfirmMsg
テキスト: 帳票を出力します。
左のコンポーネント内の「ofcForFlowScreen」をクリックし、プロパティを設定します。設定後、「完了」ボタンをクリックします。
API参照名: OFC
recordId: {!recordId}
save: 空欄 ※ファイルに保存する場合は、fileまたはattを入力します。
template: OpportunityInvoice ※OFC_TemplateレコードのテンプレートApi名を入力します。
※変数{!recordId}をリソースより選択します。以降も同様に、{!XXX}の形式の設定は、リソースから選択します。
2. OFCエラー判定
トップ画面の下の「+」マークをクリックし、「決定」を選択します。
決定のプロパティを設定します。
表示ラベル: OFCエラー判定
API参照名: DecOFCError
[結果の詳細] セクション
表示ラベル: エラー
結果のAPI参照名: decOFCError_Yes
結果を実行する条件の要件: すべての条件に一致 (AND)
リソース: {!OFC.isSuccess}
演算子: 次の文字列と一致する
値: {!$GlobalConstant.False}
左サイドバーの「デフォルトの結果」をクリックします。
結果の詳細のプロパティを設定後、「完了」ボタンをクリックします。
[結果の詳細] セクション
表示ラベル: 成功
2e. エラー画面
エラーの下の「+」マークをクリックし、「画面」を選択します。
画面のプロパティを設定します。
表示ラベル: エラー画面
API参照名: ErrorScreen
左のコンポーネント内の「表示テキスト」をクリックし、プロパティを設定します。設定後、「完了」ボタンをクリックします。
API参照名: dispErrorMsg
内容: {!OFC.errorMessage} ※文字はカラーパレットより、赤に設定します。
※errorMessagesを選択しないようにしてください。errorMessagesは複数ファイル一括出力時の戻り値です。
エラー画面の下の「+」マークをクリックし、「終了」を選択します。
3. 請求書出力日更新
成功の下の「+」マークをクリックし、「レコードを更新」を選択します。
各種プロパティを設定します。
表示ラベル: 請求書出力日更新
API参照名: UpdateBillOutputDate
更新するレコードを検索してその値を設定する方法: 「レコードを識別する条件を指定し、項目を個別に設定」にチェックオン
[このオブジェクト種別のレコードを更新] セクション
オブジェクト: 商談
[商談レコードを絞り込み] セクション
レコードを更新する条件の要件: すべての条件に一致 (AND)
項目: Id
演算子: 次の文字列と一致する
値: {!recordId}
[商談の項目値をレコードに設定] セクション
項目: BillOutputDate__c
値: {!$Flow.CurrentDate}
※商談に請求書出力日(API名:BillOutputDate__c)のカスタム項目(日付型)を作成しています。
設定後、画面右上の「×」ボタンでプロパティ画面を閉じます。
適宜、「保存」ボタンをクリックし、編集内容を保存してください。
4. 完了画面
請求書出力日更新の下の「+」マークをクリックし、「画面」を選択します。
画面のプロパティを設定します。
表示ラベル: 完了画面
API参照名: CompleteScreen
左のコンポーネント内の「表示テキスト」をクリックし、プロパティを設定します。設定後、「完了」ボタンをクリックします。
API参照名: dispCompleteMsg
テキスト: 完了しました。
これで完成です。
「保存」ボタンをクリックし、保存します。
フローをデバッグ
「デバッグ」ボタンをクリックします。
レコードIdを入力し、「実行」ボタンをクリックします。ここでは商談レコードIdを入力します。
デバッグ画面が表示されます。「次へ」ボタンをクリックします。
ファイルが出力されることを確認します。
商談のレコード画面より請求書出力日に日付が設定されていることを確認します。
フローの「有効化」ボタンをクリックします。フロー画面を閉じます。
カスタムボタン作成
レコード画面に配置する帳票出力用のカスタムボタンを作成します。
設定のオブジェクトマネージャより、対象のオブジェクトを開きます。左サイドバーの「ボタン、リンク、およびアクション」をクリックし、「新規アクション」ボタンをクリックします。
アクション情報を設定します。設定後、「保存」ボタンをクリックします。
アクション種別: フロー
フロー: 帳票出力画面フロー
表示ラベル: 請求書出力
名前: OutputInvoiceFlow
左サイドバーの「ページレイアウト」より対象のページレイアウト選択し、作成した帳票出力ボタンを配置します。設定後、「保存」ボタンをクリックします。
フローを実行
商談レコードページの「請求書出力」ボタンをクリックします。実行前の請求書出力日は空欄です。
ポップアップ画面が表示されます。「次へ」ボタンをクリックします。
実行中画面が表示されます。
完了画面が表示されます。「完了」ボタンクリックでフロー画面を閉じます。
請求書ファイルが出力され、請求書出力日が今日の日付で更新されています。