出荷伝票BAdI 伝票入力チェック

[LE_SHP_DELIVERY_PROC] DELIVERY_FINAL_CHECK

概要

出荷伝票の保存前に実行されるBAdIです。出荷伝票保存時の入力チェックの用途で利用されます。

パラメータ

出荷伝票のテーブル構成に近い形でパラメータも構成されています。X系の変数には現在の項目値が格納され、Y系の変数には変更モードでの変更前の値が格納されています。

入力チェック後のエラーメッセージはCT_FINCHDELのパラメータに設定します。
パラメータ一覧
種別パラメータ説明
ImportingIT_XLIKP出荷ヘッダ
IT_YLIKP出荷ヘッダ (変更前)
IT_XLIPS出荷明細
IT_YLIPS出荷明細 (変更前)
IT_XVBPA取引先機能
IT_YVBPA取引先機能 (変更前)
IT_XVBFA伝票フロー
IT_YVBFA伝票フロー (変更前)
IT_XVBUKヘッダステータス
IT_YVBUKヘッダステータス (変更前)
IT_XVBUP明細ステータス
IT_YVBUP明細ステータス (変更前)
IT_XVBADRアドレス
IS_V50AGL制御構造
IF_TRTYPトランザクションタイプ
IF_TCODEトランザクションコード
ChangingCS_V50AGL_CUST制御構造 (カスタマ用)
CT_FINCHDELリターンコード: 出荷最終チェック

実行タイミング

出荷伝票登録・変更画面で実行されます。出荷証明登録画面でも実行されます。
保存ボタン押下時や出庫確認ボタン押下時にこのBAdIが実行されます。

サンプルコード

出庫確認実行時のみ実行するBAdIの例です。
出荷伝票ヘッダの外部出荷IDが未設定の場合はエラーメッセージを返します。
method IF_EX_SHP_DELIVERY_PROC~DELIVERY_FINAL_CHECK.

  DATA: LS_XLIKP TYPE LINE OF SHP_LIKP_T,
        LS_FINCHDEL TYPE FINCHDEL.

  LOOP AT IT_XLIKP INTO LS_XLIKP.
*   出庫確認実行の場合
    IF IS_V50AGL-WARENAUSGANG = 'X'.
*     外部出荷IDが初期値の場合
      IF LS_XLIKP-LIFEX IS INITIAL.
*       エラーメッセージを設定
        LS_FINCHDEL-VBELN    = LS_XLIKP-VBELN.
        LS_FINCHDEL-PRUEFUNG = '99'.
        LS_FINCHDEL-MSGTY    = 'E'.
        LS_FINCHDEL-MSGNO    = '001'.
        LS_FINCHDEL-MSGID    = 'Z001'.
        INSERT LS_FINCHDEL INTO TABLE CT_FINCHDEL.
        EXIT.
      ENDIF.

    ENDIF.
  ENDLOOP.

endmethod.
関連記事

コメントの投稿

非公開コメント

プロフィール

Z*

Author:Z*

このブログではSAPの技術情報について解説をしていきます。

2017年:ブログをリニューアルしました。(旧Zの高速道路)

カテゴリ
最新記事
最新コメント
月別アーカイブ
検索フォーム
リンク