オブジェクト・ワークフローのビジネス・プロセスの構成
このトピックでは、オブジェクト・ワークフローを使用してビジネス・プロセスをトリガーする際に考慮する重要なポイントについて説明します。 オブジェクト・ワークフローを構成する場合は、トリガー時にワークフローが実行する必要があるアクションも指定します。
構成する処理の1つは、ビジネス・プロセス・フロー処理です。 オブジェクト・ワークフローのこのビジネス・プロセス・フロー・アクションは、基本的に承認フローです。 BPMコンポーザを使用して承認フローを構成します。
概要
BPMコンポーザのテンプレートを使用して、プロジェクトを作成およびデプロイし、オブジェクト・ワークフローからコールします。 作成してデプロイするプロジェクトは、承認フローと呼ばれます。 オブジェクト・ワークフローでビジネス・プロセス・フロー処理を構成する前に、少なくとも1つのプロジェクト(または承認フロー)を作成してデプロイする必要があります。
最初に、BPMコンポーザで承認フローを作成または更新します。 次に、オブジェクト・ワークフロー・ビジネス・プロセス・フロー処理でその承認フローを選択します。
-
アプリケーション・コンポーザ このアプリケーションを使用して、オブジェクト・ワークフローを構成します。
オブジェクト・ワークフローで様々なイベント処理を構成する方法の例は、「オブジェクト・ワークフローの構成」および「営業リードを作成するための承認リクエストをトリガーするためのオブジェクト・ワークフローの構成」のトピックを参照してください。
-
Oracle Business Process Management (BPM) Composer. このアプリケーションを使用して、既存またはユーザー定義のテンプレートを使用してビジネス・プロセス(または承認フロー)を作成します。
ノート: このリリースでは、BPMコンポーザでのテンプレートの変更が実装に対して無効になっている場合があります。 その場合は、Oracle Supportに連絡してください。ビジネス・プロセス・フローを作成してデプロイする方法の例は、営業リードを作成するための承認リクエストをトリガーするためのオブジェクト・ワークフローの構成のトピックを参照してください。
BPMコンポーザの詳細は、『Oracle Fusion Middleware Business Process Composer User's Guide for Oracle Business Process Management』を参照してください。
-
Oracle Business Process Management (BPM) Worklistアプリケーション。 このアプリケーションを使用して、承認リクエストに対して適切なアクションを実行します。
ワークリスト・アプリケーションには、ユーザーに割り当てられたタスクまたは承認が表示されます。 ワークリスト・タスクはホーム・ページに表示されます。
デフォルト・テンプレートを使用した承認プロセスの作成
製品に付属するテンプレートは、基本的なCrmCommonSerialApprovalProcessプロセス・フローを使用するExtnBusinessProcessCompositeテンプレートです。 このテンプレートには、一般的な営業ユースケースをカバーする承認プロセスが含まれています。 シードされたテンプレートを使用して作成するプロジェクトでは、CrmCommonSerialApprovalProcessプロセスが使用されます。
ExtnBusinessProcessCompositeテンプレートでは、ビジネス・プロセスを定義するための業界標準の表記であるBusiness Process Management Notation (BPMN)のみがサポートされています。 BPMNの詳細は、http://www.bpmn.orgを参照してください。

プロジェクトを作成してデプロイする方法の例は、「営業リードを作成するための承認リクエストをトリガーするためのオブジェクト・ワークフローの構成」を参照してください。
デフォルトのExtnBusinessProcessCompositeテンプレートには、承認フローの構成に使用できるサービス、ビジネス・ルールおよびタスクが含まれます。
ヒューマン・タスク実装プロセスのノードまたはビジネス・ルールを変更または追加できます。 たとえば、SerialApprovalGroupApprovalを使用してSerialGivenUserNameApprovalを変更できます。 ただし、プロジェクトを作成または変更する場合は、次のことが確実でないかぎり試行しないでください:
-
既存のビジネス・プロセスのサービス、ルール、タスクまたはシステム・フィールドを削除または変更します。 検証に失敗する可能性があります。
-
所有者、heldEntity、heldEntityId、heldEntityStatusField、objectPropertiesなどの予約済パラメータの削除または変更。
-
CreateHold、UpdateHold、UpdateEntityなどのノードの削除。
使用可能なサービス、タスクおよびルールを表示するには、BPMコンポーザの「プロジェクト・ホーム」タブを選択します。
ただし、次のヒューマン・タスク・パターンはサポートされていません:
-
SerialSupervisorHierarchyApproval, SerialJobLevelHierarchyApproval, SerialPositionHierarchyApproval
-
ParallelSupervisorHierarchyApproval, ParallelJobLevelHierarchyApproval, ParallelPositionHierarchyApproval
ビジネス・ルール、サービスおよびタスクの使用、およびプロセス・フローのモデル化方法の詳細は、『Oracle Fusion Middleware Modeling and Implementation Guide for Oracle Business Process Management』を参照してください。
オブジェクト・ワークフローからのビジネス・プロセスへの入力の提供
入力パラメータを使用して、トリガー条件が満たされたときに、関連する承認プロセスに特定の値を渡すことができます。 これらの入力パラメータは、承認フローの作成に使用するテンプレートに固有です。 デフォルトでは、ExtnBusinessProcessCompositeテンプレートを使用します。このテンプレートは製品に付属しており、オブジェクト・ワークフローに関連するドキュメントに記載されています。 他のテンプレートを使用している場合は、その製品のドキュメントで、使用できるパラメータを参照してください。
これらの入力パラメータがBPMコンポーザにある場所を確認するには、承認フローの開始ノードを右クリックし、プロパティを選択します。
図のheldEntityStatusFieldおよび承認者パラメータに注意してください。 これらは、ExtnBusinessProcessCompositeテンプレートの使用時にオブジェクト・ワークフローからマッピングするパラメータの一部です。
標準のExtnBusinessProcessCompositeテンプレートを使用する場合、関連する承認プロセスに指定できる入力は次のとおりです:
-
承認担当者
-
heldEntityStatusField
-
emailAddress
-
title1
-
title2
承認者とheldEntityStatusFieldパラメータは必須ですが、emailAddress、title1およびtitle2はオプションのパラメータです。
これらの入力およびこれらの入力を使用して通知を構成する方法の詳細は、このトピックの「通知を変更するための入力パラメータの構成」の項を参照してください。
入力パラメータを使用して、次のように静的値またはランタイム値を承認プロセスに渡すことができます:
-
実績値または静的値を承認フローに渡すには、「デフォルト値の選択」ダイアログで「リテラル」チェック・ボックスを選択するか、単一引用符でパラメータを手動で入力します(例: 'user1')。
この図は、入力パラメータを選択してリテラルとしてマークする方法を示しています。 このダイアログは、入力リージョンの関数アイコンをクリックすると表示されます。
-
ランタイム値を渡すには、「デフォルト値の選択」ダイアログでリテラルを選択したり、引用符なしでパラメータを手動で入力したりしないでください。
たとえば、商談リージョンのランタイム・フィールド(トークン)を渡すには、Region(引用符なし)と入力します。 ワークフローがトリガーされると、このフィールドはランタイム値のリージョンに置き換えられます。
複数の承認者からシリアルまたはパラレルに承認を取得することもできます。 たとえば、最初にuser1からシリアル承認を取得し、次にリテラル値を使用してuser2からシリアル承認を取得するには、'user1、user2'と入力します。 同様に、ランタイム・フィールドの場合は、user1、user2と入力します。
通知を変更するための入力パラメータの構成
オブジェクト・ワークフローから承認フローに渡すフィールド値または入力パラメータは、承認フローの作成に選択したテンプレートによって異なります。 この項では、デフォルトのExtnBusinessProcessCompositeテンプレートを使用していることを前提とした例を示します。
入力パラメータを構成する前に、承認フローがトリガーされたとき、および承認フローが承認または却下されたときに発生する通知のタイプを理解しておく必要があります。
-
承認フローがトリガーされると、BPMワークリスト通知に「Opportunity has been submitted for your Approval」と表示されます。これは、「<Object name> has been submit for your Approval」という書式です。
-
承認または否認が発生すると、(emailAddressパラメータに基づく)Eメール通知に、承認者が実行した処理の結果が含まれます。 電子メールの件名には、「商談が承認されました」などを指定できます。
一部の入力パラメータを使用して情報を追加することによって、BPMワークリストおよびEメール通知の表示方法を最小限に変更できます。
たとえば、BPM通知を変更するには、商談オブジェクトを使用してワークフローを作成し、承認者とheldEntityStatusFieldパラメータのみを指定したとします。 このような承認フローがトリガーされると、BPMワークリスト・アプリケーションの通知に、標準通知である「商談が承認のために発行されました」と表示されます。
次に、商談名とリージョンも通知に表示するとします。 商談がPinnacle DealでリージョンがWestの場合、次のようにパラメータを構成することで、BPM通知をよりわかりやすいものに変更できます:
パラメータ |
値 |
説明 |
フィールド・タイプ |
---|---|---|---|
承認担当者 |
'Matt Hooper, Manager of Created By, Resource Group: 作成者の直属の部下' |
承認リクエストを受け取る1人以上の個人を指定します。 |
ランタイム |
heldEntityStatusField |
'Approvalstatus_c' |
承認リクエストのステータスを表示するフィールドを指定します。 ノート: 値リストからフィールドを選択し、リテラルを選択します。 値を入力したり貼り付けたりしないでください。
|
リテラル |
emailAddress [Optional] |
'jsmith@pinnacle.com,blopez@pinnacle.com' |
承認または否認通知を受信する1人以上の個人のEメール・アドレスを指定します。 |
リテラル |
title1 [Optional] |
名前 |
商談の名前をタイトルに追加します。 |
ランタイム |
title2 [Optional] |
Region |
(商談の)リージョンの名前をタイトルに追加します。 |
ランタイム |
次に、承認フローを再度トリガーします。 今回は、BPMワークリスト・アプリケーションの通知に、「Opportunity Pinnacle Deal West has been submitted for your Approval」と表示され、「<Object name> <title1> <title2> has been submitted for your Approval」という書式に従います。
同様に、承認者がリクエストに対してアクションを実行すると、title1およびtitle2パラメータも電子メール通知に追加されます。 たとえば、リクエストが承認されると、Eメールの件名に「Opportunity Pinnacle Deal West has been approved」と表示されます。
通知を別の形式で表示するには、オプションのパラメータの一部のみを指定できます。
オブジェクト・ワークフローでのトリガー条件の指定
オブジェクト・ワークフローのトリガー条件に、ワークフローをトリガーするために更新するフィールドが含まれていることを確認する必要があります。 たとえば、独自のフィールドSubmit_cのタイプ・チェック・ボックスを定義した場合、トリガー条件は次のようになります: isAttributeChanged('Submit_c') & & Submit_c=='Y'.
式を定義すると、イベント・ポイントの更新または作成が発生するたびにオブジェクト・ワークフローがトリガーされなくなります。
トリガー条件の設定方法の詳細は、オブジェクト・ワークフローの構成を参照してください: トピックの例。
承認ステータスを取得するためのドロップダウン、固定選択リスト・フィールドを指定する場合は、参照タイプZCX_HOLD_STATUSを使用して、ビジネス要件に従ってステータス値を構成します。 この参照タイプで提供されるデフォルト値は次のとおりです: APPROVALPENDING、APPROVEDおよびREJECTED。 ZCX_HOLD_STATUSに、承認ステータスをトラッキングするためにこの参照タイプで指定したデフォルト値または値が含まれていることを確認します。