INDEXn
Specifies the index name, the field or fields on which the index is based, and the type of index ACIF generates. You can define group indexes for AFP and line data. You can define page indexes for AFP data and line data that you convert to AFP. When you define a group index, Ricoh suggests that you name the index the same as the application group database field name.
To generate page-level information in the output file so you can go to specific pages in a document, you must specify INDEXOBJ=ALL. You must also create an index field by specifying TYPE=PAGE on the INDEX parameter.
You must define at least one index and you can define a maximum of 32 indexes (INDEX1
through INDEX32). Each index can be made up of one or more FIELD definitions. When
you are adding an index parameter, use the next available number, beginning with 1
.
- INDEXn={'attributename' | X'attributename'}{,FIELDnn[,FIELDnn…]}[,(TYPE={GROUP [,BREAK={YES | NO}] | GROUPRANGE | PAGE | PAGERANGE})]
- The values are:
- n
- Specifies the index parameter identifier.
- 'attributename' | X'attributename'
- Specifies a user-defined label to be associated with the actual index value. For example,
assume that INDEX1 is a person’s bank account number. The string
Account Number
would be a meaningful attribute name. The value of INDEX1 would be the actual account number (for example, 0001234567). The attribute name can be 1 - 250 bytes in length.Note: The value can be specified as an EBCDIC character string or hexadecimal data. However, if the input data file is anything other than single-byte EBCDIC, the value must be specified as hexadecimal data (otherwise, the comparisons between the input data file and what is coded in the INDEXn parameter do not yield a match). - FIELDnn[,FIELDnn…]
- Specifies one or more FIELDn parameters that ACIF uses to locate the index. A maximum of 32 FIELDn parameters can be specified for each index. If more than one FIELDn parameter is specified, ACIF concatenates them into one physical string of data.
No delimiters are used between the concatenated fields. Because an index value has
a maximum length of 250 bytes, the total of all specified FIELDn parameters for a single index cannot exceed this length. ACIF reports an error condition
and ends processing if the length is greater than 250 bytes.
GROUPRANGE and PAGERANGE indexes must name only one transaction field. PAGE indexes must name fields that are based on floating triggers. An index that names a field that is based on a floating trigger must be TYPE=GROUP,BREAK=NO or TYPE=PAGE.
- TYPE={GROUP[,BREAK={YES | NO}] | GROUPRANGE | PAGE | PAGERANGE}
- The type of index ACIF generates. You can define either group or page indexes for
AFP and line data. The types are:
- GROUP[,BREAK={YES | NO}]
- The values are:
- GROUP
- Specifies a group index value. ACIF creates one index value for each group. A group index that names a field parameter that is based on a floating trigger must specify BREAK=NO.
The following example indicates that ACIF generates group indexes for date index values. The input data is encoded in EBCDIC.
INDEX1='Date Due',FIELD1,(TYPE=GROUP,BREAK=YES)
The next example indicates that ACIF generates group indexes for customer name and account number index values. The input data is encoded in EBCDIC. ACIF closes the current group and begins a new group only when the customer name index value changes (the data is sorted by customer name). In this example, a customer might have one or more statements with different account numbers. The page numbers in each statement begin with the number one, giving the appearance of unique statements. The goal is to collect all of a customer's statements in a single group.
INDEX1='Customer Name',FIELD1,(TYPE=GROUP,BREAK=YES) INDEX2='Account Number',FIELD2,(TYPE=GROUP,BREAK=NO)
- GROUPRANGE
- Specifies a GROUPRANGE index, which does not break the group. ACIF creates index values
for the first and last sorted values in each group. ACIF creates indexes for the group
by extracting the first and last values that match the MASK of the transaction field
on which the index is based. ACIF assumes that the input values are sorted. You can
define one GROUPRANGE index per report.
A GROUPRANGE index must name only one transaction field, cannot name a field parameter that is based on a floating trigger, and cannot break a group.
For a GROUPRANGE index, ACIF can use the value of the GROUPMAXPAGES parameter to determine the number of pages in a group and when to break a group. For example, you need to index a line data report that consists of thousands of pages of sorted transaction data. You define a GROUP index to hold the report date index values and a GROUPRANGE index to hold the transaction numbers for each group. Because every page in the report contains the same date, the GROUP index cannot be used to break the report into groups. (And a GROUPRANGE index cannot be used to break a group.) To break the report into groups, set the GROUPMAXPAGES parameter to the maximum number of pages you want in a group (for example, 100). When ACIF calculates group breaks, it uses the value of the GROUPMAXPAGES parameter to determine when to close the current group and begin a new group.
The following example indicates that ACIF generates GROUPRANGE indexes for loan number index values. ACIF extracts the beginning and ending loan numbers in each group of pages. The input data is encoded in EBCDIC. Because a GROUPRANGE index cannot be used to break a report into groups of page, the GROUPMAXPAGES parameter can be used to determine the number of pages in a group. ACIF closes the current group and begins a new group when the number of pages in the group is equal to the value of the GROUPMAXPAGES parameter.
INDEX2='Loan Number',FIELD2,(TYPE=GROUPRANGE) GROUPMAXPAGES=100
- PAGE
- Specifies a page index, which does not break a group. You can create more than one
page index per page. Page indexes must name fields that are based on floating triggers,
and cannot break a group.
Page indexes are stored with the document, not in the index object file, and cannot be used to search for documents.
To generate page-level information in the output file so you can go to specific pages in a document, you must create an index field by specifying a page index with INDEXOBJ=ALL; otherwise, ACIF does not write the page index data to the index object file.
The following example indicates that ACIF generates PAGE indexes for subtotal values (the attribute name that appears in the Go To dialog box is Subtotal). The input data is encoded in EBCDIC. ACIF extracts the index values from each page.
INDEX3='Subtotal',FIELD3,(TYPE=PAGE)
- PAGERANGE
- Specifies a PAGERANGE index, which does not break a group. ACIF creates index values
for the first and last sorted values on each page. ACIF creates indexes for the page
by extracting the first and last values that match the MASK of the transaction field
on which the index is based. ACIF assumes that the input values are sorted. You can
define one PAGERANGE index per report.
A PAGERANGE index must name only one transaction field, cannot name a field parameter that is based on a floating trigger, and cannot break a group.
PAGERANGE indexes are stored with the document, not in the database, and cannot be used to search for documents. After you retrieve a document, you can use the page indexes to move to a specific page in the document with the Go To command in the client.
To generate page-level information in the output file so you can go to specific pages in a document, you must create an index field by specifying a PAGERANGE index with INDEXOBJ=ALL; otherwise, ACIF does not write the PAGERANGE index data to the index object file.