abap修改客户主数据值bapi SD_CUSTOMER_MAINTAIN_ALL
来源:互联网 发布:js set to array 编辑:程序博客网 时间:2024/05/07 02:29
修改客户主数据的bapi"SD_CUSTOMER_MAINTAIN_ALL"的使用案例,代码如下:
DATA:lt_knvv LIKE TABLE OF knvv WITH HEADER LINE.
DATA:ls_knvv LIKE knvv.
DATA:lt_upd LIKE TABLE OF fkuntxt WITH HEADER LINE.
DATA:ls_upd LIKE fkuntxt.
DATA:lt_in_knvv LIKE TABLE OF zsekp048 WITH HEADER LINE.
DATA:ls_in_knvv LIKE zsekp048.
DATA:lv_kunnr LIKE kna1-kunnr.
DATA:lt_kna1 LIKE TABLE OF kna1 WITH HEADER LINE.
DATA:e_sd_cust_1321_done TYPE c.
DATA:ls_return LIKE bapiret2.
CHECK t_knvv[] IS NOT INITIAL.
lt_in_knvv[] = t_knvv[].
LOOP AT lt_in_knvv INTO ls_in_knvv.
REFRESH lt_upd.
ls_knvv-kunnr = ls_in_knvv-kunnr.
ls_knvv-vkorg = ls_in_knvv-vkorg.
ls_knvv-vtweg = ls_in_knvv-vtweg.
ls_knvv-spart = ls_in_knvv-spart.
ls_knvv-kvgr1 = ls_in_knvv-kvgr1.
ls_knvv-kvgr2 = ls_in_knvv-kvgr2.
ls_knvv-kvgr3 = ls_in_knvv-kvgr3.
APPEND ls_knvv TO lt_knvv.
ls_upd-kunnr = ls_in_knvv-kunnr.
ls_upd-bukrs = ls_in_knvv-bukrs.
ls_upd-vkorg = ls_in_knvv-vkorg.
ls_upd-vtweg = ls_in_knvv-vtweg.
ls_upd-spart = ls_in_knvv-spart.
ls_upd-upd_a = 'U'.
ls_upd-upd_b = 'U'.
ls_upd-upd_v = 'U'.
ls_upd-upd_ap = 'U'.
APPEND ls_upd TO lt_upd.
CLEAR ls_upd.
CALL FUNCTION 'SD_CUSTOMER_MAINTAIN_ALL'
EXPORTING
* I_KNA1 =
* I_KNB1 =
i_knvv = ls_knvv
* I_BAPIADDR1 =
* I_BAPIADDR2 =
* I_MAINTAIN_ADDRESS_BY_KNA1 = ' '
* I_KNB1_REFERENCE = ' '
* I_FORCE_EXTERNAL_NUMBER_RANGE = ' '
* I_NO_BANK_MASTER_UPDATE = ' '
* I_CUSTOMER_IS_CONSUMER = ' '
* I_RAISE_NO_BTE = ' '
pi_postflag = 'X'
pi_cam_changed = 'X'
* PI_ADD_ON_DATA =
i_from_customermaster = 'X'
IMPORTING
e_kunnr = lv_kunnr
* o_kna1 = lt_kna1
e_sd_cust_1321_done = e_sd_cust_1321_done
TABLES
* T_XKNAS =
* T_XKNBK =
* T_XKNB5 =
* T_XKNEX =
* T_XKNVA =
* T_XKNVD =
* T_XKNVI =
* T_XKNVK =
* T_XKNVL =
* T_XKNVP =
* T_XKNZA =
* T_YKNAS =
* T_YKNBK =
* T_YKNB5 =
* T_YKNEX =
* T_YKNVA =
* T_YKNVD =
* T_YKNVI =
* T_YKNVK =
* T_YKNVL =
* T_YKNVP =
* T_YKNZA =
t_upd_txt = lt_upd
EXCEPTIONS
client_error = 1
kna1_incomplete = 2
knb1_incomplete = 3
knb5_incomplete = 4
knvv_incomplete = 5
kunnr_not_unique = 6
sales_area_not_unique = 7
sales_area_not_valid = 8
insert_update_conflict = 9
number_assignment_error = 10
number_not_in_range = 11
number_range_not_extern = 12
number_range_not_intern = 13
account_group_not_valid = 14
parnr_invalid = 15
bank_address_invalid = 16
tax_data_not_valid = 17
no_authority = 18
company_code_not_unique = 19
dunning_data_not_valid = 20
knb1_reference_invalid = 21
cam_error = 22
OTHERS = 23.
IF sy-subrc EQ 0.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
wait = 'X'.
IF sy-subrc EQ 0.
ls_return-type = 'S'.
ls_return-id = ls_knvv-kunnr.
ls_return-message = '实时更新客户组数据成功,请在SAP系统中查看!'.
APPEND ls_return TO t_return.
CLEAR ls_return.
ENDIF.
ELSE.
ls_return-type = 'E'.
ls_return-id = ls_knvv-kunnr.
ls_return-message = '实时更新客户组数据失败,请检查数据是否正确!'.
APPEND ls_return TO t_return.
CLEAR ls_return.
ENDIF.
CLEAR ls_knvv.
CLEAR ls_in_knvv.
ENDLOOP.
ENDFUNCTION.
我这里的功能只是修改了客户附加数据的几个字段,需要修改其他什么字段,自己修改传入参数。
- abap修改客户主数据值bapi SD_CUSTOMER_MAINTAIN_ALL
- 批量创建客户主数据函数SD_CUSTOMER_MAINTAIN_ALL
- 创建修改物料主数据的BAPI
- ABAP 用BAPI上传数据过程
- SD_CUSTOMER_MAINTAIN_ALL
- SD_CUSTOMER_MAINTAIN_ALL
- ABAP 利用class创建客户/供应商主数据
- 客户主数据发布程序(品尝ABAP的味道)
- ABAP增强开发:更新物料主数据毛重,净重,单位的BAPI使用方法(经典)
- ABAP用BAPI函数BAPI_MATERIAL_SAVEDATA 修改物料的净重
- ABAP 创建资产卡片 AS01创建资产数据BAPI
- ABAP-FI常用BAPI
- ABAP BAPI常用表
- ABAP:FI常用BAPI
- ABAP:FI常用BAPI
- Advanced ABAP --> BAPI
- ABAP-FI常用BAPI
- ABAP-读销售单行文本及特性值 bapi
- 二维数组的去重
- spring框架学习(一)
- 期权和期货的定义及区别
- 程序设计模式(十三) C++ 解释器(Interpreter Pattern)模式
- 解决因为手机设置字体大小导致h5页面在webview中变形的BUG
- abap修改客户主数据值bapi SD_CUSTOMER_MAINTAIN_ALL
- AsyncTask 中的 publishProgress 方法
- 修改mysql默认编码重启后又还原,且在修改my.ini配置文件出现1067错误的解决办法。
- CentOS6.5安装mysql-5.7.18-1.el6.x86_64.rpm-bundle.tar
- 服务器
- mongodb整合spring
- 关键字 instanceof
- maven的package与install命令区别
- Android_非UI:StickLayout