請求書照合登録BAPI

BAPI_INCOMINGINVOICE_CREATE

請求書照合を行うBAPIです。請求書照合画面(MIRO)とほぼ同じ処理ができ、請求書とクレジットメモの両方の登録ができます。請求書伝票の保留や仮保存を行う場合は別のBAPIを使います。

パラメータ

請求書伝票のデータ構成に近い形でBAPIのパラメータも構成されています。
(請求書ヘッダ、明細、勘定設定、税、住所など)

勘定設定などが不要な請求書伝票を登録する場合は、請求書ヘッダ、明細のパラメータのみで伝票を登録することができます。
パラメータ一覧
種別パラメータ説明
インポートHEADER_DATA請求書のヘッダデータ (登録)
ADDRESS_DATA転送構造: 住所データ 請求書受領 (登録)
OIL_DATABAPIの OIL固有項目 請求書受領 登録
エクスポートINVOICEDOCNUMBER請求書伝票番号
FISCALYEAR会計年度
テーブルITEMDATA請求書の明細データ
ACCOUNTINGDATA請求書の勘定設定データ
GLACCOUNTDATA請求書受領における勘定コードデータ
MATERIALDATA請求書受領における品目勘定データ
TAXDATA請求書の税コード
WITHTAXDATA請求書受領における源泉徴収税データ
VENDORITEMSPLITDATA請求書受領における仕入先分割
RETURNリターンメッセージ
EXTENSIONINBAPIパラメータ ExtensionIn/ExtensionOutの参照構造
TM_ITEMDATA転送構造: 輸送管理用の請求書明細データ

請求書ヘッダ関連のパラメータを設定する

請求書のヘッダデータ(HEADER_DATA)には、伝票日付、転記日付、会社コード、通貨コード、総額などを設定します。請求書を登録する場合には区分: 請求書転記(INVOICE_IND)に「X」を設定します。この項目がブランクの場合はクレジットメモが登録されます。
設定例:HEADER_DATA
項目項目名称設定値
INVOICE_IND区分: 請求書転記X
DOC_DATE伝票の伝票日付20141031
PSTNG_DATE伝票の転記日付20141031
COMP_CODE会社コード1000
CURRENCY通貨コードJPY
GROSS_AMOUNT伝票通貨での請求書総額10800
CALC_TAX_IND税額自動計算X

請求書明細関連のパラメータを設定する

請求書明細(ITEM_DATA)に明細番号、購買発注番号、購買発注明細、税コード、金額、数量、発注単位などを設定します。入庫基準請求書照合の場合は参照伝票に入出庫伝票番号の設定も必要です。
設定例:ITEMDATA
項目項目名称設定値
INVOICE_DOC_ITEM請求書伝票明細00001
PO_NUMBER購買発注番号4500001234
PO_ITEM購買発注明細00010
REF_DOC参照伝票の伝票番号5000001234
REF_DOC_YEAR当会計年度2014
REF_DOC_IT参照伝票の明細0001
TAX_CODE税コードV1
ITEM_AMOUNT明細金額10000
QUANTITY数量1
PO_UNIT発注単位ST

サンプルコード

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

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

* パラメータに値を設定する
LS_HEADER_DATA-INVOICE_IND = 'X'.            " 区分: 請求書転記
LS_HEADER_DATA-DOC_DATE    = '20141031'.     " 伝票の伝票日付
LS_HEADER_DATA-PSTNG_DATE  = '20141031'.     " 伝票の転記日付
*             :
*          (以下略)

CALL FUNCTION 'BAPI_INCOMINGINVOICE_CREATE'
  EXPORTING
    HEADER_DATA          = LS_HEADER_DATA
  IMPORTING
    INVOICEDOCNUMBER     = LV_INVOICEDOCNUMBER
    FISCALYEAR           = LV_FISCALYEAR
  TABLES
    ITEMDATA             = LT_ITEMDATA
    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導入の現場で役に立つノウハウを共有するブログです。
機能概要は知っていても具体的な実装方法がわからない、うまく動作しない、そんな課題解決の糸口となれば幸いです。
★各記事へのリンクは歓迎です

カテゴリ
全記事一覧
おすすめ書籍
Business Partners in Sap S/4hana

ビジネスパートナの構造や得意先・仕入先の項目を知りたい人にお薦め
Configuring Sap S/4hana Finance

これ1冊でFIとCOの主なカスタマイズをひと通り網羅している分厚い書籍
Receivables Management With Sap S/4hana

得意先マスタ、銀行入金、督促、与信管理などFI-ARをより詳しく解説
Abap Development for Sales and Distribution in Sap

受注や出荷の機能を拡張するときに使うSDのEXIT機能に特化した本
Abap Development for Materials Management in Sap

発注や入出庫の機能を拡張するときに使うMMのEXIT機能に特化した本
ABAP Development for Financial Accounting

会計伝票登録時のOPEN FIやBAdIなどFIの機能拡張に特化した本
最新記事
最新コメント
月別アーカイブ
おすすめリンク