销售订单中的XVBAP YVBAP VBAP

需求场景

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。

你可能感兴趣的:(ABAP,XVBAP,YVBAP,VBAP)