ABAP SET UPDATE TASK LOCAL的测试

如果在ST12的trace文件里发现如下的entry, 说明update function module和调用该function module的代码是执行在同一work process里的,即同步执行:

可以写如下的report进行验证:

START-OF-SELECTION.

  SET UPDATE TASK LOCAL.
  CALL FUNCTION 'ZTIME_SPENT2' IN UPDATE TASK
    EXPORTING
       iv_time = 2.

  COMMIT WORK.
  PERFORM main.

WRITE: / 'finish'.

FORM main.
  WAIT UP TO 1 SECONDS.
ENDFORM.

打开system debugging: callstack的入口SAPMSSY0即ST12 trace文件里的最后一列: line 252 call system call去检查当前是否是local update mode:

state = N 说明是local update,执行系统程序SAPMSSY4中的逻辑:

这里会在当前的work process里执行update function module:

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券