根据生产订单联产品的入库数量更新结算规则中的分摊权数 - K_SRULE_SAVE_UTASK

该程序主要执行名为ZCHEN_TEST9001的报告,从COBRB表中选择数据,并基于参数P_AUFNRTYPE和AFPO表进行过滤和更新。它循环遍历结果集,读取AFPO表中的相应条目以更新COBRB表中的字段。之后,调用函数K_SRULE_SAVE_UTASK来保存更新的任务。如果出现错误,程序将回滚工作并显示错误消息;否则,提交更改并显示成功消息。
摘要由CSDN通过智能技术生成

*&---------------------------------------------------------------------*
*& Report ZCHEN_TEST9001
*&---------------------------------------------------------------------*
*&
*&---------------------------------------------------------------------*
REPORT ZCHEN_TEST9001.

PARAMETERS: P_AUFNR TYPE AFPO-AUFNR OBLIGATORY.



START-OF-SELECTION.
  DATA: WA_COBRB_UPDATE TYPE COBRB,
        IT_COBRB_UPDATE LIKE STANDARD TABLE OF WA_COBRB_UPDATE.
  SELECT *
    FROM COBRB AS A
    INTO CORRESPONDING FIELDS OF TABLE IT_COBRB_UPDATE
   WHERE A~AUFNR EQ P_AUFNR.
  IF SY-SUBRC = 0.
    SELECT A~AUFNR,
           A~POSNR,
           A~WEMNG
      FROM AFPO AS A
      INTO TABLE @DATA(IT_AFPO)
     WHERE A~AUFNR EQ @P_AUFNR.
    LOOP AT IT_COBRB_UPDATE ASSIGNING FIELD-SYMBOL(<FS_COBRB>).
      READ TABLE IT_AFPO WITH KEY AUFNR = <FS_COBRB>-AUFNR
                                  POSNR = <FS_COBRB>-POSNR
                         INTO DATA(WA_AFPO).
      IF SY-SUBRC = 0.
        <FS_COBRB>-AQZIF = WA_AFPO-WEMNG.
      ENDIF.
    ENDLOOP.
    CALL FUNCTION 'K_SRULE_SAVE_UTASK'
      TABLES
*       T_COBRA_INSERT    =
*       T_COBRA_UPDATE    =
*       T_COBRA_DELETE    =
*       T_COBRB_INSERT    =
        T_COBRB_UPDATE    = IT_COBRB_UPDATE
*       T_COBRB_DELETE    =
      EXCEPTIONS
        SRULE_UTASK_ERROR = 1
        OTHERS            = 2.
    IF SY-SUBRC <> 0.
      ROLLBACK WORK.
      MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ELSE.
      COMMIT WORK AND WAIT.
      MESSAGE S001(00) WITH '结算规则更新完成'.
    ENDIF.
  ENDIF.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

陈送平er

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值