Refresh screen
Refresh screen
(OP)
Hi
I have this screen which have many loops for different long actions. these actions take hours (data convert), I have counters to show the progress.
The problem that if I run another windows program and go back to that screen , the screen doesnt refresh until the end of the process.
I used "Yield" command in loops to cause periodic refresh but it increases the time of the process.
any other way to refresh the screen without delaying the process?
Iam using clarion 6.3
I have this screen which have many loops for different long actions. these actions take hours (data convert), I have counters to show the progress.
The problem that if I run another windows program and go back to that screen , the screen doesnt refresh until the end of the process.
I used "Yield" command in loops to cause periodic refresh but it increases the time of the process.
any other way to refresh the screen without delaying the process?
Iam using clarion 6.3
RE: Refresh screen
Since Clarion 6 uses true threading, the proper way is to have an accept loop and process a set of records on EVENT:Timer (similar to the generated code for Processes & Reports). YIELD() should be used every 100 records and not on every record being processed as shown below.
CODE
SET(...)
LOOP
NEXT(...)
IF ERRORCODE() THEN BREAK.
C# += 1
IF C# % 100 = 0 THEN YIELD().
... process ...
END
Regards