BAPI_SALESORDER_CHANGE删除拒绝原因

2020-08-15 20:52发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)你好大师, 我的情况如下: ...

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

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


你好大师,

我的情况如下:

1。 我有一个包含3个项目的销售订单,所有订单都有拒绝的原因。 基本上,如果我们有拒绝的理由,我们将无法在MD04(要求)中看到此项目。

2。 我有一个使用BAPI_SALESORDER_CHANGE删除拒绝原因的程序。 我的结构字段如下:

SALESDOCUMENT =现有销售订单编号

ORDER_HEADER_INX-UPDATEFLAG = U

ORDER_ITEM_IN-ITM_NUMBER = 000010

ORDER_ITEM_IN-REASON_REJ =''

ORDER_ITEM_IN-ITM_NUMBER = 000020

ORDER_ITEM_IN-REASON_REJ =''

ORDER_ITEM_IN-ITM_NUMBER = 000030

ORDER_ITEM_IN-REASON_REJ =''

ORDER_ITEM_INX-ITM_NUMBER = 000010

ORDER_ITEM_INX-UPDATEFLAG ='U'

ORDER_ITEM_INX-REASON_REJ ='X'

ORDER_ITEM_INX-ITM_NUMBER = 000020

ORDER_ITEM_INX-UPDATEFLAG ='U'

ORDER_ITEM_INX-REASON_REJ ='X'

ORDER_ITEM_INX-ITM_NUMBER = 000020

ORDER_ITEM_INX-UPDATEFLAG ='U'

ORDER_ITEM_INX-REASON_REJ ='X'

3。 执行此程序后,拒绝原因已从销售订单项目中删除,但仅项目000010

在MD04中可以看到

。 销售订单的更改日志如下:

000010拒绝报价和销售订单的原因已更改

000020项目已创建

000030项目已创建

4。 但是,如果我对所有项目使用ORDER_ITEM_INX-UPDATEFLAG ='I'我可以在MD04中看到所有项目,并且日志如下所示

000010拒绝报价和销售订单的原因已更改

000020拒绝报价和销售订单的原因已更改

000030拒绝报价的原因和销售订单已更改

正如我从BAPI文档中了解到的,如果要更改现有销售订单的值,我们必须在UPDATEFLAG字段中使用" U"。 但是为什么我的场景上面有一些不一致之处。 如果我使用" I"作为UPDATEFLAG,我只能得到正确的行为吗?

感谢和问候,

安德烈

7条回答
蓋茨
2020-08-15 21:48

你好,安德烈,

最近,当我正在向派对和工厂订购时,我遇到了这个问题。 至于存在拒绝原因的销售订单,我无法更新工厂,因此我先删除了它们然后插入。PFB代码。

{**-标头级别数据-


* lv_order_header_inx-updateflag = c_update。} {订单项数据-
wa_order_item_in-itm_number = wa_vbap-posnr。 wa_order_item_in-plant = wa_vbap-werks。 wa_order_item_in-reason_rej = wa_vbap-abgru。} {*-添加第二个订单项 wa_order_item_in-plant = pa_werks。 新工厂 wa_order_item_in-material = wa_vbap-matnr。 wa_order_item_in-target_qty = c_targetqt。 wa_order_item_in-target_qu = c_unit。 wa_order_item_in-reason_rej = wa_vbap-abgru。} { 要更新的订单项数据-
wa_order_item_inx-itm_number = wa_vbap-posnr。 wa_order_item_inx-updateflag = c_delete。 wa_order_item_inx-material = c_x。 wa_order_item_inx-plant = c_x。 wa_order_item_inx-reason_rej = c_x。} {wa_order_item_inx-updateflag = c_insert。 wa_order_item_inx-material = c_x。 wa_order_item_inx-plant = c_x。 wa_order_item_inx-target_qty = c_x。} {将c_p wa_vbap-werks连接起来 进入gv_oldgarage。"旧船参加聚会 wa_partnerchanges-updateflag = c_update。 如果wa_tempschdeule是初始的。 wa_tempschdeule = c_scheduleline。 wa_schedule_lines-sched_line = wa_tempschdeule。 其他。 wa_tempschdeule = wa_tempschdeule + 1。 wa_schedule_lines-sched_line = wa_tempschdeule。 万一。 {在vbeln结尾。 调用函数" BAPI_SALESORDER_CHANGE" 出口 salesdocument = wa_final-vbeln order_header_inx = lv_order_header_inx 桌子 返回= it_return order_item_in = it_order_item_in order_item_inx = it_order_item_inx partnerchanges = lt_partnerchanges schedule_lines = lt_schedule_lines schedule_linesx = lt_schedule_linesx。}

致谢

Mohinder

编辑:Mohinder Singh Chauhan于2009年12月29日上午5:46

一周热门 更多>