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条回答
樱桃小丸子0093
2020-09-20 21:33

很抱歉,我对您没有经验,我只能找到一些较旧的SAP-KBA提及与外部号码和特征有关的"可能" 值...

  • SAP-KBA 2447493:链接(" BAPI BAPI_ALM_ORDER_MAINTAIN不提供 PSG作为结算接收方的选项。您可能必须使用客户代码程序才能满足您的要求")
  • SAP-KBA 1270258:链接
  • SAP-KBA 1660309:链接(...提到了UExit" EXIT_SAPLCOI1_027 ")
  • SAP-KBA 579461:链接
  • SAP-KBA 733135:链接
  • SAP-KBA 853144:链接
  • SAP-KBA 480280:链接(2016年更新)
  • SAP-KBA 1709315:链接(...提到了 在执行更新BAPI之前先执行FM" COPA_PROFITABILITY_SEGMENT"


(只有某些KBA实际上是指HANA系统)

说实话,我有种感觉,您将无法不借助附加开发(UserExit或BAdI" WORKORDER_UPDATE"之类的东西)进行所需的更改? 如果问题仍然存在,您可以随时向SAP支持人员提出问题,希望能通过此或其他BAPI明确解释可以做什么和不能做什么...


我对您或SAP支持人员提出的建议感兴趣。

Nic T。

一周热门 更多>