VA FileMan V. 22.0 Programmer Manual Banner


Main Chapter Getting Started Manual Advanced User Manual

Classic VA FileMan API

EN1^DIP: Print Data

Use EN1^DIP to print a range of entries, in columnar format.

Input Variables
L (Required) String that evaluates to zero.
DIC (Required) Global root or file number, in the usual format.
Optional: Sorting and Print Fields
FLDS (Optional) The various fields to be printed.
BY (Optional) The fields by which the data is to be sorted.
FR (Optional) The START WITH: values of the SORT BY fields.
FR(n) (Optional) An alternate way to provide the START WITH: values of the SORT BY fields.
TO (Optional) The GO TO: values of the SORT BY fields.
TO(n) (Optional) An alternate way to provide the GO TO: values of the SORT BY fields.
Optional: Miscellaneous Features
DHD (Optional) The header desired for the output.
DIASKHD (Optional) Set to null to prompt user for a header.
DIPCRIT (Optional) Set to 1 to print SORT criteria on the first page of the report.
PG (Optional) Starting page number.
DHIT (Optional) M code to execute after each entry is printed.
DIOEND (Optional) M code to execute after the printout has finished.
DIOBEG (Optional) M code to execute before the printout starts.
DCOPIES (Optional) Number of copies to print (for SDP-type devices).
IOP (Optional) Name of device to send output to.
DQTIME (Optional) Time to print, for queued printing.
DIS(0) (Optional) M code to screen out entries.
DIS(n) (Optional) Additional screens, "OR"-ed with each other, "AND"-ed with the DIS(0) screen.
DISUPNO (Optional) Set to 1 to suppress output when no records are found.
DISTOP (Optional) Set to 0 to prevent users from stopping prints.
DISTOP("C") (Optional) M code to execute if a user stops the print.
Optional: Controlling Sorts with BY(0)
BY(0) See the "Controlling Sorts with BY(0)" section for more information.
Output Variables


NOTE: Unlike most calls, EN1^DIP kills all the input variables before it quits. You do not have to kill them.

Details and Features

Input Variables to Control Sorts

You can use a special set of input variables to:

  • Preselect a set of records for printing.

  • Preselect the order that these records should be printed in.

The set of variables for controlling sorts is:

  • BY(0), L(0), FR(0,n), TO(0,n), DISPAR(0,n), and DISPAR(0,n,"OUT")

Please see the " Controlling Sorts with BY(0)" section for more information.

Setting up BY, FR, and TO Variables to Sort within a Multiple

If you have a file like:
1 SPOUSE (mult.) 
     .01 SPOUSE NAME 
     1 SPOUSE DOB 
     2 CHILDREN (mult.) 
          .01 CHILDS NAME 
          1 CHILDS DOB 
          2 CHILDS SEX 
          3 CHILDS NICKNAME 

And you wish to sort on the NICKNAME field for CHILDREN, from "A" to "Z", then by the PARENT NICKNAME field from "B" to "E". You set:

     BY = "1,2,3,2 
     FR = "A,B" 
     TO = "Z,E"

You must put in all field numbers to get down to the multiple in the BY (1,2,3), but then it pops you out of the multiple so that the following number '2' in the BY gets you field 2 at the top level (PARENT NICKNAME), rather than field 2 within the lowest multiple (SEX).

But note the FR and TO: here you just put the starting and ending values for the two fields on which you wish to sort.

NOTE: This same logic does not work on the FLDS multiple. It is suggested that in order to print fields within a multiple, the print logic should be set up in a PRINT template.

Using EN1^DIP to Print Audit Trails

The audit files are structured differently than other FileMan files. To print audit trails for a file's data or Data Dictionary, the DIC variable must contain the global location of the requested audit file and the file number of the file that was audited as the open root.

To print a data audit trail for File #662001, set DIC="^DIA(662001,". To print the DD audit trail, set DIC="^DDA(662001,". The other input variables are set as for a normal print. Remember that the fields being printed and sorted come from the audit files, not from the file for which the audit trail was recorded.


Reviewed/Updated: March 4, 2007