Today I ran into a problem with a process on a SQL table. It was using a range limit and filters so it was only processing a subset of the data. However, the progress bar of course was stuck with the entire data set so it would go up to about 2% and be done. I have a procedure that I can pass some parameters to count the records in a table for a given filter so I knew exactly how many records the process was going to process. But I got stuck on how to reset the high limit for the progress bar. After some snooping around I found a property that I could set and everything worked like a charm.

 !! First get the number of records.  
 !! SQ is a global equate:     SQ Equate('<39>')

 Loc:Recs = CountSQLRecords(Name(MyFile),|
            'Parent_ID = ' & SQ & Loc:Parent_ID & SQ)
 ThisProcess.RecordsToProcess = Loc:Recs

Put this code into priority 8550 or higher in the ThisWindow.Init method in the process procedure and the progress bar will now go smoothly from 0% to 100%

If someone has a method to call for this, please comment on this post. I could not find any method that worked, compiled and ran! Setting the RecordsToProcess property seems to have no bad effects.

Arnor Baldvinsson

No feedback yet

Comments are not allowed from anonymous visitors.

May 2012
Sun Mon Tue Wed Thu Fri Sat
 << <   > >>
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    

Poll

Are you using Clarion 8 or Clarion 7?

View Results

Twittter Feed

Search

XML Feeds

powered by b2evolution