需求场景
VA02做增强时,经常会遇到XVBAP YVBAP VBAP *VBAP VBAPIN等,搞不清楚,今天也只是理清楚了一部分,特此记录。
区别
-
创建订单时:
XVBAP --> 存放当前所有的item,内容为新值
YVBAP --> 空,表明没有修改过任何item,当然也不存在旧值
VBAP --> 循环item时的,存放当前item的内容 -
修改订单时:
XVBAP --> 存放当前所有的item,内容为新值
YVBAP --> 仅存放修改过的item,并且存放的是修改前的旧值
VBAP --> 循环item时的,存放当前item的内容 -
删除订单时:
XVBAP --> 存放当前所有的item,内容为新值(但数量为0)
YVBAP --> 存放数据库里已保存的item,存放的是数据库里的旧值
VBAP --> 循环item时的,存放当前item的内容
总结
系统最后会把VBAP赋值给XVBAP,写字段增强时,如果增加的字段保存不成功,注意下逻辑流中字段增加的位置在是否在系统赋值后面,如果是,需要更新XVBAP。