1.交货单创建
DATA:lt_return TYPE TABLE OF bapiret2,
ls_return TYPE bapiret2,
lt_item TYPE TABLE OF bapidlvreftosalesorder,
ls_item TYPE bapidlvreftosalesorder,
lv_delivery TYPE vbeln_vl,
lv_num TYPE vbnum,
lt_cre_item TYPE TABLE OF bapidlvitemcreated,
ship_point TYPE vstel,
due_date TYPE ledat.
DATA:lv_msg TYPE bapi_msg,
lv_vbeln TYPE vbeln,
lv_posnr TYPE posnr.
SELECT SINGLE vstel INTO ship_point FROM zzd_tfix WHERE zbh = '1' AND zyw = u1.
due_date = sy-datum + 30.
SORT gt_sd01 BY vbeln1.
LOOP AT gt_sd01 INTO gs_sd01 .
CHECK gs_sd01-vbeln2 IS INITIAL AND gs_sd01-posnr2 IS INITIAL ."排除已生成交货单数据
lv_vbeln = gs_sd01-vbeln.
lv_posnr = gs_sd01-posnr.
ls_item-ref_doc = gs_sd01-vbeln1.
ls_item-ref_item = gs_sd01-posnr1.
APPEND ls_item TO lt_item.
CLEAR ls_item.
AT END OF vbeln1.
CLEAR:lt_cre_item, lt_return.
CALL FUNCTION 'BAPI_OUTB_DELIVERY_CREATE_SLS'
EXPORTING
ship_point = ship_point
due_date = due_date
IMPORTING
delivery = lv_delivery
num_deliveries = lv_num
TABLES
sales_order_items = lt_item
* SERIAL_NUMBERS = SERIAL_NUMBERS
* EXTENSION_IN = EXTENSION_IN
* DELIVERIES = DELIVERIES
created_items = lt_cre_item
* EXTENSION_OUT = EXTENSION_OUT
return = lt_return.
READ T