スポンサーサイト

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

会計伝票反対仕訳BAPI

BAPI_ACC_DOCUMENT_REV_POST

概要

BAPIで登録された会計伝票の反対仕訳をするBAPIです。会計伝票番号を指定することで、その伝票に対する反対仕訳を登録することができます。BAPIで登録された会計伝票以外は反対仕訳ができないという制限があります。

パラメータ

会計管理の反対仕訳に関する情報(REVERSAL)に対象伝票や転記日を設定、取引(BUS_ACT)に対象伝票の取引と同じ取引の値を設定します。
パラメータ一覧
種別パラメータ説明
インポートREVERSAL会計管理の反対仕訳に関する情報
BUS_ACT取引
エクスポートOBJ_TYPE参照処理
OBJ_KEY参照キー
OBJ_SYS元伝票の論理システム
テーブルRETURNリターンパラメータ

反対仕訳のパラメータを設定する

会計管理の反対仕訳に関する情報(REVERSAL)には、参照処理、取消:オブジェクトキー、転記日付、反対仕訳理由を設定します。「取消: オブジェクトキー」には会計伝票番号、会社コード、会計年度を連結した文字列を設定します。

伝票登録画面から転記した会計伝票は参照処理が「BKPF」になっているため反対仕訳はできません。BAPIで登録した「BKPFF」の伝票は当BAPIで反対仕訳が可能です。
設定例:REVERSAL
項目項目名称設定値
OBJ_TYPE参照処理BKPFF
OBJ_KEY_R取消: オブジェクトキー230000123410002014
PSTNG_DATE伝票の転記日付20141031
REASON_REV反対仕訳理由01

サンプルコード

通常の汎用モジュールを実行するのと同様にCALL FUNCTIONで実行します。会計伝票反対仕訳のBAPIの内部ではコミットされないため、正常終了時は明示的にコミットを実行する必要があります。

BAPIは例外を発生させない仕様なので、エラー判定はRETURNパラメータにメッセージタイプが「E」のレコードが1件以上あるかどうかで判定をします。
DATA: LS_REVERSAL TYPE BAPIACREV,
      LV_BUS_ACT  TYPE BAPIACHE09-BUS_ACT,
      LV_OBJ_TYPE TYPE BAPIACREV-OBJ_TYPE,
      LV_OBJ_KEY  TYPE BAPIACREV-OBJ_KEY,
      LV_OBJ_SYS  TYPE BAPIACREV-OBJ_SYS,
      LT_RETURN   TYPE TABLE OF BAPIRET2.

* パラメータに値を設定する
LS_REVERSAL-OBJ_TYPE   = 'BKPFF'.              " 参照処理
LS_REVERSAL-OBJ_KEY_R  = '230000123410002014'. " 取消: オブジェクトキー
LS_REVERSAL-PSTNG_DATE = '20141031'.           " 伝票の転記日付
LS_REVERSAL-REASON_REV = '01'.                 " 反対仕訳理由
LV_BUS_ACT             = 'RFBU'.               " 取引
*             :
*          (以下略)

CALL FUNCTION 'BAPI_ACC_DOCUMENT_REV_POST'
  EXPORTING
    REVERSAL = LS_REVERSAL
    BUS_ACT  = LV_BUS_ACT
  IMPORTING
    OBJ_TYPE = LV_OBJ_TYPE
    OBJ_KEY  = LV_OBJ_KEY
    OBJ_SYS  = LV_OBJ_SYS
  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の技術情報について解説をしていきます。

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

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