Indexing Considerations
The index object file contains Index Element (IEL) structured fields that identify the
location of the tagged groups in the print file. The tags are contained in the
Tagged Logical Element (TLE) structured fields.
The structured field offset and byte offset values are accurate at the time ACIF
creates the output document file. However, if you extract various pages or page
groups for viewing or printing, you will have to dynamically create from the original
a temporary index object file that contains the correct offset information for the new
file. For example, assume the following:
ACIF processed all the bank statements for 6 branches, using the account
number, statement date, and branch number.
The resultant output files were archived using a system that allowed these
statements to be retrieved based on any combination of these three indexing
values.
If you wanted to view all the bank statements from branch 1, your retrieval system
would have to extract all the statements from the print file ACIF created (possibly
using the IELs and TLEs in the index object file) and create another document for
viewing. This new document would need its own index object file containing the
correct offset information. The retrieval system would have to be able to do this.
Under some circumstances, the indexing that ACIF produces may not be what you
expect, for example:
If your page definition produces multiple-up output, and if the data values you
are using for your indexing attributes appear on more than one of the
multiple-up subpages, ACIF may produce two indexing tags for the same
physical page of output. In this situation, only the first index attribute name will
appear as a group name, when you are using the Viewer application of AFP
Workbench. To avoid this, specify a page definition that formats your data
without multiple-up when you submit the indexing job to ACIF.
If your input file contains machine carriage control characters, and you use the
new-page or ASCII carriage control character as a TRIGGER, the indexing tag
created will point to the page on which the carriage control character was
found, not to the new page or ASCII created by the carriage control character.
If your input file contains application-generated separator pages (for example,
banner pages), and you want to use data values for your indexing attributes,
you can write an Input Data exit program to remove the separator pages.
Otherwise, the presence of those pages in the file will make the input data too
unpredictable for ACIF to reliably locate the data values. As alternatives to
writing an exit program, you can also change your application program to
remove the separator pages from its output, or you can use the
INDEXSTARTBY parameter to instruct ACIF to start indexing on the first page
after the header pages.
If you want to use data values for your indexing attributes, but none of the
values appear on the first page of each logical document, you can cause ACIF
to place an indexing tag on the first page by defining a FIELD parameter with a
large enough negative relative record number from the anchor record to “page”
backward to the first page. Without referencing this FIELD parameter in an
184 ACIF User’s Guide