【ABAP】 更改工艺路线BAPI: CPCC_S_TASK_LIST_MAINTAIN

 对于生成工艺路线大家应该非常熟悉了 但修改工艺路线通常使用BDC 尝试后发现了BAPI CPCC_S_TASK_LIST_MAINTAIN 可用于更改 大家可以尝试下

*&---------------------------------------------------------------------*
*& Report   zgylx_test3.
*&---------------------------------------------------------------------*
*&
*&---------------------------------------------------------------------*
REPORT zgylx_test3.

DATA:
  lt_return  TYPE STANDARD TABLE OF bapiret2 WITH HEADER LINE,
  lt_opera   TYPE STANDARD TABLE OF cps_task_list_maint_opr WITH HEADER LINE,
  lt_operax  TYPE STANDARD TABLE OF cps_task_list_maint_opr_x WITH HEADER LINE,
  ls_opera   TYPE cps_task_list_maint_opr,
  ls_operax  TYPE cps_task_list_maint_opr_x,
  ls_task    TYPE cps_task_list_maint_tsk,
  ls_taskx   TYPE cps_task_list_maint_tsk_x,
  lv_message TYPE string.

ls_opera-maintain_mode = 'M'.
ls_opera-flag_bar_pointer = 1.
ls_opera-sequence_no      = '000000'.
ls_opera-activity = '0010'.

*APPEND ls_opera TO lt_opera.
ls_opera-activity_old = '0010'.
ls_opera-description = '123'.
*ls_opera-flag_bar_pointer = 1.
*ls_opera-sequence_no      = '000000'.
*ls_opera-activity = '0010'.
*ls_opera-plant                  = '3464'.                               "工厂
*ls_opera-work_cntr              = '3464ZL01'.
**ls_opera-description            = '工序名称描述666'.                    "工序名称描述
*ls_opera-base_quantity          = 6.                                    "基础数量
*ls_opera-operation_measure_unit = 'KG'.                                 "单位
APPEND ls_opera TO lt_opera.

ls_operax-activity               = 'X'.
ls_operax-description                  = 'X'.
*ls_operax-description            = 'X'.
*ls_operax-base_quantity          = 'X'.
*ls_operax-operation_measure_unit = 'X'.
APPEND ls_operax TO lt_operax.

CALL FUNCTION 'CPCC_S_TASK_LIST_MAINTAIN'
  EXPORTING
    change_no          = '202209231001'
    key_date           = '20220928'
    task_list_type     = 'N'
    task_list_group    = '50000321'
    group_counter      = '01'
*   material           = '12100100000139W'
*   plant              = '3464'
*    task_maintain_mode = 'M'
*   task               = ls_task
*   task_x             = ls_taskx
*   APPLICATION        =
*   BOM_USAGE          =
*   TESTRUN            = ' '
* IMPORTING
*   EV_PLNTY           =
*   EV_PLNNR           =
*   EV_PLNAL           =
  TABLES
    operations         = lt_opera
    operations_x       = lt_operax
    return             = lt_return.

LOOP AT lt_return WHERE type = 'E' OR type = 'A'.
  IF lv_message IS INITIAL.
    lv_message = lt_return-message.
  ELSE.
    CONCATENATE lv_message
                lt_return-message
           INTO lv_message
      SEPARATED BY '/'.
  ENDIF.
ENDLOOP.

IF lv_message IS INITIAL.
  CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
    EXPORTING
      wait = 'X'.
ELSE.
  CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'.
ENDIF.

BREAK-POINT.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Ramos丶

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

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

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

打赏作者

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

抵扣说明:

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

余额充值