スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

請求書照合取消BAPI

BAPI_INCOMINGINVOICE_CANCEL

概要

請求書照合の取消をするBAPIです。請求書伝票番号を指定することで、その伝票に対する取消伝票を登録することができます。

パラメータ

取消しのBAPIのためパラメータは少ししかありません。取消対象の請求書伝票番号と会計年度、および取消理由と転記日付でBAPIを実行できます。
パラメータ一覧
種別パラメータ説明
インポートINVOICEDOCNUMBER請求書伝票番号
FISCALYEAR会計年度
REASONREVERSAL取消理由
POSTINGDATE取消伝票転記日付
エクスポートINVOICEDOCNUMBER_REVERSAL取消伝票番号
FISCALYEAR_REVERSAL取消伝票の会計年度
テーブルRETURNリターンメッセージ

取消伝票のパラメータを設定する

請求書伝票のキーである請求書伝票番号(INVOICEDOCNUMBER)、会計年度(FISCALYEAR)の設定と取消理由(REASONREVERSAL)、および取消伝票転記日付(POSTINGDATE)を設定します。
設定例:インポートパラメータ
項目項目名称設定値
INVOICEDOCNUMBER請求書伝票番号5100001234
FISCALYEAR会計年度2014
REASONREVERSAL取消理由01
POSTINGDATE取消伝票転記日付20141031

サンプルコード

通常の汎用モジュールを実行するのと同様にCALL FUNCTIONで実行します。請求書照合取消のBAPIの内部ではコミットされないため、正常終了時は明示的にコミットを実行する必要があります。

BAPIは例外を発生させない仕様なので、エラー判定はRETURNパラメータにメッセージタイプが「E」のレコードが1件以上あるかどうかで判定をします。
DATA: LV_INVOICEDOCNUMBER          TYPE BAPI_INCINV_FLD-INV_DOC_NO,
      LV_FISCALYEAR                TYPE BAPI_INCINV_FLD-FISC_YEAR,
      LV_REASONREVERSAL            TYPE BAPI_INCINV_FLD-REASON_REV,
      LV_POSTINGDATE               TYPE BAPI_INCINV_FLD-PSTNG_DATE,
      LV_INVOICEDOCNUMBER_REVERSAL TYPE BAPI_INCINV_FLD-INV_DOC_NO,
      LV_FISCALYEAR_REVERSAL       TYPE BAPI_INCINV_FLD-FISC_YEAR,
      LT_RETURN                    TYPE TABLE OF BAPIRET2.

* パラメータに値を設定する
LV_INVOICEDOCNUMBER = '5100001234'. " 請求書伝票番号
LV_FISCALYEAR       = '2014'.       " 会計年度
LV_REASONREVERSAL   = '01'.         " 取消理由
LV_POSTINGDATE      = '20141031'.   " 取消伝票転記日付
*             :
*          (以下略)

CALL FUNCTION 'BAPI_INCOMINGINVOICE_CANCEL'
  EXPORTING
    INVOICEDOCNUMBER          = LV_INVOICEDOCNUMBER
    FISCALYEAR                = LV_FISCALYEAR
    REASONREVERSAL            = LV_REASONREVERSAL
    POSTINGDATE               = LV_POSTINGDATE
  IMPORTING
    INVOICEDOCNUMBER_REVERSAL = LV_INVOICEDOCNUMBER_REVERSAL
    FISCALYEAR_REVERSAL       = LV_FISCALYEAR_REVERSAL
  TABLES
    RETURN                    = LT_RETURN
  .
* エラーメッセージの取得
READ TABLE LT_RETURN WITH KEY TYPE = 'E'.

* エラーメッセージがない場合
IF SY-SUBRC <> 0.
  COMMIT WORK AND WAIT.
ELSE.
  ROLLBACK WORK.
ENDIF.

コメントの投稿

非公開コメント

プロフィール

Z*

Author:Z*

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

このブログを気に入って頂いた方は、リンクを張っていただけると嬉しいです。

カテゴリ
最新記事
最新コメント
月別アーカイブ
検索フォーム
リンク
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。