您的位置:首页 > 其它

客户物料信息数据的批量导入(VD51)

2009-12-14 13:30 381 查看
为了VD51功能的批量处理,在网上找了很多的内容都没有详细的BAPI可以用?

后来查询到有一个函数“ RV_CUSTOMER_MATERIAL_UPDATE ”可以使用?

但是没有具体的用法?经过自己的总结如下:

*----------------------------------------------------------------------*
***INCLUDE ZRSD0042_FRM_INSER_DATAF01 .
*----------------------------------------------------------------------*
*&---------------------------------------------------------------------*
*& Form FRM_INSER_DATA
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
form frm_inser_data .
call function 'RV_CUSTOMER_MATERIAL_UPDATE'
tables
xknmt_tab = gt_xknmt "这个是需要Insert的物料表
yknmt_tab = gy_xknmt "这个是需要删除的物料
tcatalog_tab = gt_tcatalog. "文本信息
commit work.

endform. " FRM_INSER_DATA

使用这个函数时, updkz 这个更新标示要设置正确才可以。

否则会有错误。

*----------------------------------------------------------------------*
***INCLUDE ZRSD0042_FRM_FILL_TABLE_XKNF01 .
*----------------------------------------------------------------------*
*&---------------------------------------------------------------------*
*& Form FRM_FILL_TABLE_XKNMT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* -->P_GT_BOARD text
*----------------------------------------------------------------------*
form frm_fill_table_xknmt.
data:p_kdmat like knmt-kdmat.
loop at gt_board into gw_board.
gw_xknmt-vkorg = gw_board-vkorg.
gw_xknmt-vtweg = gw_board-vtweg.
gw_xknmt-kunnr = gw_board-kunnr.
gw_xknmt-matnr = gw_board-matnr.
gw_xknmt-kdmat = gw_board-kdmat.
gw_xknmt-postx = gw_board-postx.

* 判断是否有客户物料信息
select single kdmat into p_kdmat from knmt
where vkorg = gw_board-vkorg and vtweg = gw_board-vtweg and kunnr = gw_board-kunnr
and matnr = gw_board-matnr.

if sy-subrc eq 0.
gw_xknmt-updkz = 'U'. "Update
else.
gw_xknmt-updkz = 'I'. "Insert
endif.
append gw_xknmt to gt_xknmt.

* gw_xknmt-updkz = 'D'. "如果是需要删除数据,要设置成D
gw_xknmt-updkz = ' '. "如果是Update或者是Insert数据,需要设置为空。
append gw_xknmt to gy_xknmt.
clear gw_xknmt.

endloop.
endform. " FRM_FILL_TABLE_XKNMT
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: