Updating custom fields on VBAP OR VBAK using BAPI_SALESORDER_CHANGE

转载自:https://archive.sap.com/discussions/thread/649461

根据客制化字段不同的位置需要扩展如下类型:

更新抬头:VBAK, BAPE_VBAK, BAPE_VBAKX, VBAKKOZ and VBAKKOZX.

更新行项目:VBAP, BAPE_VBAP, BAPE_VBAPX, VBAPKOZ and VBAPKOZX.

1.Append one structure in BAPE_VBAK with the fields which need to be changed

 
  1. field.. dataelement... datatype.. length
  2. zz_disp .. zzdisp .. char .. 4

 

2 Append one structure in BAPE_VBAKX with the fields with one character fields.

 
  1. field.. dataelement... datatype.. length
  2. zz_disp .. char01... char.. 1

 

3.Append the same fields of the structure which was appended in the BAPE_VBAK to VBAKKOZ

 
  1. field.. dataelement... datatype.. length
  2. zz_disp .. zzdisp .. char .. 4

 

4.Append the same structure which was appended in the BAPE_VBAKX to VBAKKOZX.

 
  1. field.. dataelement... datatype.. length
  2. zz_disp .. char01... char.. 1

 

 

Now, check this program how to fill the EXTENSION parameter

Report ZTEST_NP.
parameters: p_vbeln like vbak-vbeln.
 
start-of-selection.
 
data: l_vbeln like BAPIVBELN-VBELN,
      l_inx   like BAPISDH1X.
data: it_ret like BAPIRET2 occurs 0 with header line,
      it_ext like BAPIPAREX occurs 0 with header line,
      is_hdr like BAPISDH1.
 
l_inx-UPDATEFLAG = 'U'.
l_vbeln = p_vbeln.
* fill the table with values to be changed
it_ext-STRUCTURE = 'BAPE_VBAK'.      "Strcture with the fields
it_ext-VALUEPART1+0(10) = l_vbeln.
it_ext-valuepart1+11(4) = 'TEST'.          "<< My ZZ_DISP field
append it_ext.
 
* mark the fields which you need to change
it_ext-STRUCTURE = 'BAPE_VBAKX'.     " Strcture with the flags
it_ext-VALUEPART1+0(10) = l_vbeln.
it_ext-VALUEPART1+10(1) = 'X'.
it_ext-VALUEPART1+11(1) = 'X'.
append it_ext.
 
*it_ext-STRUCTURE = 'ZAVBAK'.     " Strcture with the flags
*it_ext-VALUEPART1+24(1) = 'T'.
*append it_ext.
 
CALL FUNCTION 'BAPI_SALESORDER_CHANGE'
  EXPORTING
    SALESDOCUMENT               = l_vbeln
    ORDER_HEADER_INX            = l_inx
  TABLES
    RETURN                      = it_ret
    EXTENSIONIN                 = it_ext
          .
  
        CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
           EXPORTING
             WAIT          = 'X'.

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值