4. CUSTOMIZATION › 4.5 Defining Invoices › 4.5.3 Defining the User Invoice Format Exit
4.5.3 Defining the User Invoice Format Exit
The standard invoice format routine presents a logical
invoice page for each unique cost center and offers three
summarization levels and several line-item formats. If none
of these standard formats meet your requirements, you may
develop your own invoice format routine and have it invoked
automatically for the appropriate cost centers (or as the
default).
User format invoices will be printed after any invoices using
the standard format facilities. A Grand Total page will be
printed for each set of invoices using the same user format.
Your invoice format routine(s) must reside in a member named
sharedprefix.MICS.SOURCE(USRnnnnn), where nnnnn are any
characters.
You can use Cost Center Attributes Invoice Options to
associate the format name with particular invoice level cost
centers. Or you can specify the format name as the default
format on the Invoice Format Options panel.
If your format closely resembles one of the standard formats,
follow the instructions below under Modifying the Standard
Format Routine. Otherwise, follow the instructions under
Creating a New Format Routine. In either case, complete the
checklist under Steps to Define the User Invoice Format Exit.
MODIFYING THE STANDARD FORMAT ROUTINE
Copy the standard format routine from SOURCE(MNACTRPT) to
your USR routine. Make the necessary modifications, but do
not change any of the SET statements which input the INVOICE
work files. Make as few modifications to the standard
routine as possible.
Specify the name of any defined invoice format in the "Name
of model invoice format" field on the Format Options for User
Invoices panel. This will cause the standard work file
routines to be invoked to perform the necessary
summarization. The format options associated with the model
format will be used to print your user invoice.
CREATING A NEW FORMAT ROUTINE
Create your USR routine as an independent SAS data step. It
should input the SAS data set named WORK.USRDATA and print
the records in the desired format.
The records in the WORK.USRDATA data set contain the
Financial Recap File data elements plus Year-to-Date
Financial Recap File data elements (resulting from a SAS
merge). The records also contain invoicing cost centers,
named INVCTRn, which indicate the cost center to which this
record should be invoiced (as indicated in the Cost Center
Attributes). The data set is sorted in cost center
(COSTCTR1...COSTCTRn) order only.
The format routine does not have to perform any subsetting of
the input data set. This data set will contain only the
records for the cost centers for which this invoice format
was specified in the Cost Center Attributes file (or for all
cost centers for which another invoice format was NOT
specified in the event this format was defined as the
default). However, the input data set may contain data for
multiple cost centers and the format routine will have to
identify and correctly process cost center changes. Using
the variables FIRST. and LAST. will likely help.
STEPS TO DEFINE THE USER INVOICE FORMAT EXIT
Follow the steps in this checklist to define the user invoice
format exit. The Financial Recap File, described in Section
7.3, is the basis for the input to the format routine.
__ 1. Use MWF;4;2;3;2;5 to display the Invoice Format
Options Panel. Use the R line command to repeat the
USER format and display the Format Options for User
Invoices panel. Specify the Format name and
description, and the name of the user-written format
routine. The format routine name must begin with
USR.
If you are modeling the invoice after an existing
standard invoice format, fill in the format name,
COMPCODE, INVCCAT, or COSTCTR, in the "Name of model
invoice format" field. If you are not modeling the
invoice after an existing standard invoice format,
leave the "Name of model invoice format" field blank.
If this user format will be used to print all or most
of your invoices, enter its name in the "Default
format" field at the top of the Invoice Format
Options panel. Otherwise, follow step 2 below to
specify the cost centers whose invoices are to be
printed with this user format.
END back to the Parameter Specification and
Generation Menu and submit the ACTXOPTS job when
requested.
__ 2. Access the Invoice Options Cost Center Selection
panel (MWF;4;2;1;1;2). For each cost center to which
the special format applies, enter the appropriate
format name in the format column.
__ 3. Code the invoice format exit routine in
sharedprefix.MICS.SOURCE(USRnnnnn) and test it
thoroughly.
__ 4. Create a copy of the new invoice format routine in
IEBUPDTE format and save it in the
sharedprefix.MICS.LOCALMOD.CNTL library as an audit
trail.