インバウンド統合処理
PL/SQLデータベーストリガーまたは同時実行ジョブを使用して、からへのデータ転送が可能です。
データベースのトリガーを使用して、からへのデータ転送
PL/SQLデータベーストリガーを使用して、からへデータを転送することも、トリガーアーキテクチャとして知られています。
この図は、PL/SQLトリガーを使用して、からへのデータのインバウンドフローを示しています。

PL/SQL トリガー
インバウンド方向では、データベーステーブルにデータを挿入または更新すると、トリガーが実行されます。 PL/SQL ストアドプロシージャは、統合制御、ステータスコード、レコードタイプをチェックし、データが送信されることを確認します。 さらに処理が行われる可能性があります。ERPの終了手続き
ERPの終了手続きは、Java™言語の終了手続きまたはPL/SQLのストアドプロシージャのいずれかになります。 ERPの終了手続きはカスタマイズが可能です。
- Java言語の終了手順では、インターフェーステーブル間のデータの移動を検証し、操作します。
- PL/SQL ストアドプロシージャとユーザー終了により、インターフェーステーブルと.の間を移動するデータを管理します。 ストアドプロシージャにはあらかじめ定義された処理ロジックが含まれており、いかなる方法でも変更してはなりません。
トリガーを使用したインバウンド処理の例、発注書の転送
すべてのインバウンド取引において、発注書の転送順序は同じです。 開始アクション、統合制御名、終了手順名、およびインターフェーステーブル名は、エンタープライズサービスによって異なります。
- で発注書を作成し、承認する。
- PO トランザクション、PL/SQL トリガーまたは同時実行ジョブ、およびプロシージャの組み合わせを受け入れ処理する場合、POIN 統合制御の値を確認します。 値が0(false)の場合、プロセスは停止します。
- 同じ PL/SQL プロシージャが、レコードをベーステーブルからインターフェーステーブル(MXPO_IFACE)に移動します。 次に、この手順では、インターフェーステーブルレコードに対して実行すべきアクションに関する情報をMXIN_INTER_TRANSキューテーブルに追加します。
- ポーリングプログラムは、MXIN_INTER_TRANSテーブルに新しいレコードがないか確認します。 ポーリングプログラムが新しいレコードを見つけると、企業サービスと外部システムに割り当てられた受信キューを識別し、そのキューにメッセージを書き込みます。
- 受信キューからレコードを取得します。
- 企業サービスにマルチプルコントロールが存在する場合、コントロールで指定されたすべてのサイトまたは組織のオブジェクト構造がマルチプルされます。
- Javaユーザーの終了手続きが存在する場合、前処理メソッドを実行します。 データを格納する外部レコード(ER)をカスタマイズするには、事前処理メソッドを使用する必要があります。
- Java ERPの終了手順( POInExt )を呼び出し、処理を完了し、エンタープライズサービスからオブジェクト構造形式にデータを変換します。 外部レコードと内部レコード(IR)の両方が存在する。 IRは、トランザクションデータをフォーマットで格納しています。
- Javaユーザーの終了手続きが存在する場合、後処理メソッドを実行します。 後処理メソッドを使用して、ERとIR間のマッピングをカスタマイズします。
- エンタープライズサービスの処理クラスを実行します( MXPO_FROA12 )。
- 処理ルールが存在する場合、処理ルールシーケンス番号で指定された順序でオブジェクト構造に適用します。
- これは、オブジェクト構造(MXPO)からオブジェクトを構築し、標準アプリケーション処理用にオブジェクトを渡します。
同時進行ジョブを使用して、からへのデータ転送
同時ジョブリクエストを使用して、からへのトランザクションの送信が可能です。 同時実行ジョブは、.でPL/SQLストアドプロシージャを実行するバッチプログラムです。 同時実行ジョブを手動で実行することも、定期的に実行するようスケジュールすることもできます。
この図は、同時実行ジョブを使用して、からへのデータのインバウンドフローを示しています。

では、インバウンドトランザクションを生成し、同時リクエストが実行されると、同時ジョブが前回実行された際に挿入または更新されたデータを抽出します。 次に、データは.を使用して送信されます。
トランザクションのインターフェースとビジネス要件に応じて、同時リクエストまたは同時リクエストセットを実行できます。 同時ジョブアーキテクチャでインストールすると、標準的な統合シナリオをサポートするために、同時リクエストとリクエストセットが提供されます。 特定の統合要件に合わせて、より多くの同時リクエストまたはリクエストセットを作成することができます。 同時リクエストは、システム管理者アプリケーションで実行できます。 アプリケーションを構成して、任意のモジュールで同時リクエストを実行できるようにすることができます。
OAREPROCESS cron
同時実行中のジョブがスケジュール通りに実行されると、トランザクションがからへ転送される前に遅延が発生する可能性があります。 この遅延により、主レコードとその関連レコードがから転送されるまでに遅延が発生する可能性があります。
OAREPROCESS cron タスクを使用して、同時ジョブリクエストのタイミングを同期します。 インストール後、.のcronタスクを起動する必要があります。 システム構成 > プラットフォーム構成アプリケーションを使用して、OAREPROCESS cron タスクを有効にします。
OAREPROCESS cronの例
現在、購買発注のジョブは深夜0時に実行される予定であり、受信の並列ジョブは 10pm に実行される予定です。 発注書は 4pm で作成されます。 購入は 6pm で受け付けます。 10pm では、同時進行の受信ジョブが領収書を転送しようとします。 購入注文が存在しないため、受信トランザクションは失敗します。 その後、OAREPROCESS cron タスクは領収書の送信を試み続けます。 深夜に購買発注の並列ジョブが実行されると、購買発注が作成されます。 購入注文が存在する場合、レシートはcronタスクによってに転送されます。
同時進行ジョブを使用するインバウンド処理の例:発注書の転送
すべてのインバウンド取引において、発注書の転送順序は同じです。 開始アクション、統合制御名、終了手順名、およびインターフェーステーブル名は、エンタープライズサービスによって異なります。
同時実行ジョブを使用するインバウンド処理は、レコードのバッチをからに転送することを目的としています。 しかし、この例では、1つのレコードの転送が処理手順を説明するために考慮されています。
- .で発注書を作成し、承認します。
- POトランザクションを受け入れ処理する場合、同時実行ジョブは定義されたスケジュールに従って実行されます。 同時実行ジョブに関連する手順では、POIN統合制御の値がチェックされます。 値が0(false)の場合、プロセスは停止します。
- 同じ関連付けられたストアドプロシージャが、レコードをベーステーブルからインターフェーステーブル(MXPO_IFACE)に移動させます。 次に、この手順では、インターフェーステーブルレコードに対して実行すべきアクションに関する情報をMXIN_INTER_TRANSキューテーブルに追加します。
- ポーリングプログラムは、MXIN_INTER_TRANSテーブルに新しいレコードがないか確認します。 ポーリングプログラムが新しいレコードを見つけると、企業サービスと外部システムに割り当てられた受信キューを識別し、そのキューにメッセージを書き込みます。
- 受信キューからレコードを取得します。
- 企業サービスにマルチプルコントロールが存在する場合、コントロールで指定されたすべてのサイトまたは組織のオブジェクト構造がマルチプルされます。
- Javaユーザーの終了手続きが存在する場合、前処理メソッドを実行します。 外部レコードをカスタマイズするには、データを特定のフォーマットで含む事前処理メソッドを使用する必要があります。
- Java ERPの終了手順( POInExt )を呼び出し、処理を完了し、エンタープライズサービスからオブジェクト構造形式にデータを変換します。 外部レコードと内部レコードの両方が存在する。 内部レコードには、トランザクションデータが特定のフォーマットで格納されています。
- Javaユーザーの終了手続きが存在する場合、後処理メソッドを実行します。 外部レコードと内部レコード間のマッピングをカスタマイズするには、後処理メソッドを使用します。
- エンタープライズサービスの処理クラスを実行します( MXPO_FROA12 )。
- 処理ルールが存在する場合、処理ルールシーケンス番号で指定された順序でオブジェクト構造に適用します。
- これは、オブジェクト構造(MXPO)からオブジェクトを構築し、標準アプリケーション処理用にオブジェクトを渡します。