ACIF indexer parameters

Depending on whether you run ACIF on a multiplatform (AIX, Linux, or Windows) or z/OS® system, the defaults for certain parameters change. The defaults for the multiplatform and z/OS systems are provided in the parameter reference.

This parameter reference assumes that you will use the ARSLOAD program to index and load your reports. When you use the ARSLOAD program to process your reports, it automatically invokes ACIF if ACIF is specified as the indexer in the application. The ARSLOAD program ignores the INDEXDD, INPUTDD, MSGDD, OUTPUTDD, PARMDD, and RESOBJDD parameters, if specified. If you run ACIF from the command prompt, you must specify the values of the INDEXDD, INPUTDD , MSGDD, OUTPUTDD, PARMDD, and RESOBJDD parameters.

For most reports, ACIF requires three indexing parameters to extract or generate index data:
TRIGGER
ACIF uses triggers to determine where to locate data. A trigger instructs ACIF to look for certain information in a specific location in the report file. When ACIF finds a record in the data stream that contains the information specified in the trigger, it can begin to look for index information.
  • ACIF compares data in the report file with the set of characters specified in a trigger, byte for byte, unless you specify a regular expression.
  • A maximum of 16 triggers can be specified.
  • All fixed group triggers must match before ACIF can generate index information. However, floating triggers can occur anywhere in the data stream. That is, index data based on a floating trigger can be collected from any record in the report file.
FIELD
The field parameter identifies the location, offset, and length of the data that ACIF uses to create index values.
  • Field definitions are based on TRIGGER1 by default, but can be based on any of 16 TRIGGER parameters.
  • A maximum of 128 fields can be defined.
  • A field can also specify all or part of the actual index value stored in the database.
INDEX
The index parameter is where you specify the attribute name, identify the field or fields on which the index is based, and specify the type of index that ACIF generates. For the group-level indexes that Content Manager OnDemand stores in the database, IBM® recommends that you name the attributes the same as the application group database field names.
  • ACIF can create indexes for a page, group of pages, and the first and last sorted values on a page or group of pages. Content Manager OnDemand stores group-level index values in the database. Users can search for items using group-level indexes. Page-level indexes are stored with the document (for example, a statement). After retrieving a document that contains page-level indexes, the user can move to a specific page by using the page-level indexes. Note: ACIF can only generate this type of page-level information when converting the input data to AFP. This type of page-level information is generated by specifying the CONVERT=YES and INDEXOBJ=ALL parameters, and by creating an index field with the TYPE=PAGE or TYPE=PAGERANGE option. For more information, see the discussion of TYPE=PAGE in INDEX.
  • You can concatenate field parameters to form an index.
  • A maximum of 128 index parameters can be specified.
  • The default behavior of ACIF is to create a new group and extract new index values when one or more of the fixed group index values change or the GROUPMAXPAGES value is reached. For information on changing the default behavior, see BREAKYES.
The following illustration shows a portion of a page from a sample report.
Figure 1. Indexing a report
 ----+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9
01                                                                      Page 0001
1
2                                       Jon Smyth
3                                       123 Ubik Way
4                                       Meadow Bridge WV 99999-9999
5
6                                       Statement Date: 08/01/1995
7                                       Account Number: 3727-1644-0081-0099
8
9                                       Balance: $1,096.54
 
The following indexing parameters could be used to generate index data for the report shown in the illustration. The TRIGGER definitions tell ACIF how to identify the beginning of a group in the input. ACIF requires two TRIGGER definitions to identify the beginning of a group (statement) in the sample file. For example:
  • TRIGGER1 looks for a 1 in the first byte of each input record.
  • TRIGGER2 looks for the string Page 0001 in column 72 of the same record.
Together, the triggers uniquely identify the start of a statement in the report.
The FIELD definitions determine the location of index values in a statement. Fields are based on the location of trigger records, for example:
  • FIELD1 identifies customer name index values, beginning in column 40 of the second record following the TRIGGER1 record.
  • FIELD2 identifies statement date index values, beginning in column 56 of the sixth record following the TRIGGER1 record.
  • FIELD3 identifies account number index values, beginning in column 56 of the seventh record following the TRIGGER1 record.
An INDEX definition identifies the attribute name of the index field. Indexes are based on one or more field definitions. For example:
  • INDEX1 identifies the attribute name custnam, for values extracted using FIELD1.
  • INDEX2 identifies the attribute name sdate, for values extracted using FIELD2.
  • INDEX3 identifies the attribute name acctnum, for values extracted using FIELD3.