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