SAP – ABAP – BAPI – Mouvement de stock – MIGO
La BAPI pour réaliser les mouvements de stock est : BAPI_GOODSMVT_CREATE suivi de BAPI_TRANSACTION_COMMIT comme d’hab.
Exemple de transfert mvt 311 :
data : ws_header type BAPI2017_GM_HEAD_01 ,
ws_item type BAPI2017_GM_ITEM_CREATE ,
wt_item type table of BAPI2017_GM_ITEM_CREATE,
data : ws_return type BAPIRET2,
wt_return type table of BAPIRET2.
data : wv_doc type BAPI2017_GM_HEAD_RET-MAT_DOC,
wv_year type BAPI2017_GM_HEAD_RET-DOC_YEAR.
* Entête
Clear ws_header.
ws_header-pstng_date = sy-datum.
ws_header-doc_date = sy-datum.
ws_header-REF_DOC_NO = ’REFERENCE’.
* Poste
clear ws_item. refresh wt_item.
ws_item-material = wv_matnr.
ws_item-plant = wv_werks.
ws_item-stge_loc = ’MAG1.
ws_item-MOVE_STLOC = ’MAG2′.
ws_item-move_type = ’311′.
ws_item-entry_qnt = wv_quantite.
ws_item-entry_uom = wv_unite.
ws_item-mvt_ind = ‘ ’.
append ws_item to wt_item.
CALL FUNCTION ‘BAPI_GOODSMVT_CREATE’
EXPORTING
GOODSMVT_HEADER = ws_header
GOODSMVT_CODE = ’04′
IMPORTING
MATERIALDOCUMENT = wv_doc
MATDOCUMENTYEAR = wv_year
TABLES
GOODSMVT_ITEM = wt_item
RETURN = wt_return.
Attention au paramètre GOODSMVT_CODE qui varie suivant le type de mvt.