This is just sample to give you an idea on how to use the new features to proper control of DataEase so it give you the freedom you need to develop the apps your customer wants/needs/craves.
Proper handling of things has been a big issue "always" in DFW... We have all used our ingenuity to try to comb the hairs down and let it fall in he right direction - with and without success..
You might have discovered but the current "regime" has an inclination towards total control and flexibility.
The Wait() function was just the first attempt on controlling time but we realised the only way we could do this properly was to introduce timing properly and here come Timer Event.
The Timer Event on a document is called 10 times a second and is not dependent on the windows being active or even of DataEase being the active application. It will tick on and do its thing as long as the document is loaded in Runtime mode.
In the attached sample we show how you can use it to achieve what you want, but the real implication is much greater.
By making a MainPage that control you app, you can open/close/run DQL etc from a control centre and you control it via your own Message bus like we do here through SetVar("Execute","Yes").
As DataEase now can excute both DQLs and Derivations on the fly - ExecDQL() and ExecDerivation() you can just send the code you want executed via a variable.