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:
- 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 might 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 might 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 Content Manager OnDemand. To avoid this, specify a page definition that formats your data without multiple-up when you run ACIF.
- If your input file contains machine carriage control characters, and you use a skip-to-channel character to start a new page (typically X'89' or X'8B') 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 started by the carriage control character. This is because machine controls write before executing any action, and are therefore associated with the page or line on which they appear. Note: Using machine carriage control characters for triggers is not recommended.
- 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.