ユーザー・ステータスおよびユーザー遷移の設定方法
企業契約は、契約の進行状況をドラフトから承認済まで追跡する標準ステータスを対象としています。 また、ビジネス固有のユーザー・ステータスや、法的レビューや財務レビューなどのユーザー遷移を作成して、契約ステージを詳細にモニターすることもできます。
定義後、これらのステータスを契約ライフ・サイクルに組み込むことができます。
まず、ユーザー・ステータスと遷移を作成します:
-
「設定と保守」作業領域にナビゲートします。
-
「契約ユーザー・ステータスおよび遷移の管理」タスクを検索して選択します。
-
「追加」アイコンをクリックして、1つ以上のユーザー・ステータスおよび遷移を追加します。
-
「保存してクローズ」をクリックします。
ユーザー・ステータスを契約で使用できるようにするには、カスタム・ステータスと遷移をイベント・モデルに追加する必要があります。 イベント・モデルは、各イベント・モデルで指定された条件に基づいて様々な契約に適用されます。 イベント・モデルを使用すると、契約状態、契約状態間の遷移、および各状態で実行される処理を構成できます。 イベント・モデルは、状態、イベントおよびアクションで構成されます。 イベント・モデルの各状態には、1つ以上のイベントを定義できます。 各イベントには、1つ以上のアクションを関連付けることができます。
イベント・モデルを構成する方法を次に示します:
-
設定ユーザーとしてアプリケーションにサインインします。
-
アクティブなサンドボックスで作業していることを確認します。
-
Contract Managementの「契約」にナビゲートします。
-
「タスク」サイド・パネルを開き、「設定」タスクで「イベント・モデル」をクリックします。
-
「イベント・モデル」ページで、
oracle.apps.contracts.coreAuthoring.contractService.view.ContractHeaderVO
ビジネス・オブジェクトの「追加」アイコンをクリックして新しいイベント・モデルを作成するか、既存のイベント・モデルを選択して「編集」アイコンをクリックします。 -
DefaultContractHeader
イベント・モデルで定義されているステータス、イベントおよびアクションを作成します。DefaultContractHeader
イベント・モデルには、標準の構成が含まれています。 使用しないステータスはスキップできます。ノート: イベント・モデルを条件に関連付けることができます。 一部のビジネス・ユニットまたは契約タイプ専用のイベント・モデルを作成できます。 これらのイベント・モデルが普遍的に適用されないように、適切な条件を使用して定義する必要があります。 -
「初期」状態をクリックし、
DefaultContractHeader
イベント・モデルで定義されているとおりに構成します。「初期」状態は、契約の作成を開始できる特別な状態です。
DefaultContractHeader
イベント・モデルには、CREATE
およびCREATE_FROM_COPY
イベントが関連付けられています。 -
「一般」状態をクリックし、
DefaultContractHeader
イベント・モデルで定義されているとおりに構成します。「一般」状態は共通の状態であり、この状態で定義されたイベントまたはアクションは、すべての状態の契約で使用可能になります。
DefaultContractHeader
イベント・モデルには、すべての状態の契約で使用可能な検証イベントがあります。 -
ビジネス要件に基づいて新しい状態を追加します。
スタンドアロンまたは親状態の子を作成できます。 スタンドアロン状態の例として、「ドラフト」および「取消済」があります。 親状態は、1つ以上の子状態の集合です。 イベントまたはアクションが複数の状態に適用される場合は、親状態を使用できます。
DefaultContractHeader
イベント・モデルでは、「承認済コンポジット」状態は「承認済」および「保留」状態の親状態です。 「承認済コンポジット」状態に対して定義されたイベントは、その下に定義されているすべての子状態に適用されます。 -
ビジネス要件に基づいて、すべての状態のイベントを作成します。
イベントは、特定の状態の遷移です。 イベントによって、アプリケーションで契約に対して実行できる処理が制御されます。 たとえば、契約が「下書き」状態の場合、許可される処理には「取消」、「承認のために発行」および「バージョンの作成」があります。
-
すべてのイベントに関連付けられたアクションを作成します。
DefaultContractHeader
イベント・モデルを使用して、様々なイベントおよびアクションに関連付けられたgroovyスクリプトの例を検索できます。 -
「保存してクローズ」をクリックします。
-
これらの変更をテストした後。会社のビジネス・プラクティスに従ってサンドボックスを公開します。
イベント・モデルでのカスタム・ステータスとしての法的レビューの追加の例
イベント・モデルのカスタム・ステータスとしてLegal_Reviewを含める例を次に示します:
-
ユーザー・ステータスおよび遷移を作成します。
-
「設定と保守」作業領域にナビゲートします。
-
「契約ユーザー・ステータスおよび遷移の管理」タスクを検索して選択します。
-
「ユーザー・ステータス」セクションで、「追加」アイコンをクリックし、「コード」列に
Legal_Review
、「名前」列に「法的レビュー」と入力します。 -
「ユーザー推移」セクションから、ユーザー遷移値として
SEND_FOR_LEGAL_REVIEW
を入力し、名前として「法的レビュー用に送信」を入力します。 -
「保存してクローズ」をクリックします。
-
-
設定ユーザーとしてアプリケーションにサインインします。
-
アクティブなサンドボックスで作業していることを確認します。
-
Contract Managementの「契約」にナビゲートします。
-
「タスク」サイド・パネルを開き、「設定」タスクで「イベント・モデル」をクリックします。
-
「イベント・モデル」ページで、
oracle.apps.contracts.coreAuthoring.contractService.view.ContractHeaderVO
ビジネス・オブジェクトの既存のイベント・モデルを選択し、「編集」アイコンをクリックします。 -
「状態」セクションで、「新規」アイコンをクリックします。
-
「状態の作成」ウィンドウで、「名前」フィールドに
Legal_Review
と入力し、OKをクリックします。 -
「タイプ」列で「状態」を選択します。
-
「親状態」列で「一般」を選択します。
-
-
LEGAL_REVIEW内: 「詳細」セクションで、「新規」アイコンをクリックします。
-
「イベントの作成」ウィンドウで、「タイプ」フィールドで「入力」を選択し、OKをクリックします。
-
「イベントの作成」ウィンドウで、「タイプ」フィールドで「指定イベント」を選択し、「名前」フィールドに
CANCEL
と入力します。 「OK」をクリックします。 -
CANCELイベントの場合は、「ガード条件」列に
StsCode=='DRAFT'
と入力します。 -
同様に、
SUBMIT, ACTIVATE, and VERSION
イベントを作成します。
-
-
すべてのイベントを追加したら、エントリ・イベントをクリックします。
-
「エントリ」セクションで、「新規」アイコンをクリックして、ユーザー・ステータスをLegal_Reviewに変更する条件を追加します。
-
「イベントの作成」ウィンドウで、次の手順を実行します:
-
「タイプ」フィールドで「Groovyスクリプト」を選択します。
-
「スクリプト」フィールドに次のように入力します:
UserStatusCode='LEGAL_REVIEW';
eventModel.execute('createHistory');
-
「OK」をクリックします。
-
-
「状態」セクションで、
DRAFT
状態を選択します。 -
DRAFTで: 「詳細」セクションで、「新規」アイコンをクリックします。
-
「イベントの作成」ウィンドウで、「タイプ」フィールドで「指定イベント」を選択し、「名前」フィールドに
SEND_FOR_LEGAL_REVIEW
と入力します。 「OK」をクリックします。ノート: イベント名は、「契約ユーザー・ステータスおよび遷移の管理」タスクに追加された遷移コードと完全に一致する必要があります。 -
この新しいイベントの場合は、「状態:至」列で
Legal_Review
を選択します。
-
-
「保存してクローズ」をクリックします。
-
新しいステータスをテストするには、新しい契約を作成します。
-
「契約」の編集ページで、 をクリックします。
-
契約のユーザー・ステータスが「法的レビュー」に変更されます。
同様に、ビジネス要件に応じて、さらに多くのカスタム・ユーザー統計を構成できます。
ビジネス・イベントの呼出し方法
ステータス変更イベントを構成するには、ビジネス・イベントを発生させる必要があります。 ビジネス・イベントを発生させるには、まずアクティブなサンドボックスに変更を保存する必要があります。 サンドボックスを作成するか、既存のサンドボックスを選択してアクティブにできます。
サンドボックスで使用する構成ツールをアクティブ化する必要があります。
-
「ナビゲータ」→「構成」→「サンドボックス」をクリックします。
-
「サンドボックス」ページで、「サンドボックスの作成」をクリックします。
-
サンドボックスの名前と摘要を入力します。
-
公開可能フィールドで、「はい」または「いいえ」を選択します。 このオプションを「いいえ」に設定した場合、サンドボックスはテスト目的で使用できますが、公開することはできません。
-
「ビジネス・オブジェクトの構成」を選択して「作成」をクリックし、サンドボックスを作成するか、「作成して入力」をクリックしてサンドボックスを作成した後でサンドボックスを入力またはアクティブ化します。
-
Contract Managementで「契約」にナビゲートします。
-
「タスク」サイド・パネルを開き、「設定」タスクで「イベント・モデル」に移動します。
-
「イベント・モデル」ページで、
DefaultContractHeader
イベント・モデルを選択し、「編集」アイコンをクリック -
「状態」セクションで、「ドラフト」をクリックします。
-
DRAFTで: 「詳細」セクションで、「タイプ」フィールドで「入力」を選択します。
-
「エントリ」セクションで、「新規」アイコンをクリックして、ユーザー・ステータスを「ドラフト」に変更する条件を追加
- 「イベントの作成」ウィンドウで、Groovyスクリプトを使用してビジネス・イベントを生成します。 サンプル・コードは次のとおりです。要件にあわせてスクリプトを変更できます。
-
「タイプ」フィールドで「Groovyスクリプト」を選択します。
-
「スクリプト」フィールドに次のように入力します:
oracle.jbo.NameValuePairs plist = new oracle.jbo.NameValuePairs();
plist.setAttribute(“contractId”, ContractId);
eventModel.execute(`stsMgtAM').raiseBusinessEvent(plist);
-
「OK」をクリックします。
-
-
「保存してクローズ」をクリックします。
-
新しいステータスをテストするには、新しい契約を作成します。