Bob,

I ran into something similar a while back.
Here are a couple of ideas.

1. Give the client something to do while waiting.
Form ON BEFORE START
SET VAR vPauseMsg text = +
((CHAR(013))+' Generating Performance Report')
CLS
PAUSE 3 USING .vPauseMsg  +
CAPTION ' Patience is a virtue ... ' +
OPTION GAUGE_VISIBLE ON +
|GAUGE_COLOR GREEN +
|GAUGE_INTERVAL 10 +
|BACK_COLOR WHITE +
|MESSAGE_COLOR WHITE +
|MESSAGE_FONT_NAME ARIAL +
|MESSAGE_FONT_COLOR GREEN +
|MESSAGE_FONT_SIZE 10 +
|MESSAGE_FONT_BOLD ON +
|THEMENAME &vThemeName

Form ON AFTER START
CLS

2. Get away from the view.
Create a TEMPORARY TABLE with all the columns of the view.
Copy your form to work on the temporary table.

APPEND View TO tTable WHERE Status = 'A'
APPEND View TO tTable WHERE Status =  'B'
APPEND View TO tTable WHERE Status = 'C'
APPEND View TO tTable WHERE Status =  'D'
APPEND View TO tTable WHERE Status = 'E'
APPEND View TO tTable WHERE Status = 'F'
APPEND View TO tTable WHERE Status = 'G'
APPEND View TO tTable WHERE Status = 'H'
APPEND View TO tTable WHERE Status = 'I'
APPEND View TO tTable WHERE Status = 'J'
APPEND View TO tTable WHERE Status = 'K'
APPEND View TO tTable WHERE Status = 'L'
EDIT USING newtemporarytableform

Believe it or not doing stuff like this dramatically improved speed on a 
network.

Jan
-----Original Message-----
From: [email protected]
To: [email protected] (RBASE-L Mailing List)
Date: Fri, 21 Nov 2014 17:21:01 +0000 (UTC)
Subject: [RBASE-L] - Re: Speeding up a form with tabs


I have a form with 12 enhanced tabs.

All tabs are driven by the same view

View = 1 table with 2600 rows  1 table with 2100
(1 common column indexed - ItemNo)

The form takes over 40 seconds to call up, longer at times.

Tracing it shows the following

Running the On Before Start - 3 seconds

Then there is a 20 second period before the
On After Start EEP runs

The On  After Start runs in 1 second (or less)

Then there is another 20-30 second period before
the form finally gives focus to the user.  Screen is
blank white in both periods above.

The different tabs show records from the same view that
are in different"states".  I.E. One tab shows all records
that are not printed.Another tab shows all records that are late.

I cannot index every "state" the records are in,  that would mean
putting an index on 12 columns.   Half of these columns have less
than 5 distinct values anyway.

One form button  allows the user to select an item.  All lists are
refreshed to show the various records for that one item.   This runs
almost instantly,  I assume using the ItemNo index.   However,
another button "clears" the item and refreshes each list to show all
items with the respectiveparameter.  (Not printed, Late, etc.)

This process takes quite a while to refresh.

Any suggestions on speeding this type of form  up?

Thanks,
-Bob

Reply via email to