针对交货单的过账、拣配、取消拣配等功能
通过标准函数:WS_DELIVERY_UPDATE 实现交货单的各种功能
1 DATA: it_lips LIKE TABLE OF lips WITH HEADER LINE. 2 DATA: lwa_vbkok LIKE vbkok, 3 lt_prot TYPE TABLE OF prott WITH HEADER LINE. 4 DATA: l_xfeld_any TYPE xfeld. 5 DATA: lv_vbeln TYPE vbeln_vl. 6 DATA: l_update_picking(1)."X拣配 7 DATA: it_vbpok TYPE TABLE OF vbpok WITH HEADER LINE. 8 DATA: gv_message TYPE char100. 9 10 *** &&& 数据赋值 11 lv_vbeln = '1234567890'. 12 13 lwa_vbkok-vbeln_vl = lv_vbeln. 14 lwa_vbkok-vbeln = lv_vbeln. 15 lwa_vbkok-wabuc = 'X'. "自动过帐发货 16 17 l_update_picking = 'X'. 18 19 LOOP AT it_lips. 20 it_vbpok-vbeln_vl = lv_vbeln. 21 it_vbpok-posnr_vl = it_lips-posnr. 22 it_vbpok-vbeln = lv_vbeln. 23 it_vbpok-posnn = it_lips-posnr. 24 it_vbpok-lfimg = it_lips-lfimg."可以没有(取消拣配) 25 it_vbpok-insmk = it_lips-insmk."可以没有(取消拣配) 26 APPEND it_vbpok. 27 CLEAR it_vbpok. 28 ENDLOOP. 29 30 CLEAR l_xfeld_any. 31 *---------------------------------------------------------------------* 32 * 标准功能 33 *& 1.对交货单进行过账 34 *& 2.取消拣配功能 35 *& 3. 36 *& 4. 37 *---------------------------------------------------------------------* 38 CALL FUNCTION 'WS_DELIVERY_UPDATE' 39 EXPORTING 40 vbkok_wa = lwa_vbkok 41 commit = 'X' 42 delivery = lv_vbeln 43 * update_picking = 'X' 44 update_picking = l_update_picking 45 if_database_update = '1' 46 if_error_messages_send_0 = 'X' 47 IMPORTING 48 ef_error_any_0 = l_xfeld_any 49 TABLES 50 vbpok_tab = it_vbpok[] 51 prot = lt_prot 52 EXCEPTIONS 53 error_message = 1 54 OTHERS = 99. 55 IF l_xfeld_any IS NOT INITIAL OR sy-subrc IS NOT INITIAL. 56 ROLLBACK WORK. 57 58 IF l_xfeld_any IS NOT INITIAL. 59 60 LOOP AT lt_prot WHERE msgty = 'E' OR msgty = 'A'. 61 CLEAR: gv_message. 62 CALL FUNCTION 'MESSAGE_TEXT_BUILD' 63 EXPORTING 64 msgid = lt_prot-msgid 65 msgnr = lt_prot-msgno 66 msgv1 = lt_prot-msgv1 67 msgv2 = lt_prot-msgv2 68 msgv3 = lt_prot-msgv3 69 msgv4 = lt_prot-msgv4 70 IMPORTING 71 message_text_output = gv_message. 72 73 ENDLOOP. 74 75 ENDIF. 76 ELSE. 77 78 ENDIF.

浙公网安备 33010602011771号