Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
INDEX ON (displaying progress)
Message
 
To
13/07/2010 09:18:40
Mike Yearwood
Toronto, Ontario, Canada
General information
Forum:
Visual FoxPro
Category:
Coding, syntax & commands
Environment versions
Visual FoxPro:
VFP 8 SP1
OS:
Windows XP SP2
Network:
Windows 2008 Server
Database:
Visual FoxPro
Application:
Desktop
Miscellaneous
Thread ID:
01471425
Message ID:
01472343
Views:
55
>>>>Hi Gang!
>>>>
>>>>In one of our apps, there is some code to do an
>>>>
>>>>INDEX ON
>>>>
>>>>to recreate the tags in the free table.
>>>>
>>>>
>>>>The output is displayed on the form, but looks very uncontrolled... writing over text and objects.
>>>>
>>>>
>>>>I have added an editbox to show output before we reach this point in the program.
>>>>
>>>>Any way to redirect the output of INDEX ON to go into the editbox, instead of the form itself?
>>>>
>>>>Thanks!
>>>
>>>
>>>The way to do this is use a 2-pass approach - pseudo code:
>>>
>>>
>>>Step 1
>>>
>>>USE original_file_name IN 0 EXCL
>>>
>>>SELECT original_file_name 
>>>
>>>tnum_records = RECCOUNT()
>>>tnum_processed = 0
>>>
>>>COPY TO temp_file_name FOR PROGRESS_STATUS()  
>>>
>>>
>>>
>>>Step 2:
>>>
>>>SELECT original_file_name 
>>>ZAP
>>>
>>>*recreate index tags here
>>>
>>>tnum_processed = 0
>>>
>>>APPEND FROM temp_file_name FOR PROGRESS_STATUS()
>>>DELETE FILE temp_file_name
>>>
>>>
>>>The PROGRESS_STATUS() aleways returns .T. but can use the m.tnum_records and m.tnum_processed variables to display a percentage of total records processed so far in some format, numeric, progress bar, whatever.
>>
>>Thanks!
>
>While that is interesting, the problems with it are that the index created that way will not be the smallest it can be. Indexing will take longer that way too, and not because of the display update, but because updating indexes takes longer than building from scratch.
>
>The quickest possible way - and that excludes all progress bar approaches I've ever seen - is to direct TALK and NOTIFY to a custom window and let VFP do it's own internal display.

True - which was the final route taken.

Thanks!
Tommy Tillman A+ NetWork+ MCP
Previous
Reply
Map
View

Click here to load this message in the networking platform