機械翻訳について

明細選択ルールでの拡張可能フレックスフィールドの使用

明細選択ルールで拡張可能フレックスフィールドを使用する場合は、DooSeededOrchestrationRulesオブジェクトを使用してオーケストレーション・プロセスを参照します。

次のルールが必要であるとします:

  • オーダー明細に報酬品目が含まれている場合は、このオーケストレーション・プロセス・ステップの実行時に使用します。

次のロジックを使用します:

オブジェクト

説明

パターン

次のパターンを使用します:

  • ルート: DooSeededOrchestrationRules.DOOHeader

  • ヘッダーはDooSeededOrchestrationRules.DOOHeaderです

  • flineはヘッダー/childFLinesです

  • flineEFFはheader/childFLines/flexContextsです

テスト

次のテストを使用します:

  • flineEFF.context.equalsIgnoreCase("Item_Information")はDooSeededOrchestrationRules.Boolean.TRUEです

  • flineEFF.getFlexAttributeValue("_Reward_Item")がnullではありません

ノート

  • 引数の絶対値がわかっている場合、equalsIgnoreCase関数はオプションです。

  • flexContextsオブジェクトのgetFlexAttributeValue()関数は、フレックスフィールドの値を検索します。

処理

次の「新規アサート」処理を使用します:

  • DooSeededOrchestrationRules.Result (resultObjKey:FLine.fulfillLineId)

このロジックにより、次の階層が作成されます:

Order Header
  childFLines
    flexContext

説明

  • オーダー・ヘッダーはルートです。

  • childFLinesは、オーダー・ヘッダーの子です。

  • flexContextは、childFLinesの子で、Order Headerの孫です。

この例では、階層を明示的に作成するのではなく、ツリー・モードを使用して階層を保守します。 スラッシュ(/)は階層を指定します。 たとえば:

  • header/childFLines/flexContexts

オーケストレーション・プロセスで明細選択基準を設定し、各オーダー明細に対して実行するオーケストレーション・プロセス・ステップを指定します。 フレックスフィールドに含まれる値に従って設定します。 このルールを作成します:

  • オーダー明細のエクスポート規制遵守ステータスが「未合格」の場合は、明細を手動で確認します。 その他のオーダー・ラインを出荷に直接送信します。

次のフローを作成します:

明細選択ルールでの拡張可能フレックスフィールドの使用のフロー

フレックスフィールドを使用して、コンプライアンス・ステータスの値を格納します:

コンテキスト

拡張可能フレックスフィールド

オブジェクト

コンプライアンス

Compliance_Status

履行明細EFF (DOO_FULFILL_LINES_ADD_INFO)

不合格

次の明細選択ルールを作成します:

明細選択ルールで拡張可能フレックスフィールドを使用するためのルール

ステップの概要

  1. ルールを作成します。

  2. オブジェクト階層を設定します。

  3. フレックスフィールド・コンテキストに従って明細を選択します。

  4. コンプライアンス・ステータスに従って明細を選択します。

  5. 手動で調べる必要があるオーダー明細を識別します。

バックグラウンドについては、「Order Managementでのビジネス・ルールの使用の概要」を参照してください。

このトピックではサンプル値を使用します。 ビジネス要件によっては、別の値が必要になる場合があります。

ルールの作成

  1. 「設定および保守」作業領域に移動してから、タスクに移動します:

    • オファリング: オーダー管理

    • 機能領域: オーダー

    • タスク: オーケストレーション・プロセス定義の管理

  2. 「オーケストレーション・プロセス定義の管理」ページで、編集する必要があるオーケストレーション・プロセスを検索し、「処理」>「編集」をクリックします。

  3. 「オーケストレーション・プロセス定義の編集」ページのプロセス詳細領域のステップ定義リストで、ステップを追加します。

    属性

    ステップ名

    コンプライアンス・チェック

    ステップ・タイプ

    サービス

    タスク・タイプ

    DOO_TradeCompliance

    タスク

    DOO_TradeCompliance

    サービス

    取引コンプライアンスのスクリーニング・リクエスト

  4. 追加した行の行選択基準列で、「ルールのクリック」をクリックします。

  5. 「明細選択基準」ダイアログで、「ルールの追加>プロパティ」をクリックし、値を設定します。

    属性

    名前

    コンプライアンス・ステータスの確認

    説明

    オーダー明細のエクスポート規制遵守ステータスが不合格の場合は、手動検証を実行します。

    有効日

    常時

    優先度

    アクティブ

    チェック・マークが含まれます。

    拡張モード

    チェック・マークが含まれます。

    ツリー・モード

    チェック・マークが含まれます。

    ツリー・モードを使用して、オーケストレーション・ルールのルート階層にフレックスフィールドを含めることができます。

  6. ルートを設定します。

    属性

    ルート

    DooSeededOrchestrationRules.DOOHeader

オブジェクト階層の設定

ルールによって処理されるデータがフィルタされるように、このオブジェクト階層を設定する必要があります:

Order Header
  childFLines
    flexContexts

説明

  • オーダー・ヘッダーはルートです。

  • childFLinesは、オーダー・ヘッダーの子です。

  • flexContextsは、childFLinesの子で、Order Headerの孫です。

この例では、階層を明示的に作成するのではなく、ツリー・モードを使用して階層を保守します。 各スラッシュ(/)は、階層レベルを指定します。

header/childFLines/flexContexts

説明

  • ヘッダーはルートです。 ルートでは、ルートを参照する子オブジェクトのデータのみがルールによって処理されます。

  • childFLinesは子です。 子によって、ルールによって、子を参照する孫オブジェクトのデータのみが処理されます。

  • flexContextsは孫です。

このIf文を作成します。 オブジェクト階層を確立します:

オブジェクト階層を確立する文

オブジェクト階層を設定します。

  1. If領域で、Is Aの左側にあるフィールドの値を削除し、この値を入力します。

    属性

    Aの左側にあるフィールド

    ヘッダー

  2. Is Aの右側のフィールドに値を設定します。

    属性

    Is Aの右側のフィールド

    DooSeededOrchestrationRules.DOOHeader

  3. headerを含むフィールドで、テストを選択するオプションにチェック・マークを追加し、「切り取り>切り取り(Cut > Cut)」をクリックします。

    たとえば:

    ルールでのテストのコピー

    階層には拡張可能フレックスフィールド変数が含まれているため、階層の定義時にテストを含める必要はありません。

  4. 「パターンの追加」をクリックします。

  5. Is Aの左側のフィールドに値を入力します。

    属性

    Aの左側にあるフィールド

    Fline

  6. Is Aの右側のフィールドに値を設定します。

    属性

    Is Aの右側のフィールド

    header/childFLines

  7. 「パターンの追加」をクリックします。

  8. Is Aの左側のフィールドに値を入力します。

    属性

    Aの左側にあるフィールド

    FlineEFF

  9. Is Aの右側のフィールドに値を設定します。

    属性

    Is Aの右側のフィールド

    header/childFLines/flexContexts

フレックスフィールド・コンテキストに従って明細を選択

このテストを追加します:

  • フレックスフィールドのコンテキストがコンプライアンスの場合

このテキストは、フレックスフィールド・コンテキストがコンプライアンスである行のみを選択します。

式を作成します。

左式

オペランド

右式

FLineEFF.context.equalsIgnoreCase("Compliance")

次である

DooSeededOrchestrationRules.Boolean.TRUE

フレックスフィールド・コンテキストに従って明細を選択します。

  1. 追加したパターンで、「テストの追加」をクリックします。

    コンプライアンス・テストを続行するオーダー明細を識別するテスト基準を追加します。 参照する属性がオプションの場合は、実行時にNULLポインタ例外を回避するためにNULL値チェックを含めます。

  2. 「左の値」をクリックします。

  3. 条件ブラウザで、「式ビルダー」をクリックします。

  4. 式ビルダーで、「関数」をクリックし、「FLineEFF > コンテキスト」を展開し、equalsIgnoreCase(String),をクリックして「式に挿入」をクリックします。

    たとえば:

    コンテキスト・オブジェクトの機能が表示されるまでフォルダを展開

    ツリー構造をナビゲートするには、コンテキスト・オブジェクトの機能を表示できるようになるまでフォルダを展開します。 FlineEFFは、以前に宣言したパターンです。

    展開するコンテキストは、FlineEFFパターンのファクトです。 これには、様々な計算を実行するために使用できる関数が含まれます。 したがって、作成する式には、パターン、ファクトおよび関数が含まれます。

  5. ダイアログの上部近くにあるウィンドウで、Stringという単語を拡張可能フレックスフィールド条件のコンテキストに置き換えます。 この例では、StringComplianceに置き換えます。

    たとえば:

    拡張可能フレックスフィールド条件のコンテキストの定義
  6. OK > OKをクリックします。

  7. 「右値」をクリックします。

  8. 条件ブラウザで、「DooSeededOrchestrationRules > ブール」を展開し、TRUE > OKをクリックします。

    たとえば:

    ブラウザでのブール値の設定

コンプライアンス・ステータスに従って明細を選択

テストを追加します。

  • コンプライアンス・ステータスという名前のフレックスフィールド属性の値が未合格の場合

式を作成します。

左式

オペランド

右式

flineEFF.getFlexAttributeValue("_Compliance_Status")

次である

"不合格\

コンプライアンス・ステータスに従って明細を選択します。

  1. 追加したテストで、右の値拡大鏡のすぐ右側にある「下向き矢印」をクリックし、「簡易テスト」をクリックします。

  2. 「左の値」をクリックします。

  3. 条件ブラウザで、「式ビルダー」をクリックします。

  4. 式ビルダーで、「関数」をクリックし、FlineEFF.getFlexAttributeValue(String)をクリックして、「式に挿入」をクリックします。

    たとえば:

    コンプライアンス・ステータスに従って明細を選択
  5. ダイアログの上部近くにあるウィンドウで、Stringという語をフレックスフィールド属性の名前に置き換えます。

    関数で属性名の前にアンダースコアを使用する必要があります。 属性名はCompliance_Statusであるため、_Compliance_Statusを使用します。

    たとえば:

    式でのステータスの追加
  6. OK > OKをクリックします。

  7. Isの右側のフィールドに、"Not Passed"と入力します。

    二重引用符( ")を含める必要があります。

    ルールにテストが含まれていることを確認してください。

    左式

    オペランド

    右式

    FLineEFF.context.equalsIgnoreCase("Compliance")

    次である

    DooSeededOrchestrationRules.Boolean.TRUE

    flineEFF.getFlexAttributeValue("_Compliance_Status")

    is

    "Not Passed"

手動で確認する必要があるオーダー明細の理解

文を作成します。

手作業による検査が必要なものの特定

説明

  • 結果は、DooSeededOrchestrationRulesディクショナリのファクトです。

  • resultObjKeyは、結果ファクトのプロパティです。

  • resultObjKeyには、このルールで手動検査が必要なオーダー明細を識別するために使用する値が格納されます。

  • Flineは、オーダー明細属性を含むDooSeededOrchestrationRulesディクショナリ内のファクトです。

  • fulfillLineIDは、オーダー明細属性です。

手動検査が必要なオーダー明細を識別します。

  1. Then領域で、「Add Action」>「Assert New」をクリックします。

  2. 「ターゲットの選択> DooSeededOrchestrationRules.Result」をクリックします。

  3. 「プロパティの編集」をクリックします。

  4. プロパティ・ダイアログのresultObjKey行で、「値」をクリックします。

  5. 条件ブラウザで、Flineを展開し、fulfillLineIDをクリックし、OKをクリックします。

  6. 「プロパティ」ダイアログは次のようになります:

    プロパティ・ダイアログの使用
  7. 「OK」をクリックします

  8. 「明細選択基準」ダイアログで、「保存」をクリックします。

  9. 「オーケストレーション・プロセス定義の編集」ページで、「保存」をクリックします。