凭证往往包括很多行项目,对这些行项目修改完毕后一次性保存。
1. 对修改行项目的那段BDC加LOOP,同样LOOP RECORD表,然后把保存的那段BDC放在这段LOOP的外面。
2. 此时存在一个问题,这LOOP RECORD会对整列的字段进行循环,如果多张凭证放在一个文本,就需要用凭证号来分割,不然就跳不出这个内循环,凭证无法保存。
3. 定义一个变量,在大的循环体下把凭证的值赋给变量,在内循环这边加个条件where,例如:LOOP AT RECORD WHERE VBELN_01_002 = TVBELN.这样就成功实现凭证分割。
4. BDC是按循环体里面多少个字段,一行行去读取的,比如2、3、4行是属于内循环的行,BDC读取后面的几个字段,但是内循环完回到大的循环体时,它同样会从第二行开始执行,只是此时读取的是从第一个字段开始,所以在大循环那边还是要加个条件,把这些行剔除。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/16762150/viewspace-702610/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/16762150/viewspace-702610/