具有WBS元素的BAPI_GOODSMVT_CREATE 301

2020-08-20 20:38发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)我有一个开发,该开发必须创建商品...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我有一个开发,该开发必须创建商品移动301才能在特殊库存" Q" WBS元素之间转移库存。

如果由MIGO手动创建301,则可以让WBS供应商(goodsmvt_item-VAL_WBS_ELEM)和WBS命运(goodsmvt_item-WBS_ELEM),然后MIGO会创建文档 完美,在表MSEG中,您可以看到两个记录(一个用于供应商,一个用于目的地)TCODE ='MIGO_TR'字段,这是我看到的唯一值

如果尝试使用BAPI BAPI_GOODSMVT_CREATE复制此文件,则没有创建MIGO_TR的值,而是使用TCODE'MB1B'(值04)创建,请指定 goodsmvt_item-VAL_WBS_ELEM goodsmvt_item-WBS_ELEM,,如果我激活MIGO Badi,则表IT_MSEG和IS_MKPF会填入我的值,但是创建完文件WBS_ELEM和VAL_WBS_ELEM相等后,就完全没有转移了。

这是我的示例:

数据:ls_header类型bapi2017_gm_head_01,

ls_code类型bapi2017_gm_code,

lt_items bapi2017_gm_item_create的类型表,

lt_ret2 TYPE bapiret2_t,

lv_matdoc TYPE mblnr,

lv_mjahr TYPE mjahr,

bapiparex的lt_extensiont类型表。

字段符号:与lt_items类似,

与lt_extensiont类似。

BREAK-POINT。

ls_header-pstng_date = sy-datum。

ls_header-doc_date = sy-datum。

* ls_header-ref_doc_no ='1234567890123456'。

ls_header-pr_uname = sy-uname。

ls_header-header_txt ='FOLIOLARGODESIFAYHENCABECERA'。

* ls_header-ref_doc_no_long ='12345678901234567890123456789012345'。

ls_code-gm_code ='04'。

将初始行添加到lt_items分配

通话功能'CONVERSION_EXIT_ALPHA_INPUT'

导出

输入='606830057'

导入

输出= -材料。

-plant ='1500'。

-stge_loc ='1100'。

通话功能'CONVERSION_EXIT_ALPHA_INPUT'

导出

输入='CURMM0109'

导入

输出= -批次。

-move_type ='301'。

-spec_stock ='Q'。

-entry_qnt ='5'。

-entry_uom ='ST'。

通话功能'CONVERSION_EXIT_ABPSN_INPUT'

导出

输入='P/80000021-00000001'

导入

输出= -wbs_elem。

-move_mat = -材料。"'000000000606830057'。

-move_plant ='1500'。

-move_stloc ='1300'。

-move_batch = -批次。"'CURMM0209'。

通话功能'CONVERSION_EXIT_ABPSN_INPUT'

导出

输入='P/80000021-00000000'

导入

输出= -val_wbs_elem。

将初始行添加到lt_extensiont分配

-structure ='SIAFYH'。

-valuepart1 ='WBS_DESTINO'。

-valuepart2 = -wbs_elem。

调用功能'BAPI_GOODSMVT_CREATE'

导出

goodsmvt_header = ls_header

goodsmvt_code = ls_code

* testrun ='X'

* GOODSMVT_REF_EWM =

导入

* GOODSMVT_HEADRET =

materialdocument = lv_matdoc

matdocumentyear = lv_mjahr

表格

goodsmvt_item = lt_items

* GOODSMVT_SERIALNUMBER =

return = lt_ret2

extensionin = lt_extensiont。

通话功能'BAPI_TRANSACTION_COMMIT'

导出

等待= abap_true。

如何使用TCODE'MIGO_TR'创建传输,这是唯一更改的字段,除了WBS值(从MIGO手动创建时,WBS_ELM和VAL_WBS_ELEM是定义的字段,当我从bapi创建此副本时,它将VAL_WBS_ELEM复制到 WBS_ELEM)。

在MSEG中有一个记录的图像,在MIGO中手动创建了文档4900000379,在BAPI中创建了4900000386和4900000387。

PEPS.jpg (212.6 kB)