拡張変換ルールの作成
ソース・オーダーの2つ以上の明細を比較する拡張変換ルールを作成します。
履行明細で在庫品目が追加され、別の履行明細で同じ在庫品目が削除されるとします。 これらの明細の処理を回避する変換ルールを作成できます。
-
履行明細「ひとつの」が在庫品目xの追加をリクエストし、履行明細「さようなら」が在庫品目xの削除をリクエストした場合、履行明細「ひとつの」および「さようなら」を削除
このロジックを実装します。
説明文 |
説明 |
---|---|
最初のIF文 |
履行明細1の変更が追加の場合。 |
2つ目のIF文 |
履行明細2の変更が「削除」の場合。 |
3番目のIF文 |
履行明細1の在庫品目が履行明細2の在庫品目と同じである場合。 |
4番目のIF文 |
履行明細1の履行明細IDが履行明細2の履行IDと異なる場合。 |
THEN文 |
履行明細1および履行明細2を削除します。 |
この変換ルールを作成します。
このトピックでは、拡張モードを使用します。 このモードおよびビジネス・ルールの作成について理解しておくことをお薦めします。 詳細は、「オーダー管理でのビジネス・ルールの使用の概要」を参照してください。
設定の概要
-
ルールを作成します。
-
最初のIF文を作成します。
-
2番目のIF文を作成します。
-
3番目のIF文を作成します。
-
4番目のIF文を作成します。
-
THEN文を作成します。
このトピックではサンプル値を使用します。 ビジネス要件によっては、別の値が必要になる場合があります。
ルールの作成
-
「設定および保守」作業領域に移動してから、タスクに移動します。
-
オファリング: オーダー管理
-
機能領域: オーダー
-
タスク: 製品変換ルールの管理
-
- 「製品変換ルールの管理」ページで、「詳細」をクリックします。
-
「プロパティ」をクリックし、値を設定します。
属性
値
Rule 1
追加および削除アクションの統合
説明
相互に取り消すリクエストを削除するルール。
拡張モード
チェック・マークが含まれます。
-
「保存>保存」をクリックします。
- 「追加」>「ルールの追加」をクリックします。
最初のIF文の作成
このIF文を作成します。 履行明細1の変更が追加かどうかを決定します。
演習
-
Is A
の左側のフィールドに、FulfillLine
と入力します。 -
Is A
の右側にあるフィールドで、「下向き矢印」をクリックし、OrderTransformationRules.FulfillLineVOをクリックします。 -
「テストの追加>単純テスト」をクリックします。
-
「左の値」をクリックします。
-
条件ブラウザで、FulfillLineを展開し、DeltaType > OKをクリックします。
-
右の値属性に、
"Add"
と入力します。 二重引用符を含める必要があります。 -
「保存」をクリックします。
2番目のIF文の作成
このIF文を作成します。 履行明細2の変更が削除かどうかを決定します。
演習
-
「パターンの追加」をクリックします。
-
And
の下のウィンドウで、FulfillLine2
と入力します。 -
Is A
の右側にあるフィールドで、「下向き矢印」をクリックし、OrderTransformationRules.FulfillLineVOをクリックします。 -
「テストの追加>単純テスト」をクリックし、「左の値」をクリックします。
-
条件ブラウザで、
FulfillLine2
を展開し、DeltaType > OKをクリックします。 -
属性の右の値に、
"Delete"
と入力します。 二重引用符を含める必要があります。「保存」をクリックします。
3番目のIF文の作成
このIF文を作成します。 履行明細1の在庫品目が履行明細2の在庫品目と同じかどうかを決定
演習
-
「パターンの追加」をクリックします。
-
And
の下のウィンドウで、FulfillLine
と入力します。 -
Is A
の右側にあるフィールドで、「下向き矢印」をクリックし、OrderTransformationRules.FulfillLineVOをクリックします。 -
「テストの追加>単純テスト」をクリックし、「左の値」をクリックします。
-
条件ブラウザで、FulfillLineを展開し、InventoryItemIdをクリックし、OKをクリックします。
-
「右値」をクリックします。
-
条件ブラウザで、
FulfillLine2
を展開し、InventoryItemId > OKをクリックします。「保存」をクリックします。
4番目のIF文の作成
このIF文を作成します。 履行明細1の履行明細IDが履行明細2の履行IDと異なるかどうかを決定します。
演習
-
「パターンの追加」をクリックします。
-
And
の下のウィンドウで、FulfillLine
と入力します。 -
Is A
の右側にあるフィールドで、「下向き矢印」をクリックし、OrderTransformationRules.FulfillLineVOをクリックします。 -
「テストの追加>単純テスト」をクリックし、「左の値」をクリックします。
-
条件ブラウザで、FulfillLineを展開し、InventoryItemId > OKをクリックします。
-
Is > Isn'tをクリックします。
-
「右値」をクリックします。
-
条件ブラウザで、
FulfillLine2
を展開し、InventoryItemId > OKをクリックします。「保存」をクリックします。
Then文の作成
この処理を作成します。 履行明細1および履行明細2が削除されます。
演習
-
Then領域で、「Add Action」>「Assert New」をクリックします。
-
「ターゲットの選択」をクリックし、OrderTransformationRules.DeleteOrderLineをクリックします。
-
「プロパティの編集」をクリックします。
-
プロパティ・ダイアログで値を入力し、OKをクリック
名前
値
fulfillmentLineId
fulfillmentLineId
viewRowImpl
fulfillmentLineId
-
「処理の追加」>「取消」をクリックします。
-
「ターゲットの選択」をクリックし、
FulfillLine2
をクリックします。「保存」をクリックします。