How to Dynamically Change the Page Length of a ReportLast reviewed: April 18, 1995Article ID: Q112838 |
The information in this article applies to:
SUMMARYOften it is necessary to change the page length of a report dynamically, without editing the report in the Report Writer. You can do this programmatically, as demonstrated below.
MORE INFORMATIONThe .FRX (report) file is a database file that can be modified. The page length is stored in the HEIGHT field of this database in the record where the report information is stored. This record can be found by searching for OBJTYPE = 1. For example:
USE reportname.frx
IF printer = "laser"
&& The test for platform = "DOS" is for 2.5 reports only
LOCATE FOR platform = "DOS" .AND. objtype = 1
REPLACE height WITH 60
ELSE
LOCATE FOR platform = "DOS" .AND. Objtype = 1
REPLACE height WITH 66
ENDIF
USE
REPORT FORM reportname.frx TO PRINTER
If the report is included in an .EXE or .APP file, it will be read-only. To
modify the report, you must copy it to disk first. For example:
USE reportname.frx
COPY TO test.frx
USE test.frx
IF printer = "laser"
&& The test for platform = "DOS" is for 2.5 reports only
LOCATE FOR platform = "DOS" .AND. objtype = 1
REPLACE height WITH 60
ELSE
LOCATE FOR platform = "DOS" .AND. Objtype = 1
REPLACE height WITH 66
ENDIF
USE
REPORT FORM test.frx TO PRINTER
oldsaf = SET("SAFETY")
SET SAFETY OFF
ERASE test.frx
ERASE test.frt
SET SAFETY &oldsaf
NOTE: Do not place the TEST.FRX file in the project. If you do, it will
cause the error message "Test.frx could not be found" and you will then be
given the option to locate the file. In this case, you must choose the
Ignore button in order to proceed without further errors.
|
Additional reference words: FoxDos 2.50 2.50a 2.50b 2.00r
© 1998 Microsoft Corporation. All rights reserved. Terms of Use. |