目次
BADI「ME_PROCESS_PO_CUST」とは?
SAPの購買発注(Purchase Order, PO)プロセスを「BADI(Business Add-In)」というSAPのカスタマイズ手法を使うことでカスタマイズすることが可能です。
特に「ME_PROCESS_PO_CUST」というBADIは、購買発注の作成や変更時に自分のロジックを追加するのに最適です。
「ME_PROCESS_PO_CUST」はSAPの購買発注(Purchase Order, PO)プロセスにおいてカスタマイズを行うための重要な拡張ポイントです。
BADI(Business Add-In)はSAPのシステムにカスタムロジックを組み込むためのインタフェースを提供する技術です。BADIは既存の標準機能を変更・拡張する場合に使用されます。
BADI「ME_PROCESS_PO_CUST」のタイミング
BADI「ME_PROCESS_PO_CUST」は以下のタイミングで呼び出される
- 購買発注の作成時
- 購買発注の変更時
- 購買発注の表示(表示モード)時
これらのタイミングでBADIが呼び出されることで、カスタムロジックを挿入することが可能です。(赤枠はチェック時のロジック追加部分)
このBADIを利用することで、購買発注のプロセスをカスタマイズし、特定の要件に対応することが可能となります。
BADI「ME_PROCESS_PO_CUST」の利用方法
「ME_PROCESS_PO_CUST」BADIの利用手順は以下の通り
- トランザクションコード「SE18」を使用してBADI定義画面にアクセスする。
- BADI「ME_PROCESS_PO_CUST」を検索して、詳細情報を表示する。
- 既存の実装が存在する場合は、その実装を選択して修正するか、新しい実装を作成する。
- 実装内にカスタムロジックを記述。この部分で購買発注のプロセスをカスタマイズします。
BADI「ME_PROCESS_PO_CUST」のカスタマイズ例
BADIを使用して行えるカスタマイズの例として、以下のようなシナリオが考えられる
- 購買発注作成時に特定の項目にデフォルト値を自動入力する。
- 購買発注変更時に特定の条件に基づいてフィールドの値を変更する。
- 購買発注の保存前に特定条件のチェックを実行する。
これらのカスタマイズにより、購買発注プロセスをビジネスの要件に適した形にカスタマイズすることが可能です。
エラーメッセージの設定方法
BADIのCHECKメソッドは、購買発注の保存前に実行され、事前のバリデーションを行う際に利用されます。バリデーションに違反した場合にエラーメッセージを出力することで、ユーザーに問題を伝えることが可能。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
method IF_EX_ME_PROCESS_PO_CUST~CHECK. INCLUDE MM_MESSAGE_MAC. DATA LS_MEPOHEADER TYPE MEPOHEADER. * 発注ヘッダ取得 LS_MEPOHEADER = IM_HEADER->GET_DATA( ). * 購買伝票タイプがNBの場合 IF LS_MEPOHEADER-BSART = 'NB'. IF LS_MEPOHEADER-IHREZ IS INITIAL. * ME21N画面にエラーメッセージ表示 MMPUR_MESSAGE 'E' 'Z001' '004' '' '' '' ''. ENDIF. ENDIF. endmethod. |
まとめ
BADI「ME_PROCESS_PO_CUST」はSAPの購買発注プロセスをカスタマイズするための重要な拡張ポイント。
BADIを利用することで、購買発注に独自のロジックを追加し、ビジネスプロセスを最適化することが可能。
ただし、カスタマイズには慎重さが必要であり、SAPの公式ドキュメントやサポート情報を参照して正確な手順を理解するして対応する必要があります。