one order event handling - event filtering

71 阅读1分钟

Created by Jerry Wang, last modified on Aug 21, 2014

在Sales order creation时,通过debug发现after create 的event事件上只有如下两个callback会被call 到:

 

clipboard1

 

 

但是系统里该事件上注册了多达7个callback:

 

clipboard2

 

 

 

为什么其余5个call back未执行?

 

 

系统里针对某事件维护的所有callback会执行一系列过滤逻辑,

clipboard3

 

满足所有过滤条件的callback才会被加入到待执行的内表lt_atonce_exets里去。

clipboard4

 

过滤的逻辑从line 5 到 line 38:

clipboard5

 

例如执行时间未维护成immediately的callback 因为line 36的IF 条件不满足,不会加入到内表lt_atonce_exets里去。

clipboard6

 

相应的,将其加入到内表gt_plan_exets里。

clipboard7