We recommend that before creating any reports with Report Writer, you read this section to gain an understanding of the principles behind Report Writer.
Your report can only contain database fields that reside in, or are upwardly accessible from, the table you specify as the lowest table
The tables whose fields are accessible after the lowest table has been specified
Normally, records are selected from the database according to the extraction condition specified on the lowest table. This means that the condition is applied to every record in the lowest table. A fast pass table enables you to produce a report more quickly, where it is possible to apply the extraction condition to fewer records, by testing a field in a parent or grandparent table. For example, if printing CUSTOMER details for just the South East England region, it is more efficient to select REGION as the fast table and specify the condition REGION_CODE="SEE" on the REGION table, rather than on the CUSTOMER table. The fast pass table cannot be an index-only table; these do not contain records on which the extraction condition can be tested
Processing time is saved when sorting can be avoided by accessing the records through a suitable index. For example, if you require a CUSTOMER detail report in customer name order, you can avoid sorting by the CUSTOMER.NAME field, if you choose the index-only table INDEX_CUST_NAME as the sequencing table. You can only specify a sequencing table if the table is the parent of the lowest table, or the parent of the fast pass table where one is used. The index being used must be specified as 'update' in SETLINK and be up to date
Report Writer programs can be exported to ASCII format files (.PAR). An extract file can be posted to another application database
A table has a prime parent when the keys of an immediate parent table appear as the first part of the key of the child table. For example, the ORDER_HEADER table which has the key ORDER_NUMBER is the prime parent of the ORDER_LINE table which has the key ORDER_NUMBER+LINE
When you sort a report by a field or use a sequencing table, all the records that have the same value for the sort field or key are placed in the same section of the report. You can order the records within each of the sections by sorting on other fields. The point where the value of a sort item changes is known as a break. It is possible to control what is printed at a break point, for instance, you might choose to print some sub-totals and throw a new page. (It is possible to break on a field that is not sorted; you may wish to do this when the records are already in the right order)
By default the Report Writer places the data for the report fields in columns across the page with headings above the columns. Each row represents a record. You can print the data from one record on several lines by folding the report. This causes the next field to be printed on the following line