matinal:SAP ABAP 函数异步调用总结(六)

2023-11-18 10:55:05 浏览数 (2)

Asynchronous Updates(异步更新)步骤:

  • 用户通过enqueue work process锁住要修改的表,信息存放于lock table,如果已被他人锁住,则返回无法修改该表的信息;
  • 锁表成功,用户可以修改目标数据;
  • 如果程序调用了FUNCTION...INUPDATE TASK这种函数,更新数据会被临时存放在VB*表(一种存放要更新的数据的表,因为都是VB开头的,所以统称为VB*表)中;(表簇VBLOG,透明表VBHDR,VBDATA,VBMOD,VBERROR)
  • 操作结束时(比如"保存"),程序提交COMMIT WORK,update work process被激活;
  • update work process读取VB*表中的log records
  • update work process进行更新操作并等待database反馈,如果成功则删除VB*表中的临时数据,如果失败则保留VB*表中的临时数据并标注为defective(有缺陷的)
  • the lock entries in lock table are reset

常用的VB*表:

  • VBHDR: update headers
  • VBMOD: update modules
  • VBDATA: update data
  • VBERROR: possible error information

0 人点赞