需求场景
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。
文章详细阐述了在使用VA02进行订单处理时,XVBAP、YVBAP和VBAP这三个变量在创建、修改和删除订单过程中的不同角色。XVBAP存储所有item的新值,YVBAP记录修改或旧值,而VBAP用于循环处理当前item。在字段增强逻辑中,需要注意系统赋值顺序,以确保新增字段的正确保存。
1万+

被折叠的 条评论
为什么被折叠?



