SET UPDATE TASK LOCAL
影响
切换本地更新任务。这意味着当您指定 CALL FUNCTION ... IN UPDATE TASK时,更新数据不会存储在数据库中,而是存储在ABAP / 4 Memory中。此更新与以前一样有效。唯一的区别是
它不是在一个单独的进程中执行,而是在与调用程序相同的进程中执行,即当发生 COMMIT WORK 时,处理不会继续,直到执行了所有更新请求。在标准设置中,正常更新任务始终处于活动状态。
交换状态不会从程序传递到程序。这意味着 CALL TRANSACTION 和 SUBMIT 使用标准设置。与此相反,使用CALL DIALOG调用 的模块 继承了开关设置。这是因为CALL TRANSACTION和
SUBMIT在他们自己的LUW中运行 ,而CALL DIALOG则没有。
更新中忽略开关设置。
在 COMMIT WORK 和 ROLLBACK WORK上 ,重置开关。
无法在本地处理具有延迟启动(V2)的更新请求。
与正常更新任务一样,除了类型“S”之外的所有消息都会导致终止和回滚。
注意
与正常更新任务不同,本地更新任务不在其自己的LUW中 运行 。如果发生回滚,则还会重置对话框部件中所做的任何更改。
SY-SUBRC = 1
无法打开本地更新任务,因为已启动CALL FUNCTION ... IN UPDATE TASK。系统继续处于正常更新模式。
SET UPDATE TASK LOCAL。
**********************************************************************************************************************
SET UPDATE TASK LOCAL
句法
SET UPDATE TASK LOCAL。
影响
此语句将打开本地更新。本地更新将在当前SAP LUW中的CALL FUNCTION ... IN UPDATE TASK中 注册的高优先级的更新功能模块保存到 ABAP内存而不是数据库VB ....当执行语句COMMIT WORK时,它保存功能模块立即在当前工作流程中和当前 数据库LUW中。具有低优先级的更新功能模块将忽略此语句。
在每个SAP LUW的开头,都会停用本地更新功能。如果需要,必须在注册第一个更新功能模块之前再次激活它。
本地更新在当前ABAP会话的单独内部会话中 执行,而不是在专用 更新会话中执行。
系统字段
SY-SUBRC | 含义 |
0 | 本地更新功能已激活。 |
1 | 本地更新功能尚未激活,因为程序已经为当前SAP LUW中的正常更新过程注册了至少一个更新功能模块。 |
笔记
- 本地更新函数在COMMIT WORK语句之后执行同步更新,与添加AND WAIT无关。
- 如果在本地更新期间发生数据库回滚,则所有先前的更改请求都会受到影响。