|
Personally, I don't care for this design. This is not really what the database is designed to be doing. That so few of the experts on this list are commenting tells me that the approach is pretty far off of the mainstream. I have a couple of alternatives . . . . 1. Instead of the "EOFW", how about you have the loop go until the "program end" record is received, and have it DLYJOB then SETLL when EOF happens. You could also get more sophisticated, perhaps having it wait for 10 non-reads before delaying. C DOW 1 = 1 C READ GWRQCTL1 C* C* Handle special record used to terminate the program C SELECT C WHEN GCWFRF = *ALL'Z' C DELETE GWRQCTL1 C LEAVE C* Handle EOF - C WHEN %EOF(GWRQCTL1) C --> Execute Delay Job command, or find another way to stall C *LOVAL SETLL GWRQCTL1 C* Handle real records to process which status='OS' C OTHER C* do something ... C ENDSL C* C READ GWRQCTL1 C ENDDO 2. How about making this a trigger program and having it run on inserts or on changes? 3. If you need to have this program NOT run and have changes queue up, have this program hang off of a Data Queue, and have a trigger program feed the data queue. -- Tom Jedrzejewicz tomjedrz@xxxxxxxxx
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.