SAP資格過去問ならSAPnavi

NoteやStripe決済で安全にSAP過去問を購入することができます。
領収書発行可能 / 即時入手可能

SAP過去問 (SAP Exam)

Processing BAPIs

手順

インバウンド汎用モジュールがアプリケーション側で実行されると、IDocからBAPI呼び出しが生成され、BAPI汎用モジュールが呼び出され、IDocステータスが決定されます。BAPI(またはパッケージ全体)の処理が完了すると、すべてのIDocのステータスレコードと、正常に完了したBAPIによって生成されたすべてのアプリケーションデータが一緒にデータベースに書き込まれます。

IDocのBAPI呼び出しへの変換

BAPIが呼び出されると、IDocセグメントからのデータ全体がBAPI汎用モジュールの関連パラメータに書き込まれます。BAPIに対してインタフェース削減が定義されている場合、非表示フィールドにはIDocデータが入力されません。

BAPI汎用モジュール呼び出し

次に、パラメータが入力されたBAPI汎用モジュールが同期的に実行されます。BAPIはCOMMITWORKコマンドを実行しないため、BAPIが作成、変更、または削除したアプリケーションデータはまだデータベースに保存されていません。

IDocステータスの決定

汎用モジュールが実行されている場合、IDocステータスは、呼び出しの結果から受信汎用モジュールで決定されます。

戻りパラメーターのエントリーの少なくとも1つでTYPEフィールドがA(中止)またはE(エラー)で埋められている場合、これは次のことを意味します。

  • タイプA:対応するIDocのすべてのステータスレコードにステータス51(エラー、申請伝票が転記されていない)が割り当てられ、ロールバック作業が実行されます。

  • タイプE:対応するIDocのすべてのステータスレコードにステータス51(エラー、申請伝票が転記されていない)が割り当てられ、COMMITWORKが実行されます。パッケージ処理中、COMMIT WORKは、パッケージ全体が処理された後に実行されます(他のBAPIがAメッセージを返さないことを前提としています)。ただし、無効なBAPIの結果は保存されません。エラーステータスのみが記録されます。

  • それ以外の場合は、ステータス53(申請伝票転記)が書き込まれ、COMMITWORKが実行されます。パッケージ処理中、COMMIT WORKは、パッケージ全体が処理された後に実行されます(他のBAPIがAメッセージを返さないことを前提としています)。

アプリケーションデータとIDocステータスの転記

すべてのIDoc/BAPIが個別に処理されると、データはすぐにデータベースに書き込まれます。1つのパケット内で複数のIDocが処理される場合、次のことが発生する可能性があります。

  • パッケージ内のBAPIがAメッセージで中止されなかった場合、COMMIT WORKコマンドは、パッケージ全体が処理された後に実行されます。これにより、正常に完了したすべてのBAPIのアプリケーションデータが、すべてのIDocのステータスレコードとともにデータベースに保存されます。

  • ただし、パッケージ内のBAPIがAメッセージで中止されるとすぐに、対応するIDocのステータスが51に設定され、ロールバック作業がすぐに実行されます。次に、以前に正常に完了したすべてのBAPI(つまり、EまたはAメッセージを返さなかったBAPI)に対して受信処理が再開されます。この実行中に他のAメッセージが発生しない場合は、COMMITWORKが実行されます。有効なBAPIのアプリケーションデータは、IDocのステータスレコードとともにデータベースに書き込まれます。さらにAメッセージが発生した場合は、上記の手順を繰り返します。

エラー処理

エラーが発生した場合は、標準のALEエラー処理を使用できます。これには次の効果があります。

  • エラーの原因となったIDocおよび/またはBAPIの更新はキャンセルされます。

  • イベントがトリガーされます。このイベントはエラータスク(作業項目)を開始します:

  • 責任のある従業員は、ワークフローの受信ボックスでタスクを受け取ります。

  • タスクの処理中にエラーメッセージが表示されます。

  • エラーは別のウィンドウで修正され、IDocを再送信して処理できます。

  • エラーを修正できない場合は、IDocに削除のマークを付けることができます。

  • IDocが正常に投稿されると、エラータスクを終了するイベントがトリガーされます。その後、タスクは受信ボックスから消えます。

タイトルとURLをコピーしました