統合アルゴリズムの設定
統合アルゴリズムを使用してオーダー管理を別のOracleアプリケーションと統合する場合は、ガイドラインを適用します。
アルゴリズムの作成
ノート
-
アルゴリズムを作成するときは、詳細を処理する前にヘッダーを保存します。
-
アルゴリズムと変数を設定する必要があります。
-
関数はオプションです。
-
テストは設計時のテストです。 ランタイム・テストではありません。 これはオプションですが、推奨します。
変数の使用
ノート
-
最初にヘッダーを作成して保存し、次に変数を設定します。 アルゴリズムで変数を使用するため、まだアルゴリズムを定義しないでください。 最初に変数を設定する必要があります。
-
「変数」をクリックします。
-
属性を設定します。
属性
値
名前
入力した値は設定全体を通して表示されるため、わかりやすい名前を入力します。
Input/Output
入力および出力を選択します。
データ型
Data Objectを選択します。
内部サービス・スキーマ
FulfillmentIntegration.YourServiceの使用
説明
-
YourServiceは、統合に必要なサービスを指定します。
この例では、FulfillmentIntegration.InvoiceServiceを使用
警告: 正しいサービスを選択することが重要です。 間違ったサービスを選択すると、統合は失敗します。 -
ステップの追加
ノート
-
「アルゴリズム」をクリックします。
-
ステップを追加します。 実行時に、アルゴリズムはステップを順番に実行します。
-
名前を入力します。
-
このステップで処理するレコードを決定するデータセットを設定します。
-
レコードの処理方法を決定する条件およびアクションを設定します。
データ・セットの作成
属性を指定します。
属性 |
説明 |
---|---|
名前 |
わかりやすい名前を入力します。 アルゴリズム・ロジックによって参照されます。 |
変数パス |
VariableName.entity形式を使用します。 説明
|
カーディナリティ |
付加フレックスフィールドの場合、通常は「ゼロまたは1」を選択します。 多数のオーダー明細を1つのオーダー・ヘッダーに結合する場合は、「複数」を選択します。 |
データ・セット結合 |
書式 説明
|
条件およびアクションの指定
ノート
-
アルゴリズム・ロジックが他の条件を満たさない場合、アルゴリズムはデフォルト処理を実行します。
-
この事前定義された処理は、運送費を請求書の個別の明細品目としてインタフェースします。
-
事前定義済コードがコメントされます。 コメントを削除してアクションを有効にします。
-
Groovyスクリプトにコードを記述します。
-
コメントを使用してコードを文書化します。
-
値のソースとして使用する前に、変数が空でないことを確認してください。 特に、拡張可能フレックスフィールドに値が含まれていることを確認してください。 値が含まれていない場合は、値を取得できません。アルゴリズムが失敗する可能性があります。
-
書式
DatasetName.Alias
を使用します。説明
-
DatasetName
。 統合アルゴリズムで定義したデータ・セットの名前。 -
Alias
。 サービス・マッピングで定義した別名または属性名。たとえば、
ChargeRow.ChargeApplyTo
です。
-
この例で使用する処理の正確な内容などの詳細は、「オーダー管理と売掛管理の統合の概要」を参照してください。
サービス・マッピングと統合アルゴリズム間の属性の指定
ノート
-
サービス・マッピングで使用する属性名と、統合アルゴリズムで使用する属性名が相互に完全に一致していることを確認する必要があります。
-
サービス・マッピングで別名を指定する場合は、統合アルゴリズムでもこの別名を使用します。
-
別名を指定しない場合は、統合アルゴリズムが使用する属性名を使用します。
-
属性名で大文字と小文字が同じであることを確認してください。
たとえば:
設定 |
訂正 |
正しくない |
---|---|---|
サービス・マッピングのソース・タブでTotalSale_Customという属性を設定し、サービス・マッピングのサービス・タブで別名を定義しません。 |
このコード例では、エラーは発生しません。
|
このコード例では、エラーが発生します。
|
サービス・マッピングのソース・タブでTotalSale_Customを設定し、サービス・タブで別名をTotalSaleとして設定します。 |
このコード例では、エラーは発生しません。
|
このコード例では、エラーが発生します。
|
次に、実行時に発生する可能性があるエラー・タイプの例を示します。 この例では、サービス・マッピングのソース・タブにtotalSale_Custom属性が含まれていますが、統合アルゴリズムのコードはTotalSale_Customを使用します。
01.03:llLine><PurchaseRequestService:FulfillLineId>300000002330472</PurchaseRequestService:FulfillLineId><PurchaseRequestService:HeaderId>300000002330464</PurchaseRequestService:HeaderId> </PurchaseRequestService:FulfillLine> <PurchaseRequestService:ChangeSummary xmlns:sdo="commonj.sdo"/></PurchaseRequestService:PurchaseRequestServiceType>'-oracle.apps.scm.pricing.priceExecution.algorithms.publicQuery.exception.SetQueryException: Step 'Step 1' not executed properly. Failed to execute onEach Closure. DataObject com.oracle.xmlns.apps.scm.pricing.priceexecution.servicemappings.publicmappings.purchaserequestservicetype.HeaderEff_CustomTypeImpl@228c3b84 does not have property 'TotalSale_Custom' defined in the schema. Can not get value from the property. null Payload: VariableName:'PRCIntegration'DateType:'commonj.sdo.DataObject' IOType:'InOut' value:'<?xml version="1.0"encoding="UTF-8"?> <PurchaseRequestService:PurchaseRequestServiceType xmlns:PurchaseRequestService
-
価格設定管理作業領域に移動します。
-
「タスク」をクリックし、Order Management Configurationの下の「サービス・マッピングの管理」をクリックします。
-
「サービス・マッピングの管理」ページで、FulfillmentIntegrationをクリックします。
-
「サービス・マッピングの編集」ページのエンティティ・リストで、値を持つ「メロディ」をクリックします。
属性
値
エンティティ
PurchaseRequestLine
-
詳細リストで「表示」>「列」をクリックし、説明にチェック・マークを追加します。
マップする属性の説明を確認します。
説明が次のように述べている場合
処理
This attribute is available with the create and with the update operation
PurchaseRequestServiceを使用して属性を更新できます。
This attribute is available only with the create operation
PurchaseRequestServiceを使用して属性を更新することはできません。
公開とテスト
アルゴリズムを公開します。
ノート
-
.価格設定管理作業領域に移動します。
- 「タスク」をクリックし、Order Management Configurationの下の「アルゴリズムの管理」をクリックします。
-
異なるバージョンを作成して、作業用コピーを保持しながら異なる設定をテストできるようにします。
-
アルゴリズムを公開する必要があります。
-
公開する前にページをリフレッシュしてください: 保存、ページのクローズ、ページのオープンおよびアルゴリズムの再問合せを行います。
-
公開した後、リフレッシュして、ステータスが公開済であることを確認します。
-
公開済アルゴリズムは編集できません。 かわりに、新しいバージョンを作成するか、非アクティブ化してからアクティブ化する必要があります。
アルゴリズムをテストします。
ノート
-
「テスト」をクリックして、設計時テストを実行します。
-
新しいテストを追加します。
-
デフォルト・ペイロードを作成します。 テストでは、統合アルゴリズムで設定した構造に従ってデフォルト・ペイロードが作成されます。
-
要件を満たすようにペイロードを編集します。 たとえば、履行システムが期待している重要な属性の値を追加します。
-
「テストの実行」をクリックします。
-
結果を確認します。
ノート
-
最終実行ステータスの通知値。 緑のチェック・マークは成功を意味します。
-
テスト出力を注意して確認します。 出力が存在するのみでなく、統合に期待される値が含まれていることを確認します。 たとえば、論理的に品目摘要を連結する場合は、テストに予期した連結値が表示されることを確認します。
-
ロジックまたはデータ・セットを変更する場合は、テスト・データを削除し、テスト・データを再作成して、テストを再度実行します。
-
サービス・マッピングに使用するものと同じサンドボックスからテスト販売オーダーを発行する必要があります。 統合アルゴリズムではサンドボックスは必要ありませんが、サービス・マッピングでは必要ありません。
-
販売オーダーの発行に使用するビジネス・ユニットをテストします。
-
販売オーダーがクローズされる時点まで、販売オーダー・ライフサイクル全体(送信前も含む)および履行ビューで属性値を確認します。
-