今天想谈谈自己在创建销售价格遇到的问题,之前一段时间客户要求能够批量执行VK11/VK12进行销售价格的创建和修改。查阅了网上的资料和SAP的论坛,发现一个函数BAPI_PRICES_CONDITIONS似乎能解决这个问题,这里只要能够改变bapi函数的参数就能实现创建或者更改的操作,具体对应关系如下:
从上面可以看出009/005(创建)003(删除)004(更改)。但是在实际运用中发现了问题,其一是009或者005不对日期进行检查,相同的日期段能在AXXX价格表里面存在二条,其二是日志表CDHDR/CDPOS中不存在更改的记录,不便于以后追寻问题。但是大数据期初创建价格条件时本人觉得这个函数还是很好用的,速度比BDC快(本人不才,后面为了需求的安全性考虑使用了该方法,各位ABAP大神有更好的方法请留言赐教)。附上删除的代码:
1 DATA: 2 gs_bapicondct TYPE bapicondct, 3 gs_bapicondhd TYPE bapicondhd, 4 gs_bapicondit TYPE bapicondit, 5 gs_bapiret2 TYPE bapiret2, 6 gt_bapicondct TYPE TABLE OF bapicondct, 7 gt_bapicondhd TYPE TABLE OF bapicondhd, 8 gt_bapicondit TYPE TABLE OF bapicondit, 9 gt_bapicondqs TYPE TABLE OF bapicondqs, 10 gt_bapicondvs TYPE TABLE OF bapicondvs, 11 gt_bapiknumhs TYPE TABLE OF bapiknum