Consultor Eletrônico



Kbase 13243: RESULTS Version 2: building of the .qc7 file
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   5/10/1998
RESULTS Version 2: building of the .qc7 file

The .qc7 file is built differently in RESULTS Version 2. To increase
performance, the .qc7 file has been "split up". The data is stored
in temp tables now instead of arrays, so many limits that were in
RESULTS Version 1 have now been removed.

RESULTS uses the temp table to implement data structures for RESULTS.
This data structure holds the list of tables and relationships between the
the tables in the RESULTS application.

There are three scenarios that could take place when RESULTS is
starting up:

1. The initial startup
2. Startup without the fast load files
3. Startup with the fast load file

1. The first time you start results is known as the initial build.
There is no .qc7 file for your database. RESULTS will get the tables
from the database and create a record for each table. This record
contains information about the table name, the internal id, security
information and a field for relationship information. Please note,
that RESULTS will use the name of the first attached database as the
basis for file names.

During the initial build, the default behavior for RESULTS in building
the relationships between tables will define the "natural" joins.

This information will be stored in the ASCII version of the
configuration file, example mysports.qc7. RESULTS then creates 4GL
source code that regenerates the temp table and the relationships.
RESULTS generates this and it becomes the fast load files. The 4GL
code that RESULTS created is then deleted after completion.

NOTE: The initial build process can be very time consuming.

2. If you have the ASCII version of the .qc7 file, but NO fast load
files, RESULTS will read the tables from the database(s) and then
create temp table records. RESULTS will then use the .qc7 file to
build the relationships.

3. After the required initial build, RESULTS has created the fast
load files. All subsequent startups will use these files. This will
give you the best startup performance. The code that was generated
in step 1 loads and creates the record and assigns the relationship in
the internal form. There is no time taken out to figure out if the tables
tables exist, RESULTS assumes that all is ok. This assumption is true
for a fully deployed RESULTS application. Rarely will the
table/relationship information change for an end user.

If there are changes to the database, the administrator is responsible
to do an application rebuild. To do an application rebuild, select
QUERY from the main menu, then select Site Admin.

How/When are the temp tables used in RESULTS?

The temp tables are mainly used in the table picker. The relationship
information states what tables are related tables. Example, by
choosing the CUSTOMER table, the related tables in the table picker
will be INVOICE, ORDER, REF-CALL, SALESREP, and STATE.

You will now notice that more administrative files are generated after
the initial build. For example, if your database name is mysports,
then you should notice the following files referenced in your .qc7
file out to disk:

myspo001.r
myspof.r
myspomt.r
myspos.r
myspor.r

There is a file limit in RESULTS and that is why you only see the
first 5 letters of the database name for the fastload files.

The .qc7 file is an ASCII file containing configuration information.
The fastload file is the compiled version of the .qc7 file.
When RESULTS is started it must read in the configuration information,
if the fastload file exists that is used, if not the .qc7 is read
which is much more time consuming.

NOTE: Make sure the fastload files are newer than the .qc7 file. If
not Results will be reading in old configuration information.

What are these files?

myspo001.r : This holds information for the first 200 tables in
the database. If you have greater than 200 tables,
you will see a myspo002.r and so on.

myspor.r : This is the master file for the myspo###.r files. It is
the first 5 letters of the database concatenated with an
'r'.

myspof.r : This holds the definitions of RESULTS features. It is
the first 5 letters of the database concatenated with an
'f'.

myspomt.r : This holds the definitions of the RESULTS menu and
toolbar layout. It is the first 5 letters of the database
concatenated with an 'mt'.

myspos.r : The fastload file, compiled version of .qc7 file. It is
the first 5 letters of the database concatenated with an
's'.


The configuration file, .qc7 file will be the full database name
(mysports.qc7), and if you have 2 databases whose names start with the
same first 5 characters in the same directory, you will encounter
problems. The way around this is to change the fast load base name of
the fast load files. This is done by the CUSTOMIZE option from the
QUERY menu. This option to change the basename is DEPLOYMENT.

In version 7.3A the .qc7 file is named after the physical database
name. Starting in version 7.3B the .qc7 file is named after the
logical name of the first database.

Progress Software Technical Support Note # 13243