BAPI的数据刷新问题

2020-09-19 11:17发布

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

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


您好专家

我多次运行BAPI BAPI_PO_CREATE1以创建多个PO。 但是物料编号没有正确更新,因此导致采购订单中的物料编号错误。

假设使用四个订单项的物料创建了采购订单。

材料数量

100001 100

100001 150

100001 200

100001 110

,然后我需要一个包含单个订单项且物料为100002的PO,正在使用物料100001创建该PO。我注意到进入BAPI的物料是正确的(100002),但是在运行BAPI之后,它 输入了错误的物料编号(100001)并创建了采购订单。

B.R。

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

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


您好专家

我多次运行BAPI BAPI_PO_CREATE1以创建多个PO。 但是物料编号没有正确更新,因此导致采购订单中的物料编号错误。

假设使用四个订单项的物料创建了采购订单。

材料数量

100001 100

100001 150

100001 200

100001 110

,然后我需要一个包含单个订单项且物料为100002的PO,正在使用物料100001创建该PO。我注意到进入BAPI的物料是正确的(100002),但是在运行BAPI之后,它 输入了错误的物料编号(100001)并创建了采购订单。

B.R。

付费偷看设置
发送
5条回答
一只江湖小虾
1楼-- · 2020-09-19 11:37

已解决

软件心理学工程师
2楼-- · 2020-09-19 11:31

如果您可以共享一部分格式化且相关的代码来填写表格并调用BAPI,那么它将有助于我们理解此问题。

您提供的信息很少,我们只能猜测,而没有提供任何实际帮助。

95年老男孩
3楼-- · 2020-09-19 11:47

您好 Simone Milesi

感谢您的回复。 代码没有什么复杂的,这就是为什么我没有分享。 这只是普通的BAPI代码。

FORM proc_selec_lines使用ls_final_data类型ty_final_data。

移动:lv_po_item到lt_ekpo-po_item,
lv_po_item到lt_ekpox-po_item。

ls_final_data-lgort ='3100'。
移动:ls_final_data-matnr到lt_ekpo-材料, ls_final_data-lgort至lt_ekpo-stge_loc,
ls_final_data-verme至lt_ekpo-quantity,
ls_final_data-meins至lt_ekpo-po_unit。

APPEND lt_ekpo。
APPEND lt_ekpox <1。 到lv_po_item。

ENDFORM。

呼叫功能'BAPI_PO_CREATE1'
导出
poheader = ls_ekko
poheaderx = ls_ekkox
IMPORTING
exppurchaseorder = lv_ebeln
TABLES
返回= lt_return
poitem = lt
poitemx = lt_ekpox


***我有一份物料清单,有些物料必须组合在一起并制成一个采购订单。 (工作正常),并且其他集合必须组合在一起并组成另一个PO。 但是物料数据不会第二次更改。 在调用BAPI之前,它是完美的,但是在运行BAPI之后,它将使用第一个列表中的材料创建采购订单。


亦是此间程序员
4楼-- · 2020-09-19 11:33

这与内存问题有关。

在使用此BAPI之前,我已经在标准SAP代码中看到了类似的代码。

"刷新缓冲区
调用函数'ME_EKKO_BUFFER_REFRESH'。
调用函数'ME_EKPO_BUFFER_REFRESH'。
调用函数'ME_STATISTICS_TABLES_REFRESH'。
在程序saplmepo中执行mepo_refresh。"请参见SCN线程77429
提交工作并等待。

但它也无济于事。

spaceman01
5楼-- · 2020-09-19 11:40

您是否可以关闭问题或说明您的解决方案对其他人有用? 谢谢

Nic T。

一周热门 更多>