BAPI_ALM_ORDER_MAINTAIN IT_SRULE以错误结尾

2020-09-20 21:26发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)大家好 我正在尝试使用'BAP...

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

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


大家好

我正在尝试使用'BAPI_ALM_ORDER_MAINTAIN'更新生产订单结算规则。

我需要更改结算规则的数量,但BAPI总是返回错误。

IWO_BAPI 402使用外部号码读取结算规则时发生错误
IWO_BAPI2 113处理BAPI方法期间发生错误

这是用于测试BAPI的示例代码。

数据:lt_srule bapi_alm_order_srule的类型表,
         ls_srules与lt_srule类似,
         lt_srule_up bapi_alm_order_srule_up的类型表,
         ls_srule_up与lt_srule_up类似,
         lt_methods bapi_alm_order_method的类型表,
         ls_methods与lt_method类似,
         lt_return bapiret2的标准类型表,
         ls_return TYPE bapiret2,
         ls_cobrb TYPE cobrb。

   数据:lv_aufnr TYPE aufnr VALUE'000000501576'。

   SELECT * INTO ls_cobrb从cobrb
                         在哪里aufnr = lv_aufnr
                           AND lfdnr ='001'。
     清除ls_srules。
     ls_srules-objnr = ls_cobrb-objnr。
     ls_srules-lfdnr = ls_cobrb-lfdnr。
     ls_srules-equiv_number = 0。
     ls_srules-orderid = ls_cobrb-aufnr。
     将ls_srules附加到lt_srule。

     ls_srule_up-equiv_number ='X'。
     附加ls_srule_up至lt_srule_up。
   ENDSELECT。

   清除ls_methods。
   ls_methods-refnumber = 1。
   ls_methods-objecttype ='SRULE'。
   ls_methods-method ='CHANGE'。
   ls_methods-objectkey = lv_aufnr。
   将ls_methods附加到lt_methods。

   清除ls_methods。
   ls_methods-refnumber = 1。
   ls_methods-objecttype =空间。
   ls_methods-method ='保存'。
   ls_methods-objectkey = lv_aufnr。
   将ls_methods附加到lt_methods。

   通话功能'BAPI_ALM_ORDER_MAINTAIN'
     桌子
       it_methods = lt_methods
       it_srule = lt_srule
       it_srule_up = lt_srule_up
       返回= lt_return
     。

   读取表lt_return进入具有键类型='A'的ls_return。
   检查sy-subrc <> 0。
   读取表lt_return进入具有键类型='E'的ls_return。
   检查sy-subrc <> 0。

   通话功能'BAPI_TRANSACTION_COMMIT'
     出口
       等待='X'
     。
 
5条回答
追夢秋陽
2020-09-20 21:52

你好Nic

谢谢您的回答。 我实际上是错误地发布了两次,而且我不知道如何删除帖子。

同时,我被告知不要直接使用功能IBAPI_ALM_ORDERSRULE_CHANGE。 我应该使用函数BAPI_ALM_ORDER_MAINTENANCE。 帖子的创建位置。

但是使用此功能时,返回表包含以下错误记录:

IWO_BAPI 402使用外部号码读取结算规则时发生错误
IWO_BAPI2 113处理BAPI方法期间发生错误

我仍然在同一时间。 我无法更新结算值,并且我不理解错误。

我可以直接从tcode CO02而不是从BAPI更改值。

按照您的建议,我在方法对话框中添加了一个步骤。 它在返回表中以相同的错误结尾。

您建议的用户出口未激活。

两个SAP注释都与组件EA-APPL有关,其中该组件似乎不在SPAM中提供的组件列表中。 我们在S4/HANA下。

所有建议将不胜感激。


致谢

丹尼尔

一周热门 更多>