Code Snippet to Update ‘Actual GR Date’ in Inbound delivery using VL32 – BDC
∙April 1, 2014 ∙ ABAP, SAP LE ∙ Leave a comment Tagged: bdc, code library This piece of code updates ‘Actual GR Date’ in inbound delivery using BDC in synchronous update mode. ‘Actual GR Date’ is adopted as posting date by material document created during goods receipt. 1 2 3 4 5 6 7 8 9 1 0 1 1 1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 2 0 2 1 2 2 2 3 2 4 2 5 2
*&---------------------------------------------------------------------* *& Form update_grdate *&---------------------------------------------------------------------* * Update GR Date on Inbound delivery *----------------------------------------------------------------------* * -->I_DELIVERY Inbound Delivery Number * -->I_GRDATE Actual GR Date *----------------------------------------------------------------------* FORM update_grdate USING i_delivery TYPE likp-vbeln i_grdate TYPE likp-wadat_ist CHANGING messages TYPE tab_bdcmsgcoll . DEFINE insert_screen. clear ls_bdcdata . ls_bdcdata-program = &1 . ls_bdcdata-dynpro = &2 . ls_bdcdata-dynbegin = 'X' . append ls_bdcdata to li_bdcdata . END-OF-DEFINITION. DEFINE insert_field. clear ls_bdcdata . ls_bdcdata-fnam = &1 . ls_bdcdata-fval = &2 . append ls_bdcdata to li_bdcdata . END-OF-DEFINITION. DATA :
ls_bdcdata li_message ls_message ls_opt li_bdcdata lv_date
TYPE TYPE TYPE TYPE TYPE TYPE
bdcdata TABLE OF bdcmsgcoll bdcmsgcoll ctu_params TABLE OF bdcdata char10
, , , , , .
* Fill bdc options , run in backgound mode and with default screen size ls_opt-dismode = 'N' . ls_opt-defsize = 'X' . insert_screen 'SAPMV50A' '0108' . insert_field 'LIKP-VBELN' i_delivery . insert_field 'BDC_OKCODE' '=UELA' . insert_screen 'SAPMV50A' '0270' .
WRITE i_grdate TO lv_date . 6 insert_field 'RV50A-WADAT_IST_LA' lv_date . 2 insert_field 'BDC_OKCODE' '=SICH' . 7 2 CALL TRANSACTION 'VL32' USING li_bdcdata 8 OPTIONS FROM ls_opt 2 MESSAGES INTO li_message . 9 3 messages = li_message . 0 3 "update_grdate 1 ENDFORM . 3 2 3 3 3 4 3 5 3 6 3 7 3 8 3 9 4 0 4 1 4 2 4 3 4 4 4 5 4 6 4 7 4 8 4 9 5 0 5 1 5
2 5 3