SD_SALESDOCUMENT_CHANGE 增加行项目报VH_BAPI 050的错误

在使用SD_SALESDOCUMENT_CHANGE BAPI时遇到VH_BAPI 050错误。解决方法是确保手动添加的价格条件设置为手工处理,并在BAPI参数中正确设置。同时,ITEM和COND的updateflag应设为'I',计划行的schdlx-updateflag也需设为'I',头部updateflag设为'U',其他字段按常规传递。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

注意这个错误是因为手工加入的价格条件一定要设置成手工处理,这个在BAPI的入参处可以体现。

 另外ITEM和COND的updateflag 要给'I',包括计划行的schdlx-updateflag都要给I,header的updateflag给U就行了,其他

的字段该怎么传就怎么传。

  DATA:l_flag TYPE c.

  CLEAR l_flag.
  DATA:logic_switch        TYPE bapisdls.

  logic_switch-cond_handl = 'X'.
  logic_switch-pricing    = 'C'. "注意手工的价格条件一定要给C,否则会出现定价失败

  CALL FUNCTION 'DIALOG_SET_NO_DIALOG'.

  CALL FUNCTION 'SD_SALESDOCUMENT_CHANGE'
    EXPORTING
      salesdocument    = gs_head-vbeln
      order_header_in  = gs_header_in
      order_header_inx = gs_header_inx
      call_from_bapi   = abap_true
      logic_switch     = logic_switch
    TABLES
      return           = gt_return
      item_in          = gt_items_in
      item_inx         = gt_items_inx
      conditions_in    = gt_bapicond
      conditions_inx   = gt_bapicondx
      partnerchanges   = gt_partnerchanges
      schedule_in      = gt_schdl
      schedule_inx     = gt_schdlx
      sales_text       = gt_text.

  CALL FUNCTI
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值