オーダー管理拡張の作成の概要
オーダー管理のデプロイメントを変更し、独自の機能を実装し、このスクリプトを実行するタイミングを決定する拡張ポイントを指定する独自のGroovyスクリプトを記述します。
オーダー管理拡張は、特定のビジネス要件を満たすGroovyスクリプトです。 拡張ポイントは、スクリプトを実行するタイミングを決定するために指定するイベントです。
フレックスフィールドを使用してデータ・モデルを変更することも、ページ・コンポーザを使用してユーザー・インタフェースを変更することもできますが、これらを使用してロジックを変更したり、Order Managementのデプロイメントを変更することはできません。 かわりに、オーダー管理拡張を作成できます。
オーダー発行日の更新という拡張例のGroovyスクリプトを次に示します。 属性_H1AttributeDateTimeを使用して、オーダー管理が販売オーダーを発行した日時を拡張可能フレックスフィールドの値に設定できます。
Order Management拡張機能で満たすことができるビジネス要件
要件の例 |
摘要 |
---|---|
データの取得または更新 |
オーダー管理拡張を作成して、様々なソースからデータを取得または更新します。
変換ルールを使用してデータを取得または更新することもできますが、拡張によってより高度なコードを使用できます。 これを使用して、新しいオーダー明細を追加することもできます。 |
販売オーダー属性または拡張可能フレックスフィールドのデフォルト値の設定 |
事前変換ルールや変換後ルールを使用することも、ユーザーのサンドボックスで簡単なパーソナライズを実行することもできますが、Groovyを使用して独自のロジックを記述すると、販売オーダーを保存したりオーダー履行に送信する前にデフォルト値を設定する必要性がより厳しくなる場合があります。 拡張機能を使用すると、次のことができます:
|
データを検証します |
オーダー・ヘッダーなど、同じエンティティの異なる属性、またはオーダー・ヘッダーやヘッダーのオーダー明細など、異なるエンティティの属性のデータを検証します。 オーダー・ヘッダーまたはオーダー明細の属性間のデータを、Oracle PricingのエンティティやProduct Information Managementの品目の属性など、他のアプリケーションまたは作業領域の属性からのデータと比較します。 |
元の販売オーダーから返品明細の値を取得します。 |
返品オーダーには、一部のオーダー明細属性の元のオーダーの値が含まれていません。 たとえば、返品明細には販売実績または購買オーダー番号の元の値は含まれません。 拡張を使用して、元の明細オーダーから値を取得できます。 |
保留の適用 | Order Management作業領域またはwebサービスで保留を手動で適用できますが、拡張機能を使用して自動的に保留を行う方が簡単です:
|
エラー・メッセージおよび警告の表示 |
エラー・メッセージまたは警告を表示する拡張を作成します。 |
独自のロジックを実装 |
拡張機能をコーディングするときに、Groovyを使用して独自のロジックを記述します。 コードによって販売オーダーを検証できます。 検証に失敗した場合、コードはフローを停止してメッセージを作成できます。 Groovyの詳細は、「Groovyプログラミング言語」を参照してください。 |
アクションの例
処理 |
説明 |
---|---|
販売オーダーの送信 |
|
販売オーダーの保存または検証 |
インポートを拒否するインポート済ソース・オーダーに検証を記述するか、オーダー入力スペシャリストが問題を修正せずにオーダーを保存できないようにします。 |
オーダー管理拡張の一部
部品 |
説明 |
---|---|
関数 |
Java関数に似たGroovy関数(getAttrなど)。 関数を設定した拡張機能でのみ使用します。 ある拡張で関数を定義し、別の拡張で使用することはできません。 |
属性 |
販売オーダーの属性(ShippingInstructionsなど)。 |
Webサービス |
webサービスの名前。
|
メッセージ |
オーダー管理に送信し、オーダー管理作業領域に表示できるメッセージ。
|