TimerInterval

Does anyone know if the TimerInterval can be set dynamically within a form in Attain 3.01? I have some code set to run every 10 seconds now, but I have no way to guarantee that the work will be done in 10 seconds. I don’t ever want my code to run in multiple instances. I would like to set the TimerInterval to 0 when my code begins to run and then set it to 5000 when my code finishes. This way, my code would run for as long as it needs, and be run again 5 seconds later. I could set the timer for 30 seconds but then I will have long lag times for the processing. Thanks, David Rochford Zesco Products 317-269-9300 x188 david@zesco.com

Since there is no reference in either the Attain C/SIDE Help or in the V3 Application Developer’s Guide to any command which would allow you to set the TimerInterval property from code, I would presume the answer is no. Too bad, it would be a nice feature. Dave Studebaker das@libertyforever.com Liberty Grove Software A Navision Services Partner

As far as I know, you can’t change the TimerInterval at run time. How about setting a boolean variable at the start of your processing and then resetting it at the end. As the first step in your Timer code, check this variable. IF NOT TimerRunning THEN BEGIN TimerRunning := True; … … TimerRunning := False; END; Not necessarily pretty, but I think it works. Chris Krantz NCSD,NCSQL,MCSD,MCSE Microforum Inc. Toronto, Ontario, Canada

Chris’ suggestion reminds me that before systems allowed us access to a timer function, we used to just create a counter and do our own countdown to simulate a timer feature. Because of multitasking this is not an accurate timer, but it generally would differentiate between large and small increments pretty reliably. You have to code the loop then test a variety of counts to “calibrate” your clock loop. It’s crude (by today’s standards) but it might work for you Dave Studebaker das@libertyforever.com Liberty Grove Software A Navision Services Partner

I have done something similar in my Navision Mail program. I set the timmer interval to 1000 (1 second) and then dynamically set how many loops to go through before executing certain code. Bill Benefiel Manager of Information Systems Overhead Door Company billb@ohdindy.com (317) 842-7444 ext 117