<<

Trillium Software System™ Programmer’s Guide, Volume 2

includes:

Calling all modules on IBM Mainframe Output Data Tables for all API Modules

Version 7.16 May 2017 This manual, as well as the software described in it, are furnished under license and may be used only in accordance with the terms of such license. The content of this manual is furnished for informational purposes only, is subject to change without notice, and should not be construed as a commitment by Trillium Software. Trillium Software assumes no responsibility or liability for any errors or inaccuracies that may appear in this manual.

The customer shall not disclose, copy, reproduce, distribute, or display any portion of the Trillium Software System or this manual in any form to any third person without the prior written consent of Trillium Software, nor allow third parties to do the same. The customer shall keep the Trillium Software System and all confidential information in the strictest confidence.

Trillium Software System Programmer’s Guide, Volume 2 53017

Trillium Software, Inc. owns all rights in and to the marks "TRILLIUM SOFTWARE" and "TRILLIUM SOFTWARE SYSTEM," which marks are registered in various countries throughout the world (including, without limitation, the Patent and Trademark Office).

All other trademarks are the property of their respective owners.

© 2008-2017 Trillium Software, Inc. Table of Contents iii

TABLE OF CONTENTS

CHAPTER 1 Trillium Software System Applications Programming Interface (API) ...... 1-1

CHAPTER 2 Trillium Software System API Calls on IBM Mainframe ...... 2-1 API Calls from COBOL on IBM Mainframe ...... 2-2 The Call Types for ‘Action’ Parameter (COBOL) ...... 2-6 Xpediter Considerations ...... 2-6 Calling the Investigator API from COBOL ...... 2-7 Calling the Converter API from COBOL ...... 2-9 Calling the Customer Data Parser API from COBOL ..2-11 Calling the Business Data Parser API from COBOL ...2-13 Calling the Global Data Router API from COBOL ...... 2-15 Calling the US Postal Geocoder API from COBOL...... 2-17 Calling the US Geocoder API from COBOL (DPV, LACSLink, and SuiteLink Supported)...... 2-21 Calling US Centroid Census Geocoder API from COBOL ...... 2-51 Calling the US Interpolated Rooftop Census Geocoder API from COBOL ...... 2-54 Calling the API for All US Census Geocoders from COBOL ...... 2-58 Calling the CA Postal Geocoder API from COBOL...... 2-62 Calling the AU Postal Geocoder API from COBOL...... 2-67 Calling the DE Postal Geocoder API from COBOL...... 2-71 Calling the HK Postal Geocoder API from COBOL .....2-76 Calling the IT Postal Geocoder API from COBOL...... 2-81 Calling the UK Postal Geocoder API from COBOL .....2-86 Calling the TG Postal Geocoder API from COBOL...... 2-94 Calling the Create Window Key API from COBOL.... 2-100 Calling the Data Reconstructor API from COBOL .... 2-102 Calling the Matcher API from COBOL...... 2-104

CHAPTER 3 Trillium Software System Return Data & Output Tables ...... 3-1 Converter/Investigator API Error Codes ...... 3-2 Customer Data Parser API Output ...... 3-3 Customer Data Parser API Error Codes...... 3-32

Trillium Software System™ Programmer’s Guide, Volume 2 iv Table of Contents

Business Data Parser API Output ...... 3-33 Business Data Parser API Error Codes ...... 3-35 Global Data Router API Error Codes ...... 3-36 Data Reconstructor Output ...... 3-37 Data Reconstructor API Error Codes...... 3-37 Data Reconstructor API Compiler Error Messages ....3-38 Window Key Generator API Error Codes...... 3-44 US Postal Geocoder API Output ...... 3-46 US Postal Geocoder Input/Output Data ...... 3-46 Return Info Data Area ...... 3-48 US Match Possibilities Data Area ...... 3-59 DISPLAY_BASEDATA Parameter Options...... 3-61 US Centroid Census Geocoder API Output ...... 3-69 Input Data to Centroid Census Geocoder ...... 3-69 US Centroid Census Geocoder Output Data...... 3-72 US Centroid Census Geocoder Street Tract Match Section Error Codes...... 3-80 US Centroid Census Geocoder DISPLAY_BASEDATA Options ...... 3-81 US Interpolated Rooftop Census Geocoder API Output 3-82 Output Data Layout...... 3-84 Error Codes...... 3-87 CA Postal Geocoder API Output ...... 3-88 CA Postal Geocoder Input and Output Data...... 3-88 CA Match Possibilities Data Area ...... 3-96 CA DISPLAY_BASEDATA Parameter Options...... 3-100 AU Geocoder API Output ...... 3-103 AU Postal Geocoder Input and Output Data ...... 3-103 AU DISPLAY_BASEDATA Parameter Options...... 3-109 AU Geocoder Error Codes ...... 3-110 DE Geocoder API Output ...... 3-112 DE Postal Geocoder Input and Output Data...... 3-112 DE Match Possibilities Data Area ...... 3-115 DE DISPLAY_BASEDATA Parameter Options...... 3-116 HK Geocoder API Output ...... 3-119 HK Postal Geocoder Input and Output Data ...... 3-119 HK Match Possibilities Data Area ...... 3-121 HK DISPLAY_BASEDATA Parameter Options...... 3-121 IT Geocoder API Output ...... 3-125 IT Postal Geocoder Input and Output Data...... 3-125 IT Match Possibilities Data Area ...... 3-127

Trillium Software System™ Programmer’s Guide, Volume 2 Table of Contents v

IT DISPLAY_BASEDATA Parameter Options...... 3-128 UK Geocoder API Output ...... 3-131 UK Geocoder Input/Output Data ...... 3-131 UK Match Possibilities Data Area ...... 3-134 UK DISPLAY_BASEDATA Parameter Options...... 3-135 TG Geocoder API Output...... 3-141 TG Geocoder DISPLAY_BASEDATA Parameter Options ...... 3-145 LEVEL_MATCHING parameter values ...... 3-148 TG Geocoder Match Possibilities Data Area ...... 3-149 Matcher Functions – Error Codes ...... 3-153 Universal Cleansing Adapter API Error Codes...... 3-161 XML Function Error Codes...... 3-163

Index ...... I-1

Trillium Software System™ Programmer’s Guide, Volume 2 vi Table of Contents

Trillium Software System™ Programmer’s Guide, Volume 2 CHAPTER 1 Trillium Software System Applications Programming Interface (API)

Trillium Software System™ modules can be run on any platform that supports the ANSI standard C language. API languages supported through this document and Trillium Software Technical Support are listed below.

This document is organized to assist developers in the creation of programs to execute a call to a specific function of their choice. To get started, find the platform you will be calling functions from and then locate the programming language you will be using.

For additional assistance, call or E-mail Trillium Software Technical Support at [email protected].

Trillium Software System Applications Programming Interface (API) 1-2

This manual is the second of two volumes and contains the following chapters:

• Chapter 2 “Trillium Software System API Calls on IBM Mainframe” • Chapter 3 “Trillium Software System Return Data & Output Tables”

See the Programmer’s Guide, Volume I for an overview section describing all the basics involved with API functionality.

See Volume I also for information about calling the Trillium Software System® from C, C++, C#, Visual Basic, Visual Basic .NET, and Java on the Microsoft Windows platform, and from C and Java on the UNIX platform.

Volume I also contains information about using the Trillium Software System® Universal Cleansing Adapter (UCA).

Trillium Software System™ Programmer’s Guide, Volume 2 CHAPTER 2 Trillium Software System API Calls on IBM Mainframe

This chapter describes calls to the Trillium Software System API on the IBM Mainframe.

The Trillium Software System® Applications Programming Interface (API) supports calls from the COBOL programming language on the IBM Mainframe.

Trillium Software System API Calls on IBM Mainframe 2-2 API Calls from COBOL on IBM Mainframe

API Calls from COBOL on IBM Mainframe

Batch COBOL calls on the IBM Mainframe use the load modules located in the customer .TRIL7140.CALLABLE.LOADLIB of the Trillium Software System® base installation. • Most of the load modules contain an imbedded “#” sign in the name. • Sample batch programs are located in the library TRIL7140.SAMPLES.CALLABLE.SRCLIB PDS, under the COB* members as well as in the .\samples directory of the base installation.

These Callable API Load Modules, created using the IBMC Compiler and Linker, are designed and made to be dynamically callable at run time. There is no need to statically link them with a COBOL driver module. Remake the COBOL driver module with the ‘DYN’ option. Concatenate the Trillium Callable LOADLIB on the JOBLIB or STEPLIB DD statement to use them in your customized processes.

The implementation of File Name is DDNAME, which is the name of the DD statement in the proc or executable JCL referencing the dataset (DSN) that is the file. The field that contains a file name (DDNAME) should be made long enough to hold the name + 1 character at the end filled with LOW_VALUES (Null). The maximum length is 9.

Table 2.1 API Load Modules and Entry Points

Load module Entry point Description

AU#MTCI AU#MTCI Australian (AU) Postal Geocoder

AU#AMAS AU#AMAS Australian (AU) Postal Geocoder (AMAS certified).

AU#AMAT AU#AMAT Data input creation function for AU Postal Geocoder

CA#MTCI CA#MTCI Canadian (CA) Postal Geocoder

CA#AMAT CA#AMAT Data input creation function for CA Postal Geocoder

CF#CONI CF#CONI Converter

Trillium Software System™ Programmer’s Guide, Volume 2 API Calls from COBOL on IBM Mainframe 2-3

Table 2.1 API Load Modules and Entry Points (Continued)

Load module Entry point Description

CF#CRCM CF#CRCM Create Common function

CF#WKEY CF#WKEY Window Key Generator

CFINVESI CFINVESI Investigator

DE#MTCI DE#MTCI German (DE) Postal Geocoder

DE#AMAT DE#AMAT Data input creation function for DE Postal Geocoder

GA#PRSI GA#PRSI Business Data Parser

GM#MTCI GM#MTCI US Centroid Census Geocoder

HK#MTCI HK#MTCI Hong Kong (HK) Postal Geocoder

HK#AMAT HK#AMAT Data input creation function for HK Postal Geocoder

HM#MTCI HM#MTCI US Interpolated Rooftop Census Geocoder

IT#MTCI IT#MTCI Italian (IT) Postal Geocoder

IT#AMAT IT#AMAT Data input creation function for IT Postal Geocoder

M#ADDREC M#ADDREC Matcher Add Record routine

M#CLEARW M#CLEARW Matcher Clear Window routine

Trillium Software System API Calls on IBM Mainframe 2-4 API Calls from COBOL on IBM Mainframe

Table 2.1 API Load Modules and Entry Points (Continued)

Load module Entry point Description

M#CMATCH M#CMATCH Matcher Match Candidate (Reference) Match routine

M#COMMON M#COMMON Matcher Commonizer routine

M#DELETR M#DELETR Delete a Record

M#ENDMAT M#ENDMAT Matcher termination routine

M#GENCAN M#GENCAN Generate Candidate Transactions

M#GENSST M#GENSST Generate Transactions

M#GETINF M#GETINF Get Information

M#GETMAT M#GETMAT Matcher Obtain Reference Match routine

M#GETSUS M#GETSUS Matcher Obtain Suspect Match routine

M#HHLDML M#HHLDML Send Household Number

M#HMATCH M#HMATCH Get Household Matches

M#HSUMRY M#HSUMRY Get Household Summary

M#IMATCH M#IMATCH Get Individual Matches

M#INITMR M#INITMR Matcher initialization routine

M#ISUMRY M#ISUMRY Get Individual Summary

M#MEMBML M#MEMBML Send Member Number

M#MODIFY M#MODIFY Modify a Record

M#NUMMAT M#NUMMAT Matcher Number of Reference Matches routine

M#NUMSUS M#NUMSUS Matcher Number of Reference Suspects routine

M#PARAMS M#PARAMS Matcher Process Parameters routine

M#RETRVR M#RETRVR Matcher Retrieve Window Match routine

M#SORTWN M#SORTWN Matcher Sort Window Match Records routine

M#WMATCH M#WMATCH Matcher Window Match routine

Trillium Software System™ Programmer’s Guide, Volume 2 API Calls from COBOL on IBM Mainframe 2-5

Table 2.1 API Load Modules and Entry Points (Continued)

Load module Entry point Description

M#WRTLNK M#WRTLNK Write Links

PA#PRSI PA#PRSI Customer Data Parser

PM#MTCI PM#MTCI US Postal Geocoder

RC#MULTI RC#MULTI Data Reconstructor function

RT#ROUT RT#ROUT Global Data Router

TG#MTI2 TG#MTI2 Trillium Global (TG) Postal Geocoder – using rules file

TG#MTCI TG#MTCI Trillium Global (TG) Postal Geocoder

TG#AMAT TG#AMAT Data input creation function for TG Postal Geocoder

UM#MTCI UM#MTCI UK Postal Geocoder

UM#AMAT UM#AMAT Data input creation function for UK Postal Geocoder

Trillium Software System API Calls on IBM Mainframe 2-6 The Call Types for ‘Action’ Parameter (COBOL)

The Call Types for ‘Action’ Parameter (COBOL)

There are three different call types as detailed by the Action parameter. Each call uses the same parameters with a different Action value. The Action parameter tells the program what function to perform for a specific call. The settings for the Action parameter are described in the following table.

O Open Initializes the module, loads required tables into memory, and reads the parameter (parm) file. For the Geocoder, it Creates the control area, opens Level 1 index into memory and sets up control areas from parameters. Also opens Level 2 and BaseData files and saves the file handles in the control area.

P Process Processes data in the Input buffer and writes data to the Output buffers. For the Geocoder, Uses control areas and its variables; all other variables are automatic (unique copies to each function). Reads Level 2 and Basedata files as needed and applies matching logic. Also reads the memory copy of Level 1.

RMinimalFor the Postal Geocoders only, functions the same as Process, except Open uses an automatic version of the Level 2 and Basedata file handles. (Performs its own file open/close on these two resource files.) Required for multi-threaded use of Geocoder.

C Close Closes the modules, cleans up allocated resources, and writes any statistical information.

Xpediter Considerations

If you are using Xpediter to test callable functions, you may encounter a SOC4 abend when Xpediter enters the call. This issue is solved by creating an initial Xpediter script with the line “SET STATIC OFF.” This must be done in the initial script and not interactively.

Trillium Software System™ Programmer’s Guide, Volume 2 Calling the Investigator API from COBOL 2-7

Calling the Investigator API from COBOL

Detailed information about of each parameter required by the call is contained in the parm table below. Each call uses the same parameters with a different ACTION value. For more information about Investigator functionality, see the Batch User’s Guide.

CALL W100-SUBPGM-NAME USING W100-ACTION W100-CONTROL-AREA W100-PARMFILE-NAME W100-ECHOFILE-NAME W100-OUTREC-FIELDS W100-OUTFLD-FIELDS W100-RETCODE. where:

01 W100-ACTION PIC X(01) VALUE SPACES. 01 W100-CONTROL-AREA PIC X(04) VALUE SPACES. 01 W100-CONIN-FIELDS PIC X(1000). 01 W100-CONOUT-FIELDS PIC X(639). 01 W100-PARMFILE-NAME. 03 W100-PFNAME PIC X(08) VALUE SPACES. 03 FILLER PIC X(1) VALUE LOW-VALUES. 01 W100-ECHOFILE-NAME. 03 W100-EFNAME PIC X(08) VALUE SPACES. 03 FILLER PIC X(1) VALUE LOW-VALUES. 01 W100-RETCODE PIC X(01) VALUE ZERO. 01 W100-SUBPGM-NAME PIC X(08) VALUE ‘CFINVESI’.

This table describes the parameters in the preceding sample open call.

Trillium Software System API Calls on IBM Mainframe 2-8 Calling the Investigator API from COBOL

Table 2.2 Investigator Parameters (COBOL on IBM Mainframe)

Parameter Use Length Description

ACTION PIC X In 1 Call type is either: O=Open, P=Process, or C=Close.

CONTROL PIC X In/ 16 Control work area built on the Open call, then Out used during the Process and Close calls. If ACTION is either P or C=In; if ACTION is O=Out.

PARMFILE PIC X In n* Name of the parameter file.

PARMECHO PIC X In n* The name of the parameter echo file used in debugging parameter file problems. If not used, set to NULL. Optional.

IINPUT PIC X In Variable Buffer containing input data to be processed when the Process call is used. This buffer must be the same size as the input data width.

OUTREC PIC X Out Variable Buffer containing the output record, record identifier, and the status of each Investigator parm. This buffer must be the width of the input record + 1 byte for each parameter defined.

OUTFLD PIC X Out Variable Buffer containing field data that has been flagged as a result of field query parameters. Size is determined by the number of eligible parameters in the parameter file times 117 bytes (maximum is 5500 parameters).

Positive occurrences of the parameters against the field data forces the field to write to this buffer. Contiguous fields are written to the buffer every 117 bytes.

RETCODE PIC X Out 1 Return code value indicating status of the program call. Must be checked to ensure a zero value after each call (0=OK). n* = Platform-specific width of a file name. All file names should terminate with a null character after the last valid file name character.

Trillium Software System™ Programmer’s Guide, Volume 2 Calling the Converter API from COBOL 2-9

Calling the Converter API from COBOL

The following sample shows a COBOL Open Call to the Converter. A detailed description of each parameter is included in the table below. There are three different call types as detailed by the ‘ACTION’ parameter. Each call uses the same parameters with a different ACTION value.

The following Converter parameters are not callable: INP_FNAME01–10, OUT_FNAME and INP_FNAME01E–10E

For more information about the Converter, see the Batch User’s Guide.

CF#CONI Function

CALL W100-SUBPGM-NAME USING W100-ACTION W100-CONTROL-AREA W100-PARMFILE-NAME W100-ECHOFILE-NAME W100-CONIN-FIELDS W100-CONOUT-FIELDS W100-RETCODE.

where:

01 W100-ACTION PIC X(01) VALUE SPACES. 01 W100-CONTROL-AREA PIC X(04) VALUE SPACES. 01 W100-CONIN-FIELDS PIC X(1000). 01 W100-CONOUT-FIELDS PIC X(639). 01 W100-PARMFILE-NAME. 03 W100-PFNAME PIC X(08) VALUE SPACES. 03 FILLER PIC X(1) VALUE LOW-VALUES. 01 W100-ECHOFILE-NAME. 03 W100-EFNAME PIC X(08) VALUE SPACES. 03 FILLER PIC X(1) VALUE LOW-VALUES. 01 W100-RETCODE PIC X(01) VALUE ZERO. 01 W100-SUBPGM-NAME PIC X(08) VALUE ‘CF#CONI’.

Trillium Software System API Calls on IBM Mainframe 2-10 Required Resources

This table describes the parameters used in COBOL calls to the Converter.

Table 2.3 Converter Parameters (COBOL on IBM Mainframe)

Parameter Type Use Length Description

ACTION PIC X In 1 Defines call type as O=Open, P=Process or C=Close.

CONTROL PIC X 16 Control work area built on the Open call, used during Process and Close calls. If ACTION is either P or C=In; if ACTION is O=Out.

PARMFNAME PIC X In n* Contains DDNAME of DD statements for the parm file. Must be long enough to hold the name + 1 character at the end filled with LOW_VALUES (null).

ECHOFNAME PIC X Out n* Field that contains the DDNAME of the DD statements for the echo file. Must be long enough to hold the name plus 1 character at the end filled with LOW_VALUES (null).

INAREA PIC X In n* Converter input area. Make it the size of the record described in the input DDL member.

OUTAREA PIC X Out n* Converter output area. Make it the size of the record described in the output DDL member.

RETCODE PIC X Out 1 Return code value that indicates the status of the program call. Must be checked to ensure a zero value after each call. Return codes are listed in Chapter 4, “Converter Error Codes.” n* = Platform-specific width of a file name. Note that all file names should terminate with a null character after the last valid file name character. Required Resources

PARMFILE ECHOFILE STDINPUT SYSPRINT TRILMSGS STATFILE INPUT SYSOUT

Trillium Software System™ Programmer’s Guide, Volume 2 Calling the Customer Data Parser API from COBOL 2-11

Calling the Customer Data Parser API from COBOL

COBOL calls to the Customer Data Parser call a function (subroutine) that is used to open the Parser, parse the input name and address (INA), and close the Parser. There are three different call types as detailed by the ‘ACTION’ parameter. Each call uses the same parameters with a different ACTION value.

PA#PRSI Function CALL W100-SUBPGM-NAME USING W100-ACTION W100-PARM-AREA W100-INPUT-AREA W100-OUTPUT-AREA W100-DUMMY-ADDRESS W100-PARMFILE-NAME W100-PR-CONTROL-AREA.

where:

01 W100-ACTION PIC X(01) VALUE SPACES. 01 W100-PARM-AREA PIC X(3000) VALUE SPACES. 01 W100-INPUT-AREA 05 W100-INPUT-LINE1 PIC X(100) VALUE SPACES. 05 W100-INPUT-LINE2 PIC X(100) VALUE SPACES. 05 W100-INPUT-LINE3 PIC X(100) VALUE SPACES. 05 W100-INPUT-LINE4 PIC X(100) VALUE SPACES. 05 W100-INPUT-LINE5 PIC X(100) VALUE SPACES. 05 W100-INPUT-LINE6 PIC X(100) VALUE SPACES. 05 W100-INPUT-LINE7 PIC X(100) VALUE SPACES. 05 W100-INPUT-LINE8 PIC X(100) VALUE SPACES. 05 W100-INPUT-LINE9 PIC X(100) VALUE SPACES. 05 W100-INPUT-LINE10 PIC X(100) VALUE SPACES. 01 W100-OUTPUT-AREA PIC X(10000) VALUE SPACES. 01 FILLER REDEFINES W100-OUTPUT-AREA 05 W100-RETURN-CODE PIC X(01). 05 FILLER PIC X(9999). 01 W100-DUMMY-ADDRESS PIC X(1). 01 W100-PARMFILE-NAME 05 W100-FNAME PIC X(6) VALUE SPACES. 05 FILLER PIC X(1) VALUE LOW-VALUES. 01 W100-SUBPGM-NAME PIC X(08) VALUE ‘PA#PRSI’.

Trillium Software System API Calls on IBM Mainframe 2-12 Required Resources

This table lists parameters used for COBOL calls to the Customer Data Parser.

Table 2.4 Customer Data Parser Parameters (COBOL on IBM Mainframe)

Parameter Type Use Length Description

ACTION PIC X In 1 Defines the call type as either O=Open, P=Process, or C=Close.

PARMAREA PIC X Out 3000 To be filled in with parameters from the CDP.

INAREA PIC X In 1000 User input consisting of the names and addresses to be processed by the Customer Data Parser.

OUTAREA PIC X Out 10,000 Contains output generated by the CDP. See Chapter 4 for the PREPOS data layout.

NULL PIC X 4 Contains low values.

PARMFNAME PIC X Out n* Character field that contains the DDNAME of the DD statements of the pfparser parameter file. Must be long enough to hold the name plus 1 character at the end filled with LOW_ VALUES (NULL). See the Batch User’s Guide for a description of this file.

CONTROL PIC X In/ 16 Control work area built on the Open call, then Out used during the Process and Close calls. If ACTION is either P or C=In; if ACTION is O=Out. n* = Platform-specific width of a file name. Note that all file names should terminate with a null character after the last valid file name character. Required Resources

SYSPRINT SYSOUT TRILMSGS PASTAT PPARMS PAREPORT PAREJECT PALOG PADSP TABLEDEF TABLEPAT TABLECIT TABLEAUX

Trillium Software System™ Programmer’s Guide, Volume 2 Calling the Business Data Parser API from COBOL 2-13

Calling the Business Data Parser API from COBOL

The GA#PRSI function (subroutine) is called by COBOL. It is used with ACTION variations in the calling program to open the BDP, to parse the input data, and to close the BDP.

A detailed description of each parameter is contained in the table below. There are three different call types as detailed by the ‘ACTION’ parameter. Each call uses the same parameters with a different ACTION value. For more information about Business Data Parser functionality, see the Batch User’s Guide.

GA#PRSI Function

CALL W100-SUBPGM-NAME USING W100-ACTION W100-PARM-AREA W100-INPUT-AREA W100-OUTPUT-AREA W100-DUMMY-ADDRESS W100-PARMFILE-NAME W100-BPR-CONTROL-AREA. where:

01 W100-ACTION PIC X(01) VALUE SPACES. 01 W100-PARM-AREA PIC X(8008) VALUE SPACES. 01 W100-INPUT-AREA PIC X(1000) VALUE SPACES. 01 W100-OUTPUT-AREA PIC X(13000) VALUE SPACES. 01 FILLER REDEFINES W100-OUTPUT-AREA 05 W100-RETURN-CODE PIC X(01). 05 FILLER PIC X(12999). 01 W100-DUMMY-ADDRESS PIC X(1). 01 W100-PARMFILE-NAME 05 W100-FNAME PIC X(6) VALUE SPACES. 05 FILLER PIC X(1) VALUE LOW-VALUES. 01 W100-BPR-CONTROL-AREA PIC X(16) VALUE SPACES. 01 W100-SUBPGM-NAME PIC X(08) VALUE ‘GA#PRSI’.

Trillium Software System API Calls on IBM Mainframe 2-14 GA#PRSI Function

This table describes parms used for COBOL calls to the Business Data Parser.

Table 2.5 Business Data Parser Parameters (COBOL on IBM Mainframe)

Parameter Type Use Length Description

ACTION PIC X In 1 Defines the call type as either O=Open, P=Process, or C=Close.

PARMAREA PIC X Out 8,008 To be filled in with parameters from the BDP.

INAREA PIC X In Variable User input consisting of the data to be (max 1000) processed by the Business Data Parser.

OUTAREA PIC X Out 13,000 Contains output generated by the BDP. See Chapter 4 for the BDP PREPOS data layout.

NULL PIC X 4 Contains low values.

PARMFNAME PIC X Out n* Character field containing the DDNAME of the DD statements of the pfparser parameter file. Must be long enough to hold the name plus 1 character at the end filled with LOW_VALUES (NULL).

See the Batch User’s Guide for a description of this parameter file.

CONTROL PIC X In/ 16 Control work area built on the Open call, Out then used during the Process and Close calls. If ACTION is either P or C=In; if ACTION is O=Out. n* = Platform-specific width of a file name. Note that all file names should terminate with a null character after the last valid file name character.

Trillium Software System™ Programmer’s Guide, Volume 2 Calling the Global Data Router API from COBOL 2-15

Calling the Global Data Router API from COBOL

A detailed description of each parameter is included in the table below. There are three different call types as detailed by the ‘ACTION’ parameter. Each call uses the same parameters with a different ACTION value.

For more information about Global Data Router functionality, see the Batch User’s Guide.

RT#ROUT Function

CALL 'W100-SUBPGM-NAME USING W100-ACTION W100-CONTROL-AREA W100-PARMFILE-NAME W100-ECHOFILE-NAME W100-INPUT-RECORD W100-ROUTER-OUTPUT W100-WEIGHT W100-RETURN-CODE. where:

01 W100-ACTION PIC X(1). 01 W100-CONTROL-AREA PIC X(16). 01 W100-PARMFILE-NAME. 05 W100-PARMFNM PIC X(08) VALUE 'PFRTRPRM'. 05 FILLER PIC X(01) VALUE LOW-VALUES. 01 W100-ECHOFILE-NAME. 05 W100-ECHOFNM PIC X(08) VALUE 'PFECHO '. 05 FILLER PIC X(01) VALUE LOW-VALUES. 01 W100-INPUT-RECORD PIC X(1000). 01 W100-ROUTER-OUTPUT. 05 W100-ROUTOUT-AREA OCCURS 50 TIMES INDEXED BY ROUT-IDX. 10 W100-ROUTOUT-CO-CODE PIC X(02). 10 FILLER PIC X(01). 01 W100-WEIGHT PIC 9(07) COMP. 01 W100-RETURN-CODE PIC 9(07) COMP VALUE ZERO. 01 W100-SUBPGM-NAME PIC X(08) VALUE ‘RT#ROUT’.

Trillium Software System API Calls on IBM Mainframe 2-16 RT#ROUT Function

This table describes parameters used for COBOL calls to the Router.

Table 2.6 Global Data Router Parameters (COBOL on IBM Mainframe)

Parameter Type Use Length Description

ACTION AN In 1 Defines the call type as either O=Open, P=Process, or C=Close.

CONTROL-AREA AN 16 Control work area built on the Open call, then used during Process and Close calls. If ACTION is either P or C=In; if ACTION is O=Out.

PARMFILE-NAME AN In Variable Name of the parameter file used by the program.

ECHOFILE-NAME AN In Variable Name of parameter echo file that file contents will be written to upon initialization.

INPUT-RECORD AN In Variable Pointer to the input data record.

ROUTER-OUTPUT AN Out Pointer to a buffer used to hold the data returned by the program.

WEIGHT BIN Out 4 A buffer to hold the weight value returned by the program.

RETURN-CODE BIN Out 4 A buffer to hold the return code value from the program execution. See Chapter 4 for Router error codes.

AN = Alphanumeric BIN = Binary

Trillium Software System™ Programmer’s Guide, Volume 2 Calling the US Postal Geocoder API from COBOL 2-17

Calling the US Postal Geocoder API from COBOL

The following US Postal Geocoder function (subroutine) is called:

PM#MTCI Opens the US Postal Geocoder, matches the PMA to the postal directory, and closes the Geocoder. If your US Geocoder process includes DPV and LACSLink tables, use the PM#CASS function, which is described on page 2-21.

PM#MTCI Function CALL W100-SUBPGM-NAME USING W100-ACTION W100-PM-CONTROL-AREA W100-STREET-INFO W100-RETURN-INFO W100-INAREA W100-FINAL-INFO W100-DISPLAY-BASE W100-DATABASE-DATE W100-LIST-NAME W100-PROCESSOR-NAME W100-FORM-FILE-NAME W100-LEV1-NAME W100-LEV2-NAME W100-BASE-NAME W100-STREET-BUFF W100-DET-BUFF

where:

01 W100-SUBPGM-NAME PIC X(08) VALUE ‘PM#MTCI’ 01 W100-ACTION PIC X(01) VALUE SPACES. 01 W100-PM-CONTROL-AREA PIC X(16) VALUE SPACES. 01 W100-STREET-INFO PIC X(247) VALUE SPACES. 01 W100-FINAL-INFO PIC X(127) VALUE SPACES. 01 W100-RETURN-INFO 05 W100-OUT-RET-CODE PIC X(01). 05 W100-FULL-POSTCD PIC X(09). 05 W100-STR-NAME PIC X(22). 05 W100-STR-PRE-DIR PIC X(02). 05 W100-STR-POST-DIR PIC X(02). 05 W100-STR-SUFFIX PIC X(04). 05 W100-CR-ROUTE PIC X(04). 05 W100-SCND-TYPE PIC X(04). 05 W100-REC-TYPE PIC X(02). 05 W100-FAIL-LEVEL PIC X(01). 05 W100-POST-CITY-NAME PIC X(30). 05 W100-URB-CITY-NAME PIC X(30).

Trillium Software System API Calls on IBM Mainframe 2-18 PM#MTCI Function

05 W100-POSTCD-CHG-IND PIC X(01). 88 W100-POSTCD-CHGD VALUE 'Y'. 05 W100-CITY-CHG-IND PIC X(01). 88 W100-CITY-CHGD VALUE 'Y'. 05 W100-STRNAME-CHG-IND PIC X(01). 88 W100-STRNAME-CHGD VALUE 'Y'. 05 W100-STR-COMP-CHG-IND PIC X(01). 88 W100-STR-COMP-CHGD VALUE 'Y'. 05 W100-STR-NAME-LONG PIC X(28). 05 W100-LACS-IND PIC X(01). 05 W100-BLDG-IND PIC X(01). 05 W100-COUNTY-NUMBER PIC X(03). 05 W100-CONGRES-DIST PIC X(02) 05 FILLER PIC X(01). 01 W100-INAREA PIC X(01) VALUE SPACES. 01 W100-DISPLAY-BASE 05 W100-DISPBASE-VALUE PIC X(01) VALUE SPACES. 05 FILLER PIC X(01) VALUE LOW-VALUES. 01 W100-DATABASE-DATE. 05 W100-DATE PIC X(8) VALUE SPACES. 05 FILLER PIC X(1) VALUE LOW-VALUES. 01 W100-LIST-NAME. 05 W100-LNAME PIC X(06) VALUE SPACES. 05 FILLER PIC X(1) VALUE LOW-VALUES. 01 W100-PROCESSOR-NAME. 05 W100-PNAME PIC X(06) VALUE SPACES. 05 FILLER PIC X(1) VALUE LOW-VALUES. 01 W100-FORM-FILE-NAME. 05 W100-FNAME PIC X(06) VALUE SPACES. 05 FILLER PIC X(1) VALUE LOW-VALUES. 01 W100-LEV1-NAME. 05 W100-L1NAME PIC X(06) VALUE SPACES. 05 FILLER PIC X(1) VALUE LOW-VALUES. 01 W100-LEV2-NAME. 05 W100-L2NAME PIC X(06) VALUE SPACES. 05 FILLER PIC X(1) VALUE LOW-VALUES. 01 W100-BASE-NAME. 05 W100-BNAME PIC X(06) VALUE SPACES. 05 FILLER PIC X(1) VALUE LOW-VALUES. 01300000 01 W100-STREET-BUFF PIC X(30000) VALUE SPACES. 01 W100-DET-BUFF PIC X(6150) VALUE SPACES. .

Trillium Software System™ Programmer’s Guide, Volume 2 PM#MTCI Function 2-19

This table lists parameters used for COBOL calls to the US Postal Geocoder.

Table 2.7 US Postal Geocoder Parameters (COBOL on IBM Mainframe)

Parameter Type Use Length Description

ACTION AN In 1 Defines the call type as either O=Open, P=Process, R=Minimal Open, or C=Close.

CONTROL AN In/ 16 Control work area built on the Open call, Out then used during the Process and Close calls. If ACTION is either P, R, or C=In; if ACTION is O=Out.

STREET-INFO AN In 247 Field that contains information to match against postal match system. See the section “US Postal Geocoder Input/Output Data” on page 3-46.

RETURN-INFO AN Out 151 Field containing info returned by US Geocoder. See “US Postal Geocoder Input/ Output Data” on page 3-46.

INAREA AN Not currently used.

FINAL-OUT- AN Out 117 Final return area. BUFFER

DISPLAY- AN In n* Displays control information. See the BASEDATA section “DISPLAY_BASEDATA Parameter Options” on page 3-61.

DATABASE-DATE AN In 9 Field that contains the database date of US Postal Directory in MMM YYYY format. Optional; else low values. Must be long enough to hold the value + 1 character at the end to fill with low values.

LIST-NAME AN In 54 Field that contains the name of list to match against US Postal Directory. Must be long enough to hold the value plus 1 character at the end to fill with low values.

Trillium Software System API Calls on IBM Mainframe 2-20 PM#MTCI Function

Table 2.7 US Postal Geocoder Parameters (COBOL on IBM Mainframe)

Parameter Type Use Length Description

PROCESSOR-NAME AN In 54 Field that contains the name of processor; must be long enough to hold the value plus 1 character at the end to fill with low values.

FORM-FILE-NAME AN In n* Not applicable

LEV1-NAME AN In n* Character field that contains the file name for the Level 1 index for US Directory. (PMBUL1)

LEV2-NAME AN In n* Character field containing file name of Level 2 index for the US Postal Directory. (PMBUL2)

BASE-NAME AN In n* Character field that contains the file name of the input US Postal Directory basedata file. (PMBUBD)

STREET-NAME- AN Out 30,000 Contains street names, when DISPLAY- BUFFER BASEDATA = (3, A, B); can contain 1,000 30-character street names.

DETAILS-BUFFER AN Out 6,150 Field containing street details for possible matches, when DISPLAY-BASEDATA = (3, A, B); populated only when FAIL-LEVEL = 0, 4, or 5. Can contain 50 occurrences of Match Possibilities Data Area.

See the section “US Match Possibilities Data Area” in Chapter 4 of this document, for a layout of the fields included in this buffer. n* = File names are the DDNAME of DD statement pointing to the file. Make it long enough to hold the name plus one character at the end and filled with LOW_ VALUES (NULL). Maximum length is 9. AN = Alphanumeric

Trillium Software System™ Programmer’s Guide, Volume 2 Required Resources 2-21

Required Resources

SYSOUT SYSPRINT TRILMSGS PMFORM PMBUBD PMBUL1 PMBUL2 PMSTAT

Calling the US Geocoder API from COBOL (DPV, LACSLink, and SuiteLink Supported)

There are three call types as detailed by the ‘USGEOWS-ACTION’ parameter. Each call uses the same parameters (Table 2.8) with a different ACTION value.

The following function (subroutine) is called.

PM#CASS Opens the US Geocoder, matches the PMA, and closes the Geocoder.

In accordance with United States Postal Service policy, LACSLink and DPV data files must not be sent out of the United States.

Beginning in v7.15.2, DPV, LACSLink, SuiteLink, and RDI products of the US Postal Geocoder became compliant with the new USPS encryption standard. As a result, the US Postal Geocoder and these USPS products distributed by Trillium Software have been updated. There are no changes to the PM#CASS function for calling the US Postal Geocoder and all new parameters belong to the following pointers: • USGEOWS-DPV-POINTERS • USGEOWS-LACS-FILENAMES-POINTERS However, when you start using the updated USPS products, you must recompile any source program calling PM#CASS with the updated US Postal Geocoder module. You also must use only one DPV Hash file by setting USGEOWS-DPVHASH000-NAME to the DD name of the DD Statement in the JCL that references the DPV Hash file.

As of August 1, 2017, Trillium Software will no longer make available these USPS product directories with the old encryption standard. Trillium Software will make available both new and old product

Trillium Software System API Calls on IBM Mainframe 2-22 PM#CASS Function

directories until then, but you will need to update your software and product directories as soon as possible.

If you do not update software to v7.15.2 or later by August 1, 2017, the old product directories can still be used until the files expire on October 31st. If you do use the old product directories past August 1,2017, you should not update the US postal files as these should remain in sync with the old product directories for processing.

These USPS products are not available for CICS.

See Geocoders for details of new requirements such as the new parameters. See the technical bulletin Changes to United States Postal Geocoder (TSS Version 7.15.2) for details of the new product directories. The technical bulletin is available from the TSS software FTP site and documentation pages of the Trillium Software Customer Portal website. PM#CASS Function CALL W100-SUBPGM-NAME USING USGEOWS-ACTION USGEOWS-PM-CONTROL-AREA USGEOWS-STREET-INFO USGEOWS-RETURN-INFO USGEOWS-RETURN-AREA2 USGEOWS-INAREA USGEOWS-FINAL-INFO USGEOWS-DISPLAY-BASE USGEOWS-DATABASE-DATE USGEOWS-LIST-NAME USGEOWS-PROCESSOR-NAME USGEOWS-FORM-FILE-NAME USGEOWS-POSTAL-FILENAMES-POINTERS USGEOWS-DPV-POINTERS USGEOWS-LACS-FILENAMES-POINTERS USGEOWS-SLNK-DDS-POINTERS USGEOWS-USGEOWS-ABREV-NAME USGEOWS-STREET-BUFF USGEOWS-DET-BUFF.

Trillium Software System™ Programmer’s Guide, Volume 2 PM#CASS Function 2-23

Table 2.8 US Geocoder Parameters (COBOL on IBM Mainframe)

Parameter Type Use Length Description

USGEOWS-Action AN In 1 Defines the call type as O=Open, P=Process, R=Minimal Open, or C=Close.

USGEOWS-PM- AN In/Out 16 Control work area built on the Open call, then Control-area used during Process, Minimal Open, and Close calls, If Action is either P, R, or C=In; if Action is O=Out.

USGEOWS-Street-info AN In 247 Information to match against US Geocoder. This is the input (130 bytes) and output (117 bytes) geographic match section of the Parser repository area. See “US Postal Geocoder Input and Output Data” in Chapter 4 of the TSS Programmer’s Guide, Volume 2.

USGEOWS-Return- AN Out 151 Information returned by the US Postal Geocoder. info See “US Postal Geocoder Return Info Data Area” in Chapter 4 of the TSS Programmer’s Guide, Volume 2.

USGEOWS-Return- AN Out 30 Information returned by the US Postal Geocoder. area2 See “US Postal Geocoder Return Info Data Area” in Chapter 4 of the TSS Programmer’s Guide, Volume 2.

USGEOWS-Inarea AN In 1

USGEOWS-Final-info AN Out 117 Final return area. Format is the same as the Output Geographic Match section. See “US Postal Geocoder Input/Output Data” in Chapter 4 of the TSS Programmer’s Guide, Volume 2.

USGEOWS-Display- AN In 2 Controls how postal data is displayed. See “US base Postal Geocoder DISPLAY_BASEDATA Values” in Chapter 4 of the TSS Programmer’s Guide, Volume 2.

USGEOWS-Database- AN In 8 Database date of the US Postal directory, in date MMM YYYY format. Optional override for data taht appears in PMBUBD file.

Trillium Software System API Calls on IBM Mainframe 2-24 PM#CASS Function

Table 2.8 US Geocoder Parameters (COBOL on IBM Mainframe) (Continued)

Parameter Type Use Length Description

USGEOWS-List-name AN In 54 Not applicable.

USGEOWS-Processor- AN In 54 Name of processor to print on postal form. name

USGEOWS-Form-file- AN In n Not applicable. name

USGEOWS-Postal- Array In 3 Pointers to the file names of the US Postal filenames-pointers Of directory (PMBUL1, PMBUL2, PMBUBD). Pointers

USGEOWS-Dpv- Array In 110 Pointers to the file names and settings for DPV pointers Of processing. Pointers

USGEOWS-Lacs- Array In 21 Pointers to the file names and settings for LACS filenames-pointers Of processing. Pointers

USGEOWS-SLNK-DDS- Array In 6 Pointers to the file names and settings for POINTERS Of SuiteLink processing. Pointers

USGEOWS-Street-buff AN Out 30,000 Fields containing up to 1000 30-character street names when Display-Base = 3, A, or B.

USGEOWS-Det-buff AN Out 6,150 Field that contains up to 50 occurrences of street details for possible matches when the Display-Base value is 3, A, or B, and when the Fail Level is 0, 4, or 5. See “US Match Possibilities” in Chapter 4 of the TSS Programmer’s Guide, Volume 2

USGEOWS-ABREV- AN In n* Character field that contains the file name of the NAME Input US Postal Directory Abbreviations file.

W100-SUBPGM-NAME AN In 8 Field that contains name of CASS entry point, PM#CASS.

Trillium Software System™ Programmer’s Guide, Volume 2 Using One Hash File 2-25

n* = File names are the DDNAME of DD statement pointing to the file. Make it long enough to hold the name plus one character at the end and filled with LOW_ VALUES (NULL). Maximum length is 9. AN = Alphanumeric Using One Hash File To use one DPV Hash file, set USGEOWS-DPVHASH000-NAME to the DD name of the DD Statement in the JCL that references the DPV Hash file. Set the rest of the DPV Hash file names (USGEOWS-DPVHASH001-NAME through USGEOWS-DPVHASH099-NAME) equal to LOW-VALUES. Sample Source Program The following is a sample source program that calls pmbmtch for DPV and LACSLink. ------/* Struct to hold DPV parm values */ typedef struct _dpvparms{ char * ini_name; char * lcd_table_name; char * cmra_table_name; char * fake_table_name; char * hash_table_name[100]; char * hash_num; char * unlock_code; char * title; char * swap_lcd; char * false_positives; char * qa_test; char * vacant_table_name; char * nostat_table_name; char * pbsa_table_name; char * false_fname; /* DPV false positive file name */ char * false_name; /* Your company name */ char * false_address; /* Street address of your company */ char * false_city; /* City name of your company’s address */ char * false_state; /* State name of your company’s address */ char * false_zip9; /* Postal code of your company’s address */ } dpvparms;

/* Struct to hold Lacs parm values */

Trillium Software System API Calls on IBM Mainframe 2-26 Sample Source Program

typedef struct _lacsparms{ char * header; char * hash; char * hint; char * lfrt; char * rv9; char * hash1; char * hash2; char * hash3; char * hash4; char * hash5; char * hash6; char * prino; char * secno; char * sectyp; char * sname; char * stype; char * crid; char * last; char * street; char * unlock_code; char * neigh; char * false_fname; /* LACS false positive file name */ } lacsparms; ------

Trillium Software System™ Programmer’s Guide, Volume 2 Working Storage Code 2-27

Working Storage Code The following code shows what values are passed to each calling argument. The new or modified sections for v7.15.2 or later are highlighted in bold. ********************************************************************************** * US POSTAL MATCHER CALL FIELDS DEFINITION * FOR US POSTAL GEOCODER CALL * AREAS PASSED TO THE POSTAL GEOCODER MODULE PM#CASS ********************************************************************************** 01110000 01 USGEOWS-ACTION PIC X(01) VALUE SPACES. 01120000 01130000 01 USGEOWS-PM-CONTROL-AREA PIC X(16) VALUE SPACES. 01140000 01150000 01 USGEOWS-STREET-INFO PIC X(247) VALUE SPACES. 01160000 01170000 01 USGEOWS-RETURN-INFO VALUE SPACES. 01180000 05 USGEOWS-OUT-RET-CODE PIC X(01). 01190000 05 USGEOWS-FULL-POSTCD PIC X(09). 01200000 05 USGEOWS-STR-NAME PIC X(22). 01210000 05 USGEOWS-STR-PRE-DIR PIC X(02). 01220000 05 USGEOWS-STR-POST-DIR PIC X(02). 01230000 05 USGEOWS-STR-SUFFIX PIC X(04). 01240000 05 USGEOWS-CR-ROUTE PIC X(04). 01250000 05 USGEOWS-SCND-TYPE PIC X(04). 01260000 05 USGEOWS-REC-TYPE PIC X(02). 01270000 05 USGEOWS-FAIL-LEVEL PIC X(01). 01280000 05 USGEOWS-POST-CITY-NAME PIC X(30). 01290000 05 USGEOWS-URB-CITY-NAME PIC X(30). 01300000 05 USGEOWS-POSTCD-CHG-IND PIC X(01). 01310000 88 USGEOWS-POSTCD-CHGD VALUE 'Y'. 01320000 05 USGEOWS-CITY-CHG-IND PIC X(01). 01330000 88 USGEOWS-CITY-CHGD VALUE 'Y'. 01340000 05 USGEOWS-STRNAME-CHG-IND PIC X(01). 01350000 88 USGEOWS-STRNAME-CHGD VALUE 'Y'. 01360000 05 USGEOWS-STR-COMP-CHG-IND PIC X(01). 01370000 88 USGEOWS-STR-COMP-CHGD VALUE 'Y'. 01380000 05 USGEOWS-STR-NAME-LONG PIC X(28). 01390000

Trillium Software System API Calls on IBM Mainframe 2-28 Working Storage Code

05 USGEOWS-LACS-IND PIC X(01). 01400000 05 USGEOWS-BLDG-IND PIC X(01). 01410000 05 FILLER PIC X(06). 01420000 01430000 01 USGEOWS-RETURN-AREA2 VALUE SPACES. 01440000 05 USGEOWS-LACS-FLAG PIC X(01). 01450000 05 USGEOWS-LACS-CODE PIC X(02). 01460000 05 USGEOWS-DPV-CONFIRM PIC X(01). 01470000 05 USGEOWS-DPV-CMRA PIC X(01). 01480000 05 USGEOWS-DPV-VIOLATION PIC X(01). 01490000 05 USGEOWS-DPV-FOOTNOTE1 PIC X(02). 01500000 05 USGEOWS-DPV-FOOTNOTE2 PIC X(02). 01510000 05 USGEOWS-DPV-FOOTNOTE3 PIC X(02). 01520000 05 USGEOWS-DPV-VACANT PIC X(01). 01530000 05 USGEOWS-SUITE-FLAG PIC X(01). 01540000 05 USGEOWS-SUITE-CODE PIC X(02). 01550000 05 USGEOWS-DPV-NOSTAT PIC X(01). 01560000 05 FILLER PIC X(11). 01570000 05 USGEOWS-AUX-RET-CODE PIC X(02). 01580000 01590000 01 USGEOWS-AUX-RET-CODE-CHAR PIC X(02). 01600000 01 USGEOWS-AUX-RET-CODE-BIN 01610000 REDEFINES USGEOWS-AUX-RET-CODE-CHAR PIC S9(04) COMP. 01620000 01630000 01 USGEOWS-INAREA PIC X(01) VALUE SPACES. 01640000 01650000 01 USGEOWS-FINAL-INFO PIC X(117) VALUE SPACES. 01660000 01670000 01 USGEOWS-DISPLAY-BASE. 01680000 05 USGEOWS-DB-VALUE PIC X(01) VALUE 'N'. 01690021 05 FILLER PIC X(01) VALUE LOW-VALUES. 01700000 01710000 01 USGEOWS-DATABASE-DATE. 01720000 05 USGEOWS-DATE PIC X(8) VALUE LOW-VALUES. 01730000 05 FILLER PIC X(1) VALUE LOW-VALUES. 01740000 01750000 01 USGEOWS-LIST-NAME. 01760000

Trillium Software System™ Programmer’s Guide, Volume 2 Working Storage Code 2-29

05 USGEOWS-LNAME PIC X(09) VALUE 'CASS TEST'. 01770000 05 FILLER PIC X(1) VALUE LOW-VALUES. 01780000 01790000 01 USGEOWS-PROCESSOR-NAME. 01800000 05 USGEOWS-PNAME PIC X(12) VALUE 'SYNCSORT INC'. 01810014 05 FILLER PIC X(01) VALUE LOW-VALUES. 01830000 01840000 01 USGEOWS-FORM-FILE-NAME. 01850000 05 USGEOWS-FNAME PIC X(08) VALUE 'USFORM'. 01860000 05 FILLER PIC X(01) VALUE LOW-VALUES. 01870000 01880000 01 USGEOWS-POSTAL-DDS-POINTERS 01891000 USAGE IS POINTER. 01900000 05 USGEOWS-POSTALL1-DD-ADDR. 01910000 05 USGEOWS-POSTALL2-DD-ADDR. 01920000 05 USGEOWS-POSTALBD-DD-ADDR. 01930000 01940000 01 USGEOWS-DPV-POINTERS 01950000 USAGE IS POINTER. 01960000 05 USGEOWS-DPVINI-DD-ADDR. 01970000 05 USGEOWS-DPVLCD-DD-ADDR. 01980000 05 USGEOWS-DPVCMRA-DD-ADDR. 01990000 05 USGEOWS-DPVFAKE-DD-ADDR. 02000000 05 USGEOWS-DPVHASH000-DD-ADDR. 02010011 05 USGEOWS-DPVHASH001-DD-ADDR. 02020000 05 USGEOWS-DPVHASH002-DD-ADDR. 02030000 05 USGEOWS-DPVHASH003-DD-ADDR. 02040000 05 USGEOWS-DPVHASH004-DD-ADDR. 02050000 05 USGEOWS-DPVHASH005-DD-ADDR. 02060000 05 USGEOWS-DPVHASH006-DD-ADDR. 02070000 05 USGEOWS-DPVHASH007-DD-ADDR. 02080000 05 USGEOWS-DPVHASH008-DD-ADDR. 02090000 05 USGEOWS-DPVHASH009-DD-ADDR. 02100000 05 USGEOWS-DPVHASH010-DD-ADDR. 02110000 05 USGEOWS-DPVHASH011-DD-ADDR. 02120000 05 USGEOWS-DPVHASH012-DD-ADDR. 02130000 05 USGEOWS-DPVHASH013-DD-ADDR. 02140000

Trillium Software System API Calls on IBM Mainframe 2-30 Working Storage Code

05 USGEOWS-DPVHASH014-DD-ADDR. 02150000 05 USGEOWS-DPVHASH015-DD-ADDR. 02160000 05 USGEOWS-DPVHASH016-DD-ADDR. 02170000 05 USGEOWS-DPVHASH017-DD-ADDR. 02180000 05 USGEOWS-DPVHASH018-DD-ADDR. 02190000 05 USGEOWS-DPVHASH019-DD-ADDR. 02200000 05 USGEOWS-DPVHASH020-DD-ADDR. 02210000 05 USGEOWS-DPVHASH021-DD-ADDR. 02220000 05 USGEOWS-DPVHASH022-DD-ADDR. 02230000 05 USGEOWS-DPVHASH023-DD-ADDR. 02240000 05 USGEOWS-DPVHASH024-DD-ADDR. 02250000 05 USGEOWS-DPVHASH025-DD-ADDR. 02260000 05 USGEOWS-DPVHASH026-DD-ADDR. 02270000 05 USGEOWS-DPVHASH027-DD-ADDR. 02280000 05 USGEOWS-DPVHASH028-DD-ADDR. 02290000 05 USGEOWS-DPVHASH029-DD-ADDR. 02300000 05 USGEOWS-DPVHASH030-DD-ADDR. 02310000 05 USGEOWS-DPVHASH031-DD-ADDR. 02320000 05 USGEOWS-DPVHASH032-DD-ADDR. 02330000 05 USGEOWS-DPVHASH033-DD-ADDR. 02340000 05 USGEOWS-DPVHASH034-DD-ADDR. 02350000 05 USGEOWS-DPVHASH035-DD-ADDR. 02360000 05 USGEOWS-DPVHASH036-DD-ADDR. 02370000 05 USGEOWS-DPVHASH037-DD-ADDR. 02380000 05 USGEOWS-DPVHASH038-DD-ADDR. 02390000 05 USGEOWS-DPVHASH039-DD-ADDR. 02400000 05 USGEOWS-DPVHASH040-DD-ADDR. 02410000 05 USGEOWS-DPVHASH041-DD-ADDR. 02420000 05 USGEOWS-DPVHASH042-DD-ADDR. 02430000 05 USGEOWS-DPVHASH043-DD-ADDR. 02440000 05 USGEOWS-DPVHASH044-DD-ADDR. 02450000 05 USGEOWS-DPVHASH045-DD-ADDR. 02460000 05 USGEOWS-DPVHASH046-DD-ADDR. 02470000 05 USGEOWS-DPVHASH047-DD-ADDR. 02480000 05 USGEOWS-DPVHASH048-DD-ADDR. 02490000 05 USGEOWS-DPVHASH049-DD-ADDR. 02500000 05 USGEOWS-DPVHASH050-DD-ADDR. 02510000

Trillium Software System™ Programmer’s Guide, Volume 2 Working Storage Code 2-31

05 USGEOWS-DPVHASH051-DD-ADDR. 02520000 05 USGEOWS-DPVHASH052-DD-ADDR. 02530000 05 USGEOWS-DPVHASH053-DD-ADDR. 02540000 05 USGEOWS-DPVHASH054-DD-ADDR. 02550000 05 USGEOWS-DPVHASH055-DD-ADDR. 02560000 05 USGEOWS-DPVHASH056-DD-ADDR. 02570000 05 USGEOWS-DPVHASH057-DD-ADDR. 02580000 05 USGEOWS-DPVHASH058-DD-ADDR. 02590000 05 USGEOWS-DPVHASH059-DD-ADDR. 02600000 05 USGEOWS-DPVHASH060-DD-ADDR. 02610000 05 USGEOWS-DPVHASH061-DD-ADDR. 02620000 05 USGEOWS-DPVHASH062-DD-ADDR. 02630000 05 USGEOWS-DPVHASH063-DD-ADDR. 02640000 05 USGEOWS-DPVHASH064-DD-ADDR. 02650000 05 USGEOWS-DPVHASH065-DD-ADDR. 02660000 05 USGEOWS-DPVHASH066-DD-ADDR. 02670000 05 USGEOWS-DPVHASH067-DD-ADDR. 02680000 05 USGEOWS-DPVHASH068-DD-ADDR. 02690000 05 USGEOWS-DPVHASH069-DD-ADDR. 02700000 05 USGEOWS-DPVHASH070-DD-ADDR. 02710000 05 USGEOWS-DPVHASH071-DD-ADDR. 02720000 05 USGEOWS-DPVHASH072-DD-ADDR. 02730000 05 USGEOWS-DPVHASH073-DD-ADDR. 02740000 05 USGEOWS-DPVHASH074-DD-ADDR. 02750000 05 USGEOWS-DPVHASH075-DD-ADDR. 02760000 05 USGEOWS-DPVHASH076-DD-ADDR. 02770000 05 USGEOWS-DPVHASH077-DD-ADDR. 02780000 05 USGEOWS-DPVHASH078-DD-ADDR. 02790000 05 USGEOWS-DPVHASH079-DD-ADDR. 02800000 05 USGEOWS-DPVHASH080-DD-ADDR. 02810000 05 USGEOWS-DPVHASH081-DD-ADDR. 02820000 05 USGEOWS-DPVHASH082-DD-ADDR. 02830000 05 USGEOWS-DPVHASH083-DD-ADDR. 02840000 05 USGEOWS-DPVHASH084-DD-ADDR. 02850000 05 USGEOWS-DPVHASH085-DD-ADDR. 02860000 05 USGEOWS-DPVHASH086-DD-ADDR. 02870000 05 USGEOWS-DPVHASH087-DD-ADDR. 02880000

Trillium Software System API Calls on IBM Mainframe 2-32 Working Storage Code

05 USGEOWS-DPVHASH088-DD-ADDR. 02890000 05 USGEOWS-DPVHASH089-DD-ADDR. 02900000 05 USGEOWS-DPVHASH090-DD-ADDR. 02910000 05 USGEOWS-DPVHASH091-DD-ADDR. 02920000 05 USGEOWS-DPVHASH092-DD-ADDR. 02930000 05 USGEOWS-DPVHASH093-DD-ADDR. 02940000 05 USGEOWS-DPVHASH094-DD-ADDR. 02950000 05 USGEOWS-DPVHASH095-DD-ADDR. 02960000 05 USGEOWS-DPVHASH096-DD-ADDR. 02970000 05 USGEOWS-DPVHASH097-DD-ADDR. 02980000 05 USGEOWS-DPVHASH098-DD-ADDR. 02990000 05 USGEOWS-DPVHASH099-DD-ADDR. 03000000 05 USGEOWS-DPVHASHNUM-ADDR. 03010000 05 USGEOWS-DPVUNLOCK-ADDR. 03020000 05 USGEOWS-DPVTITLE-ADDR. 03030000 05 USGEOWS-DPVSWAPLCD-ADDR. 03040000 05 USGEOWS-DPVFALSPOS-ADDR. 03040000 05 USGEOWS-DPVQATEST-ADDR. 03060000 05 USGEOWS-DPVVCNTBL-ADDR. 03070000 05 USGEOWS-DPVNSTAT-ADDR. 03080000 05 USGEOWS-DPVHSP-ADDR. 03082014 05 USDPV-FAKE-FILE-NAME-ADDR. 03082020 05 USDPV-FAKE-NAME-ADDR. 03082021 05 USDPV-FAKE-ADDR-ADDR. 03082022 05 USDPV-FAKE-CITY-ADDR. 03082023 05 USDPV-FAKE-STATE-ADDR. 03082024 05 USDPV-FAKE-ZIP-ADDR. 03082025 03090000 01 USGEOWS-LACS-DDS-POINTERS 03100000 USAGE IS POINTER. 03110000 05 USGEOWS-LACSHEADER-DD-ADDR. 03120000 05 USGEOWS-LACSHASH-DD-ADDR. 03130000 05 USGEOWS-LACSHINT-DD-ADDR. 03140000 05 USGEOWS-LACSLFRT-DD-ADDR. 03150000 05 USGEOWS-LACSRV9-DD-ADDR. 03160000 05 USGEOWS-LACSHASH1-DD-ADDR. 03170000 05 USGEOWS-LACSHASH2-DD-ADDR. 03180000

Trillium Software System™ Programmer’s Guide, Volume 2 Working Storage Code 2-33

05 USGEOWS-LACSHASH3-DD-ADDR. 03190000 05 USGEOWS-LACSHASH4-DD-ADDR. 03200000 05 USGEOWS-LACSHASH5-DD-ADDR. 03210000 05 USGEOWS-LACSHASH6-DD-ADDR. 03220000 05 USGEOWS-LACSPRINO-DD-ADDR. 03230000 05 USGEOWS-LACSSECNO-DD-ADDR. 03240000 05 USGEOWS-LACSSECTYP-DD-ADDR. 03250000 05 USGEOWS-LACSSNAME-DD-ADDR. 03260000 05 USGEOWS-LACSSTYPE-DD-ADDR. 03270000 05 USGEOWS-LACSCRID-DD-ADDR. 03280000 05 USGEOWS-LACSLAST-DD-ADDR. 03290000 05 USGEOWS-LACSSTREET-DD-ADDR. 03300000 05 USGEOWS-LACSUNLOCK-CODE-ADDR. 03310000 05 USGEOWS-LACSNEIGH-DD-ADDR. 03320000 05 USLACS-FAKE-FILE-NAME-ADDR. 03320100 03330000 01 USGEOWS-SLNK-DDS-POINTERS 03340000 USAGE IS POINTER. 03350000 05 USGEOWS-SLNKHEADER-DD-ADDR. 03360000 05 USGEOWS-SLNKLCD-DD-ADDR. 03370000 05 USGEOWS-SLNKLKUP-DD-ADDR. 03380000 05 USGEOWS-SLNKNINE-DD-ADDR. 03390000 05 USGEOWS-SLNKNOISE-DD-ADDR. 03400000 05 USGEOWS-SLNKNORMAL-DD-ADDR. 03410000 03420000 01 USGEOWS-STREETS-AREA VALUE SPACES. 03430000 05 USGEOWS-STREET-NAME PIC X(30) 03440000 OCCURS 1000 TIMES 03450000 INDEXED BY USGEOWS-STREET-IDX. 03460000 03470000 01 USGEOWS-DETAILS-AREA VALUE SPACES. 03480000 05 USGEOWS-DETAIL-AREA OCCURS 50 TIMES 03490000 INDEXED BY USGEOWS-DETAIL-IDX. 03500000 10 USGEOWS-DET-POSTAL-CODE PIC X(05). 03510000 10 USGEOWS-DET-ADDR-PRIM-LOW PIC X(10). 03520000 10 USGEOWS-DET-ADDR-PRIM-HI PIC X(10). 03530000 10 USGEOWS-DET-ADDR-PRIM-OE PIC X(01). 03540000

Trillium Software System API Calls on IBM Mainframe 2-34 Working Storage Code

10 USGEOWS-DET-STR-PRE-DIR PIC X(02). 03550000 10 USGEOWS-DET-STR-NAME PIC X(28). 03560000 10 USGEOWS-DET-STR-SUFFIX PIC X(04). 03570000 10 USGEOWS-DET-STR-POST-DIR PIC X(02). 03580000 10 USGEOWS-DET-BLDG-NAME PIC X(40). 03590000 10 USGEOWS-DET-ADDR-SEC-TYP PIC X(04). 03600000 10 USGEOWS-DET-ADDR-SEC-LOW PIC X(08). 03610000 10 USGEOWS-DET-ADDR-SEC-HI PIC X(08). 03620000 10 USGEOWS-DET-ADDR-SEC-OE PIC X(01). 03630000 03640000 01 USGEOWS-POSTALL1-DD. 03650000 05 USGEOWS-POSTALL1-NAME PIC X(08) VALUE 'USPMBUL1'. 03660000 05 FILLER PIC X(01) VALUE LOW-VALUES. 03670000 03680000 01 USGEOWS-POSTALL2-DD. 03690000 05 USGEOWS-POSTALL2-NAME PIC X(08) VALUE 'USPMBUL2'. 03700000 05 FILLER PIC X(01) VALUE LOW-VALUES. 03710000 03720000 01 USGEOWS-POSTALBD-DD. 03730000 05 USGEOWS-POSTALBD-NAME PIC X(08) VALUE 'USPMBUBD'. 03740000 05 FILLER PIC X(01) VALUE LOW-VALUES. 03750000 03760000 01 USGEOWS-LACSHEADER-DD. 03770000 05 USGEOWS-LACSHEADER-NAME PIC X(08) VALUE 'LACSINI'. 03780000 05 FILLER PIC X(01) VALUE LOW-VALUES. 03790000 03800000 01 USGEOWS-LACSHASH-DD. 03810000 05 USGEOWS-LACSHASH-NAME PIC X(08) VALUE 'LACSHASH'. 03820000 05 FILLER PIC X(01) VALUE LOW-VALUES. 03830000 03840000 01 USGEOWS-LACSHINT-DD. 03850000 05 USGEOWS-LACSHINT-NAME PIC X(08) VALUE 'LACSHINT'. 03860000 05 FILLER PIC X(01) VALUE LOW-VALUES. 03870000 03880000 01 USGEOWS-LACSLFRT-DD. 03890000 05 USGEOWS-LACSLFRT-NAME PIC X(08) VALUE 'LACSLR'. 03900000 05 FILLER PIC X(01) VALUE LOW-VALUES. 03910000

Trillium Software System™ Programmer’s Guide, Volume 2 Working Storage Code 2-35

03920000 01 USGEOWS-LACSRV9-DD. 03930000 05 USGEOWS-LACSRV9-NAME PIC X(08) VALUE 'LACSRV9'. 03940000 05 FILLER PIC X(01) VALUE LOW-VALUES. 03950000 03960000 01 USGEOWS-LACSHASH1-DD. 03970000 05 USGEOWS-LACSHASH1-NAME PIC X(08) VALUE 'LACSHSH1'. 03980000 05 FILLER PIC X(01) VALUE LOW-VALUES. 03990000 04000000 01 USGEOWS-LACSHASH2-DD. 04010000 05 USGEOWS-LACSHASH2-NAME PIC X(08) VALUE 'LACSHSH2'. 04020000 05 FILLER PIC X(01) VALUE LOW-VALUES. 04030000 04040000 01 USGEOWS-LACSHASH3-DD. 04050000 05 USGEOWS-LACSHASH3-NAME PIC X(08) VALUE 'LACSHSH3'. 04060000 05 FILLER PIC X(01) VALUE LOW-VALUES. 04070000 04080000 01 USGEOWS-LACSHASH4-DD. 04090000 05 USGEOWS-LACSHASH4-NAME PIC X(08) VALUE 'LACSHSH4'. 04100000 05 FILLER PIC X(01) VALUE LOW-VALUES. 04110000 04120000 01 USGEOWS-LACSHASH5-DD. 04130000 05 USGEOWS-LACSHASH5-NAME PIC X(08) VALUE 'LACSHSH5'. 04140000 05 FILLER PIC X(01) VALUE LOW-VALUES. 04150000 04160000 01 USGEOWS-LACSHASH6-DD. 04170000 05 USGEOWS-LACSHASH6-NAME PIC X(08) VALUE 'LACSHSH6'. 04180000 05 FILLER PIC X(01) VALUE LOW-VALUES. 04190000 04200000 01 USGEOWS-LACSPRINO-DD. 04210000 05 USGEOWS-LACSPRINO-NAME PIC X(08) VALUE 'LACSPRIM'. 04220000 05 FILLER PIC X(01) VALUE LOW-VALUES. 04230000 04240000 01 USGEOWS-LACSSECNO-DD. 04250000 05 USGEOWS-LACSSECNO-NAME PIC X(08) VALUE 'LACSSEC'. 04260000 05 FILLER PIC X(01) VALUE LOW-VALUES. 04270000 04280000

Trillium Software System API Calls on IBM Mainframe 2-36 Working Storage Code

01 USGEOWS-LACSSECTYP-DD. 04290000 05 USGEOWS-LACSSECTYP-NAME PIC X(08) VALUE 'LACSSECT'. 04300000 05 FILLER PIC X(01) VALUE LOW-VALUES. 04310000 04320000 01 USGEOWS-LACSSNAME-DD. 04330000 05 USGEOWS-LACSSNAME-NAME PIC X(08) VALUE 'LACSSTR'. 04340000 05 FILLER PIC X(01) VALUE LOW-VALUES. 04350000 04360000 01 USGEOWS-LACSSTYPE-DD. 04370000 05 USGEOWS-LACSSTYPE-NAME PIC X(08) VALUE 'LACSSTRT'. 04380000 05 FILLER PIC X(01) VALUE LOW-VALUES. 04390000 04400000 01 USGEOWS-LACSCRID-DD. 04410000 05 USGEOWS-LACSCRID-NAME PIC X(08) VALUE 'LACSCARR'. 04420000 05 FILLER PIC X(01) VALUE LOW-VALUES. 04430000 04440000 01 USGEOWS-LACSLAST-DD. 04450000 05 USGEOWS-LACSLAST-NAME PIC X(08) VALUE 'LACSLL'. 04460000 05 FILLER PIC X(01) VALUE LOW-VALUES. 04470000 04480000 01 USGEOWS-LACSSTREET-DD. 04490000 05 USGEOWS-LACSSTREET-NAME PIC X(08) VALUE 'LACSSTRV'. 04500000 05 FILLER PIC X(01) VALUE LOW-VALUES. 04510000 04520000 01 USGEOWS-LACSUNLOCKCODE. 04530000 05 USGEOWS-LACSUNLOCK-CODE PIC X(10) VALUE LOW-VALUES. 04540000 05 FILLER PIC X(01) VALUE LOW-VALUES. 04550000 04560000 01 USGEOWS-LACSNEIGH-DD. 04570000 05 USGEOWS-LACSNEIGH-NAME PIC X(08) VALUE 'LACSURBX'. 04580000 05 FILLER PIC X(01) VALUE LOW-VALUES. 04590000 04600000 01 USGEOWS-DPVINI-DD. 04610000 05 USGEOWS-DPVINI-NAME PIC X(08) VALUE 'DPVINI'. 04620000 05 FILLER PIC X(01) VALUE LOW-VALUES. 04630000 04640000 01 USGEOWS-DPVLCD-DD. 04650000

Trillium Software System™ Programmer’s Guide, Volume 2 Working Storage Code 2-37

05 USGEOWS-DPVLCD-NAME PIC X(08) VALUE 'TABLCD'. 04660000 05 FILLER PIC X(01) VALUE LOW-VALUES. 04670000 04680000 01 USGEOWS-DPVCMRA-DD. 04690000 05 USGEOWS-DPVCMRA-NAME PIC X(08) VALUE 'TABCMRA'. 04700000 05 FILLER PIC X(01) VALUE LOW-VALUES. 04710000 04720000 01 USGEOWS-DPVFAKE-DD. 04730000 05 USGEOWS-DPVFAKE-NAME PIC X(08) VALUE 'TABFAKE'. 04740000 05 FILLER PIC X(01) VALUE LOW-VALUES. 04750000 04760000 01 USGEOWS-DPVHASH000-DD. 04770011 05 USGEOWS-DPVHASH000-NAME PIC X(08) VALUE 'TABHSA'. 04780011 05 FILLER PIC X(01) VALUE LOW-VALUES. 04790011 04800011 01 USGEOWS-DPVHASH001-DD. 04810000 05 USGEOWS-DPVHASH001-NAME PIC X(08) VALUE LOW-VALUES. 04820000 05 FILLER PIC X(01) VALUE LOW-VALUES. 04830000 04840000 01 USGEOWS-DPVHASH002-DD. 04850000 05 USGEOWS-DPVHASH002-NAME PIC X(08) VALUE LOW-VALUES. 04860000 05 FILLER PIC X(01) VALUE LOW-VALUES. 04870000 04880000 01 USGEOWS-DPVHASH003-DD. 04890000 05 USGEOWS-DPVHASH003-NAME PIC X(08) VALUE LOW-VALUES. 04900000 05 FILLER PIC X(01) VALUE LOW-VALUES. 04910000 04920000 01 USGEOWS-DPVHASH004-DD. 04930000 05 USGEOWS-DPVHASH004-NAME PIC X(08) VALUE LOW-VALUES. 04940000 05 FILLER PIC X(01) VALUE LOW-VALUES. 04950000 04960000 01 USGEOWS-DPVHASH005-DD. 04970000 05 USGEOWS-DPVHASH005-NAME PIC X(08) VALUE LOW-VALUES. 04980000 05 FILLER PIC X(01) VALUE LOW-VALUES. 04990000 05000000 01 USGEOWS-DPVHASH006-DD. 05010000 05 USGEOWS-DPVHASH006-NAME PIC X(08) VALUE LOW-VALUES. 05020000

Trillium Software System API Calls on IBM Mainframe 2-38 Working Storage Code

05 FILLER PIC X(01) VALUE LOW-VALUES. 05030000 05040000 01 USGEOWS-DPVHASH007-DD. 05050000 05 USGEOWS-DPVHASH007-NAME PIC X(08) VALUE LOW-VALUES. 05060000 05 FILLER PIC X(01) VALUE LOW-VALUES. 05070000 05080000 01 USGEOWS-DPVHASH008-DD. 05090000 05 USGEOWS-DPVHASH008-NAME PIC X(08) VALUE LOW-VALUES. 05100000 05 FILLER PIC X(01) VALUE LOW-VALUES. 05110000 05120000 01 USGEOWS-DPVHASH009-DD. 05130000 05 USGEOWS-DPVHASH009-NAME PIC X(08) VALUE LOW-VALUES. 05140000 05 FILLER PIC X(01) VALUE LOW-VALUES. 05150000 05160000 01 USGEOWS-DPVHASH010-DD. 05170000 05 USGEOWS-DPVHASH010-NAME PIC X(08) VALUE LOW-VALUES. 05180000 05 FILLER PIC X(01) VALUE LOW-VALUES. 05190000 05200000 01 USGEOWS-DPVHASH011-DD. 05210000 05 USGEOWS-DPVHASH011-NAME PIC X(08) VALUE LOW-VALUES. 05220000 05 FILLER PIC X(01) VALUE LOW-VALUES. 05230000 05240000 01 USGEOWS-DPVHASH012-DD. 05250000 05 USGEOWS-DPVHASH012-NAME PIC X(08) VALUE LOW-VALUES. 05260000 05 FILLER PIC X(01) VALUE LOW-VALUES. 05270000 05280000 01 USGEOWS-DPVHASH013-DD. 05290000 05 USGEOWS-DPVHASH013-NAME PIC X(08) VALUE LOW-VALUES. 05300000 05 FILLER PIC X(01) VALUE LOW-VALUES. 05310000 05320000 01 USGEOWS-DPVHASH014-DD. 05330000 05 USGEOWS-DPVHASH014-NAME PIC X(08) VALUE LOW-VALUES. 05340000 05 FILLER PIC X(01) VALUE LOW-VALUES. 05350000 05360000 01 USGEOWS-DPVHASH015-DD. 05370000 05 USGEOWS-DPVHASH015-NAME PIC X(08) VALUE LOW-VALUES. 05380000 05 FILLER PIC X(01) VALUE LOW-VALUES. 05390000

Trillium Software System™ Programmer’s Guide, Volume 2 Working Storage Code 2-39

05400000 01 USGEOWS-DPVHASH016-DD. 05410000 05 USGEOWS-DPVHASH016-NAME PIC X(08) VALUE LOW-VALUES. 05420000 05 FILLER PIC X(01) VALUE LOW-VALUES. 05430000 05440000 01 USGEOWS-DPVHASH017-DD. 05450000 05 USGEOWS-DPVHASH017-NAME PIC X(08) VALUE LOW-VALUES. 05460000 05 FILLER PIC X(01) VALUE LOW-VALUES. 05470000 05480000 01 USGEOWS-DPVHASH018-DD. 05490000 05 USGEOWS-DPVHASH018-NAME PIC X(08) VALUE LOW-VALUES. 05500000 05 FILLER PIC X(01) VALUE LOW-VALUES. 05510000 05520000 01 USGEOWS-DPVHASH019-DD. 05530000 05 USGEOWS-DPVHASH019-NAME PIC X(08) VALUE LOW-VALUES. 05540000 05 FILLER PIC X(01) VALUE LOW-VALUES. 05550000 05560000 01 USGEOWS-DPVHASH020-DD. 05570000 05 USGEOWS-DPVHASH020-NAME PIC X(08) VALUE LOW-VALUES. 05580000 05 FILLER PIC X(01) VALUE LOW-VALUES. 05590000 05600000 01 USGEOWS-DPVHASH021-DD. 05610000 05 USGEOWS-DPVHASH021-NAME PIC X(08) VALUE LOW-VALUES. 05620000 05 FILLER PIC X(01) VALUE LOW-VALUES. 05630000 05640000 01 USGEOWS-DPVHASH022-DD. 05650000 05 USGEOWS-DPVHASH022-NAME PIC X(08) VALUE LOW-VALUES. 05660000 05 FILLER PIC X(01) VALUE LOW-VALUES. 05670000 05680000 01 USGEOWS-DPVHASH023-DD. 05690000 05 USGEOWS-DPVHASH023-NAME PIC X(08) VALUE LOW-VALUES. 05700000 05 FILLER PIC X(01) VALUE LOW-VALUES. 05710000 05720000 01 USGEOWS-DPVHASH024-DD. 05730000 05 USGEOWS-DPVHASH024-NAME PIC X(08) VALUE LOW-VALUES. 05740000 05 FILLER PIC X(01) VALUE LOW-VALUES. 05750000 05760000

Trillium Software System API Calls on IBM Mainframe 2-40 Working Storage Code

01 USGEOWS-DPVHASH025-DD. 05770000 05 USGEOWS-DPVHASH025-NAME PIC X(08) VALUE LOW-VALUES. 05780000 05 FILLER PIC X(01) VALUE LOW-VALUES. 05790000 05800000 01 USGEOWS-DPVHASH026-DD. 05810000 05 USGEOWS-DPVHASH026-NAME PIC X(08) VALUE LOW-VALUES. 05820000 05 FILLER PIC X(01) VALUE LOW-VALUES. 05830000 05840000 01 USGEOWS-DPVHASH027-DD. 05850000 05 USGEOWS-DPVHASH027-NAME PIC X(08) VALUE LOW-VALUES. 05860000 05 FILLER PIC X(01) VALUE LOW-VALUES. 05870000 05880000 01 USGEOWS-DPVHASH028-DD. 05890000 05 USGEOWS-DPVHASH028-NAME PIC X(08) VALUE LOW-VALUES. 05900000 05 FILLER PIC X(01) VALUE LOW-VALUES. 05910000 05920000 01 USGEOWS-DPVHASH029-DD. 05930000 05 USGEOWS-DPVHASH029-NAME PIC X(08) VALUE LOW-VALUES. 05940000 05 FILLER PIC X(01) VALUE LOW-VALUES. 05950000 05960000 01 USGEOWS-DPVHASH030-DD. 05970000 05 USGEOWS-DPVHASH030-NAME PIC X(08) VALUE LOW-VALUES. 05980000 05 FILLER PIC X(01) VALUE LOW-VALUES. 05990000 06000000 01 USGEOWS-DPVHASH031-DD. 06010000 05 USGEOWS-DPVHASH031-NAME PIC X(08) VALUE LOW-VALUES. 06020000 05 FILLER PIC X(01) VALUE LOW-VALUES. 06030000 06040000 01 USGEOWS-DPVHASH032-DD. 06050000 05 USGEOWS-DPVHASH032-NAME PIC X(08) VALUE LOW-VALUES. 06060000 05 FILLER PIC X(01) VALUE LOW-VALUES. 06070000 06080000 01 USGEOWS-DPVHASH033-DD. 06090000 05 USGEOWS-DPVHASH033-NAME PIC X(08) VALUE LOW-VALUES. 06100000 05 FILLER PIC X(01) VALUE LOW-VALUES. 06110000 06120000 01 USGEOWS-DPVHASH034-DD. 06130000

Trillium Software System™ Programmer’s Guide, Volume 2 Working Storage Code 2-41

05 USGEOWS-DPVHASH034-NAME PIC X(08) VALUE LOW-VALUES. 06140000 05 FILLER PIC X(01) VALUE LOW-VALUES. 06150000 06160000 01 USGEOWS-DPVHASH035-DD. 06170000 05 USGEOWS-DPVHASH035-NAME PIC X(08) VALUE LOW-VALUES. 06180000 05 FILLER PIC X(01) VALUE LOW-VALUES. 06190000 06200000 01 USGEOWS-DPVHASH036-DD. 06210000 05 USGEOWS-DPVHASH036-NAME PIC X(08) VALUE LOW-VALUES. 06220000 05 FILLER PIC X(01) VALUE LOW-VALUES. 06230000 06240000 01 USGEOWS-DPVHASH037-DD. 06250000 05 USGEOWS-DPVHASH037-NAME PIC X(08) VALUE LOW-VALUES. 06260000 05 FILLER PIC X(01) VALUE LOW-VALUES. 06270000 06280000 01 USGEOWS-DPVHASH038-DD. 06290000 05 USGEOWS-DPVHASH038-NAME PIC X(08) VALUE LOW-VALUES. 06300000 05 FILLER PIC X(01) VALUE LOW-VALUES. 06310000 06320000 01 USGEOWS-DPVHASH039-DD. 06330000 05 USGEOWS-DPVHASH039-NAME PIC X(08) VALUE LOW-VALUES. 06340000 05 FILLER PIC X(01) VALUE LOW-VALUES. 06350000 06360000 01 USGEOWS-DPVHASH040-DD. 06370000 05 USGEOWS-DPVHASH040-NAME PIC X(08) VALUE LOW-VALUES. 06380000 05 FILLER PIC X(01) VALUE LOW-VALUES. 06390000 06400000 01 USGEOWS-DPVHASH041-DD. 06410000 05 USGEOWS-DPVHASH041-NAME PIC X(08) VALUE LOW-VALUES. 06420000 05 FILLER PIC X(01) VALUE LOW-VALUES. 06430000 06440000 01 USGEOWS-DPVHASH042-DD. 06450000 05 USGEOWS-DPVHASH042-NAME PIC X(08) VALUE LOW-VALUES. 06460000 05 FILLER PIC X(01) VALUE LOW-VALUES. 06470000 06480000 01 USGEOWS-DPVHASH043-DD. 06490000 05 USGEOWS-DPVHASH043-NAME PIC X(08) VALUE LOW-VALUES. 06500000

Trillium Software System API Calls on IBM Mainframe 2-42 Working Storage Code

05 FILLER PIC X(01) VALUE LOW-VALUES. 06510000 06520000 01 USGEOWS-DPVHASH044-DD. 06530000 05 USGEOWS-DPVHASH044-NAME PIC X(08) VALUE LOW-VALUES. 06540000 05 FILLER PIC X(01) VALUE LOW-VALUES. 06550000 06560000 01 USGEOWS-DPVHASH045-DD. 06570000 05 USGEOWS-DPVHASH045-NAME PIC X(08) VALUE LOW-VALUES. 06580000 05 FILLER PIC X(01) VALUE LOW-VALUES. 06590000 06600000 01 USGEOWS-DPVHASH046-DD. 06610000 05 USGEOWS-DPVHASH046-NAME PIC X(08) VALUE LOW-VALUES. 06620000 05 FILLER PIC X(01) VALUE LOW-VALUES. 06630000 06640000 01 USGEOWS-DPVHASH047-DD. 06650000 05 USGEOWS-DPVHASH047-NAME PIC X(08) VALUE LOW-VALUES. 06660000 05 FILLER PIC X(01) VALUE LOW-VALUES. 06670000 06680000 01 USGEOWS-DPVHASH048-DD. 06690000 05 USGEOWS-DPVHASH048-NAME PIC X(08) VALUE LOW-VALUES. 06700000 05 FILLER PIC X(01) VALUE LOW-VALUES. 06710000 06720000 01 USGEOWS-DPVHASH049-DD. 06730000 05 USGEOWS-DPVHASH049-NAME PIC X(08) VALUE LOW-VALUES. 06740000 05 FILLER PIC X(01) VALUE LOW-VALUES. 06750000 06760000 01 USGEOWS-DPVHASH050-DD. 06770000 05 USGEOWS-DPVHASH050-NAME PIC X(08) VALUE LOW-VALUES. 06780000 05 FILLER PIC X(01) VALUE LOW-VALUES. 06790000 06800000 01 USGEOWS-DPVHASH051-DD. 06810000 05 USGEOWS-DPVHASH051-NAME PIC X(08) VALUE LOW-VALUES. 06820000 05 FILLER PIC X(01) VALUE LOW-VALUES. 06830000 06840000 01 USGEOWS-DPVHASH052-DD. 06850000 05 USGEOWS-DPVHASH052-NAME PIC X(08) VALUE LOW-VALUES. 06860000 05 FILLER PIC X(01) VALUE LOW-VALUES. 06870000

Trillium Software System™ Programmer’s Guide, Volume 2 Working Storage Code 2-43

06880000 01 USGEOWS-DPVHASH053-DD. 06890000 05 USGEOWS-DPVHASH053-NAME PIC X(08) VALUE LOW-VALUES. 06900000 05 FILLER PIC X(01) VALUE LOW-VALUES. 06910000 06920000 01 USGEOWS-DPVHASH054-DD. 06930000 05 USGEOWS-DPVHASH054-NAME PIC X(08) VALUE LOW-VALUES. 06940000 05 FILLER PIC X(01) VALUE LOW-VALUES. 06950000 06960000 01 USGEOWS-DPVHASH055-DD. 06970000 05 USGEOWS-DPVHASH055-NAME PIC X(08) VALUE LOW-VALUES. 06980000 05 FILLER PIC X(01) VALUE LOW-VALUES. 06990000 07000000 01 USGEOWS-DPVHASH056-DD. 07010000 05 USGEOWS-DPVHASH056-NAME PIC X(08) VALUE LOW-VALUES. 07020000 05 FILLER PIC X(01) VALUE LOW-VALUES. 07030000 07040000 01 USGEOWS-DPVHASH057-DD. 07050000 05 USGEOWS-DPVHASH057-NAME PIC X(08) VALUE LOW-VALUES. 07060000 05 FILLER PIC X(01) VALUE LOW-VALUES. 07070000 07080000 01 USGEOWS-DPVHASH058-DD. 07090000 05 USGEOWS-DPVHASH058-NAME PIC X(08) VALUE LOW-VALUES. 07100000 05 FILLER PIC X(01) VALUE LOW-VALUES. 07110000 07120000 01 USGEOWS-DPVHASH059-DD. 07130000 05 USGEOWS-DPVHASH059-NAME PIC X(08) VALUE LOW-VALUES. 07140000 05 FILLER PIC X(01) VALUE LOW-VALUES. 07150000 07160000 01 USGEOWS-DPVHASH060-DD. 07170000 05 USGEOWS-DPVHASH060-NAME PIC X(08) VALUE LOW-VALUES. 07180000 05 FILLER PIC X(01) VALUE LOW-VALUES. 07190000 07200000 01 USGEOWS-DPVHASH061-DD. 07210000 05 USGEOWS-DPVHASH061-NAME PIC X(08) VALUE LOW-VALUES. 07220000 05 FILLER PIC X(01) VALUE LOW-VALUES. 07230000 07240000

Trillium Software System API Calls on IBM Mainframe 2-44 Working Storage Code

01 USGEOWS-DPVHASH062-DD. 07250000 05 USGEOWS-DPVHASH062-NAME PIC X(08) VALUE LOW-VALUES. 07260000 05 FILLER PIC X(01) VALUE LOW-VALUES. 07270000 07280000 01 USGEOWS-DPVHASH063-DD. 07290000 05 USGEOWS-DPVHASH063-NAME PIC X(08) VALUE LOW-VALUES. 07300000 05 FILLER PIC X(01) VALUE LOW-VALUES. 07310000 07320000 01 USGEOWS-DPVHASH064-DD. 07330000 05 USGEOWS-DPVHASH064-NAME PIC X(08) VALUE LOW-VALUES. 07340000 05 FILLER PIC X(01) VALUE LOW-VALUES. 07350000 07360000 01 USGEOWS-DPVHASH065-DD. 07370000 05 USGEOWS-DPVHASH065-NAME PIC X(08) VALUE LOW-VALUES. 07380000 05 FILLER PIC X(01) VALUE LOW-VALUES. 07390000 07400000 01 USGEOWS-DPVHASH066-DD. 07410000 05 USGEOWS-DPVHASH066-NAME PIC X(08) VALUE LOW-VALUES. 07420000 05 FILLER PIC X(01) VALUE LOW-VALUES. 07430000 07440000 01 USGEOWS-DPVHASH067-DD. 07450000 05 USGEOWS-DPVHASH067-NAME PIC X(08) VALUE LOW-VALUES. 07460000 05 FILLER PIC X(01) VALUE LOW-VALUES. 07470000 07480000 01 USGEOWS-DPVHASH068-DD. 07490000 05 USGEOWS-DPVHASH068-NAME PIC X(08) VALUE LOW-VALUES. 07500000 05 FILLER PIC X(01) VALUE LOW-VALUES. 07510000 07520000 01 USGEOWS-DPVHASH069-DD. 07530000 05 USGEOWS-DPVHASH069-NAME PIC X(08) VALUE LOW-VALUES. 07540000 05 FILLER PIC X(01) VALUE LOW-VALUES. 07550000 07560000 01 USGEOWS-DPVHASH070-DD. 07570000 05 USGEOWS-DPVHASH070-NAME PIC X(08) VALUE LOW-VALUES. 07580000 05 FILLER PIC X(01) VALUE LOW-VALUES. 07590000 07600000 01 USGEOWS-DPVHASH071-DD. 07610000

Trillium Software System™ Programmer’s Guide, Volume 2 Working Storage Code 2-45

05 USGEOWS-DPVHASH071-NAME PIC X(08) VALUE LOW-VALUES. 07620000 05 FILLER PIC X(01) VALUE LOW-VALUES. 07630000 07640000 01 USGEOWS-DPVHASH072-DD. 07650000 05 USGEOWS-DPVHASH072-NAME PIC X(08) VALUE LOW-VALUES. 07660000 05 FILLER PIC X(01) VALUE LOW-VALUES. 07670000 07680000 01 USGEOWS-DPVHASH073-DD. 07690000 05 USGEOWS-DPVHASH073-NAME PIC X(08) VALUE LOW-VALUES. 07700000 05 FILLER PIC X(01) VALUE LOW-VALUES. 07710000 07720000 01 USGEOWS-DPVHASH074-DD. 07730000 05 USGEOWS-DPVHASH074-NAME PIC X(08) VALUE LOW-VALUES. 07740000 05 FILLER PIC X(01) VALUE LOW-VALUES. 07750000 07760000 01 USGEOWS-DPVHASH075-DD. 07770000 05 USGEOWS-DPVHASH075-NAME PIC X(08) VALUE LOW-VALUES. 07780000 05 FILLER PIC X(01) VALUE LOW-VALUES. 07790000 07800000 01 USGEOWS-DPVHASH076-DD. 07810000 05 USGEOWS-DPVHASH076-NAME PIC X(08) VALUE LOW-VALUES. 07820000 05 FILLER PIC X(01) VALUE LOW-VALUES. 07830000 07840000 01 USGEOWS-DPVHASH077-DD. 07850000 05 USGEOWS-DPVHASH077-NAME PIC X(08) VALUE LOW-VALUES. 07860000 05 FILLER PIC X(01) VALUE LOW-VALUES. 07870000 07880000 01 USGEOWS-DPVHASH078-DD. 07890000 05 USGEOWS-DPVHASH078-NAME PIC X(08) VALUE LOW-VALUES. 07900000 05 FILLER PIC X(01) VALUE LOW-VALUES. 07910000 07920000 01 USGEOWS-DPVHASH079-DD. 07930000 05 USGEOWS-DPVHASH079-NAME PIC X(08) VALUE LOW-VALUES. 07940000 05 FILLER PIC X(01) VALUE LOW-VALUES. 07950000 07960000 01 USGEOWS-DPVHASH080-DD. 07970000 05 USGEOWS-DPVHASH060-NAME PIC X(08) VALUE LOW-VALUES. 07980000

Trillium Software System API Calls on IBM Mainframe 2-46 Working Storage Code

05 FILLER PIC X(01) VALUE LOW-VALUES. 07990000 08000000 01 USGEOWS-DPVHASH081-DD. 08010000 05 USGEOWS-DPVHASH061-NAME PIC X(08) VALUE LOW-VALUES. 08020000 05 FILLER PIC X(01) VALUE LOW-VALUES. 08030000 08040000 01 USGEOWS-DPVHASH082-DD. 08050000 05 USGEOWS-DPVHASH082-NAME PIC X(08) VALUE LOW-VALUES. 08060000 05 FILLER PIC X(01) VALUE LOW-VALUES. 08070000 08080000 01 USGEOWS-DPVHASH083-DD. 08090000 05 USGEOWS-DPVHASH083-NAME PIC X(08) VALUE LOW-VALUES. 08100000 05 FILLER PIC X(01) VALUE LOW-VALUES. 08110000 08120000 01 USGEOWS-DPVHASH084-DD. 08130000 05 USGEOWS-DPVHASH084-NAME PIC X(08) VALUE LOW-VALUES. 08140000 05 FILLER PIC X(01) VALUE LOW-VALUES. 08150000 08160000 01 USGEOWS-DPVHASH085-DD. 08170000 05 USGEOWS-DPVHASH085-NAME PIC X(08) VALUE LOW-VALUES. 08180000 05 FILLER PIC X(01) VALUE LOW-VALUES. 08190000 08200000 01 USGEOWS-DPVHASH086-DD. 08210000 05 USGEOWS-DPVHASH086-NAME PIC X(08) VALUE LOW-VALUES. 08220000 05 FILLER PIC X(01) VALUE LOW-VALUES. 08230000 08240000 01 USGEOWS-DPVHASH087-DD. 08250000 05 USGEOWS-DPVHASH087-NAME PIC X(08) VALUE LOW-VALUES. 08260000 05 FILLER PIC X(01) VALUE LOW-VALUES. 08270000 08280000 01 USGEOWS-DPVHASH088-DD. 08290000 05 USGEOWS-DPVHASH088-NAME PIC X(08) VALUE LOW-VALUES. 08300000 05 FILLER PIC X(01) VALUE LOW-VALUES. 08310000 08320000 01 USGEOWS-DPVHASH089-DD. 08330000 05 USGEOWS-DPVHASH089-NAME PIC X(08) VALUE LOW-VALUES. 08340000 05 FILLER PIC X(01) VALUE LOW-VALUES. 08350000

Trillium Software System™ Programmer’s Guide, Volume 2 Working Storage Code 2-47

08360000 01 USGEOWS-DPVHASH090-DD. 08370000 05 USGEOWS-DPVHASH090-NAME PIC X(08) VALUE LOW-VALUES. 08380000 05 FILLER PIC X(1) VALUE LOW-VALUES. 08390000 08400000 01 USGEOWS-DPVHASH091-DD. 08410000 05 USGEOWS-DPVHASH091-NAME PIC X(08) VALUE LOW-VALUES. 08420000 05 FILLER PIC X(01) VALUE LOW-VALUES. 08430000 08440000 01 USGEOWS-DPVHASH092-DD. 08450000 05 USGEOWS-DPVHASH092-NAME PIC X(08) VALUE LOW-VALUES. 08460000 05 FILLER PIC X(01) VALUE LOW-VALUES. 08470000 08480000 01 USGEOWS-DPVHASH093-DD. 08490000 05 USGEOWS-DPVHASH093-NAME PIC X(08) VALUE LOW-VALUES. 08500000 05 FILLER PIC X(01) VALUE LOW-VALUES. 08510000 08520000 01 USGEOWS-DPVHASH094-DD. 08530000 05 USGEOWS-DPVHASH094-NAME PIC X(08) VALUE LOW-VALUES. 08540000 05 FILLER PIC X(01) VALUE LOW-VALUES. 08550000 08560000 01 USGEOWS-DPVHASH095-DD. 08570000 05 USGEOWS-DPVHASH095-NAME PIC X(08) VALUE LOW-VALUES. 08580000 05 FILLER PIC X(01) VALUE LOW-VALUES. 08590000 08600000 01 USGEOWS-DPVHASH096-DD. 08610000 05 USGEOWS-DPVHASH096-NAME PIC X(08) VALUE LOW-VALUES. 08620000 05 FILLER PIC X(01) VALUE LOW-VALUES. 08630000 08640000 01 USGEOWS-DPVHASH097-DD. 08650000 05 USGEOWS-DPVHASH097-NAME PIC X(08) VALUE LOW-VALUES. 08660000 05 FILLER PIC X(01) VALUE LOW-VALUES. 08670000 08680000 01 USGEOWS-DPVHASH098-DD. 08690000 05 USGEOWS-DPVHASH098-NAME PIC X(08) VALUE LOW-VALUES. 08700000 05 FILLER PIC X(01) VALUE LOW-VALUES. 08710000 08720000

Trillium Software System API Calls on IBM Mainframe 2-48 Working Storage Code

01 USGEOWS-DPVHASH099-DD. 08730000 05 USGEOWS-DPVHASH099-NAME PIC X(08) VALUE LOW-VALUES. 08740000 05 FILLER PIC X(01) VALUE LOW-VALUES. 08750000 08760000 01 USGEOWS-DPVHASHNUM. 08770000 05 USGEOWS-DPVHASH-NUMBER PIC X(03) VALUE '1'. 08781019 05 FILLER PIC X(01) VALUE LOW-VALUES. 08790000 08800000 01 USGEOWS-DPVUNLOCK. 08810000 05 USGEOWS-DPVUNLOCK-CODE PIC X(08) VALUE LOW-VALUES. 08820000 05 FILLER PIC X(01) VALUE LOW-VALUES. 08830000 08840000 01 USGEOWS-DPVSWAPLCD. 08850000 05 USGEOWS-DPVSWAPLCD-CODE PIC X(08) VALUE LOW-VALUES. 08860000 05 FILLER PIC X(01) VALUE LOW-VALUES. 08870000 08880000 01 USGEOWS-DPVQATEST. 08890000 05 USGEOWS-DPVQATEST-CODE PIC X(01) VALUE 'Y'. 08900013 05 FILLER PIC X(01) VALUE LOW-VALUES. 08910000 08920000 01 USGEOWS-DPVVCNTBL-DD. 08930000 05 USGEOWS-DPVVCNTBL-NAME PIC X(08) VALUE 'TABHSV'. 08940014 05 FILLER PIC X(01) VALUE LOW-VALUES. 08950000 08960000 01 USGEOWS-DPVNSTAT-DD. 08970000 05 USGEOWS-DPVNSTAT-NAME PIC X(08) VALUE 'TABHSX'. 08980014 05 FILLER PIC X(01) VALUE LOW-VALUES. 08990000 08991013 01 USGEOWS-DPVHSP-DD. 09010314 05 USGEOWS-DPVHSP-NAME PIC X(08) VALUE 'TABHSP'. 09010418 05 FILLER PIC X(01) VALUE LOW-VALUES. 09010514 09010601 01 USDPV-FAKE-FILE-NAME. 09010700 05 USDPVFK-FNAME PIC X(08) VALUE 'TABDFAKE'. 09010701 05 FILLER PIC X(01) VALUE LOW-VALUES. 09010702 09010703 01 USLACS-FAKE-FILE-NAME. 09010704

Trillium Software System™ Programmer’s Guide, Volume 2 Working Storage Code 2-49

05 USLACSFK-FNAME PIC X(08) VALUE 'TABLFAKE'. 09010705 05 FILLER PIC X(01) VALUE LOW-VALUES. 09010706 09010707 01 USDPV-FAKE-NAME. 09010708 05 USDPV-NAME PIC X(08) VALUE 'TRILLIUM'. 09010709 05 FILLER PIC X(1) VALUE LOW-VALUES. 09010710 09010711 01 USDPV-FAKE-ADDR. 09010712 05 USDPV-ADDR PIC X(15) VALUE '17 DISTRICT AVE'. 09010713 05 FILLER PIC X(1) VALUE LOW-VALUES. 09010714 09010715 01 USDPV-FAKE-CITY. 09010716 05 USDPV-CITY PIC X(10) VALUE 'BURLINGTON'. 09010717 05 FILLER PIC X(1) VALUE LOW-VALUES. 09010718 09010719 01 USDPV-FAKE-STATE. 09010720 05 USDPV-STATE PIC X(2) VALUE 'MA'. 09010721 05 FILLER PIC X(1) VALUE LOW-VALUES. 09010722 09010723 01 USDPV-FAKE-ZIP. 09010724 05 USDPV-ZIP PIC X(5) VALUE '01803'. 09010725 05 FILLER PIC X(1) VALUE LOW-VALUES. 09010726 09010727 01 USGEOWS-SLNKHEADER-DD. 09011000 05 USGEOWS-SLNKHEADER-NAME PIC X(08) VALUE 'SLKHDR01'. 09020000 05 FILLER PIC X(01) VALUE LOW-VALUES. 09030000 09040000 01 USGEOWS-SLNKLCD-DD. 09050000 05 USGEOWS-SLNKLCD-NAME PIC X(08) VALUE 'SLKLCD'. 09060001 05 FILLER PIC X(01) VALUE LOW-VALUES. 09070000 09080000 01 USGEOWS-SLNKLKUP-DD. 09090000 05 USGEOWS-SLNKLKUP-NAME PIC X(08) VALUE 'SLKEBC'. 09100001 05 FILLER PIC X(01) VALUE LOW-VALUES. 09110000 09120000 01 USGEOWS-SLNKNINE-DD. 09130000 05 USGEOWS-SLNKNINE-NAME PIC X(08) VALUE 'SLKNINE'. 09140001

Trillium Software System API Calls on IBM Mainframe 2-50 Working Storage Code

05 FILLER PIC X(01) VALUE LOW-VALUES. 09150000 09160000 01 USGEOWS-SLNKNOISE-DD. 09170000 05 USGEOWS-SLNKNOISE-NAME PIC X(08) VALUE 'SLKNOISE'. 09180001 05 FILLER PIC X(01) VALUE LOW-VALUES. 09190000 09200000 01 USGEOWS-SLNKNORMAL-DD. 09210000 05 USGEOWS-SLNKNORMAL-NAME PIC X(08) VALUE 'SLKNORM'. 09220000 05 FILLER PIC X(01) VALUE LOW-VALUES. 09230000 09240000 01 USGEOWS-ABREV-NAME. 09250000 05 USGEOWS-ABREVNAME PIC X(08) VALUE 'USABREV'. 09260013 05 FILLER PIC X(01) VALUE LOW-VALUES. 09270000 09280000

*------

Trillium Software System™ Programmer’s Guide, Volume 2 Calling US Centroid Census Geocoder API from COBOL 2-51

Calling US Centroid Census Geocoder API from COBOL The following US Centroid Census Geocoder subroutine is called.

GM#MTCI Opens the US Centroid Census Geocoder, matches the PMA, and closes the US Centroid Census Geocoder.

GM#MTCI Function CALL W100-SUBPGM-NAME USING W100-ACTION, W100-MATCH-TYPE, W100-GM-CONTROL, W100-AM-CONTROL, W100-STREET-INFO, W100-GM-RETURN-INFO, W100-AM_RETURN-INFO, W100-DISPLAY-BASEDATA-STRING, W100-ALT-RTE-NAME W100-ALT-RTE-NBR, W100-ALT-BOX-NBR, W100-ALT-POSTAL-CODE, W100-GEO-LEV1-FNAME, W100-GEO-BASE-FNAME, W100-GACI-BASE-NAME, W100-TMA-LEV1-NAME, W100-TMA-LEV2-NAME, W100-TMA-BASE-NAME. where: 01 W100-ACTION PIC X(01). 01 W100-MATCH-TYPE PIC X(01). 01 W100-GM-CONTROL PIC X(16). 01 W100-AM-CONTROL PIC X(16). 01 W100-STREET-INFO PIC X(247). 01 W100-GM-RETURN-INFO PIC X(132). 01 W100-AM-RETURN-INFO PIC X(70). 01 W100-DISPLAY-BASEDATA-STRING PIC X(01). 01 W100-ALT-RTE-NAME PIC X(20). 01 W100-ALT-RTE-NBR PIC X(08). 01 W100-ALT-BOX-NBR PIC X(10).

Trillium Software System API Calls on IBM Mainframe 2-52 GM#MTCI Function

01 W100-ALT-POSTAL-CODE PIC X(15). 01 W100-GEO-LEV1-FNAME. 05 W100-GEOL1NAME PIC X(06). 05 FILLER PIC X(1) VALUE LOW-VALUES. 01 W100-GEO-BASE-FNAME. 05 W100-GEOBFNAME PIC X(06) VALUE LOW-VALUES. 05 FILLER PIC X(1). 01 W100-GACI-BASE-NAME. 05 W100-GACIBNAME PIC X(06). 05 FILLER PIC X(01) VALUE LOW-VALUES. 01 W100-TMA-LEV1-NAME. 05 W100-TMAL1NAME PIC X(06). 05 FILLER PIC X(1) VALUE LOW-VALUES. 01 W100-TMA-LEV2-NAME. 05 W100-TMAL2NAME PIC X(06). 05 FILLER PIC X(1) VALUE LOW-VALUES. 01 W100-TMA-BASE-NAME. 05 W100-TMABNAME PIC X(06). 05 FILLER PIC X(1) VALUE LOW-VALUES. 01 W100-SUBPGM-NAME PIC X(08) VALUE ‘GM#MTCI’.

This table lists COBOL parameters for calls to the Centroid Census Geocoder.

Table 2.9 US Centroid Census Parameters (COBOL on IBM Mainframe)

Parameter Type Use Length Description

ACTION AN In 1 Defines call type as either O=Open, P=Process, or C=Close.

MATCH-TYPE AN In 1 R=Random

GM-CONTROL AN In/ 16 XRef control work area. If ACTION is P Out or C=In; if is O=Out.

AM-CONTROL AN In/ 16 If ACTION is either P or C=In; if Out ACTION is O=Out.

STREET-INFO AN In 247 Address of buffer containing information to match against the Centroid Census Geocoder. See US Census Centroid output data in Chapter 4.

Trillium Software System™ Programmer’s Guide, Volume 2 GM#MTCI Function 2-53

Table 2.9 US Centroid Census Parameters (COBOL on IBM Mainframe)

Parameter Type Use Length Description

GM-RETURN-INFO AN Out 132 Return buffer (132 bytes) comprised of three sections: XREF match section (48 bytes) gaci section (44 bytes) output resolved section (40 bytes) See Centroid output data in Chapter 4.

AM-RETURN-INFO AN Out 70 Consists of the 70–byte street tract section. See US Census Centroid output data in Chapter 4.

DISPLAY- AN In 1 Display control values. See Chapter 4 for BASEDATA-STRING a list of these values.

ALT-RTE-NAME AN In 20 Alternate route name (optional, if available)

ALT-RTE-NBR AN In 8 Alternate route number (optional, if available).

ALT-BOX-NBR AN In 10 Alternate box number (optional, if available).

ALT-POSTAL-CODE AN In 15 Alternate postal code (optional, if available).

GEO-LEV1-FNAME AN In n* XRef Level 1 index for Centroid Census Geocoding directory.

GEO-BASE-FNAME AN In n* File containing Census directory basedata.

GACI-BASE-NAME AN In n* US Centroid Census Geocoding directory.

TMA-LEV1-NAME AN In n* File containing Level 1 index for US Centroid Census Geocoding directory (street-based). (AMBUL1)

TMA-LEV2-NAME AN In n* File that contains Level 2 index for US Centroid Census Geocoding directory (street-based). (AMBUL2)

Trillium Software System API Calls on IBM Mainframe 2-54 Calling the US Interpolated Rooftop Census Geocoder API from COBOL

Table 2.9 US Centroid Census Parameters (COBOL on IBM Mainframe)

Parameter Type Use Length Description

TMA-BASE-NAME AN In n* File that contains US Centroid Census Geocoding directory basedata (street- based). (AMBUBD) n* = Platform-specific width of a file name. Note that all file names should terminate with a null character after the last valid file name character. AN = Alphanumeric

Calling the US Interpolated Rooftop Census Geocoder API from COBOL

The following sample shows a COBOL Open Call to the Rooftop Census Geocoder. A detailed description of each parameter is included in the table below. There are three call types as detailed by the ‘ACTION’ parameter. Each call uses the same parameters with a different ACTION value.

The following function (subroutine) is called.

HM#MTCI Opens the US Interpolated Rooftop Census Geocoder, matches the PMA, and closes the Geocoder.

Trillium Software System™ Programmer’s Guide, Volume 2 HM#MTCI Function 2-55

HM#MTCI Function

CALL W100-SUBPGM-NAME USING W100-ACTION W100-CONTROL-AREA W100-STREET-INFO W100-RETURN-INFO W100-DISPLAY-BASEDATA W100-HM-LEV1-NAME W100-HM-LEV2-NAME W100-HM-BASE1-FNAME W100-HM-BASE2-FNAME W100-HM-BASE3-FNAME W100-HM-BASE4-FNAME W100-HM-MSA-NAME

where:

01 W100-ACTION PIC X(01) VALUE SPACES. 01 W100-CONTROL-AREA PIC X(16) VALUE SPACES. 01 W100-STREET-INFO PIC X(247). 01 W100-RETURN-INFO PIC X(400). 01 W100-DISPLAY-BASEDATA PIC X(1). 01 W100-HM-LEV1-NAME. 05 W100-HM-LEV1NAME PIC X(08) 05 FILLER PIC X(01) VALUE LOW-VALUES.

Trillium Software System API Calls on IBM Mainframe 2-56 HM#MTCI Function

01 W100-HM-LEV2-NAME. 05 W100-HM-LEV2NAME PIC X(08). 05 FILLER PIC X(01) VALUE LOW-VALUES. 01 W100-HM-BASE1-NAME. 05 W100-HM-BASE1NAME PIC X(08). 05 FILLER PIC X(01) VALUE LOW-VALUES. 01 W100-HM-BASE2-NAME 05 W100-HM-BASE2NAME PIC X(08) 05 FILLER PIC X(01) VALUE LOW-VALUES. 01 W100-HM-BASE3-NAME 05 W100-HM-BASE3NAME PIC X(08) 05 FILLER PIC X(01) VALUE LOW-VALUES. 01 W100-HM-BASE4-NAME 05 W100-HM-BASE4NAME PIC X(08) 05 FILLER PIC X(01) VALUE LOW-VALUES. 01 W100-HM-MSA-NAME 05 W100-HM-MSANAME PIC X(08) 05 FILLER PIC X(01) VALUE LOW-VALUES. 01 W100-HM-NAME-NAME 05 W100-HM-NAMENAME PIC X(08) 05 FILLER PIC X(01) VALUE LOW-VALUES. 01 W100-SUBPGM-NAME PIC X(08) VALUE ‘HM#MTCI’.

For more information about this Census Geocoder, see the Geocoders manual.

This table describes parameters used for COBOL calls.

Table 2.10 US Interpolated Rooftop Census Geocoder Parameters (COBOL on IBM Mainframe)

Parameter Type Use Length Description

ACTION PIC X In 1 Defines the call type as either O=Open, P=Process, or C=Close.

CONTROL PIC X 16 Control work area built on the Open call, then used during Process and Close calls. If ACTION is either P or C=In; if ACTION is O=Out.

STREET-INFO PIC X In 247 Address of buffer that contains information to match against the Rooftop Census Geocoder.

RETURN-INFO PIC X Out 400 Consists of a 100-byte output buffer.

Trillium Software System™ Programmer’s Guide, Volume 2 HM#MTCI Function 2-57

Table 2.10 US Interpolated Rooftop Census Geocoder Parameters (COBOL on IBM Mainframe) (Continued)

Parameter Type Use Length Description

DISPLAY-BASEDATA PIC X In 1 Displays control information. See the section “US Interpolated Rooftop Census Geocoder Display BaseData Values” in Chapter 4.

HM-LEV1-NAME PIC X Out n* File for Level 1 index for US Rooftop Census Geocoding directory. (HMBUL1)

HM-LEV2-NAME PIC X Out n* File for Level 2 index for US Rooftop Census Geocoding directory. (HMBUL2)

HM-BASE1-NAME PIC X In n* File that contains US Rooftop Census Geocoding directory basedata. (HMBUB1)

HM-BASE2-NAME PIC X In n* File that contains US Rooftop Census Geocoding directory basedata. (HMBUB2)

HM-BASE3-NAME PIC X In n* File containing Rooftop Census Geocoding Directory basedata (HMBUB3).

HM-BASE4-NAME PIC X In n* File containing Rooftop Census Geocoding Directory basedata (HMBUB4).

HM-MSA-NAME PIC X In n* File that contains MSA index for US Rooftop Census Geocoding directories. (HMMSA)

HM-NAME-NAME PIC X In n* File containing name cross-reference for US Rooftop Census Geocoding directories (HMNAME) n* = Platform-specific width of a file name. Note that all file names should terminate with a null character after the last valid file name character.

Trillium Software System API Calls on IBM Mainframe 2-58 Calling the API for All US Census Geocoders from COBOL

Calling the API for All US Census Geocoders from COBOL

The following sample shows a COBOL Open Call to the three US census geocoders: Centroid, Interpolated, and Interpolated Plus. A detailed description of each parameter is included in the table below. There are three call types as detailed by the ‘ACTION’ parameter. Each call uses the same parameters with a different ACTION value.

The following function (subroutine) is called.

IP#MTCI Opens the three census geocoders (centroid, interpolated, and interpolated plus), matches the PMA, and closes the geocoders.

IP#MTCI Function

CALL W100-SUBPGM-NAME USING W100-ACTION W100-CONTROL W100-GM-CONTROL W100-STREET-INFO W100-RETURN-INFO W100-DISPLAY-BASEDATA W100-LEVEL1-NAME W100-LEVEL2-NAME W100-BASE1-NAME W100-BASE2-NAME W100-BASE3-NAME W100-BASE4-NAME W100-MSA-NAME W100-NAME-NAME W100-GM-LEVEL1-NAME W100-GM-BASE-NAME W100-GM-GACI-NAME W100-AP-LEV1-NAME W100-AP-BASE-NAME W100-RETURN-CODE where: 01 W100-ACTION PIC X(01) VALUE SPACE.

Trillium Software System™ Programmer’s Guide, Volume 2 IP#MTCI Function 2-59

01 W100-CONTROL PIC X(16) VALUE LOW_VALUES. 01 W100-GM-CONTROL PIC X(16) VALUE LOW_VALUES. 01 W100-STREET-INFO PIC X(247) VALUE SPACES. 01 W100-RETURN-INFO PIC X(400) VALUE SPACES.. 01 W100-DISPLAY-BASEDATA 05 W100-DISP-BASE PIC X(01) VALUE ‘N’. 05 FILLER PIC X (01) VALUE LOW-VALUES. 01 W100-LEVEL1-NAME. 05 W100-L1NAME PIC X(08) VALUE ‘HMBUL1’ 05 FILLER PIC X(01) VALUE LOW-VALUES. 01 W100-LEVEL2-NAME. 05 W100-L2NAME PIC X(08) VALUE ‘HMBUL2’ 05 FILLER PIC X(01) VALUE LOW-VALUES. 01 W100-BASE1-NAME. 05 W100-B1NAME PIC X(08) VALUE ‘HMBUB1’. 05 FILLER PIC X(01) VALUE LOW-VALUES. 01 W100--BASE2-NAME 05 W100--B2NAME PIC X(08) VALUE ‘HMBUB2’ 05 FILLER PIC X(01) VALUE LOW-VALUES. 01 W100--BASE3-NAME 05 W100--B3NAME PIC X(08) VALUE ‘HMBUB3’ 05 FILLER PIC X(01) VALUE LOW-VALUES. 01 W100--BASE4-NAME 05 W100--B4NAME PIC X(08) VALUE ‘HMBUB4’ 05 FILLER PIC X(01) VALUE LOW-VALUES. 01 W100-MSA-NAME 05 W100-MSANAME PIC X(08) VALUE ‘HMMSA’ 05 FILLER PIC X(01) VALUE LOW-VALUES. 01 W100-NAME-NAME 05 W100-NNAME PIC X(08) VALUE ‘HMNAME’ 05 FILLER PIC X(01) VALUE LOW-VALUES. 01 W100-GM-LEVEL1-NAME 05 W100-GML1NAME PIC X(08) VALUE ‘GMBUL1’ 05 FILLER PIC X(01) VALUE LOW-VALUES. 01 W100-GM-BASE-NAME 05 W100-GMBNAME PIC X(08) VALUE ‘GMBUBD’ 05 FILLER PIC X(01) VALUE LOW-VALUES. 01 W100-GM-GACI-NAME 05 W100-GMGNAME PIC X(08) VALUE ‘GMGACI’ 05 FILLER PIC X(01) VALUE LOW-VALUES. 01 W100-AP-LEV1-NAME 05 W100-APL1NAME PIC X(08) VALUE ‘IPBUL1’ 05 FILLER PIC X(01) VALUE LOW-VALUES 01 W100-AP-BASE-NAME 05 W100-APBNAME PIC X(08) VALUE ‘IPBUBD’ 05 FILLER PIC X(01) VALUE LOW-VALUES. 01 W100-RETURN-CODE PIC X(02) VALUE SPACES. 01 W100-SUBPGM-NAME PIC X(08) VALUE ‘IP#MTCI’.

Trillium Software System API Calls on IBM Mainframe 2-60 IP#MTCI Function

This table describes parameters used for COBOL calls.

Table 2.11 US Interpolated Rooftop Census Geocoder Parameters (COBOL on IBM Mainframe)

Parameter Type Use Length Description ACTION PIC X In 1 Defines the call type as either O=Open, P=Process, or C=Close. CONTROL PIC X 16 Control work area built on the Open call, then used during Process and Close calls. If ACTION is either P or C=In; if ACTION is O=Out. GM-CONTROL PIC X 16 Control work area for the Centroid geocoder. It is built on the Open call, then used during Process and Close calls. If ACTION is either P or C=In; if ACTION is O=Out. STREET-INFO PIC X In 247 Address of buffer that contains information to match against the Rooftop Census Geocoder. RETURN-INFO PIC X Out 400 Consists of a 100-byte output buffer. DISPLAY-BASEDATA PIC X In 1 Displays control information. See the section “US Interpolated Rooftop Census Geocoder Display BaseData Values” in Chapter 4. LEVEL1-NAME PIC X Out n* File for Level 1 index for US Rooftop Census Geocoding directory. (HMBUL1) LEVEL2-NAME PIC X Out n* File for Level 2 index for US Rooftop Census Geocoding directory. (HMBUL2) BASE1-NAME PIC X In n* File that contains US Rooftop Census Geocoding directory basedata. (HMBUB1) BASE2-NAME PIC X In n* File that contains US Rooftop Census Geocoding directory basedata. (HMBUB2) BASE3-NAME PIC X In n* File containing Rooftop Census Geocoding Directory basedata (HMBUB3).

Trillium Software System™ Programmer’s Guide, Volume 2 IP#MTCI Function 2-61

Table 2.11 US Interpolated Rooftop Census Geocoder Parameters (COBOL on IBM Mainframe) (Continued)

Parameter Type Use Length Description BASE4-NAME PIC X In n* File containing Rooftop Census Geocoding Directory basedata (HMBUB4). MSA-NAME PIC X In n* File that contains MSA index for US Rooftop Census Geocoding directories. (HMMSA) NAME-NAME PIC X In n* File containing name cross-reference for US Rooftop Census Geocoding directories (HMNAME) GM-LEVEL1-NAME PIC X In n* File containing the Level 1 index for the US ZIP4 Centroid directory (GMBUL1) GM-BASE-NAME PIC X In n* File containing the US ZIP4 Centroid directory base data (GMBUBD) GM-GACI-NAME PIC X In n* File containing the US ZIP Code Centroid directory base data (GMGACI) AP-LEV1-NAME PIC X In n* File containing the Level 1 index for the US Interpolated Plus directory (IPBUL1) AP-BASE-NAME PIC X In n* File containing the US Interpolated Plus directory base data (IPBUBD) RETURN-CODE PIC X Out n* = Platform-specific width of a file name. Note that all file names should terminate with a null character after the last valid file name character.

Trillium Software System API Calls on IBM Mainframe 2-62 Calling the CA Postal Geocoder API from COBOL

Calling the CA Postal Geocoder API from COBOL

The following Canadian (CA) Geocoder functions (subroutines) are called:

CA#AMAT Copies the appropriate fields from the Parser PREPOS Area (PNA) to the CA Postal Geocoder PMA input area.

CA#MTCI Opens the CA Postal Geocoder, matches the PMA to the postal directory, and closes the CA Postal Geocoder.

For information about CA Geocoder functionality, see the Geocoders manual.

CA#AMAT Function 01 W100-SUBPGM-NAME PIC X(08 VALUE SPACES. MOVE ‘CA#AMAT’ TO W100-SUBPGM-NAME. CALL W100-SUBPGM-NAME USING PREPOS-AREA, STREET-INFO.

Table 2.12 CA Geocoder Add Mat Parameters (COBOL on IBM Mainframe)

Parameter Type Use Length Description

PREPOS-AREA AN In 9836 Data returned by the Parser; passed as input to the CA#AMAT function.

STREET-INFO AN Out 225 Data returned by the CA#AMAT function; passed as input to the Geocoder.

Trillium Software System™ Programmer’s Guide, Volume 2 CA#MTCI Function 2-63

CA#MTCI Function

CALL W100-SUBPGM-NAME USING W100-ACTION, W100-CONTROL, W100-STREET-INFO, W100-RETURN-INFO, W100-DISPLAY-BASEDATA, W100-DATABASE-DATE, W100-SERVICE-BUREAU-NAME, W100-CUSTOMER-NAME, W100-CUSTOMER-ADDRESS-1, W100-CUSTOMER-ADDRESS-2, W100-CUSTOMER-ADDRESS-3, W100-CUSTOMER-ADDRESS-4, W100-FORM-FILE-NAME, W100-LEV1-NAME, W100-LEV2-NAME, W100-BASE-NAME, W100-LEVP-NAME, W100-LEVPI-NAME, W100-AMUNI-NAME, W100-STREET-NAME-BUFF, W100-DET-BUFF. where:

01 W100-ACTION PIC X(01). 01 W100-CONTROL PIC X(16). 01 W100-STREET-INFO PIC X(225). 01 W100-RETURN-INFO PIC X(350). 01 W100-DISPLAY-BASEDATA PIC X(01). 01 W100-DATABASE-DATE PIC X(80). 01 W100-SERVICE-BUREAU-NAME PIC X(30). 01 W100-CUSTOMER-NAME PIC X(30). 01 W100-CUSTOMER-ADDRESS-1 PIC X(30). 01 W100-CUSTOMER-ADDRESS-2 PIC X(30). 01 W100-CUSTOMER-ADDRESS-3 PIC X(30). 01 W100-CUSTOMER-ADDRESS-4 PIC X(30).

Trillium Software System API Calls on IBM Mainframe 2-64 CA#MTCI Function

01 W100-FORM-FILE-FNAME. 05 W100-FNAME PIC X(06). VALUE SPACES 05 FILLER PIC X(1). VALUE LOW VALUES 01 W100-LEV1-NAME. 05 W100-L1NAME PIC X(06) VALUE SPACES. 05 FILLER PIC X(1) VALUE LOW-VALUES. 01 W100-LEV2-NAME. 05 W100-L2NAME PIC X(06) VALUE SPACES. 05 FILLER PIC X(1) VALUE LOW-VALUES. 01 W100-BASE-NAME. 05 W100-BNAME PIC X(06) VALUE SPACES. 05 FILLER PIC X(1) VALUE LOW-VALUES. 01 W100-LEVP-NAME. 05 W100-LPNAME PIC X(06) VALUE SPACES. 05 FILLER PIC X(1) VALUE LOW-VALUES. 01 W100-LEVPI-NAME. 05 W100-LPINAME PIC X(06) VALUE SPACES. 05 FILLER PIC X(1) VALUE LOW-VALUES. 01 W100-AMUNI-NAME. 05 W100-AMNAME PIC X(06) VALUE SPACES. 05 FILLER PIC X(1) VALUE LOW-VALUES. 01 W100-STREET-NAME-BUFF PIC X(30000) VALUE SPACES. 01 W100-DET-BUFF PIC X(13800) VALUE SPACES. 01 W100-SUBPGM-NAME PIC X(08) VALUE ‘CA#MTCI’.

This table describes the parameters used by COBOL calls to the CA Geocoder.

Table 2.13 CA Postal Geocoder Parameters (COBOL on IBM Mainframe)

Parameter Type Use Length Description

ACTION AN In 1 Defines the call type as either O=Open, P=Process, R=Minimal Open or C=Close.

CONTROL AN In/ 16 Control work area built on the Open Out call, then used during Process and Close calls. If ACTION is either P, R or C=In; if ACTION is O=Out.

Trillium Software System™ Programmer’s Guide, Volume 2 CA#MTCI Function 2-65

Table 2.13 CA Postal Geocoder Parameters (COBOL on IBM Mainframe) (Continued)

Parameter Type Use Length Description

STREET-INFO AN In 225 Address of buffer that contains information to match against CA geocoder system. See the section “CA Postal Geocoder Input and Output data in Chapter 4.

RETURN-INFO AN Out 350 Address of buffer containing information returned by geocoder; the format is described in the next table. See “CA Postal Geocoder Input and Output data in Chapter 4.

DISPLAY-BASEDATA AN In 1 Displays control information. See Ch. 4 for a list of values.

DATABASE-DATE AN In 80 Field that contains the database date of CA Directory in MMM YYYY format. Optional; else low values.

SERVICE-BUREAU-NAME AN In 30 Name of bureau to print on accuracy form.

CUSTOMER-NAME AN In 30 Customer name to print on accuracy form.

CUSTOMER-ADDRESS-1 AN In 30 Customer address to print on accuracy form.

CUSTOMER-ADDRESS-2 AN In 30 Customer address to print on accuracy form.

CUSTOMER-ADDRESS-3 AN In 30 Customer address to print on accuracy form.

CUSTOMER-ADDRESS-4 AN In 30 Customer address to print on accuracy form.

FORM-FILE-NAME AN In n* File that contains form (for historical report).

Trillium Software System API Calls on IBM Mainframe 2-66 CA#MTCI Function

Table 2.13 CA Postal Geocoder Parameters (COBOL on IBM Mainframe) (Continued)

Parameter Type Use Length Description

LEV1-NAME AN In n* File for Level 1 index for CA directory. (CABUL1)

LEV2-NAME AN In n* File for Level 2 index for CA directory. (CABUL2)

BASE-NAME AN In n* File for CA directory basedata. (CABUBD)

LEVP-NAME AN In n* File containing postal code index (alternate access method).

LEVPI-NAME AN In n* File that contains outbound FSA postal code index (alternate access method).

AMUNI-NAME AN In n* File containing alternate municipality name.

STREET-NAME-BUFF AN Out 30,000 Buffer to collect street names within province/post town, when DISPLAY- BASEDATA = (3, A, B).

DET-BUFF AN Out 13,800 Buffer to collect street details for 50 possible matches, when DISPLAY- BASEDATA = (3, A, B).

See the section “CA Match Possibilities Data Area” in Chapter 4, for a layout of the fields included in this buffer. n* = Platform-specific width of a file name. Note that all file names should terminate with a null character after the last valid file name character. AN = Alphanumeric

Trillium Software System™ Programmer’s Guide, Volume 2 Calling the AU Postal Geocoder API from COBOL 2-67

Calling the AU Postal Geocoder API from COBOL

The following Australian (AU) Geocoder functions (subroutines) are called:

AU#AMAT Copies the appropriate fields from the Parser PREPOS Area (PNA) to the Australian Postal Geocoder PMA input area. Also called the “Add Mat Function.”

AU#MTCI Opens the AU Postal Geocoder, matches the PMA to the postal directory, and closes the AU Postal Geocoder.

AU#AMAS Opens the AU Postal Geocoder, matches the PMA to the postal directory, and closes the AU Postal Geocoder; AMAS certified.

For information about AU Geocoder functionality, see the Geocoders manual. AU#AMAT Function

01 W100-SUBPGM-NAME PIC X(08) VALUE SPACES. MOVE ‘AU#AMAT’ TO W100-SUBPGM-NAME. CALL W100-SUBPGM-NAME USING W100-PREPOS-AREA, W100-STREET-INFO.

Table 2.14 AU Add Mat Function Parameters (COBOL on IBM Mainframe)

Parameter Type Use Length Description

PREPOS-AREA String In 9836 Data returned by the Parser; passed as input to the AU#AMAT function.

STREET-INFO String Out 200 Data returned by the AU#AMAT function; passed as input to the Geocoder.

Trillium Software System API Calls on IBM Mainframe 2-68 AU#MTCI Function

AU#MTCI Function CALL W100-SUBPGM-NAME USING W100-ACTION, W100-CONTROL, W100-STREET-INFO, W100-RETURN-INFO, W100-DISPLAY-BASEDATA, W100-DATABASE-DATE, W100-SERVICE-BUREAU-NAME, W100-CUSTOMER-NAME, W100-CUSTOMER-ADDRESS-1, W100-CUSTOMER-ADDRESS-2, W100-CUSTOMER-ADDRESS-3, W100-CUSTOMER-ADDRESS-4, W100-FORM-FILE-NAME, W100-LEV1-NAME, W100-LEV2-NAME, W100-BASE-NAME, W100-ACITY-NAME, W100-STREET-NAME-BUFF, W100-DET-BUFF. where: 01 W100-ACTION PIC X(01). 01 W100-CONTROL PIC X(16). 01 W100-STREET-INFO PIC X(200). 01 W100-RETURN-INFO PIC X(300). 01 W100-DISPLAY-BASEDATA PIC X(01). 01 W100-DATABASE-DATE PIC X(08). 01 W100-SERVICE-BUREAU-NAME PIC X(30). 01 W100-CUSTOMER-NAME PIC X(30). 01 W100-CUSTOMER-ADDRESS-1 PIC X(30). 01 W100-CUSTOMER-ADDRESS-2 PIC X(30). 01 W100-CUSTOMER-ADDRESS-3 PIC X(30). 01 W100-CUSTOMER-ADDRESS-4 PIC X(30). 01 W100-FORM-FILE-FNAME. 05 W100-FNAME PIC X(06) VALUE SPACES. 05 FILLER PIC X(1) VALUE LOW VALUES. 01 W100-LEV1-NAME. 05 W100-L1NAME PIC X(06) VALUE SPACES. 05 FILLER PIC X(1) VALUE LOW VALUES. 01 W100-LEV2-NAME. 05 W100-L2NAME PIC X(06) VALUE SPACES. 05 FILLER PIC X(1) VALUE LOW VALUES. 01 W100-BASE-NAME. 05 W100-BNAME PIC X(06) VALUE SPACES. 05 FILLER PIC X(1) VALUE LOW VALUES. 01 W100-ACITY-NAME. 05 W100-ACNAME PIC X(06) VALUE SPACES. 05 FILLER PIC X(1) VALUE LOW VALUES. 01 W100-STREET-NAME-BUFF PIC X(30000) VALUE SPACES. 01 W100-DET-BUFF PIC X(7550) VALUE SPACES. 01 W100-SUBPGM-NAME PIC X(08) VALUE ‘AU#MTCI’.

Trillium Software System™ Programmer’s Guide, Volume 2 AU#MTCI Function 2-69

This table describes parameters used for AU Postal Geocoder COBOL calls.

Table 2.15 AU Postal Geocoder Parameters (COBOL on IBM Mainframe)

Parameter Type Use Length Description

ACTION AN In 1 Defines the call type as either O=Open, P=Process, R=Minimal Open or C=Close.

CONTROL AN In/ 16 Control work area built by the Out program on the Open call, then used during the Process and Close calls. If ACTION is either P, R or C=In; if ACTION is O=Out.

STREET-INFO AN In 200 Address of buffer that contains information to match against AU geocoder. See “AU Postal Geocoder Input and Output data” in Chapter 4.

RETURN-INFO AN Out 300 Buffer for info returned by Matcher. See “AU Postal Geocoder Input and Output data” in Ch. 4.

DISPLAY-BASEDATA AN In 1 Displays control information. See the section “AU Display Base_Data Values” in Chapter 4.

DATABASE-DATE AN In 80 Field containing database date of AU Directory in MMM YYYY format. Optional; else low values.

SERVICE-BUREAU-NAME AN In 30 Name of bureau to print on accuracy form.

CUSTOMER-NAME AN In 30 Customer name to print on accuracy form.

CUSTOMER-ADDRESS-1 AN In 30 Customer address to print on accuracy form.

CUSTOMER-ADDRESS-2 AN In 30 Customer address to print on accuracy form.

Trillium Software System API Calls on IBM Mainframe 2-70 AU#MTCI Function

Table 2.15 AU Postal Geocoder Parameters (COBOL on IBM Mainframe) (Continued)

Parameter Type Use Length Description

CUSTOMER-ADDRESS-3 AN In 30 Customer address to print on accuracy form.

CUSTOMER-ADDRESS-4 AN In 30 Customer address to print on accuracy form

FORM-FILE-NAME AN In n* File that contains form (for historical report)

LEV1-NAME AN In n* File for Level 1 index of AU Directory. (AUBUL1)

LEV2-NAME AN In n* File for Level 2 index of AU Directory. (AUBUL2)

BASE-NAME AN In n* File for AU Directory basedata. (AUBUBD)

ACITY-NAME AN In n* File that contains AU auxiliary city

BLOC-NAME AN In n* File containing the AU bordering locality info.

LOC-NAME AN In n* File containing the AU locality DPID info.

GROUP-NAME AN In n* File containing the AU street DPID info.

STREET-NAME-BUFF AN Out 30,000 Buffer to collect street names within province/post town, when DISPLAY- BASEDATA = (3, A, B).

DET-BUFF AN Out 7,550 Buffer to collect street details for 50 matches, DISPLAY-BASEDATA = (3, A, B). See “AU Match Possibilities Data Area” in Chapter 4. n* = Platform-specific width of a file name. Note that all file names should terminate with a null character after the last valid file name character. AN = Alphanumeric

Trillium Software System™ Programmer’s Guide, Volume 2 Calling the DE Postal Geocoder API from COBOL 2-71

Calling the DE Postal Geocoder API from COBOL

The following German (DE) Postal Geocoder functions (subroutines) are called:

DE#AMAT Copies appropriate fields from the Parser PREPOS Area to the German Postal Geocoder PMA input area. Also called the “Add Mat Function.”

DE#MTCI Opens the DE Postal Geocoder, matches the PMA to the postal directory, and closes the DE Postal Geocoder.

For information about DE Geocoder functionality, see the Geocoders manual.

DE#AMAT Function 01 W100-SUBPGM-NAME PIC X(08) VALUE SPACES. MOVE ‘DE#AMAT’ TO W100-SUBPGM-NAME. CALL W100-SUBPGM-NAME USING W100-PREPOS-AREA, W100-STREET-INFO.

Table 2.16 DE Geocoder Add Mat Parameters (COBOL on IBM Mainframe)

Parameter Type Use Length Description

PREPOS-AREA String In 9836 Data returned by the Parser; passed as input to the DE#AMAT function.

STREET-INFO String Out 200 Data returned by the DE#AMAT function, passed as input to the Geocoder.

Trillium Software System API Calls on IBM Mainframe 2-72 DE#MTCI Function

DE#MTCI Function CALL W100-SUBPGM-NAME USING W100-ACTION, W100-CONTROL, W100-STREET-INFO, W100-RETURN-INFO, W100-DISPLAY-BASEDATA, W100-DATABASE-DATE, W100-SERVICE-BUREAU-NAME, W100-CUSTOMER-NAME, W100-CUSTOMER-ADDRESS-1, W100-CUSTOMER-ADDRESS-2, W100-CUSTOMER-ADDRESS-3, W100-CUSTOMER-ADDRESS-4, W100-FORM-FILE-NAME, W100-LEV1-NAME, W100-LEV2-NAME, W100-BASE-NAME, W100-ACITY-FNAME, W100-LOWER_NAME, W100-UPPER_NAME, W100-MANIPULATE_POBOX, W100-STREET-NAME-BUFF, W100-DET-BUFF. where:

01 W100-ACTION PIC X(01). 01 W100-CONTROL PIC X(16). 01 W100-STREET-INFO PIC X(200). 01 W100-RETURN-INFO PIC X(300). 01 W100-DISPLAY-BASEDATA PIC X(01). 01 W100-DATABASE-DATE PIC X(08). 01 W100-SERVICE-BUREAU-NAME PIC X(30). 01 W100-CUSTOMER-NAME PIC X(30). 01 W100-CUSTOMER-ADDRESS-1 PIC X(30). 01 W100-CUSTOMER-ADDRESS-2 PIC X(30). 01 W100-CUSTOMER-ADDRESS-3 PIC X(30). 01 W100-CUSTOMER-ADDRESS-4 PIC X(30).

Trillium Software System™ Programmer’s Guide, Volume 2 DE#MTCI Function 2-73

01 W100-FORM-FILE-NAME. 05 W100-FNAME PIC X(06). 05 FILLER PIC X(01)VALUE LOW-VALUES. 01 W100-LEV1-NAME. 05 W100-L1NAME PIC X(06). 05 FILLER PIC X(01)VALUE LOW-VALUES. 01 W100-LEV2-NAME. 05 W100-L2NAME PIC X(06). 05 FILLER PIC X(01)VALUE LOW-VALUES. 01 W100-BASE-NAME. 05 W100-BNAME PIC X(06). 05 FILLER PIC X(01)VALUE LOW-VALUES. 01 W100-UPPER-NAME. 05 W100-UPNAME PIC X(08). 05 FILLER PIC X(01)VALUE LOW-VALUES. 01 W100-LOWER-NAME. 05 W100-LOWNAME PIC X(08) 05 FILLER PIC X(01)VALUE LOW-VALUES. 01 W100-MANIPULATE-POBOX PIC X(1). 01 W100-STREET-NAME-BUFF PIC X(30000). 01 W100-DET-BUFF PIC X(7500). 01 W100-SUBPGM-NAME PIC X(08)VALUE ‘DE#MTCI’. This table lists parameters used for COBOL calls to the DE Postal Geocoder.

Table 2.17 DE Postal Geocoder Parameters (COBOL on IBM Mainframe)

Parameter Type Use Length Description

ACTION AN In 1 Defines the call type as either O=Open, P=Process, R=Minimal Open or C=Close.

CONTROL AN in/ 16 Work area built on the Open call, then Out used during Process and Close calls. If ACTION is P, R or C=In; if ACTION is O=Out.

STREET-INFO AN In 200 Address of buffer that contains information to match against DE postal geocoder system. See the section “DE Postal Geocoder Input and Output Data” in Chapter 4.

Trillium Software System API Calls on IBM Mainframe 2-74 DE#MTCI Function

Table 2.17 DE Postal Geocoder Parameters (COBOL on IBM Mainframe) (Continued)

Parameter Type Use Length Description

RETURN-INFO AN Out 300 Address of buffer that contains information returned by Matcher. See “DE Postal Geocoder Input and Output Data” in Ch 4.

DISPLAY-BASEDATA AN In 1 Displays control information.

DATABASE-DATE AN In 80 Field containing database date of DE Directory in MMM YYYY format. Optional; else low values.

SERVICE-BUREAU- AN In 30 Name of bureau to print on accuracy NAME form.

CUSTOMER-NAME AN In 30 Customer name to print on accuracy form.

CUSTOMER-ADDRESS-1 AN In 30 Customer address to print on accuracy form.

CUSTOMER-ADDRESS-2 AN In 30 Customer address to print on accuracy form.

CUSTOMER-ADDRESS-3 AN In 30 Customer address to print on accuracy form.

CUSTOMER-ADDRESS-4 AN In 30 Customer address to print on accuracy form.

FORM-FILE-NAME AN In n* File that contains form (for historical report)

LEV1-NAME AN In n* File for Level 1 index for DE Directory (DEBUL1)

LEV2-NAME AN In n* File for Level 2 index for DE Directory (DEBUL2)

BASE-NAME AN In n* File containing directory basedata (DEBUBD)

LOWER-NAME AN In n* File name for lowercase

Trillium Software System™ Programmer’s Guide, Volume 2 DE#MTCI Function 2-75

Table 2.17 DE Postal Geocoder Parameters (COBOL on IBM Mainframe) (Continued)

Parameter Type Use Length Description

UPPER-NAME AN In n* File name for uppercase

MANIPULATE-POBOX AN In 1 Y – moves alt PO box information to street information

STREET-NAME-BUFF AN Out 30,000 Buffer to collect street names within post town, when DISPLAY-BASEDATA = (3, A, B).

DET-BUFF AN Out 7,550 Buffer to collect street details for up to 50 possible matches, when DISPLAY- BASEDATA = (3, A, B).

See the section “DE Match Possibilities Data Area” in Chapter 4, for a layout of the fields included in this buffer. n* = Platform-specific width of a file name. Note that all file names should terminate with a null character after the last valid file name character. AN = Alphanumeric

Trillium Software System API Calls on IBM Mainframe 2-76 Calling the HK Postal Geocoder API from COBOL

Calling the HK Postal Geocoder API from COBOL

The following Hong Kong (HK) Postal Geocoder functions (subroutines) are called:

HK#AMAT Copies appropriate fields from the Parser PREPOS Area to the HK Postal Geocoder PMA input area. Also called the “Add Mat Function.”

HK#MTCI Opens the HK Postal Geocoder, matches the PMA to the postal directory, and closes the HK Postal Geocoder.

For more information about HK Geocoder functionality, see the Geocoders manual.

HK#AMAT 01 W100-SUBPGM-NAME PIC X(08) VALUE SPACES. MOVE ‘HK#AMAT’ TO W100-SUBPGM-NAME. CALL W100-SUBPGM-NAME USING W100-PREPOS-AREA, W100-STREET-INFO.

This table describes parameters used by COBOL calls to the HK Postal Geocoder.

Table 2.18 HK Postal Geocoder Add Mat Function Parameters (COBOL on IBM Mainframe)

Parameter Type Use Length Description

PREPOS-AREA String In 9836 Data returned by the Parser; passed as input to the HK#AMAT function.

STREET-INFO String Out 200 Data returned by the HK#AMAT function; passed as input to the Geocoder.

Trillium Software System™ Programmer’s Guide, Volume 2 HK#MTCI Function 2-77

HK#MTCI Function

CALL W100-SUBPGM-NAME USING W100-ACTION, W100-CONTROL, W100-STREET-INFO, W100-RETURN-INFO, W100-DISPLAY-BASEDATA, W100-DATABASE-DATE, W100-SERVICE-BUREAU-NAME, W100-CUSTOMER-NAME, W100-CUSTOMER-ADDRESS-1, W100-CUSTOMER-ADDRESS-2, W100-CUSTOMER-ADDRESS-3, W100-CUSTOMER-ADDRESS-4, W100-FORM-FILE-NAME, W100-LEV1-NAME, W100-LEV2-NAME, W100-BASE-NAME, W100-STREET-NAME-BUFF, W100-DET-BUFF. where: 01 W100-ACTION PIC X(01). 01 W100-CONTROL PIC X(16). 01 W100-STREET-INFO PIC X(200). 01 W100-RETURN-INFO PIC X(450). 01 W100-DISPLAY-BASEDATA PIC X(01). 01 W100-DATABASE-DATE PIC X(80). 01 W100-SERVICE-BUREAU-NAME PIC X(30). 01 W100-CUSTOMER-NAME PIC X(30). 01 W100-CUSTOMER-ADDRESS-1 PIC X(30). 01 W100-CUSTOMER-ADDRESS-2 PIC X(30). 01 W100-CUSTOMER-ADDRESS-3 PIC X(30). 01 W100-CUSTOMER-ADDRESS-4 PIC X(30).

Trillium Software System API Calls on IBM Mainframe 2-78 HK#MTCI Function

01 W100-FORM-FILE-NAME. 05 W100-FNAME PIC X(08) 05 FILLER PIC X(01) VALUE LOW VALUES. 01 W100-LEV1-NAME. 05 W100-L1NAME PIC X(08) 05 FILLER PIC X(01) VALUE LOW VALUES. 01 W100-LEV2-NAME. 05 W100-L2NAME PIC X(08) 05 FILLER PIC X(1) VALUE LOW VALUES. 01 W100-BASE-NAME. 05 W100-BNAME PIC X(08) 05 FILLER PIC X(01) VALUE LOW VALUES. 01 W100-STREET-NAME-BUFF PIC X(30000). 01 W100-DET-BUFF PIC X(70000). 01 W100-SUBPGM-NAME PIC X(08) VALUE ‘HK#MTCI’. This table describes parameters used for COBOL calls to the HK Geocoder.

Table 2.19 HK Postal Geocoder Parameters (COBOL on IBM Mainframe)

Parameter Type Use Length Description

ACTION AN In 1 Defines the call type as either O=Open, P=Process, R=Minimal Open or C=Close.

CONTROL AN In/ 16 Work area built on the Open call, then Out used during the Process and Close calls. If ACTION is either P, R or C=In; if ACTION is O=Out.

STREET-INFO AN In 200 Address of buffer that contains information to match against HK Postal Geocoder system. See the section “HK Geocoder Input and Output Data” in Chapter 4.

RETURN-INFO AN Out 300 Address of buffer containing info returned by Matcher. See “HK Geocoder Input and Output Data” in Chapter 4.

Trillium Software System™ Programmer’s Guide, Volume 2 HK#MTCI Function 2-79

Table 2.19 HK Postal Geocoder Parameters (COBOL on IBM Mainframe) (Continued)

Parameter Type Use Length Description

DISPLAY-BASEDATA AN In 1 Displays control information.

DATABASE-DATE AN In 80 Field containing the database date of HK Directory in MMM YYYY format. Optional; else low values.

SERVICE-BUREAU-NAME AN In 30 Name of bureau to print on accuracy form.

CUSTOMER-NAME AN In 30 Customer name to print on accuracy form.

CUSTOMER-ADDRESS-1 AN In 30 Customer address to print on accuracy form.

CUSTOMER-ADDRESS-2 AN In 30 Customer address to print on accuracy form.

CUSTOMER-ADDRESS-3 AN In 30 Customer address to print on accuracy form.

CUSTOMER-ADDRESS-4 AN In 30 Customer address to print on accuracy form.

FORM-FILE-NAME AN In n* File that contains form (for historical report).

LEV1-NAME AN In n* File containing Level 1 index for HK Directory. (HKBUL1)

LEV2-NAME AN In n* File containing Level 2 index for HK Directory. (HKBUL1)

BASE-NAME AN In n* File that contains HK Directory basedata. (HKBUBD)

STREET-NAME-BUFF AN Out 30,000 Buffer to collect street names within post town, when DISPLAY-BASEDATA = (3, A, B).

Trillium Software System API Calls on IBM Mainframe 2-80 HK#MTCI Function

Table 2.19 HK Postal Geocoder Parameters (COBOL on IBM Mainframe) (Continued)

Parameter Type Use Length Description

DET-BUFF AN Out 7,550 Buffer to collect street details for up to 50 possible matches, when DISPLAY- BASEDATA = (3, A, B).

See the section “HK Match Possibilities Data Area” in Chapter 4 of this document, for a layout of the fields included in this buffer.

n* = Platform-specific width of a file name. Note that all file names should terminate with a null character after the last valid file name character. AN = Alphanumeric

Trillium Software System™ Programmer’s Guide, Volume 2 Calling the IT Postal Geocoder API from COBOL 2-81

Calling the IT Postal Geocoder API from COBOL

The following Italian (IT) Postal Geocoder functions (subroutines) are called:

IT#AMAT Copies appropriate fields from the Parser PREPOS Area to the Italian Postal Geocoder PMA input area. Also called the “Add Mat Function.”

IT#MTCI Opens the IT Postal Geocoder, matches the PMA to the postal directory, and closes the IT Postal Geocoder.

For information about IT Geocoder functionality, see the Geocoders manual.

IT#AMAT Function 01 W100-SUBPGM-NAME PIC X(08) VALUE SPACES. MOVE ‘IT#AMAT’ TO W100-SUBPGM-NAME. CALL W100-SUBPGM-NAME USING W100-PREPOS-AREA, W100-STREET-INFO.

Table 2.20 IT Geocoder Add Mat Parameters (COBOL on IBM Mainframe)

Parameter Type Use Length Description

PREPOS-AREA String In 9836 Data returned by the Parser; passed as input to the IT#AMAT function.

STREET-INFO String Out 300 Data returned by the IT#AMAT function, passed as input to the Geocoder.

Trillium Software System API Calls on IBM Mainframe 2-82 IT#MTCI Function

IT#MTCI Function CALL W100-SUBPGM-NAME USING W100-ACTION, W100-CONTROL, W100-STREET-INFO, W100-RETURN-INFO, W100-DISPLAY-BASEDATA, W100-DATABASE-DATE, W100-SERVICE-BUREAU-NAME, W100-CUSTOMER-NAME, W100-CUSTOMER-ADDRESS-1, W100-CUSTOMER-ADDRESS-2, W100-CUSTOMER-ADDRESS-3, W100-CUSTOMER-ADDRESS-4, W100-FORM-FILE-NAME, W100-LEV1-NAME, W100-LEV2-NAME, W100-BASE-NAME, W100-ACITY-FNAME, W100-STREET-NAME-BUFF, W100-DET-BUFF. where:

01 W100-ACTION PIC X(01). 01 W100-CONTROL PIC X(16). 01 W100-STREET-INFO PIC X(300). 01 W100-RETURN-INFO PIC X(254). 01 W100-DISPLAY-BASEDATA. 05 W100-DISPBASE-VALUE.PIC X (01). 05 FILLER PIC X(01) VALUE LOW-VALUES. 01 W100-DATABASE-DATE PIC X(08). 01 W100-SERVICE-BUREAU-NAME PIC X(30). 01 W100-CUSTOMER-NAME PIC X(30). 01 W100-CUSTOMER-ADDRESS-1 PIC X(30). 01 W100-CUSTOMER-ADDRESS-2 PIC X(30). 01 W100-CUSTOMER-ADDRESS-3 PIC X(30). 01 W100-CUSTOMER-ADDRESS-4 PIC X(30).

Trillium Software System™ Programmer’s Guide, Volume 2 IT#MTCI Function 2-83

01 W100-FORM-FILE-NAME. 05 W100-FNAME PIC X(08). 05 FILLER PIC X(01)VALUE LOW-VALUES. 01 W100-LEV1-NAME. 05 W100-L1NAME PIC X(08). 05 FILLER PIC X(01)VALUE LOW-VALUES. 01 W100-LEV2-NAME. 05 W100-L2NAME PIC X(08). 05 FILLER PIC X(01)VALUE LOW-VALUES. 01 W100-BASE-NAME. 05 W100-BNAME PIC X(08). 05 FILLER PIC X(01)VALUE LOW-VALUES. 01 W100-STREET-NAME-BUFF. 05 W100-STREET-NAME PIC X (40) OCCURS 1000 TIMES INDEXED BY W100-STRNAM-IDX. 01 W100-DET-BUF. 05 W100-DETAIL-RECORD PIC X (87) OCCURS 50 TIMES INDEXED BY W100-DET-IDX. 01 W100-SUBPGM-NAME PIC X(08)VALUE ‘IT#MTCI’.

This table lists parameters used for COBOL calls to the IT Postal Geocoder.

Table 2.21 IT Postal Geocoder Parameters (COBOL on IBM Mainframe)

Parameter Type Use Length Description

ACTION AN In 1 Defines the call type as either O=Open, P=Process, R=Minimal Open or C=Close.

CONTROL AN in/ 16 Work area built on the Open call, then Out used during Process and Close calls. If ACTION is P, R or C=In; if ACTION is O=Out.

STREET-INFO AN In 300 Address of buffer that contains information to match against IT postal geocoder system. See “IT Postal Geocoder Input and Output Data” in Chapter 4.

Trillium Software System API Calls on IBM Mainframe 2-84 IT#MTCI Function

Table 2.21 IT Postal Geocoder Parameters (COBOL on IBM Mainframe) (Continued)

Parameter Type Use Length Description

RETURN-INFO AN Out 254 Address of buffer that contains information returned by Matcher. See “IT Postal Geocoder Input and Output Data” in Ch 4.

DISPLAY-BASEDATA AN In 1 Displays control information.

DATABASE-DATE AN In 8 Field containing database date of IT Directory in MMM YYYY format. Optional; else low values.

SERVICE-BUREAU- AN In 30 Name of bureau to print on accuracy NAME form.

CUSTOMER-NAME AN In 30 Customer name to print on accuracy form.

CUSTOMER-ADDRESS-1 AN In 30 Customer address to print on accuracy form.

CUSTOMER-ADDRESS-2 AN In 30 Customer address to print on accuracy form.

CUSTOMER-ADDRESS-3 AN In 30 Customer address to print on accuracy form.

CUSTOMER-ADDRESS-4 AN In 30 Customer address to print on accuracy form.

FORM-FILE-NAME AN In n* File that contains form (for historical report)

LEV1-NAME AN In n* File for Level 1 index for IT Directory (ITBUL1)

LEV2-NAME AN In n* File for Level 2 index for IT Directory (ITBUL2)

BASE-NAME AN In n* File containing directory basedata (ITBUBD)

Trillium Software System™ Programmer’s Guide, Volume 2 IT#MTCI Function 2-85

Table 2.21 IT Postal Geocoder Parameters (COBOL on IBM Mainframe) (Continued)

Parameter Type Use Length Description

STREET-NAME-BUFF AN Out 40,000 Buffer to collect street names within post town, when DISPLAY-BASEDATA = (3, A, B).

DET-BUFF AN Out 4,350 Buffer to collect street details for up to 50 possible matches, when DISPLAY- BASEDATA = (3, A, B).

See the section “IT Match Possibilities Data Area” in Chapter 4, for a layout of the fields included in this buffer. n* = Platform-specific width of a file name. Note that all file names should terminate with a null character after the last valid file name character. AN = Alphanumeric

Trillium Software System API Calls on IBM Mainframe 2-86 Calling the UK Postal Geocoder API from COBOL

Calling the UK Postal Geocoder API from COBOL

The following United Kingdom (UK) Postal Geocoder functions (subroutines) are called:

UM#AMAT Copies the appropriate fields from the Parser PREPOS Area (PNA) to the United Kingdom Postal Geocoder PMA input area. Also called the “Add Mat Function.”

UM#MTCI Opens the UK Postal Geocoder, matches the PMA to the postal directory, and closes the UK Postal Geocoder.

For more information about UK Postal Geocoder functionality, see the Geocoders manual. UM#AMAT Function

01 W100-SUBPGM-NAME PIC X(08) VALUE SPACES. MOVE ‘UM#AMAT’ TO W100-SUBPGM-NAME. CALL W100-SUBPGM-NAME USING W100-PREPOS-AREA, W100-STREET-INFO.

Table 2.22 UK Postal Geocoder Add Mat Function Parameters (COBOL on IBM Mainframe)

Parameter Type Use Length Description

PREPOS-AREA String In 9836 Data returned by the Parser; passed as input to the UM#AMAT function.

STREET-INFO String Out 235 Data returned by the UM#AMAT function; passed as input to the Geocoder.

Trillium Software System™ Programmer’s Guide, Volume 2 UM#MTCI Function 2-87

UM#MTCI Function

CALL W100-SUBPGM-NAME USING W100-ACTION, W100-CONTROL, W100-STREET-INFO, W100-RETURN-INFO, W100-DISPLAY-BASEDATA, W100-DATABASE-DATE, W100-LIST-NAME, W100-PROCESSOR-NAME, W100-FORM-FILE-NAME, W100-LEV1-NAME, W100-LEV2-NAME, W100-BASE-NAME, W100-CNTY_NAME, W100-PTWN_NAME, W100-LOCL_NAME, W100-DDLC_NAME, W100-LEVP_NAME, W100-LEVPI_NAME, W100-STREET_NAME_BUFF, W100-DET_BUFF.

where:

01 W100-ACTION PIC X(01). 01 W100-CONTROL PIC X(16). 01 W100-STREET-INFO PIC X(235). 01 W100-RETURN-INFO PIC X(450). 01 W100-DISPLAY-BASEDATA. 05 W100-DB-VALUE PIC X(01). 05 FILLER PIC X(01) VALUE LOW-VALUES. 01 W100-DATABASE-DATE PIC X(80). 01 W100-LIST-NAME PIC X(80). 01 W100-PROCESSOR-NAME PIC X(80). 01 W100-FORM-FILE-NAME. 05 W100-FNAMEPIC X(06). 05 FILLER PIC X(01) VALUE LOW-VALUES. 01 W100-LEV1-NAME. 05 W100-L1NAMEPIC X(06). 05 FILLER PIC X(01) VALUE LOW-VALUES.

Trillium Software System API Calls on IBM Mainframe 2-88 UM#MTCI Function

01 W100-LEV2-NAME. 05 W100-L2NAMEPIC X(06). 05 FILLER PIC X(01) VALUE LOW-VALUES. 01 W100-BASE-NAME. 05 W100-BNAMEPIC X(06). 05 FILLER PIC X(01) VALUE LOW-VALUES. 01 W100-CNTY-NAME. 05 W100-CNTYNAMEPIC X(06). 05 FILLER PIC X(01) VALUE LOW-VALUES. 01 W100-PTWN-NAME. 05 W100-PTNAMEPIC X(06). 05 FILLER PIC X(01) VALUE LOW-VALUES. 01 W100-LOCL-NAME. 05 W100-LOCLNAMEPIC X(06). 05 FILLER PIC X(01) VALUE LOW-VALUES. 01 W100-DDLC-NAME. 05 W100-DDLCNAMEPIC X(06). 05 FILLER PIC X(01) VALUE LOW-VALUES. 01 W100-LEVP-NAME. 05 W100-LPNAMEPIC X(06). 05 FILLER PIC X(01) VALUE LOW-VALUES. 01 W100-LEVPI-NAME. 05 W100-LPINAMEPIC X(06). 05 FILLER PIC X(01) VALUE LOW-VALUES. 01 W100-STREET-NAME-BUFFPIC X(30000). 01 W100-DET-BUFFPIC X(70000). 01 W100-SUBPGM-NAME PIC X(08)VALUE ‘UM#MTCI’.

This table lists parameters used by COBOL calls to the UK Postal Geocoder.

Table 2.23 UK Postal Geocoder Parameters (COBOL on IBM Mainframe)

Parameter Type Use Length Description

ACTION AN In 1 Defines call type as either O=Open, P=Process, R=Minimal Open, or C=Close.

Trillium Software System™ Programmer’s Guide, Volume 2 UM#MTCI Function 2-89

Table 2.23 UK Postal Geocoder Parameters (COBOL on IBM Mainframe) (Continued)

Parameter Type Use Length Description

CONTROL AN In/ 16 Control work area built on the Open Out call, then used during Process and Close calls. If ACTION is either P, R, or C=In; if ACTION is O=Out.

STREET-INFO AN In 235 Buffer that contains information to match against UK postal geocoder. See the section “UK Geocoder Input and Output Data” in Chapter 4.

RETURN-INFO AN Out 450 Address of buffer that contains information returned by the geocoder. See the section “UK Geocoder Input and Output Data” in Chapter 4.

DISPLAY-BASEDATA AN In 2 Displays control information. Variable length; last character must be filled with a NULL.

DATABASE-DATE AN In 80 Field containing database date of UK Directory in MMM YYYY format. Optional; else low values.

LIST-NAME AN In 80 Name of list to match against postal directory (null-terminated).

PROCESSOR-NAME AN In 80 Name of processor (null).

FORM-FILE-NAME AN In n* File that contains form.

LEV1-NAME AN In n* File for Level 1 index of UK Directory. (UMBUL1)

LEV2-NAME AN In n* File for Level 2 index of UK Directory. (UMBUL1)

BASE-NAME AN In n* File for UK directory basedata. (UMBUBD)

CNTY-NAME AN In n* File that contains county decodes.

Trillium Software System API Calls on IBM Mainframe 2-90 UM#MTCI Function

Table 2.23 UK Postal Geocoder Parameters (COBOL on IBM Mainframe) (Continued)

Parameter Type Use Length Description

PTWN-NAME AN In n* File that contains post town decodes.

LOCL-NAME AN In n* File that contains locality decodes.

DDLC-NAME AN In n* File containing double-dependent locality decodes.

LEVP-NAME AN In n* File that contains post code to match directory database (alternate access method).

LEVPI-NAME AN In n* File that contains outbound postcode index (alternate access method).

STREET-NAME- AN Out 30,000 Buffer to collect street names within BUFF county/post town, when DISPLAY- BASEDATA = (3, A, B, I, J, K or T).

DET-BUFF AN Out 70,000 Buffer to collect street details for 200 possible matches, when DISPLAY- BASEDATA = (3, A, B, I, J, K or T). See “UK Match Possibilities Data Area” in Chapter 4 of this document. n* = Platform-specific width of a file name. Note that all file names should terminate with a null character after the last valid file name character AN = Alphanumeric

When Display_Basedata = 3, A, B, I, J, K or T, 200 possible matches are stored in the details buffer (det_buff). These are alternate addresses for any record that got a fail level of 0, 4, 5 or contains the same postcode. A “T” option limits returned records in the details buffer. Additionally up to 1000 30-character street names consisting of name only (no descriptors), beginning with the same first character within the post town, is populated in the street_name_buff area. For example, the street name for 10 Main Close is "Main".

Trillium Software System™ Programmer’s Guide, Volume 2 How the UK Geocoder Works 2-91

How the UK Geocoder Works The input to the UK Geocoder can be populated in two ways: either directly, or by using the Parser and the Addmat program. The Parser is used to ‘elementize’ name and address components of free-format name and address records. It also has the ability to correct common name and address errors and abbreviations, such as changing ‘Rd.’ to ‘Road’.

The Parser searches for words and patterns within the name and address data in order to break it down into its constituent parts (such as House Number, Street Name, and Street Type). The Parser can be ‘tuned’ to recognize new or unusual words and patterns in exactly the same way in which it is tuned in the batch environment. The same word and pattern tables can be used for both batch and online environments.

Forward geocoding means using the Geocoder to match an address that would be in the same format as a mailing label:

Oraddrl1: Fiona MacDonald Oraddrl2: 3 Hailes Ave Oraddrl3: Edinburgh Oraddrl4: EH13 0NA

1. This type of address should be passed through the Parser, which can identify free format address lines and split the elements into specific fields (such as hsno or building). 2. The addmat program then takes the parsed elements and populates the Geocoder input fields (street_info). 3. The Geocoder can then take this information and try to match it to the PAF file and return matched data in the return_info field, and alternate matching records in the details buffer.

Reverse geocoding is used when the elements of an address are already known (such as hsno, postcode).

Trillium Software System API Calls on IBM Mainframe 2-92 UK Geocoder Return Data

Examples House number & postcode: House name & postcode: Sub_building, hsno & postcode: Postcode: EH13 0NA Postcode: EH13 0LZ Postcode: NW6 3AP House Number: 3 House name: Hailes House House name: Cecil Court Sub_building: Flat 2 Sub_building_value: 2

1. The Parser expects a mailing label type address format; it is not necessary to call the Parser or Addmat program, because specific known elements are used to directly populate the Geocoder input fields (street_info). 2. If available, other elements from the address can also be included, such as sub_building information like "flat 3", using these to populate the street_info field with "flat 3" and the street_info sub_building_value field with "3". This is typically the function of the Addmat program, but since the Parser could not be used to identify the address, the program would not correctly populate the street_info fields for the Geocoder. UK Geocoder Return Data

The Geocoder can return data in three buffers (depending on the Display_ Basedata option) and how the Geocoder is being used. If implemented in a batch environment, then only the return_info buffer can be used. If the Geocoder is called by your own application, then the return_info, street_ name and details_buffer fields are available to you.

• Return Info Buffer (450 bytes)—Contains data on the record that matched to PAF. By default, this information is a blend of the input Geocode information and the matched PAF data. The Return_info will be populated when the fail level is 0; otherwise it will only contain the original Geocode input data. • Street Name Buffer (30,000 bytes)—Contains up to 1000 street names (thoroughfare names) of all the streets within the input post town. The display basedata options can control how population will happen with all the street names or just the ones that have the same first character as the input street name. • Details Buffer (70,000 bytes)—Contains all field information for any alternative records. This means that if the Geocoder could not determine just one final record to populate into the return_info buffer, up to 200

Trillium Software System™ Programmer’s Guide, Volume 2 UK Geocoder Return Data 2-93

possible alternate records would be populated into the details buffer. Note that the details buffer only contains PAF data.

Trillium Software System API Calls on IBM Mainframe 2-94 Calling the TG Postal Geocoder API from COBOL

Calling the TG Postal Geocoder API from COBOL

The following Trillium Global (TG) Postal Geocoder functions (subroutines) are called:

TG#AMAT Copies the appropriate fields from the Parser PREPOS Area (PNA) to the TG Postal Geocoder PMA input area. Also called the “Add Mat Function.”

TG#MTI2 Opens the TG Postal Geocoder, matches the PMA to the postal directory, and closes the TG Postal Geocoder. Contains the option of using the TG Rules file functionality.

TG#MTCI Opens the TG_Postal Geocoder, matches the PMA to the postal directory, and closes the TG_Postal Geocoder.

For more information about TG Geocoder functionality, see the Geocoders manual. TG#AMAT Function

01 W100-SUBPGM-NAME PIC X(08) VALUE SPACES. MOVE ‘TG#AMAT’ TO W100-SUBPGM-NAME. CALL W100-SUBPGM-NAME USING W100-PREPOS-AREA, W100-STREET-INFO.

Table 2.24 TG Postal Geocoder Add Mat Function Parameters (COBOL on IBM Mainframe)

Parameter Type Use Length Description

PREPOS-AREA AN In 9836 Data returned by the Parser; passed as input to the TG#AMAT function.

STREET-INFO AN Out 310 Data returned by the TG#AMAT function; passed as input to the Geocoder.

Trillium Software System™ Programmer’s Guide, Volume 2 TG#MTI2 Function 2-95

TG#MTI2 Function

CALL W100-SUBPGM-NAME USING W100-ACTION, W100-CONTROL, W100-STREET-INFO, W100-RETURN-INFO, W100-DISPLAY-BASEDATA, W100-DATABASE-DATE, W100-SERVICE-BUREAU-NAME, W100-CUSTOMER-NAME, W100-CUSTOMER-ADDRESS-1, W100-CUSTOMER-ADDRESS-2, W100-CUSTOMER-ADDRESS-3, W100-CUSTOMER-ADDRESS-4, W100-FORM-FILE-NAME, W100-LEV1-NAME, W100-LEV2-NAME, W100-BASE-NAME, W100-ACITY-NAME, W100-CSTATE-NAME, W100-STREET-NAME-BUFF, W100-DET-BUFF. W100-DELIVERY-TYPE. W100-LEVEL-MATCHING W100-RULESFN

where:

01 W100-ACTION PIC X(01). 01 W100-CONTROL PIC X(16). VALUE LOW VALUES. 01 W100-STREET-INFO PIC X(600). 01 W100-RETURN-INFO PIC X(900). 01 W100-DISPLAY-BASEDATA PIC X(01). 01 W100-DATABASE-DATE PIC X(08). 01 W100-SERVICE-BUREAU-NAME PIC X(30). 01 W100-CUSTOMER-NAME PIC X(30). 01 W100-CUSTOMER-ADDRESS-1 PIC X(30). 01 W100-CUSTOMER-ADDRESS-2 PIC X(30). 01 W100-CUSTOMER-ADDRESS-3 PIC X(30). 01 W100-CUSTOMER-ADDRESS-4 PIC X(30). 01 W100-FORM-FILE-NAME. 05 W100-FNAME PIC X(08). 05 FILLER PIC X(01) VALUE LOW VALUES.

Trillium Software System API Calls on IBM Mainframe 2-96 TG#MTI2 Function

01 W100-LEV1-NAME. 05 W100-L1NAME PIC X(08). 05 FILLER PIC X(01) VALUE LOW VALUES. 01 W100-LEV2-NAME. 05 L2NAME PIC X(08). 05 FILLER PIC X(01) VALUE LOW VALUES. 01 W100-BASE-NAME. 05 W100-BNAME PIC X(08). 05 FILLER PIC X(01) VALUE LOW VALUES. 01 W100-ACITY-NAME. 05 W100-ACNAME PIC X(08). 05 FILLER PIC X(01) VALUE LOW VALUES. 01 W100-CSTATE-NAME. 05 W100-CSNAME PIC X(08). 05 FILLER PIC X(01) VALUE LOW VALUES. 01 W100-STREET-NAME-BUFF PIC X(30000). 01 W100-DET-BUFF PIC X(40000). 01 W100-DELIVERY-TYPE PIC X(01) 01 W100-LEVEL-MATCHING. 05 W100-LEVEL-MATCH PIC S9(9) COMP(OCCURS 20 TIMES.) 01 W100-RULESFN. 05 W100-RULESFN PIC X(08). 05 FILLER PIC X(01) VALUE LOW VALUES. 01 W100-SUBPGM-NAME PIC X(08)VALUE ‘TG#MTI2’. This table describes parameters used for COBOL calls to the TG Geocoder.

Table 2.25 Trillium Global (TG) Geocoder Parameters (COBOL on IBM Mainframe)

Parameter Type Use Length Description

ACTION AN In 1 Defines the call type as either O=Open, P=Process, R=Minimal Open or C=Close.

CONTROL AN In/ 16 Control work area built on the Open Out call, then used during the Process and Close calls. If ACTION is either P, R or C=In; if ACTION is O=Out.

Trillium Software System™ Programmer’s Guide, Volume 2 TG#MTI2 Function 2-97

Table 2.25 Trillium Global (TG) Geocoder Parameters (COBOL on IBM Mainframe) (Continued)

Parameter Type Use Length Description

STREET-INFO AN In 600 Address of buffer that contains information to match against TG Postal Geocoder. See “TG Geocoder Input and Output Record Format” in Chapter 4.

RETURN-INFO AN Out 900 Address of buffer that contains information returned by Matcher. See the section “TG Geocoder Input and Output Record Format” in Chapter 4.

DISPLAY-BASEDATA AN In 1 Displays control information.

DATABASE-DATE AN In 8 Field containing the database date of TG Directory in MMM YYYY format. Optional; else low values.

SERVICE-BUREAU- AN In 30 Name of bureau to print on accuracy NAME form.

CUSTOMER-NAME AN In 30 Customer name to print on accuracy form.

CUSTOMER- AN In 30 Customer address to print on accuracy ADDRESS-1 form.

CUSTOMER- AN In 30 Customer address to print on accuracy ADDRESS-2 form.

CUSTOMER- AN In 30 Customer address to print on accuracy ADDRESS-3 form.

CUSTOMER- AN In 30 Customer address to print on accuracy ADDRESS-4 form.

FORM-FILE-NAME AN In n* File that contains form (for historical report)

LEV1-NAME AN In n* File for Level 1 index for TG Postal Directory.

Trillium Software System API Calls on IBM Mainframe 2-98 TG#MTI2 Function

Table 2.25 Trillium Global (TG) Geocoder Parameters (COBOL on IBM Mainframe) (Continued)

Parameter Type Use Length Description

LEV2-NAME AN In n* File for Level 2 index for TG Postal Directory.

BASE-NAME AN In n* File that contains TG Directory basedata.

ACITY-NAME AN In n* File that contains TG auxiliary city

CSTATE_NAME AN In n* File that contains TG coded state

STREET-NAME-BUFF AN Out 30,000 Buffer to collect street names within province/post town, when DISPLAY- BASEDATA = (3, A, B).

DET-BUFF AN Out 40,000 Buffer to collect street details for possible matches, when DISPLAY- BASEDATA = (3, A, B).

See the section “TG Match Possibilities Data Area” in Chapter 4 of this document, for a layout of the fields included in this buffer.

DELIVERY-TYPE AN In 1 Delivery address line type; either 0=English-style addressing (hsno, street name, unit), or 1=Latin-style addressing (unit, street name, hsno).

LEVEL-MATCHING Binary In 20 Array of integers. See the table 4-byte below. integers This is a REQUIRED parameter.

RULESFN AN In n* Contains the TG Geocoder rules file. Optional. Set to NULL if not being used. Full details on the rules file can be found in Geocoders, in the “TG Geocoder” chapter. n* = Platform-specific width of a file name. Note that all file names should terminate with a null character after the last valid file name character. AN = Alphanumeric

Trillium Software System™ Programmer’s Guide, Volume 2 TG#MTI2 Function 2-99

The settings for level matching are described in the table below:

Table 2.26 Level Matching Parameter Values

Pos. Mexico Brazil Spain France Netherlands Singapore Portugal Belgium Malaysia Italy Switzerland

1 Street match 0 1 1 1 1 1 1 1 1 1 1

2 Dwelling match 0 0 0 1 1 0 1 0 0 0 0

3 Neighborhood match 1 1 1 1 0 1 1 0 0 1 1

4 Province match 1 1 0 0 0 0 0 0 1 1 0

5 Business name match 0 0 0 1 0 0 0 0 0 0 0

6 Street type match 0 1 1 1 0 1 1 1 1 1 1

7 Street direction match 0 0 0 0 0 0 0 0 0 0 0

8 Postal Code match 1 1 1 1 1 1 1 1 1 1 1

9 Acceptance score 98 93 93 93 93 93 93 93 93 93 93 passing level

10 Street name score 90 90 90 90 90 90 90 90 90 90 90 passing level

12 Neighborhood score 95 95 95 95 95 95 95 95 95 95 95 passing level

12 Business name score 95 95 95 95 95 95 95 95 95 95 95 passing level

13 Post code length 5 5 5 5 6 5 7 4 5 5 4

14 Directory version 0 0 0 0 0 0 0 0 0 0 0

15 Address priority 0 0 0 0 0 0 1 0 0 0 0

16Directory style 000 0 0 0 0 00 00

Trillium Software System API Calls on IBM Mainframe 2-100 Calling the Create Window Key API from COBOL

Calling the Create Window Key API from COBOL

The Create Window Key function can be used to create window keys used in matching. A window key is a composite structure that it constructed from elements in the input record. The window key is then used to select records to include in the Match window for comparison. This program uses a rules-based parameter file to create up to 30 window keys per record.

Detailed information about each parameter is contained in the table below. There are three different call types defined by the ‘ACTION’ parameter. Each call uses the same parameters with a different ACTION value. For more information about Create Window Key, see the Batch User’s Guide.

CF#WKEY Function

CALL W100-SUBPGM-NAME USING W100-ACTION W100-PARM-NAME-AREA W100-CURR-RECORD W100-WINDOW-KEY W100-CONTROL where:

01 W100-ACTION PIC X(01). 01 W100-PARM-NAME 03 W100-PARM-NAME PIC X(08) 03 FILLER PIC X(01) VALUE LOW-VALUES. 01 W100-CURR-RECORD PIC X(nnn). 01 W100 WINDOW-KEY-AREA 02 W100-WINDOW-KEY PIC X(50) OCCURS 30 TIMES INDEX BY W100-WKEY-IDX. 01 W100-CONTROL. PIC X(04) 01 W100-SUBPGM-NAME PIC X(08)VALUE CR#WKEY.

W100-PARM-NAME should be set to the DDNAME of the DD statement for the parameter file. W100-CURR-RECORD should be the length of the input record. W100-WINDOW-KEY-AREA is the return area for the generated window keys. It can hold a maximum of thirty 50- character window keys. Unused and bypassed window keys are set to spaces.

Trillium Software System™ Programmer’s Guide, Volume 2 Parameters for Create Window Key Program 2-101

This table lists parameters for COBOL calls to the Create Window Key function.

Table 2.27 Create Window Key Function Parameters (COBOL on IBM Mainframe)

Parameter Type Use Length Description

ACTION AN In 1 Defines the call type as either O=Open, P=Process, or C=Close.

PARM-NAME AN In n* Name of the parameter file. Null-terminated.

CURR-AREA AN In Variable Record that contains the data used to derive the window key.

WINDOW-KEY- AN Out 1500 Buffer for holding window key results; can AREA contain up to 30 50-byte window keys. Keys are left-justified every 50 bytes.

CONTROL AN In/ 4 Work area built on the Open call, then used Out during the Process and Close calls. If ACTION is either P or C=In; if ACTION is O=Out.

n* = Platform-specific width of a file name. Note that all file names should terminate with a Null character after the last valid file name character. AN = Alphanumeric Parameters for Create Window Key Program

The parameter files required for COBOL calls to the Create Window Key function are:

Parameter DDL file name Description

INP_DDL PARSOUT,PARSREC DDL file name, followed by the RECORD name in the DDL.

RULES_DDNAME PFRULES File containing a list of window key rules that define how many window keys to create and how each should be created.

See the Create Window Key section of the Batch Users Guide for complete information about the construction of window keys.

Trillium Software System API Calls on IBM Mainframe 2-102 Calling the Data Reconstructor API from COBOL

Calling the Data Reconstructor API from COBOL

Details of each parameter required by the call are listed in the following table. There are three different call types as detailed by the ‘ACTION’ parameter. Each call uses the same parameters, with a different ACTION value. For information on Data Reconstructor functionality, see the Batch User’s Guide.

RC#MULTI Function

CALL W100-SUBPGM-NAME USING W100-ACTION W100-CONTROL W100-PARMFILE W100-PARMECHO W100-INPUT W100-OUTPUT W100-RETURN-CODE. where:

01 W100-ACTION PIC X(1). 01 W100-CONTROL PIC X(16). 01 W100-PARMFILE. 05 W100-PARMFNM PIC X(08) VALUE 'PFRTRPRM'. 05 FILLER PIC X(01) VALUE LOW-VALUES. 01 W100-PARMECHO-NAME. 05 W100-ECHOFNM PIC X(08) VALUE 'PFECHO '. 05 FILLER PIC X(01) VALUE LOW-VALUES. 01 W100-INPUT PIC X(1000). 01 W100-OUTPUT. 05 W100-ROUTOUT-AREA OCCURS 50 TIMES INDEXED BY ROUT-IDX. 10 W100-ROUTOUT-CO-CODE PIC X(02). 10 FILLER PIC X(01). 01 W100-RETURN-CODE PIC 9(07) COMP VALUE ZERO. 01 W100-SUBPGM-NAME PIC X(08) VALUE ‘RC#MULTI’.

Trillium Software System™ Programmer’s Guide, Volume 2 RC#MULTI Function 2-103

This table lists the parameters used for Data Reconstructor function on COBOL.

Table 2.28 Data Reconstructor Parameters (COBOL on IBM Mainframe)

Parameter Type Use Length Description

ACTION PIC X In 1 Defines the call type as either O=Open, P=Process, or C=Close.

CONTROL PIC X In/ 16 Control work area built on the Open call, then Out used during the Process and Close calls. If ACTION is either P or C=In; if ACTION is O=Out.

PARMFILE PIC X In n* Name of the parameter file.

PARMECHO PIC X In n* Name of the parameter echo file used in debugging parameter file problems. If not used, set to NULL. Optional.

INPUT PIC X In Variable Buffer that contains the input data to be processed by the reconstruction rules when the process call is used.

OUTPUT PIC X Out Variable Buffer that contains the output data generated by the reconstruction rules upon completion of the Process call.

RETCODE PIC X Out 1 Return code value indicating the status of the call. This must be checked to ensure a zero value after each call. (0=OK).

Return (error) codes, for both the program as well as the rules file, appear in Chapter 4, in the section “Data Reconstructor error codes.”

n* = Platform-specific width of a file name. Note that all file names should terminate with a Null character after the last valid file name character.

Trillium Software System API Calls on IBM Mainframe 2-104 Calling the Matcher API from COBOL

Calling the Matcher API from COBOL

The Matcher is different from the other module calls in that there are many calls to individual functions within the Matcher module itself. The type of match you wish to perform dictates the functions you need to call. The two matching modes are Reference Matching and Window Matching and the operation of each are detailed below.

For more information about Matcher functionality, see the Batch User’s Guide.

Reference Matching Mode

This section discusses the steps required to use the Matcher in the Reference Match mode. This mode of operation matches one record (called the candidate record) to one or more records (called the reference record) that have been retrieved from a source like a database. The match rules are contained in external parameter files that are loaded to memory upon initialization.

Reference match requirements: • Both the candidate record and reference record(s) must be the same shape • Reference record(s) must have been processed through the same or similar steps as candidate records to ensure field standardization between the records. • The Matcher fields list parameter files must be configured to use field locations (fldlocs) and not DDL field names as is commonly used in batch. • If an optional candidate matching information key is used, the reference records must contain a unique key for both household and individual levels.

Reference Match Step and Associated Module Names The following list can be used as an example of the minimum steps required to perform a reference match and retrieve the results. The step name is given followed by the entry point name in parenthesis in the program. Each module section of the documentation details its function.

Trillium Software System™ Programmer’s Guide, Volume 2 Reference Matching Mode 2-105

Steps external, but necessary to the match process are not in this list. An example is the step to pull records from a database to load to the Match window. This is an operation that is performed by either the calling program or another external subroutine.

This table describes these minimal steps:

Table 2.29 Suggested Reference Match Entry Point Order

Function Name Description

M#INITMR Used to set up the Match windows and initialize the Matcher.

M#PARAMS Call this function four times for a retail match; twice for a commercial match.

Each call must process one of the required fields or patterns parameter files required for the Matcher. Field files must use the fldlocs keyword instead of the fldnames keyword because DDLs are not used in the calling process.

M#ADDREC This loads the Match window with reference records (the number of records with window key of the same value as the candidate record).

M#CMATCH Used to match the transaction record to the database records loaded to the Match window during Add record.

M#NUMMAT Used to obtain the number of records that matched the candidate record.

M#GETMAT Call Obtain Reference Match to return a value in Number of Reference Matches that is equal to the total number of reference match records that are available to be obtained. (One record is called at a time.)

• Each individual record is written to a buffer. That record must be moved from the buffer before calling for another record. Otherwise, the original record is overwritten. • Buffer is the input record length plus 3 bytes holding the match pattern ID number (e.g. P150 would have a pattern ID of 150). • By default, the returned buffer is sorted in match pattern ID ascending order. If this order is not desired, the pattern ID numbers can all be set to the same value. • Calling parameters specify if you are requesting a household/ commercial match or an individual match.

Trillium Software System API Calls on IBM Mainframe 2-106 Window Matching Mode

Table 2.29 Suggested Reference Match Entry Point Order

Function Name Description

M#CLEARW Empties the Match window and restart with Add record to match the next transaction.

M#ENDMAT Call End Matcher after matching is complete to close the Matcher and write statistics to a file.

Suspect matches can be retrieved in a similar way if suspect match patterns are being used. Call the number of reference suspects (M#NUMSUS) function and use the value returned to loop for calling the obtain reference suspects (M#GETSUS) function.

Window Matching Mode This section discusses the steps required to use the Matcher in the Window Match mode. This mode of operation matches a group of records to one another. The match rules are contained in external parameter files that are loaded to memory upon initialization. Window Match Step and Associated Module Names The following list can be used as an example of the minimum steps required to perform a window match and retrieve the results. The step name is given followed by the entry point name in parenthesis in the program. Each module section of the documentation details its function. Steps external, but necessary, to the match process are not in this list.

Table 2.30 Suggested Window Match Entry Point Order

Function Name Description

M#INITMR Call Initialize Matcher to set up the Match windows and initialize the Matcher.

M#PARAMS Call Process Parameter four times for a retail match; twice for a commercial match. Each call must process one of the required fields or patterns parameter files required for the Matcher. The field files must use the fldlocs keyword instead of the fldnames keyword because DDLs are not used in the API process.

Trillium Software System™ Programmer’s Guide, Volume 2 Add Record (M#ADDREC) 2-107

Table 2.30 Suggested Window Match Entry Point Order (Continued)

Function Name Description

M#ADDREC Call Add Record for the number of records with the same candidate code to be added to a Match window.

M#SORTWN Call Sort Window to sort the matched window records into a specified order (such as matched individuals within matched household).

M#WMATCH Call Match Window to perform match of the records that have been loaded to the Match window during Add record.

M#COMMON Call Create Common to append the common data and survivor flag information about the matched records (Window match only).Optional

M#RETRVR Call Retrieve Record for the # of window records to retrieve the matched record with appended match information. Returned buffer size must equal input record length + 184 bytes.

M#CLEARW Call Clear Window to empty the Match window and restart with Add record.

M#ENDMAT Call End Matcher after all matching is complete to close the Matcher and write statistics.

Declare a field in Working Storage to be set to the entry point names of the matcher functions.

01 W100-SUBPGM-NAME PIC X(08) VALUE SPACES.

Add Record (M#ADDREC)

The M#ADDREC function adds records to a Match window. MOVE ‘M#ADDREC’ TO W100-SUBPGM-NAME. CALL W100-SUBPGM-NAME USING W100-RETVAL W100-PARM-TYPE W100-MAT-RECORD-FULL W100-USERAREA.

Trillium Software System API Calls on IBM Mainframe 2-108 Clear Window (M#CLEARW)

This table describes parameters for COBOL calls to the Add Record function.

Table 2.31 Add Record Parameters (COBOL on IBM Mainframe)

Parameter Type Use Length Description

RETVAL PIC X Out 1 Error code returned by the subroutine. See the error codes for Add Record in Chapter 4.

PARM-TYPE PIC X In 1 Indicates the window to expand in the match, and therefore the type of match.

R= use the Retail window along with the Retail field and pattern lists for matching C= use the Commercial window along with the Commercial field and pattern lists for matching.

MAT-RECORD- PIC X In n* Specifies the record to be added. FULL

USERAREA PIC X In 16 Address of the parameter area that resides in the calling program but is maintained by the Matcher. n* = Length of the record to be added to the Match window. The length used here must be the same as what was defined during the initializeMatcher call.

Clear Window (M#CLEARW)

The M#CLEARW function erases the specified window record list. MOVE ‘M#CLEARW’ TO W100-SUBPGM-NAME. CALL W100-SUBPGM-NAME USING W100-RETVAL W100-PARM-TYPE W100-USERAREA.

This table describes parameters used by COBOL calls to the Clear Window function.

Trillium Software System™ Programmer’s Guide, Volume 2 Create Common (M#COMMON) 2-109

Table 2.32 Clear Window Function Parameters (COBOL on IBM Mainframe)

Parameter Type Use Length Description

RETVAL PIC X Out 1 Error code returned. See the error codes for Clear Window in Chapter 4.

PARM-TYPE PIC X In 1 Indicates which window to erase; either R=Retail, or C=Commercial.

USERAREA PIC X In 16 Address of the parameter area that resides in the calling program but is maintained by the Matcher.

Create Common (M#COMMON)

The M#COMMON function creates the common data segment for matched records in a record list and can optionally produce the linked records file (Window match only). The common data is defined as the “best” data derived from matches, based on the rules defined in the common fields parameter file. MOVE ‘M#COMMON’ TO W100-SUBPGM-NAME. CALL W100-SUBPGM-NAME USING W100-RETVAL W100-PARM-TYPE W100-USERAREA.

This table describes the parameters used in COBOL calls to the Create Common function.

Trillium Software System API Calls on IBM Mainframe 2-110 End Matcher (M#ENDMAT)

Table 2.33 Create Common Function Parameters (COBOL on IBM Mainframe)

Parameter Type Use Length Description

RETVAL PIC X Out 1 Error code returned. See the error codes for Create Common in Chapter 4.

PARM-TYPE PIC X In 1 Indicates the window from which to generate the common data segment:

R=Retail C=Commercial.

USERAREA PIC X In 16 Address of the parameter area that resides in the calling program but is maintained by the Matcher.

End Matcher (M#ENDMAT)

The M#ENDMAT function optionally displays program statistics, erases both the retail and commercial window record lists (if they still exist), and terminates the Matcher. MOVE ‘M#ENDMAT’ TO W100-SUBPGM-NAME. CALL 'W100-SUBPGM-NAME' USING W100-RETVAL W100-USERAREA.

This table describes the parameters used by COBOL calls to the End Matcher function.

Trillium Software System™ Programmer’s Guide, Volume 2 Initialize Matcher (M#INITMR) 2-111

Table 2.34 End Matcher Function Parameters (COBOL on IBM Mainframe)

Parameter Type Use Length Description

RETVAL PIC X Out 1 Error code returned by the subroutine. See Chapter 4 for End Matcher error codes.

USERAREA PIC X In 16 Address of the parameter area that resides in the calling program but is maintained by the Matcher.

Initialize Matcher (M#INITMR)

The M#INITMR function creates the Match window area for either a Reference match or a Window match. MOVE ‘M#INITMR’ TO W100-SUBPGM-NAME. CALL W100-SUBPGM-NAME USING W100-RETVAL W100-STAT-FILE-DATA W100-LINK-FILE-DATA W100-RECLEN W100-USERAREA.

This table describes how these parameters are declared.

Table 2.35 Initialize Matcher Function Parameters (COBOL on IBM Mainframe)

Parameter Type Use Length Description

RETVAL PIC X Out 1 Error code returned by the subroutine. Initialize to a space to invoke a regular match. Initialize to “S” to invoke the slow match.

Trillium Software System API Calls on IBM Mainframe 2-112 Initialize Matcher (M#INITMR)

Table 2.35 Initialize Matcher Function Parameters (COBOL on IBM Mainframe) (Continued)

Parameter Type Use Length Description

STAT-FILE-DATA PIC X In n* File where program statistics are displayed.

LINK-FILE-DATA PIC X In n* Name of the file to contain keys of matched records when performing multiple window match scenarios. This file is only required when performing window matching.

RECLEN Binary In 7 Length of input file records to match. A negative length allows data about the match comparisons to be written to the statistics file. Useful in debugging Matcher problems.

USERAREA PIC X Out 16 Address of the parameter area that resides in the calling program but is maintained by the Matcher.

n* = Platform-specific width of a file name. Note that all file names should terminate with a Null character after the last valid file name character.

Trillium Software System™ Programmer’s Guide, Volume 2 Match Candidate (M#CMATCH) 2-113

Match Candidate (M#CMATCH)

The M#CMATCH function initiates the matching of a specified candidate record against records in the specified window record list and saves information about the best matches. MOVE ‘M#CMATCH’ TO W100-SUBPGM-NAME. CALL W100-SUBPGM-NAME USINGW100-RETVAL W100-CODE W100-BUFFER W100-USERAREA.

This table describes how these parameters are declared.

Table 2.36 Match Candidate Function Parameters (COBOL on IBM Mainframe)

Parameter Type Use Length Description

RETVAL PIC X Out 1 Error code returned by the subroutine.

CODE PIC X In 1 Indicates the window to use in the match, and therefore the type of matching: R= use the Retail window along with the Retail field and pattern lists for matching C = use the Commercial window along with the Commercial field and pattern lists for matching.

BUFFER PIC X In n* Specifies the candidate record to match.

USERAREA PIC X In 16 Address of the parameter area that resides in the calling program but is maintained by the Matcher.

n* = Length of the candidate record to be matched to the records added to the match window during the addRecord call. The length used here must be the same as what was defined during the initializeMatcher call.

Trillium Software System API Calls on IBM Mainframe 2-114 Match Window (M#WMATCH)

Match Window (M#WMATCH)

Initiates the matching of a specified window record list against itself. Appends the results of the matching process to each record in the record list. MOVE ‘M#WMATCH’ TO W100-SUBPGM-NAME. CALL W100-SUBPGM-NAME USING W100-RETVAL W100-PARM-TYPE W100-USERAREA.

This table describes parameters for COBOL calls to the Match Window function.

Table 2.37 Match Window Function Parameters (COBOL on IBM Mainframe)

Parameter Type Use Length Description

RETVAL PIC X Out 1 Error code returned by the subroutine. See the error codes for Match Window in Chapter 4.

PARM-TYPE PIC X In 1 Indicates the window used in the match, and the type of match

R=Retail – Use the Retail window along with the Retail field and pattern lists for matching C=Commercial – Use the Commercial window along with the Commercial field and pattern lists for matching.

USERAREA PIC X In 16 Address of the parameter area that resides in the calling program but is maintained by the Matcher.

Trillium Software System™ Programmer’s Guide, Volume 2 Number of Reference Matches (M#NUMMAT) 2-115

Number of Reference Matches (M#NUMMAT)

The M#NUMMAT function finds the number of matches which occurred on a Reference match. MOVE ‘M#NUMMAT’ TO W100-SUBPGM-NAME. CALL W100-SUBPGM-NAME USING W100-RETVAL W100-MLEV W100-NUMBER-OF-MATCHES W100-USERAREA

This table describes the parameters used by COBOL calls to the Number of Reference Matches function.

Table 2.38 Number of Reference Matches Function Parameters (COBOL on IBM Mainframe)

Parameter Type Use Length Description

RETVAL PIC X Out 1 Error code returned by the subroutine. See these error codes listed in Chapter 4.

MLEV PIC X In 1 Set to either: 0=Household/Commercial 1=Individual

NUMBER-OF- Binar Out 7 Number of matches. MATCHES y

USERAREA PIC X In 16 Address of the parameter area that resides in the calling program but is maintained by the Matcher.

Trillium Software System API Calls on IBM Mainframe 2-116 Number of Suspect Matches (M#NUMSUS)

Number of Suspect Matches (M#NUMSUS)

The M#NUMSUS function finds the number of suspect matches that occurred on a Reference match. MOVE ‘M#NUMSUS’ TO W100-SUBPGM-NAME. CALL W100-SUBPGM-NAME USING W100-RETVAL W100-MLEV W100-NUMBER-OF-SUSPECTS W100-USERAREA

This table describes the parameters used by COBOL calls to the Number of Suspect Matches function.

Table 2.39 Number of Suspect Matches Function Parameters (COBOL on IBM Mainframe)

Parameter Type Use Length Description

RETVAL PIC X Out 1 Error code returned by the subroutine. See these error codes listed in Chapter 4.

MLEV PIC X In 1 Set to either: 0=Household/Commercial, or 1=Individual

NUMBER-OF- Binary Out 7 Number of suspects. SUSPECTS

USERAREA PIC X In 16 Address of the parameter area that resides in the calling program but is maintained by the Matcher.

Trillium Software System™ Programmer’s Guide, Volume 2 Obtain Reference Match (M#GETMAT) 2-117

Obtain Reference Match (M#GETMAT)

The M#GETMAT function obtains the specified record that matched successfully on a reference match from the specified window. MOVE ‘M#GETMAT’ TO W100-SUBPGM-NAME. CALL W100-SUBPGM-NAME USING W100-RETVAL W100-MLEV W100-RECORD W100-BUFFER W100-USERAREA

This table lists parameters used by COBOL calls to the Obtain Reference Match function.

Table 2.40 Obtain Reference Match Function Parameters (COBOL on IBM Mainframe)

Parameter Type Use Length Description

RETVAL PIC X Out 1 Error code returned by the subroutine. See these error codes listed in Chapter 4.

MLEV PIC X In 1 Set to either: 0=Household/Commercial, or 1=Individual

RECORD Binary In n1 Indicates which match to retrieve from the match window.

BUFFER PIC X In n2 Address of the area to receive the record.

USERAREA PIC X In 16 Address of the parameter area that resides in the calling program but is maintained by the Matcher.

n1 = Length of numeric value indicating which match to retrieve. n2 = Length of the record as defined during the initializeMatcher call + 3 bytes to contain the matched pattern ID.

Trillium Software System API Calls on IBM Mainframe 2-118 Obtain Reference Suspect Match (M#GETSUS)

Obtain Reference Suspect Match (M#GETSUS)

The M#GETSUS function obtains the specified record that suspected successfully on a reference match from the specified window. MOVE ‘M#GETSUS’ TO W100-SUBPGM-NAME. CALL W100-SUBPGM-NAME USING W100-RETVAL W100-MLEV W100-RECORD W100-BUFFER W100-USERAREA

This table describes the parameters used by COBOL calls to the Obtain Reference Suspect Matches function.

Table 2.41 Obtain Reference Suspect Match Function Parameters (COBOL on IBM Mainframe)

Parameter Type Use Length Description

RETVAL PIC X Out 1 Error code returned by the subroutine. See chapter 4 for a list of error codes.

MLEV PIC X In 1 Set to either:

0=Household/Commercial 1=Individual

RECORD Binary In n1 Indicates which suspect match to retrieve.

BUFFER PIC X Out n2 Address of the area to receive the record.

USERAREA PIC X In 16 Address of the parameter area that resides in the calling program but is maintained by the Matcher. n1 = Length of numeric value indicating which suspect match to retrieve. n2 = Length of the record as defined during the initializeMatcher call + 3 bytes to contain the suspect pattern ID.

Trillium Software System™ Programmer’s Guide, Volume 2 Process Parameters (M#PARAMS) 2-119

Process Parameters (M#PARAMS)

The M#PARAMS function processes a Matcher parameter file (either a field list or a pattern list.)

MOVE ‘M#PARAMS’ TO W100-SUBPGM-NAME. CALL W100-SUBPGM-NAME USING W100-RETVAL W100-FILE-NAME-DATA W100-PARM-TYPE W100-A-BYTE-WORK-AREA W100-B-BYTE-WORK-AREA W100-USERAREA.

This table describes how these parameters are declared.

Table 2.42 Process Parameters Function Parameters (COBOL on IBM Mainframe)

Parameter Type Use Length Description

RETVAL PIC X Out 1 Error code returned by the subroutine. See a list of these codes in Chapter 4.

FILE-NAME-DATA PIC X 5 Specifies the name of the Matcher parameter file to be processed.

PARM-TYPE PIC X In 1 Numerical indicator of which Matcher parm file to process. See below for a list of parameter types and their numerical identifiers.

A-BYTE-WORK-AREA PIC X – 1 Not currently used.

B-BYTE-WORK-AREA PIC X – 1 Not currently used.

USERAREA PIC X In 16 Address of the parameter area that resides in the calling program but is maintained by the Matcher.

Trillium Software System API Calls on IBM Mainframe 2-120 Process Parameters (M#PARAMS)

Values for PARM-TYPE are:

Table 2.43 Parameter File Types for Process_Parameters

Value Description

0 Field list parameters for producing the common data segment. When the specified ‘parmtype’ value is “0”, the following field descriptions along with dictionary field names or field positions and length values should appear in the specified parameter file to allow for the creation of the common data segment. • branch_number • middle_name • business_name • last_name • first_name • postal_code • gender • street_title • house_number • source_id

1 Household field comparison routine list (pfhhflds)

2 Individual field comparison routine list (pfinflds)

3 Business field comparison routine list (pfcoflds)

4 Household grade pattern list (pfhhpats)

5 Individual grade pattern list (pfinpats)

6 Business grade pattern list (pfcopats)

Trillium Software System™ Programmer’s Guide, Volume 2 Retrieve Records (M#RETRVR) 2-121

Retrieve Records (M#RETRVR)

The M#RETRVR function retrieves the specified relative record from a specified window record list. MOVE ‘M#RETRVR’ TO W100-SUBPGM-NAME. CALL W100-SUBPGM-NAME USING W100-RETVAL W100-PARM-TYPE W100-RECORD-CNTR W100-MAT-RECORD-FULL W100-USERAREA.

This table lists parameters used for COBOL calls to Retrieve Records:

Table 2.44 Retrieve Records Function Parameters (COBOL on IBM Mainframe)

Parameter Type Use Length Description

RETVAL PIC X Out 1 Error code returned by the subroutine.

PARM-TYPE PIC X In 1 Window to use in the match, and type of match. R=Retail–Use the Retail window along with the Retail field and pattern lists for matching C=Commercial–Use along with the Commercial field and pattern lists for matching.

RECORD- Binary In 7 Indicates which record to retrieve. CNTR

MAT-RECORD- PIC X Out n* Area to receive retrieved record. If window FULL matching (Match Window) is used to match records, the buffer must be defined as an array (input record length +184) bytes, because matching results will be appended to the record.

Trillium Software System API Calls on IBM Mainframe 2-122 Sort Window (M#SORTWN)

Table 2.44 Retrieve Records Function Parameters (COBOL on IBM Mainframe)

Parameter Type Use Length Description

USERAREA PIC X In 16 Address of the parameter area that resides in the calling program but is maintained by the Matcher.

n* = Platform-specific width of a file name. Note that all file names should terminate with a Null character after the last valid file name character.

Sort Window (M#SORTWN)

The M#SORTWN function retrieves the specified relative record from a specified window record list. MOVE ‘M#SORTWN’ TO W100-SUBPGM-NAME. CALL W100-SUBPGM-NAME USING W100-RETVAL W100-PARM-TYPE W100-ORDER W100-USERAREA.

This table describes the parameters used by COBOL calls to the Sort Window function.

Table 2.45 Sort Window Function Parameters (COBOL on IBM Mainframe)

Parameter Type Use Length Description

RETVAL PIC X Out 1 Error code returned by the subroutine. See a list of these codes in Chapter 4.

Trillium Software System™ Programmer’s Guide, Volume 2 Sort Window (M#SORTWN) 2-123

Table 2.45 Sort Window Function Parameters (COBOL on IBM Mainframe)

Parameter Type Use Length Description

PARM-TYPE PIC X In 1 Indicates window to use in the match, and the type of match

R= use the Retail window along with the Retail field and pattern lists for matching C= use the Commercial window along with the Commercial field and pattern lists for matching.

ORDER PIC X In 1 Indicates which keys to use for the sort: 1 = Matched individuals in matched households 2 = Suspect individuals in suspect households 3 = Matched individuals in suspect individuals within matched households (WHM, WHMIS, WHMIM).

USERAREA PIC X In 16 Address of the parameter area that resides in the calling program but is maintained by the Matcher.

Trillium Software System API Calls on IBM Mainframe 2-124 Sort Window (M#SORTWN)

Trillium Software System™ Programmer’s Guide, Volume 2 CHAPTER 3 Trillium Software System Return Data & Output Tables

This chapter includes tables of all possible error codes and other returned data that is output from all of the Trillium Software System modules.

Note that the returned data is the same on every platform.

Trillium Software System Return Data & Output Tables 3-2 Converter/Investigator API Error Codes

Converter/Investigator API Error Codes

The following table contains all possible output values (error codes) returned from the Converter or Investigator module.

These codes are returned by the Converter and Investigator Retcode parameter.

Table 3.1 Converter/Investigator Error Codes

Code Description

0 No error. Module has executed successfully.

1 Generic error. Detailed information is located in a file with the prefix stderr.

2 No previous open call was performed for a P or C call.

3 DLL related error (for example, DDL not found, illegal entry)

4 Memory allocation or free error.

5 Invalid call type. Action parameter must be either Open, Process, or Close.

Trillium Software System™ Programmer’s Guide, Volume 2 Customer Data Parser API Output 3-3

Customer Data Parser API Output

This table describes the output returned from the Customer Data Parser.

Table 3.2 Customer Data Parser (PREPOS Layout)

Field Position Length Description

Codes Section

PR_RETURN 1 1 Return codes returned by the program. For a complete list of codes, see page 3-32.

PR_CONFIDENCE 2-3 2 Acceptance level of complete name and address.

Comments: Confidence is how well the system analyzes completeness of the record and how hard it worked to identify each record line. Confidence works with the THRESHOLD parameter in the Driver parameter file (pfprsdrv). It is a value between 00 and 10. As confidence decreases it shaves off the score passed in from comprehension to determine its final value.

PR_COMPREHENSION 4-5 2 Acceptance level of understood name and address.

Comments: Comprehension is how well the system understands the input it was given. If the system feels it has understood all parts of the input then it assigns a numerical score between 00 and 10, 10 being the highest. Once a numerical score is established it goes on to the next area of confidence.

PR_ORIG_LINEPAT 6 – 15 10 Original line pattern of 10 input address lines corresponding to the in_area LINE1-LINE10 definitions.

Trillium Software System Return Data & Output Tables 3-4 Customer Data Parser API Output

Table 3.2 Customer Data Parser (PREPOS Layout) (Continued)

Field Position Length Description

Comments: The line pattern of the input address lines is determined through a combination of weighting the orientation of the line within the full address, and the number and weight of the elements identified on the line. Possible types are: A = Apartment B = Box E = E-mail F = Firm G = Geography H = Hold M = Miscellaneous N = Name R = Rural Route S = Street Y = Miscellaneous w/Care-of Z = Miscellaneous Street ? = Unidentified Blank = No Input Information

Trillium Software System™ Programmer’s Guide, Volume 2 Customer Data Parser API Output 3-5

Table 3.2 Customer Data Parser (PREPOS Layout) (Continued)

Field Position Length Description

PR_LINE_RULES 16-35 20 Ten two-byte line rules. Rules applied by the Parser to determine the line types of oraddrl1-10.

Comments: The line type Identification 10 = First Token Misc. rules are: 11 = Surrounded By Street 00 = No Rule Applied 12 = Matched Name Pattern 01 = User Wins 13 = Has Apostrophe 02 = First Is Name 14 = Surrounded By Names 03 = By Line Flag 15 = Last Line Has Geography 04 = Has House number 16 = Connected To Previous 05 = Has Zip Code 17 = Adjusted By Overall Context 06 = Has Score 18 = Misc. Has Name Score 07 = Surrounded By 19 = Misc. Has Street Name Geography 20 = Street Line Already Present 08 = Identify Geography 09 = Same Last Name

PR_NAME_REVIEW_CODES 36-355 300 Ten three-byte name review codes for each name, up to 10 names. These are allocated because of the fact that any single name may have more than 1 condition to report. This information is used in the determination of the pr_rev_group field.

Trillium Software System Return Data & Output Tables 3-6 Customer Data Parser API Output

Table 3.2 Customer Data Parser (PREPOS Layout) (Continued)

Field Position Length Description

Review codes: 000 = No Review Code Found 012 = Too Many Titles 001 = Unknown Name 013 = Stand. Connector Too Long Pattern 014 = Disp. Connector Too Long 002 = Stand. First Name Too 015 = Stand. Relation Too Long Long 016 = Display Relation Too Long 003 = Disp. First Name Too 017 = Stand. Business Too Long Long 018 = Display Business Too Long 004 = Tot. # Export Names 019 = Derived Gender Conflict GT Max 020 = Stand. Generation Too Long 005 = Stand. Midd. Name Too 021 = Disp. Generation Too Long Long 022 = More Than One Middle Name 006 = Disp. Midd. Name Too Long 007 = Too Many Middle Names 008 = Stand. Last Name Too Long 009 = Disp. Last Name Too Long 010 = Standardized Title Too Long 011 = Display Title Too Long

Trillium Software System™ Programmer’s Guide, Volume 2 Customer Data Parser API Output 3-7

Table 3.2 Customer Data Parser (PREPOS Layout) (Continued)

Field Position Length Description

PR_STREET_REVIEW_CODES 336-365 30 Ten three-byte review codes for each street. This information is used in the determination of the pr_rev_group field.

Comments: 026 = Unknown Street 043 = Unusual Dwelling Value Pattern 044 = Too Many Dwelling Values 027 = Std. Street Type Too 045 = Display Box Too Long Long 046 = Standardized Box Too Long 028 = Display Street Type 047 = Unusual Box Value Too Long 048 = Display Route Too Long 029 = Too Many Street Types 049 = Standardized Route Too Long 030 = Std Direction Too Long 050 = Standardized Route# Too Long 031 = Display Direction Too 051 = Display Route# Too Long Long 052 = Unusual Route Value 032 = Too Many Directions 053 = Std Complex Type Too Long 033 = Std Street Title Too 054 = Disp Complex Type Too Long Long 055 = Std Dwelling Num Too Long 034 = Display Street Title Too 056 = Std Box Number Too Long Long 057 = Display Box Number Too Long 035 = Std Complex Name 058 = Disp Dwelling Number Too Long Too Long 059 = Duplicate Street Line Types 036 = Disp Complex Name Too Long 037 = Standardized Hsno Too Long 038 = Display Hsno Too Long 039 = Unusual House Number 040 = Display Dwelling Too Long 041 = Std Dwelling Too Long 042 = Too Many Dwellings

Trillium Software System Return Data & Output Tables 3-8 Customer Data Parser API Output

Table 3.2 Customer Data Parser (PREPOS Layout) (Continued)

Field Position Length Description

PR_GEOG_REVIEW_CODES 366-395 30 Ten three-byte review codes for each geography field. This information is used in the determination of the pr_rev_group field.

Comments: 072 = Std Neighborhood Too Long 061 = No City Name Found 073 = Disp Neighborhood Too Long 062 = No State Found in 074 = Std Post Code Too Long Record 075 = Display Post Code Too Long 063 = Standardized City Too 076 = Unusual Post Code Value Long 077 = Corrected CityName Too Long 064 = Display City Too Long 078 = City Name Chg Used For City 066 = Std St/Prov/County 079 = Conflicting Geographic Types Too Long 080 = Domestic City Name Present, 067 = Disp St/Prov/County But Could Not Be Verified Too Long 070 = Std Country Too Long 071 = Display Country Too Long

PR_MISC_REVIEW_CODES 396-695 300 Ten 3-byte review codes for each miscellaneous field. This information is used in the determination of the pr_rev_group field.

Comments: 087 = Misc. Data For Line Too Long 083 = Unidentified Token 088 = Too Many Categories 084 = Unidentified Line 089 = Too Many Names For Export 085 = Invalid Token 090 = Mixed Name Forms Present Definition 091 = Hold Mail Element Present 086 = Label or Label Element Too Long

Trillium Software System™ Programmer’s Guide, Volume 2 Customer Data Parser API Output 3-9

Table 3.2 Customer Data Parser (PREPOS Layout) (Continued)

Field Position Length Description

PR_GLOBAL_REVIEW_CODES 696-725 30 Ten 3-byte review codes for each global field. This information is used in the determination of the pr_rev_ group field.

Comments: 094 = No Street Identified 092 = Foreign Address 095 = No Geography Identified Element Found 096 – 099 = Currently Unassigned 093 = No Name Identified

PR_NUMBER_OF_NAMES 726-727 2 Number of names (personal and business) on the input record. Values are 00–10.

PR_NAME_TYPES 728 1 Categorization value based on the mixture of name types identified on the input record.

Comments: 1 = Retail/personal (John 3 = Reject–Neither business or personal name identified Smith) 4 = Mixed–Both business and individual names included. 2 = Business (e.g. Harte Hanks)

PR_CATEGORY 729-778 50 Concatenated codes from overall address, terminated with a | character. An example of a category may be an SIC Code assigned to a business word. See Table Maintenance documentation for more information on the assignment of categories.

PR_REV_GROUP 779-781 3 Parser Statistical Report – summarizes the number and percentage of records distributed over each review group. These codes help in determining general data conditions within parsing, and guide the user to areas for more specific parser tuning. The Parser review group codes displayed in the default review group hierarchy.

Trillium Software System Return Data & Output Tables 3-10 Customer Data Parser API Output

Table 3.2 Customer Data Parser (PREPOS Layout) (Continued)

Field Position Length Description

Comments: 017 = Conflicting Geography Types 001 = Unidentified Token 015 = Geography Too Long 005 = No Names Identified 018 = Unable To Verify City Names 006 = No Street Identified 016 = Corrected CityName Too Long 007 = No Geography 020 = Multiple Street Names Type Identified 010 = Multiple Middle Names 014 = No City or Country 009 = Derived Genders Conflict Found 004 = Foreign Address 019 = Unidentified Line 003 = Hold Mail 008 = Unknown Name 002 = Mixed Name Forms Pattern 000 = No Review Code Found 011 = Unknown Street Pattern 013 = Unusual or Long Address 012 = Invalid Directional

Trillium Software System™ Programmer’s Guide, Volume 2 Customer Data Parser API Output 3-11

Table 3.2 Customer Data Parser (PREPOS Layout) (Continued)

Field Position Length Description

STREET SECTION

PR_HSE_NBR 782-796 15 Output field used by the Parser to store the input house value.5, 10, 20, and so on; as in 5 Main Street

PR_HSE_NBR_DISPLAY 797-811 15 Output field used by the Parser to store the original input house value.5, 10, 20, and so on; (no recodes applied)

PR_HSE_MASK 812-826 15 Output field used by the Parser to store the shape of the input house values. N = Numeric A = Alpha -, / = Special

PR_HSE_TYPE 827 1 Output field used by Parser to store the input house type. N = Numeric – = Hyphenated U = Unusual S = Slash B = Blank A = Alpha

PR_ST_TL 828-852 25 Output field used to store the input street title; for example, Main or Elm, as in 5 Main Street.

PR_ST_TL_DISPLAY 853-877 25 Output field used to store the original input street title; for example, Main or Elm. No recodes are applied.

PR_ST_TYPE1 878-892 15 Output field used to store the first street type input; for example, Rd. or St., as in 5 Main St.

Trillium Software System Return Data & Output Tables 3-12 Customer Data Parser API Output

Table 3.2 Customer Data Parser (PREPOS Layout) (Continued)

Field Position Length Description

PR_ST_TYPE1_DISPLAY 893-907 15 Output field used to store the original first street type input; for example, Rd. or St. No recodes are applied.

PR_ST_TYPE2 908-922 15 Output field used to store the second street type input; for example, Rd., St., or Ave.

PR_ST_TYPE2_DISPLAY 923-937 15 Output field used to store the original second street type input; for example, Rd., St., or Ave. No recodes applied.

PR_PR_ST_DIR 938-949 12 Output field to store input prefix street direction; for example, N, S, W, or E.

PR_PR_ST_DIR_DISPLAY 950-961 12 Output field used to store the original prefix street direction input; for example, N, S, W, or E.

PR_SC_ST_DIR 962-973 12 Output field to store post street direction input; for example, N, S, W, or E.

PR_SC_ST_DIR_DISPLAY 974-985 12 Output field used to store the original post street direction input; for example, N, S, W, or E. No recodes applied.

PR_RTE_NAME 986-1005 20 Output field used to store the input route name; for example, Route or Rt.

PR_RTE_NAME_DISPLAY 1006- 20 Output field used to store the input 1025 route name; for example, Route or Rt. No recodes applied.

PR_RTE_NBR 1026- 8 Output field used to store the input 1033 route value; for example, 1, 300, and 212.

Trillium Software System™ Programmer’s Guide, Volume 2 Customer Data Parser API Output 3-13

Table 3.2 Customer Data Parser (PREPOS Layout) (Continued)

Field Position Length Description

PR_RTE_MASK 1034- 8 Output field used to store the shape 1041 of the input route value. Valid values are: N = Numeric A = Alpha -, / = Special

PR_RTE_TYPE 1042 1 Output field used to store the input route type. Valid values are: R = Route H = Highway

PR_BOX_NAME 1043- 20 Output field used to store the input 1062 box name; for example, Box or PO Box.

PR_BOX_NAME_DISPLAY 1063- 20 Output field used to store the 1082 original input box name; for example, Box or PO Box. No recodes applied.

PR_BOX_NBR 1083- 10 Output field used to store the input 1092 box value; for example, 6, 12, or 811.

PR_BOX_MASK 1093- 10 Output field used to store the shape 1102 of the input box value: N = Numeric A = Alpha -, / = Special

PR_BOX_TYPE 1103 1 Output field used to store the input box type: B = Box D = Drawer P = PO Box T = Pole

Trillium Software System Return Data & Output Tables 3-14 Customer Data Parser API Output

Table 3.2 Customer Data Parser (PREPOS Layout) (Continued)

Field Position Length Description

PR_COMPLEX1_NAME 1104- 25 Output field used to store the 1128 standardized name of an apartment complex, military complex, or business complex. For example, Bay Crest, USS John F Kennedy, and so on It would contain the ‘Marvin’ in “Marvin Gardens.”

PR_COMPLEX1_NAME_ 1129- 25 Output field used to store the DISPLAY 1153 original input name of an apartment complex, military complex, or business complex. For example, Bay Crest, USS John F Kennedy.

PR_COMPLEX1_TYPE 1154- 15 Output field used to store the 1168 standardized type of apartment complex, military complex, or business complex. For example, Airport, College; It would contain the ‘Gardens’ in “Marvin Gardens.”

PR_COMPLEX1_TYPE_ 1169- 15 Output field used to store the DISPLAY 1183 original type of apartment complex, military complex, or business complex. For example, Airport, College.

PR_COMPLEX2_NAME 1184- 25 Output field to store standardized 1208 name of a secondary apartment complex, military complex, or business complex. For example, Bay Crest, USS John F Kennedy.

PR_COMPLEX2_NAME_ 1209- 25 Output field to store original input DISPLAY 1233 name of a secondary apartment complex, military complex, or business complex. For example, Bay Crest, USS John F Kennedy. No recodes applied.

Trillium Software System™ Programmer’s Guide, Volume 2 Customer Data Parser API Output 3-15

Table 3.2 Customer Data Parser (PREPOS Layout) (Continued)

Field Position Length Description

PR_COMPLEX2_TYPE 1234- 15 Output field used to store the 1248 standardized type of a secondary apartment complex, military complex, or business complex. For example, Airport, College.

PR_COMPLEX2_TYPE_ 1249- 15 Output field used to store the DISPLAY 1263 original type of a secondary apartment complex, military complex, or business complex. For example, Airport, College.

PR_COMPLEX3_NAME 1264- 25 Output field used to store the 1288 standardized name of a tertiary apartment complex, military complex, or business complex. For example, Bay Crest, USS John F Kennedy.

PR_COMPLEX3_NAME_ 1289- 25 Output field used to store the DISPLAY 1313 original input name of a tertiary apartment complex, military complex, or business complex. For example, Bay Crest, USS John F Kennedy. No recodes applied.

PR_COMPLEX3_TYPE 1314- 15 Output field used to store the 1328 standardized type of a tertiary apartment complex, military complex, or business complex. For example, Airport, College.

PR_COMPLEX3_TYPE_ 1329- 15 Output field used to store the DISPLAY 1343 original type of a tertiary apartment complex, military complex, or business complex. For example, Airport, College. No recodes applied.

Trillium Software System Return Data & Output Tables 3-16 Customer Data Parser API Output

Table 3.2 Customer Data Parser (PREPOS Layout) (Continued)

Field Position Length Description

PR_DWEL1_NAME 1344- 20 Output field used to store the 1363 standardized type of dwelling when pairs of two-part dwelling tokens exist. Examples of two-part dwelling tokens: Apartment Apartment# Suite Suite#

PR_DWEL1_NAME_DISPLAY 1364- 20 Output field used to store the 1383 original type of dwelling when pairs of two-part dwelling tokens exist. Examples of two-part dwelling tokens: Apartment Apartment# Suite Suite#

PR_DWEL1_NBR 1384- 10 Output field used to store the 1393 dwelling value when pairs of two- part dwelling token exist. For example, 12, 200, as in Suite 12.

PR_DWEL1_MASK 1394- 10 Output field used to store the shape 1403 of the dwelling value when pairs of two-part dwelling token exist. N = Numeric A = Alpha -, / = Special

PR_DWEL1_TYPE 1404 1 Output field used to store the dwelling type value when pairs of two-part dwelling token exist. A = Apartment F = Floor U = Unit L = Lot D = Department S = Site T = Suite

Trillium Software System™ Programmer’s Guide, Volume 2 Customer Data Parser API Output 3-17

Table 3.2 Customer Data Parser (PREPOS Layout) (Continued)

Field Position Length Description

PR_DWEL2_NAME 1405- 20 Output field used to store the 1424 standardized type of the secondary dwelling when pairs of 2–part dwelling tokens exist. Examples of two-part dwelling tokens: Apartment Apartment# Suite Suite#

PR_DWEL2_NAME_DISPLAY 1425- 20 Output field used to store the 1444 original type of secondary dwelling when pairs of two-part dwelling token exist. No recodes applied. Examples of two-part dwelling tokens: Apartment Apartment# Suite Suite#

PR_DWEL2_NBR 1445- 10 Output field used to store the 1454 secondary dwelling value when pairs of two-part dwelling token exist. For example, 12, 200, as in Suite 12.

PR_DWEL2_MASK 1455- 10 Output field used to store the shape 1464 of the secondary dwelling value when pairs of two-part dwelling token exist. N = Numeric A = Alpha -, / = Special

PR_DWEL2_TYPE 1465 1 Output field used to store the dwelling type value when pairs of two-part dwelling token exist. A = Apartment F = Floor U = Unit L = Lot D = Department S = Site T = Suite

Trillium Software System Return Data & Output Tables 3-18 Customer Data Parser API Output

Table 3.2 Customer Data Parser (PREPOS Layout) (Continued)

Field Position Length Description

PR_DWEL3_NAME 1466- 20 Output field used to store the 1485 standardized type of the tertiary dwelling when pairs of two-part dwelling tokens exist. Examples of two-part dwelling tokens: Apartment Apartment# Suite Suite#

PR_DWEL3_NAME_DISPLAY 1486- 20 Output field used to store the 1505 original type of tertiary dwelling when pairs of two-part dwelling token exist.

PR_DWEL3_NBR 1506- 10 Output field used to store the 1515 tertiary dwelling value when pairs of two-part dwelling token exist. For example, 12, 200, as in Suite 12.

PR_DWEL3_MASK 1516- 10 Output field used to store the shape 1525 of the tertiary dwelling value when pairs of two-part dwelling token exist. N = Numeric A = Alpha -, / = Special

PR_DWEL3_TYPE 1526 1 Output field used to store the tertiary dwelling type value when pairs of two-part dwelling token exist. A = Apartment F = Floor U = Unit L = Lot D = Department S = Site T = Suite

Trillium Software System™ Programmer’s Guide, Volume 2 Customer Data Parser API Output 3-19

Table 3.2 Customer Data Parser (PREPOS Layout) (Continued)

Field Position Length Description

PR_MISC_ADDR 1527- 500 Output field used to store 2026 miscellaneous address values – 50 bytes per line. The data from any address line with an attribute of IGNORE assigned to it in Parser is contained here (num, unclaimed, unknown)

PR_BEST_NUMBER 2027- 10 Best number composite, constructed 2036 as follows: If house number exist, use house #. If APT number exists, use APT #. If box number exists, use box #. If route number exists, use route #.

This number is used primarily in the relationship matching process. For example, 1, 200, 1200.

PR_BEST_ST_TL 2037- 25 Best street title composite, 2061 constructed as follows: If street name exists, use street name. If complex name/type exists, use complex name/type. If box name exists, use box name. This number is used primarily in the relationship matching process. For example, Main or Elm.

GEOGRAPHIC SECTION

PR_COUNTRY_NAME 2062- 30 Output field used to store the 2091 country name. , Mexico - This field populates when a country field is found within the address lines (not assigned by Trillium Software).

PR_COUNTRY_NAME_ 2092- 30 Output field used to store the DISPLAY 2121 original country name. Canada, Mexico (no recodes applied).

Trillium Software System Return Data & Output Tables 3-20 Customer Data Parser API Output

Table 3.2 Customer Data Parser (PREPOS Layout) (Continued)

Field Position Length Description

PR_NEIGH1_NAME 2122- 30 Output field used to store the 2151 neighborhood 1/locality name. Bo Barcelona, URB El Duque. This field is typically used in data residing in the UK and Latin America.

PR_NEIGH1_NAME_DISPLAY 2152- 30 Output field used to store the 2181 original neighborhood 1/locality name. Bo Barcelona, URB El Duque (no recodes applied). This field is typically used in data residing in the UK and Latin America.

PR_NEIGH2_NAME 2182- 30 Output field used to store the 2211 neighborhood 2/locality name. Bo Barcelona, URB El Duque. This field is typically used in data residing in the UK and Latin America.

PR_NEIGH2_NAME_DISPLAY 2212- 30 Output field to store the original 2241 neighborhood 2/locality name. Bo Barcelona, URB El Duque (no recodes applied). This field is typically used in data residing in the UK and Latin America.

PR_CITY_NAME 2242- 30 Output field to store the city name. 2271 For example, Boston, , or London.

PR_CITY_NAME_DISPLAY 2272- 30 Output field to store original city 2301 name. For example, Boston or Manhattan. No recodes applied.

PR_CITY_NUMBER 2302- 6 Output field to store the city 2307 name.V22663, (ANNNNNN). This value is assigned in Parser and is generally used as a primary look-up key in any geocoding process.

PR_CITY_STATUS 2308 1 Output field to store the city status.

Trillium Software System™ Programmer’s Guide, Volume 2 Customer Data Parser API Output 3-21

Table 3.2 Customer Data Parser (PREPOS Layout) (Continued)

Field Position Length Description

PR_CITY_LNAME_DIR 2309- 30 Output field to store the long city 2338 name from the directory. Displays city and state abbreviation (Billerica, MA).

PR_ST_PROV_CTY_NAME 2339- 30 Output field to store the state, 2368 province or county name.MA, Cheshire

PR_ST_PROV_CTY_NAME_ 2369- 30 Output field to store the original DISPLAY 2398 state, province or county name. For example, , Cheshire. No recodes applied.

PR_POSTAL_CODE 2399- 15 Output field to store the input postal 2413 code. For example, 01821, 01879, M8X 2X3.

PR_POSTAL_CODE_MASK 2414- 15 Output field to store the shape of the 2428 input postal code (pr_postal _code). Values are: N = Numeric A = Alpha -, / = Special

PR_POSTAL_CODE_TYPE 2429 1 Output field to store the type of input postal code. Not currently used; filled with a “U.”

PR_POSTAL_CODE_DIR 2430- 15 Output field to store the postal code 2444 found on the USTABCIT city table by the Parser for the city/state unidentified by the Parser. [e.g., 018213928 (ZIP 9).]

PR_POSTAL_CODE_MASK_ 2445- 15 Output field to store the shape of the DIR 2459 identified postal code (pr_postal_ code_dir). N = Numeric A = Alpha -, / = Special

Trillium Software System Return Data & Output Tables 3-22 Customer Data Parser API Output

Table 3.2 Customer Data Parser (PREPOS Layout) (Continued)

Field Position Length Description

PR_POSTAL_CODE_TYPE_ 2460 1 One-character codes assigned by the DIR USPS and found on the USTABCIT city table. The values are: 4 = Box Code 5 = Special Military 8 = Non Unique 9 = Unique Output field used by the Parser to store the type of postal code identified by the Parser (pr_postal_ code_dir).

PR_ST_PROV_NUMBER 2461- 2 Two-character numeric identifier 2462 assigned to the states by the USPS (also known as a FIPS code). For example, 01-99 *US ONLY

PR_WORLD_ORIGIN 2463 1 Numeric identifier used by Parser to country origin for data being parsed. The indicators of origin are: 1 = United States (USA) 2 = Canada (CA) 3 = United Kingdom (UK) 4 = Other not assigned a code 5 = Brazil (BZ) 6 = Australia (AU) 7 = Germany (DE)

PR_POST_OFFICE_CODE 2464- 6 Numeric identifier assigned by the 2469 USPS to identify postal delivery areas (also known as Postal Finance Code). For example, 24071 (NNNNN) US ONLY.

GEOCODE SECTION for user-defined geographic codes, such as tract or longitude/latitude

PR_GEOCD_A 2470- 10 Geographic Code A. Fields reserved 2479 for additional Geographic codes.

PR_GEOCD_B 2480- 10 Geographic Code B. Fields reserved 2489 for additional Geographic codes.

Trillium Software System™ Programmer’s Guide, Volume 2 Customer Data Parser API Output 3-23

Table 3.2 Customer Data Parser (PREPOS Layout) (Continued)

Field Position Length Description

PR_GEOCD_C 2490- 10 Geographic Code C. Fields reserved 2499 for additional Geographic codes.

PR_GEOCD_D 2500- 10 Geographic Code D. Fields reserved 2509 for additional Geographic codes.

PR_GEOCD_E 2510- 10 Geographic Code E. Fields reserved 2519 for additional Geographic codes.

PR_GEOCD_F 2520- 10 Geographic Code F. Fields reserved 2529 for additional Geographic codes.

PR_GEOCD_G 2530- 10 Geographic Code G. Fields reserved 2539 for additional Geographic codes.

PR_GEOCD_H 2540- 10 Geographic Code H. Fields reserved 2549 for additional Geographic codes.

PR_GEOCD_I 2550- 10 Geographic Code I. Fields reserved 2559 for additional Geographic codes.

PR_GEOCD_J 2560- 10 Geographic Code J. Fields reserved 2569 for additional Geographic codes.

INPUT GEOGRAPHIC MATCH SECTION (for US Postal Geocoder only. See country-specific geocoder documentation for other country formats)

PR_GIN_STR_NAME 2570- 22 Input street name. Original Street 2591 Name, for example, Main or Elm.

PR_GIN_POSTAL_CODE 2592- 9 Input postal code. Original postal 2600 code, for example, 01821.

PR_GIN_STR_PRE_ 2601- 2 Input pre-direction. Street DIRECTION 2602 directional preceding the street name.Commonly letter designations such as “N” or “SW”.

PR_GIN_STR_POST_ 2603- 2 Input post direction. Street DIRECTION 2604 directional following the street name. Commonly letter designations such as “N” or “SW”.

Trillium Software System Return Data & Output Tables 3-24 Customer Data Parser API Output

Table 3.2 Customer Data Parser (PREPOS Layout) (Continued)

Field Position Length Description

PR_GIN_STR_SUFFIX 2605- 4 Input Street suffix; street type like 2608 AVE or RD. Appropriate abbreviations are used.

PR_GIN_HOUSE_NUMBER 2609- 10 Input house number. Original House 2618 Number such as 5, 10, 20.

PR_GIN_SECONDARY_ 2619- 6 Input second number. Original NUMBER 2624 Secondary Number for Apt. or Suite for example, 5, 10, 20.

PR_GIN_SECONDARY_TYPE 2625- 4 Input second type; original 2628 Secondary Type ex. Apt, Ste, Unit

PR_GIN_BLDG_FIRM_NAME 2629- 26 Input building firm. Original name 2654 presented on line 1.

PR_GIN_POSTAL_NUMBER 2655- 6 Post office number. For example, 2660 240714 (NNNNNN).

PR_GIN_POSTAL_CITY_ 2661- 6 Postal city number. For example, NUMBER 2666 V21489 (ANNNNN).

PR_GIN_POSTAL_CITY_NAME 2667- 30 Valid city name for mailing purposes; 2696 appears in the last line of an address. For example:

Postal city name=BOSTON (preferred city name) Pr_city_name=BEACON HILL (vanity city name) Postal city name =NEW YORK CITY (preferred city name) Pr_city_name=TUDOR CITY (vanity city name) Postal city name=PORT AUTHORITY (preferred city name) Pr_city_name=NEW YORK CITY (vanity city name)

PR_GIN_STPRVCTY_NAME 2697- 2 State, province, county 2698

Trillium Software System™ Programmer’s Guide, Volume 2 Customer Data Parser API Output 3-25

Table 3.2 Customer Data Parser (PREPOS Layout) (Continued)

Field Position Length Description

PR_GIN_RECORD_TYPE 2699 1 Input record type. Code used by Geocoder as part of an address lookup: 1 = Street 2 = RR/HC 3 = PO Box 4 = Error 5 = Bad Street Pattern

OUTPUT GEOGRAPHIC MATCH SECTION (for US Postal Geocoder only – see country specific geocoder documentation for other country formats)

PR_GOUT_POSTAL_CODE 2700- 9 Output postal code. Original postal 2708 code or postal code from the directory when a match was possible.Value of this field depends on the match success of the street components as indicated by the fail level.

PR_GOUT_DELIVERY_POINT 2709- 2 Output delivery point A; 2–byte 2710 numeric code created per USPS rules derived from street_info and secondary number.

PR_GOUT_DELIVERY_POINT_ 2711 1 Output delivery point code. CD Determined by taking the two rightmost house numbers, adding them together along with the zip+9, and then subtracting that from the nearest multiple of 10For example, if you had a house number of 20, and a ZIP of 123456789, you would add 2+0+1+2+3+4+ 5+6+7+8+9 and get 47. Then subtract that from the next nearest multiple of 10 which is 50. Therefore, deliver_point_cd would be 3.

Trillium Software System Return Data & Output Tables 3-26 Customer Data Parser API Output

Table 3.2 Customer Data Parser (PREPOS Layout) (Continued)

Field Position Length Description

PR_GOUT_CARRIER_ROUTE 2712- 4 A 4-byte code assigned to a mail 2715 delivery or collection route within a 5-digit ZIP code. The first character of this identification is alphabetical; the last three are numeric: Bnnn = PO Box Hnnn = Highway Contract Rnnn = Rural route Cnnn = City delivery Gnnn = General delivery\

PR_GOUT_DELIVER_ADDR 2716- 50 A delivery address line rebuilt from 2765 either USPS ZIP+4 Standardized data if matched or parsed data if not matched. For example, 5 Main St.

PR_GOUT_HOUSE_NUMBER 2766- 10 Output house number. For example, 2775 5, 10, or 20.

PR_GOUT_STR_PRE_ 2776- 2 Street prefix direction. Street DIRECTION 2777 directional that precedes the street name. Commonly letter designations such as “N” or ”SW”.

PR_GOUT_STR_NAME 2778- 22 Street name. Original street name or 2799 street name from the postal directory when a match was possible.

PR_GOUT_STR_POST_ 2800- 2 Street post direction, that follows the DIRECTION 2801 street name. Commonly letter designations such as “N” or ”SW”.

PR_GOUT_STR_SUFFIX 2802- 4 Street suffix Street types such as 2805 AVE or RD. Appropriate abbreviations are used.

PR_GOUT_SECONDARY_TYPE 2806- 4 Output of the postal geocoder 2809 identifying the type of apartment. A street component type that follows a street name Secondary type examples are SUITE, APT, etc.

Trillium Software System™ Programmer’s Guide, Volume 2 Customer Data Parser API Output 3-27

Table 3.2 Customer Data Parser (PREPOS Layout) (Continued)

Field Position Length Description

PR_GOUT_SECONDARY_ 2810- 6 Output of the postal geocoder NUMBER 2815 identifying the apartment number.

PR_GOUT_FAIL_LEVEL 2816 1 A numeric code (0 – 5) to identify the level at which the address matched or failed to match the postal directories.

Valid match fail levels are: 0 = Exact match to the directory, zipcode + 4 returned. 1 = City failure, city name not found on the postal directory 2 = Street Name failure, street name not found on the postal directory. 3 = Primary Range failure, typically the house number cannot be found on the postal directory. 4 = Street Components failure, secondary street components (like apartment information) not found on the postal directory. 5 = Ambiguous Failure: when there is not one clear match (usually when more information is required or missing information prohibits matching).

NAME SECTION - The following 27 name fields are repeated NINE times for a total of 10 names; each section is described by one field (pr_name_sect_0x) redefining the entire 571 byte area

PR_NAME_NUMBER_01 2817- 2 Number that represents the 2818 occurrence of this name within the record. If generating records, this will contain 01 for first name encountered, 02 for second name encountered, and so on Values are 01-10.

PR_NMFORM_01 2819 1 A 1-byte field in each of 10 name segments in the PREPOS that indicates whether the name is in a personal or business form.

Valid values are: The pr_nmform field is populated with a 1, 2 or 3. If the 1 = Personal address has no name line recognized, (like in the case where it 2 = Business is set to ignore), then the system will not populate pr_nmform 3 = Errors (e.g. unknown because it doesn’t know if this line is a name line. An ignore name pattern) line becomes a miscellaneous line type. This should be the Blank = No name present or only occasion when the name form field is not populated - identified. when no name line has been recognized.

Trillium Software System Return Data & Output Tables 3-28 Customer Data Parser API Output

Table 3.2 Customer Data Parser (PREPOS Layout) (Continued)

Field Position Length Description

PR_PREFIX_01 2820- 15 Personal name prefix, using recoded 2834 word. For example, titles such as Mr. or Dr.

PR_PREFIX_DISPLAY_01 2835- 15 Original personal name prefix 2849 display, no recodes applied. For example, titles such as Mr. or Dr. No recodes applied.

PR_FIRST_01 2850- 15 Personal name, First name 1, using 2864 recoded word, for example, John, Joseph.

PR_FIRST_DISPLAY_01 2865- 15 Original Personal name, first name 2879 display, no recodes applied; for example, John, Joe.

PR_MIDDLE1_01 2880- 15 Personal name, middle name 1, 2894 using recoded word. Middle names like Richard, Stephen.

PR_MIDDLE1_DISPLAY_01 2895- 15 Original Personal name, middle 2909 name display, no recodes applied; for example Richard or Stephen.

PR_MIDDLE2_01 2910- 15 Personal name, middle name 2, 2924 using recoded word; for example Richard or Stephen.

PR_MIDDLE2_DISPLAY_01 2925- 15 Original Personal name, middle 2939 name display, no recodes applied; for example, Richard or Stephen.

PR_MIDDLE3_01 2940- 15 Personal name, middle name 3, 2954 using recoded word; (e.g. Richard or Stephen.)

PR_MIDDLE3_DISPLAY_01 2955- 15 Original Personal name, middle 2969 name display, no recodes applied; for example Richard, Stephen.

Trillium Software System™ Programmer’s Guide, Volume 2 Customer Data Parser API Output 3-29

Table 3.2 Customer Data Parser (PREPOS Layout) (Continued)

Field Position Length Description

PR_LAST_01 2970- 30 Personal name, last name, using 2999 recoded word. For example, last (Surnames) names such as Smith or Jones.

PR_LAST_DISPLAY_01 3000- 30 Original Personal name, last name 3029 display. No recodes applied. For example, last (Surnames) names such as Smith or Jones.

PR_SUFFIX_01 3030- 15 Personal name, suffix, using recoded 3044 word. Titles that appear after a personal name like DMD, ORTH.

PR_SUFFIX_DISPLAY_01 3045- 15 Original Personal name, suffix 3059 display, no recodes applied. Titles that appear after a personal name like DMD, ORTH (no recodes applied).

PR_GENER_01 3060- 10 Personal name, generation, using 3069 recoded word. For example, Jr. or Sr.

PR_GENER_DISPLAY_01 3070- 10 Original Personal name, generation 3079 display. No recodes applied. For example, Jr. or Sr.

PR_GENDER_01 3080 1 Personal name, gender, using recoded word. Values are: F = Female; M = Male; N = Neuter; U = Unknown

PR_BUSNAME_01 3081- 100 Business name, using recoded word 3180 for example, IBM.

PR_BUSNAME_DISPLAY_01 3181- 100 Original Business name display, no 3280 recodes applied for example, International Business Machines.

PR_CONNECTOR_01 3281- 15 Connector, last name, using recoded 3295 word

PR_CONNECTOR_DISPLAY_ 3296- 15 Original Connector display, no 01 3310 recodes applied for example, AND.

Trillium Software System Return Data & Output Tables 3-30 Customer Data Parser API Output

Table 3.2 Customer Data Parser (PREPOS Layout) (Continued)

Field Position Length Description

PR_RELATION_01 3311- 25 Standardized relationship identified 3335 by the Parser (such as, Trustee for, Executor for, In Trust for).

PR_RELATION_DISPLAY_01 3336- 25 Input relationship identified by 3360 Parser (such as. Trustee for, Executor for, In Trust for). such as. Trustee for, Executor for, In Trust for.

PR_ORIG_LINE_NUMBER_01 3361- 2 Original line number 01-10 3362

PR_NAME_CAtEGORY_01 3363- 25 Concatenated codes from category 3387 (this name) Repeat previous 27 name fields nine times for a total of ten names. Subsequent names are indicated by using the suffix: - _02, _03, _04…., _09, _10.

NORMALIZED SECTION (Original order of elements)

PR_LINE 8527- 1000 Address lines 1-10, standardized in 9526 original sequence, each 100 bytes in length. (e.g. Mr. and Mrs. John Smith.)

PR_PATTERN 9527- 300 A 300-character field in the PREPOS 9826 used to store 10 three-character token identifiers for each name/ address line used for debugging and tuning. For example, 054060054051053.

Trillium Software System™ Programmer’s Guide, Volume 2 Customer Data Parser API Output 3-31

Table 3.2 Customer Data Parser (PREPOS Layout) (Continued)

Field Position Length Description

PR_LINE_TYPE 9827- 10 Line types of original input address 9836 lines.

A = Apartment; B = Box; E = E– mail; F = Firm; G = Geography; H = Hold; M = Miscellaneous; N = Name; R = Rural Route; S = Street; Y = Miscellaneous w/Care-of; Z = Miscellaneous Street ? = Unidentified; Blank = No Input Information

Trillium Software System Return Data & Output Tables 3-32 Customer Data Parser API Error Codes

Customer Data Parser API Error Codes

The following return codes are the codes returned in the pr_return field, in the Customer Data Parser Repository Output Record Format. Several errors (2, 3, 4, 5, 8, D) are caused by inaccuracies in the path of the file.

Table 3.3 Customer Data Parser Error Codes

Value Description

0 No error

1 Insufficient Storage

2 Table Error – Pattern, Word and/or City tables not found.

3 Log File Error

4 Detail File Error

5 Pattern-Word-City Tab Error – Pattern, Word and/or City tables not readable.

6 Too Many Tokens

7 Line Definition Error

8 Display File Error

9 Invalid Parser Handle

A Invalid Parm File Entry

B Invalid Interface Call Type. Must be either: O=Open, P=Process, C=Close

C Invalid Service Call Type. Must be either: D=Send to Display File E=Supply Error Text

D Statistics File Error

E(CICS) WriteQ TS BPR2 Error

F Parser not successfully initialized. Parameter file may not be correctly defined. Check path and file name.

Trillium Software System™ Programmer’s Guide, Volume 2 Business Data Parser API Output 3-33

Table 3.3 Customer Data Parser Error Codes (Continued)

Value Description

G Top level domain file error

H CICS version error

I Debug file error

Business Data Parser API Output

The BPREPOS contains all possible output values from the BD Parser:

Table 3.4 Business Data Parser PREPOS Output Record Format

Field Position Length Description

ba_return 1 1 Business Data Parser return codes. For a complete list, see page 3-35.

ba_confidence 2 2 Not currently used.

ba_comprehension 4 2 Not currently used.

ba_orig_linepat 6 1 Original line pattern of input line

ba_line_rules 7 20 Line type identification rule

ba_global_review_ 27 30 See the section “Business Data Parser Review codes Codes” in the Batch User’s Guide.

ba_misc_review_ 57 30 See the section “Business Data Parser Review codes Codes” in the Batch User’s Guide.

ba_category 87 50 Field used to store category codes assigned to word definitions in the Word/Pattern tables.

Trillium Software System Return Data & Output Tables 3-34 Business Data Parser API Output

Table 3.4 Business Data Parser PREPOS Output Record Format (Continued)

Field Position Length Description

ba_rev_group 137 3 0 = No Targeted Conditions Found 1 = Unidentified Pattern 2 = Miscellaneous Line Too Long 3 = Label Line too Long 4 = Too Many Categories found 5 = Unknown Token 6 = No Data Found

ba_filler_01 140 100 Reserved for future use.

ba_user1 240 100 User-defined business data field, using recoded word(s) (REPEAT 50 TIMES)

ba_user1_display 340 100 User-defined business data field, no recodes apply (REPEAT 50 TIMES)

ba_data_present_ 10240 1 Set Y/N flag to indicate the presence of data in user1 the ba_user1 field (REPEAT 50 TIMES)

ba_misc_addr 10290 1000 Field used to store any data not identified by pattern processing

ba_filler_02 11290 310 Reserved for future use.

ba_line 11600 1000 Label line standardized in original sequence.

ba_pattern 12600 300 Field used to store 100 three-character token identifiers used for debugging and tuning

ba_line_type 12900 1 Output line type of M or as defined by pattern processing

ba_filler_03 12901 100 Reserved for future use.

Trillium Software System™ Programmer’s Guide, Volume 2 Business Data Parser API Error Codes 3-35

Business Data Parser API Error Codes

The following return codes are the codes returned in the ba_return field, in the Business Data Parser Repository Output Record Format.

Most file errors (2, 3, 4, 5, 8, D) are caused by inaccuracies in specifying the path of the file.

Table 3.5 Business Data Parser Error Codes

Value Description

0No error.

1 Insufficient Storage

2 Table Error – Pattern, Word and/or City tables not found.

3 Log File Error

4 Detail File Error

5 Pattern-Word-City Tab Error – Pattern, Word and/or City tables not readable.

6 Too Many Tokens

7 Line Definition Error

8 Display File Error

9 Invalid Parser Handle

A Invalid Parm File Entry

B Invalid Interface Call Type. Must be either: O=Open, P=Process, or C=Close

C Invalid Service Call Type. Must be either D=Send to Display File E=Supply Error Text

D Statistics File Error

E WRITE TQ TS BPR2 Error (CICS only)

F (CICS) Business Data Parser Not Initialized

Trillium Software System Return Data & Output Tables 3-36 Global Data Router API Error Codes

Global Data Router API Error Codes This table describes the return code values that can be returned by the Global Data Router in the event of an error.

Table 3.6 Global Data Router Error Codes

Value Description

1 Parameter value must be Y or N

2 Missing a required parameter

3 Error opening DDL

4 Field in parameter file does not exist in DDL

5 Input DDL not specified

6 Could not allocate memory to build working storage

7 Could not load a city table during initialization

8 Parameter file not found

9 Country parameter required before city table or word/pattern parameter

10 Invalid parameter in parameter file

11 Country name exceeded 49 characters

12 Country in country list, but not in rules file

15 Error opening word/pattern file

16 Error opening error file

17 Error opening log file

18 Error mapping city table file

19 Cannot find the Global Geography Table

20 Specified country in Rules or Parameter file is not located in Global Geography Table

21 Maximum number of countries exceeded (maximum is 200) – may happen if the Global Geography Table is corrupted.

22 Duplicate parameter or rule entry

Trillium Software System™ Programmer’s Guide, Volume 2 Data Reconstructor Output 3-37

Data Reconstructor Output

The following error codes and messages for the Data Reconstructor are for both the main program as well as the rules file compilation. Data Reconstructor API Error Codes This table lists all of the possible return code values and descriptions.

Table 3.7 Data Reconstructor Error Codes

Value Description

0 Program successfully completed; no errors found.

1 Invalid handle used in an API call.

2 Attempting to open an already open channel.

3 Errors found in the parameter file.

4 Unable to open input dictionary. Confirm that the file-name is correct and includes the full absolute or relative path name.

5 Unable to open the output dictionary. Confirm that the file-name is correct.

6 Unable to open the rule file specified in the RULE_FNAME parm.

7 The rule file specified in RULE_FNAME does not contain a rule with the name specified in USE_RULE.

8 Compile errors in the rule file. See Table 3.8, “Data Reconstructor Compiler Error Messages” for descriptions of compiler error messages.

9 Error closing the input dictionary.

A Error closing the output dictionary.

B The function used (copy_all) to copy all corresponding fields from input record to the output record failed.

C Copy field failed.

D Unable to create the output default values.

Trillium Software System Return Data & Output Tables 3-38 Data Reconstructor API Compiler Error Messages

Table 3.7 Data Reconstructor Error Codes (Continued)

Value Description

E “Recons Open Failed - rc=E” Fatal error [10069] encountered during initialization of Trillium UCA. Unable to initialize. This error indicates that for parameter TO_UPPER_ FNAME, the file does not exist.

F “Recons Open Failed - rc=F” Fatal error [10070] encountered during initialization of Trillium UCA. Unable to initialize. This error indicates that for parameter TO_LOWER_ FNAME, the file does not exist.

G “Recons Open Failed - rc=G” Fatal error [10071] encountered during initialization of Trillium UCA. Unable to initialize. This error indicates that for parameter UPLOW_FNAME, the file does not exist.

K “Recons Open Failed - rc=K” Fatal error [10075] encountered during initialization of Trillium UCA. Unable to initialize. This error indicates that for parameter IS_ALPHA_ FNAME, the file does not exist.

Y Internal error–Unable to allocate memory. Program could not allocate buffer space necessary to run.

Z Internal error–Memory structure corrupted. This message indicates an internal error in CFRECONS. Please contact Trillium Software Customer Support for assistance.

Data Reconstructor API Compiler Error Messages

When the rules in the file named by the RULE_FNAME parameter are compiled they are checked for errors. Any problems are reported to the stderr file.

If all of the scripts in the rule file do not compile cleanly, the system returns an error return code of “8” to indicate a problem with the rule file. Notice that each compiler error message begins with e rule file name and contains the line number in the rule file where the error occurred. Most compiler errors also include a token to indicate where in the line the error was detected.

Trillium Software System™ Programmer’s Guide, Volume 2 Data Reconstructor API Compiler Error Messages 3-39

This table describes the error messages:

Table 3.8 Data Reconstructor Compiler Error Messages

Error Messages and Descriptions

line nn: ‘field-name’ not found in input dictionary at ‘token’ line nn: ‘field-name’ not found in output dictionary at ‘token’

The identified field-name was not found in either the input or output data dictionary (DDL) file. Dictionary field names are case sensitive and must be spelled correctly. The first field-name referenced in an action-statement or if-condition is assumed to be in the input dictionary. The second field-name is assumed to be in the output dictionary. This assumption can be changed by prefixing the field-name with IN. or OUT. In the following example, if new_addr1 and new_addr2 fields occurs only in the output dictionary this error will be reported for both the if and move statements.

if(new_addr1 EQ BLANKS) then move new_addr2, new_addr1; endif

These errors can be corrected by using the OUT. prefix; as in:

if(OUT.new_addr1 EQ BLANKS) then move OUT.new_addr2, new_addr1; endif

Trillium Software System Return Data & Output Tables 3-40 Data Reconstructor API Compiler Error Messages

Table 3.8 Data Reconstructor Compiler Error Messages (Continued)

Error Messages and Descriptions

line nn: [n,n] should be [n:n] at ‘token’ line nn: (n,n) should be (n:n) at ‘token’

The proper syntax used to select a portion of a field is field-name[n:n] and not field-name [n,n]. Change the comma to a colon.

line nn: (n:n) not valid with string literals at ‘token’ line nn: [n:n] not valid with string literals at ‘token’

You can not use [n:n] to select a portion of a literal field. Instead modify the actual literal value. For example, use:

move "Jon", first_name;

line nn: [n:n] only valid with text fields at ‘token’

You can only use [n:n] notation to select a portion of a field that is defined in the data dictionary as a text field. This feature would be ambiguous with non-text fields such as integer, packed-decimal and is not supported.

line nn: bad [n:n] values at ‘token’

[n:n] is used to select a portion or substring of a text field. The first n specifies a beginning position within the text field with 1 that indicates the first character. The second n specifies the length of the substring. Length can be specified as * to indicate all of the remainder of the field.

The position and length values can not be equal to zero or greater than the size of the field.

Trillium Software System™ Programmer’s Guide, Volume 2 Data Reconstructor API Compiler Error Messages 3-41

Table 3.8 Data Reconstructor Compiler Error Messages (Continued)

Error Messages and Descriptions line nn: can not write to a literal at ‘token’

Literal values can be used as the source field in an action-statement but not as the destination field. The destination field must always be a field found in the output dictionary. line nn: can not write to an input field at ‘token’

Fields defined in the input dictionary can not used as the destination field in an action-statement. The destination must always be a field found in the output dictionary.

When the same field-name occurs in both input and output data dictionaries, the input dictionary is used when the field-name is referenced as a source field and the output dictionary is used when the field is referenced as a destination field. It is possible to use output fields as source by preceding the field-name with OUT, as shown in the following example:

Move OUT.state, state-key; append_pack "-" , state-key; append_pack seqno , state-key; line nn: empty rule at ‘token’

A rule must contain at least one statement. line nn: internal error, bad pointer value in function-name at ‘token’

This error indicates an internal problem in the CFRECONS program or real-time library. In the unlikely event you receive this error, please contact Trillium Software Customer Support for assistance.

Trillium Software System Return Data & Output Tables 3-42 Data Reconstructor API Compiler Error Messages

Table 3.8 Data Reconstructor Compiler Error Messages (Continued)

Error Messages and Descriptions

line nn: literal storage exhausted at ‘token’

There is a limit to the total size of all the literal values you use in your scripts; currently about 100Kbytes.

This error message means that your rule file has too many literal values. If possible, try to reduce the size of your rule file; possibly by placing each rule in its own file. If this does not eliminate the problem, contact Trillium Technical Support for assistance.

line nn: missing "endrule" at ‘token’

Every rule must start with a rule keyword and end with an endrule keyword. If the endrule keyword is missing, this error message will be reported.

line nn: missing arguments at ‘token’

Every action statement takes zero, one or two arguments. This error means you’ve attempted to use too many arguments in a given statement. For example, upper_case takes one argument and append takes two arguments. Each of the following statements will cause this error:

upper_case; append country;

line nn: missing rule name at ‘token’

Every rule must have a name that immediately follows the rule keyword that introduces the rule.

line nn: missing semi-colon at ‘token’

Every action statement must end in a semi-colon.

line nn: table overflow, too many expressions at ‘token’

There is a limit to the size of a script that CFRECONS can compile; currently about 20,000 statements.

This error message means that your rule file has too many expressions. If possible, try to reduce the size of your rule file; possibly by placing each rule in its own file. If this does not eliminate the problem, contact Trillium Technical Support for assistance.

line nn: too many arguments at ‘token’

Every action statement takes zero, one or two arguments. This error means you’ve attempted to use more arguments than the statement can use. For example, upper_case takes one argument. The following statement will cause this error: upper_case state, zip;

Trillium Software System™ Programmer’s Guide, Volume 2 Data Reconstructor API Compiler Error Messages 3-43

Table 3.8 Data Reconstructor Compiler Error Messages (Continued)

Error Messages and Descriptions line nn: bad quoted string at ‘token’

A literal value was not properly delimited by either double quotes (") or single quotes ('). Quoted strings can not extend over multiple lines. If necessary, you can break a long string into two strings and use a plus sign to concatenate the two strings. For example: move "------" + "------", dashed_line; line nn: illegal character (hex=0xFF) at ‘token’

An invalid character was encountered in the rule file. The hex value of the offending character will be displayed in the error message. For example, field names can contain an underscore character (_) but not a dash character (-). Using a dash in a rule name will generate this error, as in the following example: rule first-rule //statements endrule line nn: syntax error: cannot back up

This error indicates an internal problem with the CFRECONS compiler. In the unlikely event you receive this error, please contact Trillium Technical Support for assistance. line nn: parser stack overflow

This error indicates an internal problem with the CFRECONS compiler. In the unlikely event you receive this error, please contact Technical Support for assistance. line nn: parse error; also virtual memory exceeded

This error indicates an internal problem with the CFRECONS compiler. In the unlikely event you receive this error, please contact Trillium Software Customer Support for assistance. line nn: parse error

Something unrecognized in a script file that does not cause one of the other compiler errors will generate a parse error.

Trillium Software System Return Data & Output Tables 3-44 Window Key Generator API Error Codes

Window Key Generator API Error Codes

This table lists error codes returned by the Window Key Generator module.

Table 3.9 Window Key Generator Error Codes

Value Description

1 Unable to allocate space for the control area.

2 Missing INP_DDL parameter.

3 Missing RULES_DDNAME parameter.

4 Invalid call type. Valid values are: O=Open, P=Process, or C=Close.

101 Missing parameter file name.

102 Unable to open parameter file or the change table.

103 Error in the echo file name.

104 Invalid parameter name found in the file.

105 Unknown command line parameter.

106 Duplicate parameter name found in the file.

107 Bad format for parameter or override parameter.

108 Bad format for parameter in source program.

109 Parameter value was expected to be numeric.

110 Missing override value.

111 No ending quote.

112 Insufficient memory for parameter value parm_entry.

113 Insufficient memory for string parameter value.

114 Insufficient memory for long parameter value.

115 Insufficient memory for double parameter value.

116 Extraneous parenthesis found.

117 Error reading the parameter file.

200 Error opening the DDL.

Trillium Software System™ Programmer’s Guide, Volume 2 Window Key Generator API Error Codes 3-45

Table 3.9 Window Key Generator Error Codes (Continued)

Value Description

300 Error setting up the window key structure.

400 Error generating the window key.

Trillium Software System Return Data & Output Tables 3-46 US Postal Geocoder API Output

US Postal Geocoder API Output

The following table shows the input/out data layout for the US Postal Geocoder. This entire table also serves as the input data to the US Centroid Census Geocoder and the Interpolated House Number Census Geocoder. US Postal Geocoder Input/Output Data

Table 3.10 US Postal Geocoder Input and Output Data

Field Position Length Description

Input Geographic Match Section (inarea — First 130 bytes)

Pr_gin_str_name 1 - 22 22 Input street name

Pr_gin_postal_code 23 - 31 9 Input postal code

Pr_gin_str_pre_direction 32 - 33 2 Input pre direction

Pr_gin_str_post_ 34 - 35 2 Input post direction direction

Pr_gin_str_suffix 36 - 39 4 Input street suffix

Pr_gin_house_number 40 - 49 10 Input house number

Pr_gin_secondary_ 50 - 55 6 Input secondary number number

Pr_gin_secondary_type 56 - 59 4 Input secondary type

Pr_gin_bldg_firm_name 60 - 85 26 Input building firm

Pr_gin_postal_number 86 - 91 6 Post office number

Pr_gin_postal_city_ 92 - 97 6 Postal city number number

Pr_gin_postal_city_name 98 - 127 30 Postal city name

Pr_gin_stprvcty_name 128 - 2 State, province, county 129

Trillium Software System™ Programmer’s Guide, Volume 2 US Postal Geocoder Input/Output Data 3-47

Table 3.10 US Postal Geocoder Input and Output Data (Continued)

Field Position Length Description

Pr_gin_record_type 130 1 Input record type: 1=street 2=rr/hc 3=pobox 4=error 5=Bad Street Pattern.

Output Geographic Match Section (outarea — 117 bytes)

Pr_gout_postal_code 1 - 9 9 Output postal code

Pr_gout_delivery_point 10 - 11 2 Output delivery point

Pr_gout_delivery_point_ 12 1 Output delivery point code cd

Pr_gout_carrier_route 13 - 16 4 Output carrier route

Pr_gout_deliver_addr 17 - 66 50 Output delivery address line rebuilt from the best available matched or parsed address components.

Pr_gout_house_number 67 - 76 10 Output house number

Pr_gout_str_pre_ 77 - 78 2 Output pre direction direction

Pr_gout_str_name 79 - 100 22 Output street name

Pr_gout_str_post_ 101 - 2 Output post direction direction 102

Pr_gout_str_suffix 103 - 4 Output street suffix 106

Pr_gout_secondary_type 107 - 4 Output of the postal geocoder 110 identifying the type of apartment.

Pr_gout_secondary_ 111 - 6 Output of the postal geocoder number 116 identifying the apartment number.

Trillium Software System Return Data & Output Tables 3-48 Return Info Data Area

Table 3.10 US Postal Geocoder Input and Output Data (Continued)

Field Position Length Description

Pr_gout_fail_level 117 1 A numeric code identifying the level at which the address matched or failed to match the directories.

0=No failure: a match. 1=City/state: where city/state code was not available. 2=Street name: failure of street name spelling. 3=Primary range: failure of house number. 4=Address components: failure of other address elements (such as: business name, street type, direction, apartment #) when matched via a street. 5=Ambiguous failure: when there is not one clear match (usually when more information is required or missing information prohibits matching.)

Return Info Data Area

Guidelines for v7.15.2 and Above Note that certain fields are no longer returned as of v7.15.2 when running the US Postal Geocoder in callable mode (API), due to license agreement with the USPS. DPV Only the dpv_confirm and dpv_cmra fields are returned; the following fields are no longer returned: • dpv_footnote1 • dpv_footnote2 • dpv_footnote3

Trillium Software System™ Programmer’s Guide, Volume 2 LACSLink 3-49

• dpv_nostat • dpv_pbsa • dpv_vacant • dpv_violation LACSLink Only the converted address is returned; the following fields are no longer returned: • lacs_code • lacs_flag SUITELink Only the suite number is appended to the address; the following fields are no longer returned: • suite_code • suite_flag

Table 3.11 Return Info Data Area

Field Position Length Description

ret_code 1 1 Return code, returned by the US Geocoder. For a list of these error codes, see “US Postal Geocoder Error Codes” on page 3-65.

full_postal_code 2-10 9 Postal code. Original postal code or code from the directory when a match was possible. Value of this field depends on the match success of the street components as indicated by the fail level.

street_name 11-32 22 Street name. Original street name or street name from the postal directory when a match was possible.

street_pre_ 33-34 2 Prefix street direction that precedes the street name. direction Commonly letter designations like ‘N’, ‘SW’, and so on.

Trillium Software System Return Data & Output Tables 3-50 SUITELink

Table 3.11 Return Info Data Area (Continued)

Field Position Length Description

street_post_ 35-36 2 Post street direction that follows the street name. direction Commonly letter designations like ‘N’, ‘SW’, and so on.

street_suffix 37-40 4 Street suffix, like Ave. or Rd. Appropriate abbreviations are used.

carrier_route_id 41-44 4 A 4-byte code assigned to a mail delivery or collection route within a 5-digit ZIP code. The first character of this identification is alphabetical, and the last three are numeric: Bnnn=PO box Hnnn=Highway contract Rnnn=Rural route Cnnn=City delivery Gnnn=General delivery

secondary_type 45-48 4 Secondary street component type that follows the street name. Examples: SUITE, APT., and so on.

record_type 49-50 2 Street address type. Possible values are: The first character represents the record type. F = Firm G = General Delivery H = Highrise P = PO Box R = Rural Route S = Street The second character represents the match type. Blank = Standard Match D = Default Match U = Unique Match

Trillium Software System™ Programmer’s Guide, Volume 2 SUITELink 3-51

Table 3.11 Return Info Data Area (Continued)

Field Position Length Description fail_level 51 1 Numerical indicator of the match accuracy. 0=Exact match to the directory, zipcode+4 returned. 1=City failure; not found in the postal directory. 2=Street name failure - not found in the directory. 3=Primary range failure - typically the house number cannot be found on the postal directory. 4=Street components failure, secondary street components (like apartment information) not found on the postal directory. 5=Ambiguous failure; when there is not one clear match (usually when missing information prohibits matching) postal_city_ 52-81 30 Postal city name. A valid city name for mailing name purposes; appears in the last line of an address. urban_city_ 82-111 30 Neighborhood name name Only exist for Puerto Rico addresses. postal_code_ 112 1 Y – Flag that indicates the postal code output is changed different from input. city_area_ 113 1 Y – Flag that indicates the city name output is name_changed different from input. street_name_ 114 1 Y – Flag that indicates the street name output is changed different from input. street_ 115 1 Y – Flag that indicates street components output is components_ different from input. changed street_name_ 116-143 28 Street name (long version) long

Trillium Software System Return Data & Output Tables 3-52 SUITELink

Table 3.11 Return Info Data Area (Continued)

Field Position Length Description

lacs_status_ind 144 1 L – Flag that indicates the address has an emergency 911 address conversion. Locatable Address Conversion System - An indicator that the street address known by the post office also has another address used for emergency services.

This is done when the mail is delivered to one location but the physical location of the building associated with that mail address is located somewhere else not recognized by the post office.

bldg_ind 145 1 Flag that indicates the approximate number of units in high-rise. Possible values and number of units in high rise they represent: A = <=5 B = 6 -10 C = 11 - 25 D = 26 - 50 E = 51 - 100 F = 101 - 200 G = 201 - 350 H = 351 - >

county_number 146 3 County number. This value is the FIPS code assigned to a county or parish within a state. In , it identifies a region within the state.

congressional_ 149 2 Congressional district number. This is a standard dis value identifying a geographic area within the US served by a member of the US House of Representatives or Senate. If there is only one member of Congress within a state, the code is “AL” to indicate “At Large.”

Trillium Software System™ Programmer’s Guide, Volume 2 SUITELink 3-53

Table 3.12 Secondary Return Data Info Area

Field Position Length Description lacs_flag 11LACSLink flag Y=new address provided N=new address not provided Blank=record not presented to LACSLink lacs_code 22LACSLink return code A = Input record matched, new address returned. 00 = Input record not matched, no new address returned. 09 = Input record matched but it is a highrise default. No new address returned. 14 = Input record matched to multiple records; DPV could not confirm only 1; no new address returned. 92 = Input record matched but it had a secondary number and the LACS record did not. New address returned. dpv_confirm 4 1 Stores the DPV confirm value. This field generates one of the following characters: Y=Input record is a valid mailing address listed in the DPV database. N=Input record is not in the DPV database of valid mailing addresses. S=Secondary address (apartment or rural route box number) is not valid, although the primary address (house number or rural route) validates. D=Input record is a valid mailing address, but is missing the secondary address (apartment or rural route box number). V=A violation occurred. If this field is blank, the input address was not matched to the ZIP+4 database.

Trillium Software System Return Data & Output Tables 3-54 SUITELink

Table 3.12 Secondary Return Data Info Area (Continued)

Field Position Length Description

dpv_cmra 51Field name that stores the DPV CMRA value. This field generates one of the following characters: Y=Input record is the address of a Commercial Mail Receiving Agency (CMRA), such as Mail Boxes Etc. N=Input record is not a CMRA. V=A violation occurred. If this field is blank, the input address was not presented to the CMRA hash table.

dpv_violation 61Field name that stores the DPV violation value. This field generates one of the following characters: Y=Input record appears to be a synthetic address and has caused a violation. As required by the Postal Service, DPV processing will terminate and DPV output fields will generate only "V" until DPV processing is re-enabled with the Unlock DPV code. N=Input record is not a valid address. V=A violation occurred. If this field is blank, the input address was not presented to the DPV process or is not a valid address.

dpv_footnote1 72Field name used to store the DPV footnote1 value. This field generates a string of one of the following two-character standard Postal Service codes: AA=Input address matched the ZIP+4 file. A1=Input address did not match the ZIP+4 file. If this field is empty, then other DPV output fields (for example, "DPV CMRA", "DPV confirm", or "DPV violation") are generating V codes.

Trillium Software System™ Programmer’s Guide, Volume 2 SUITELink 3-55

Table 3.12 Secondary Return Data Info Area (Continued)

Field Position Length Description dpv_footnote2 92Field name used to store the DPV footnote2 value. This field generates a string of one of the following standard Postal Service codes: Primary means a house number or rural route, secondary means an apartment or rural route box number.) BB=Input address matched the DPV file. CC=Input address primary matched DPV but secondary did not. N1=Input address matched a DPV highrise but secondary was not input. M1=Input address primary is missing. M3=Input address primary is invalid. P1=Input address is missing a PO box, rural route, or highway contract box number. P3=Input address PO, RR, HC Box number invalid. If this field is empty, then other DPV output fields (for example, "DPV CMRA", "DPV confirm", or "DPV violation") are generating V codes, or were not presented to the DPV hash tables. dpv_footnote3 11 2 Field name used to store the DPV footnote3 value. This field generates a string of one of the following standard Postal Service codes: RR=Input address matched a CMRA. R1=Input address matched a CMRA, but secondary number is not present. dpv_vacant 13 1 Field used to store DPV VACANT flag: Y—Address was found in VACANT table. N—Address was not found in VACANT table. Blank—Not checked against VACANT table. suite_flag 14 1 Field used to store SuiteLink flag: Y=SuiteLink table match. N=SuiteLink table not matched. Blank= Not checked against SuiteLink table.

Trillium Software System Return Data & Output Tables 3-56 SUITELink

Table 3.12 Secondary Return Data Info Area (Continued)

Field Position Length Description

suite_code 15 2 Field used to store SuiteLink return code: A=SuiteLink table hit (secondary unit information appended). 00=SuiteLink table not hit. Blank= Not checked against SuiteLink table (not a business record with a high rise default).

dpv_nostat 17 1 Field used to store DPV NoStat flag (address is currently not receiving deliveries): Y—Address was found in NOSTAT table. N—Address was not found in NOSTAT table. Blank—Not checked against NOSTAT table

dpv_pbsa 18 1 Field used to store PBSA table flag: Y=Address found in PBSA table. N=Address not found in PBSA table. Blank= Address was not checked against the PBSA table.

filler 19 10 Reserved for future use.

aux_ret_code 29 2 Field used to store error codes from LACSLink, DPV, and SuiteLink. (See the table below for error codes.)

Table 3.13 LACSLink, DPV, and SuiteLink Error Codes

Code Definition

4 General MALLOC error

5 Hash table MALLOC error

6 Hash table LRECL error

7 Fake Table LRECL error

8 CMRA table LRECL error

9 Hash table load error

Trillium Software System™ Programmer’s Guide, Volume 2 SUITELink 3-57

Table 3.13 LACSLink, DPV, and SuiteLink Error Codes (Continued)

Code Definition

10 Fake table load error

11 CMRA table load error

12 LCD Table load error

13 Data too old

14 Invalid INI file

15 Unlock code invalid

16 Unlock code missing

17 GET_DATE failed to get date.

18 INI file read error

19 INI file write error

21 Hash table name too long

22 Hash table name invalid

23 Missing hash table

24 LACS load error

25 LACS missing file name

26 LACS error on street validation open

27 DPV violation shutdown

28 LACS violation shutdown

29 LACS error on hash open

30 LACS error on hint open

31 LACS error on leftrite open

32 LACS error on RV9 open

33 LACS error on hash read

Trillium Software System Return Data & Output Tables 3-58 SUITELink

Table 3.13 LACSLink, DPV, and SuiteLink Error Codes (Continued)

Code Definition

34 LACS error on hint read

35 LACS error on leftrite read

36 LACS error on RV9 read

38 DPV error Nostat table load

40 DPV error Vacant table load

96 Unknown call type error

99 System or I/O error

100 SLKN error: MALLOC word array

101 SLKN error: open header file

102 SLKN error: open LCD file

103 Open ZIP9 file

104 SLKN error: open noise file

105 SLKN error: open normal file

106 SLKN error: open lookup file

107 SLKN error: MALLOC header array

108 SLKN error: MALLOC LCD array

109 SLKN error: MALLOC ZIP9 array

110 SLKN error: MALLOC noise array

111 SLKN error: MALLOC normal array

112 SLKN error: MALLOC normal array

Trillium Software System™ Programmer’s Guide, Volume 2 US Match Possibilities Data Area 3-59

US Match Possibilities Data Area

The following layout shows the fields that are included in the “details buffer”, of the US Postal Geocoder. The buffer is available only in real-time implementations.

Table 3.14 US Match Possibilities Data Area

Field Position Length Description

Postal_code 1 - 5 5 ZIP code for the corresponding details.

Adr_primary_low 6 - 15 10 A house, rural route, highway contract box, or post office box number; the numeric or alphanumeric component of an address preceding the street name; the low-end address in a range of address. Often referred to as house number.

Address Range Address Primary Low Number 100-198 Main Ave. <– 100 101-199 Main Ave. <– 101 A200-A298 Main Ave. <– A200

Add_primary_high 16 - 25 10 A house, rural route, highway contract box, or post office box number; the numeric or alphanumeric component of an address preceding the street name; the low-end address in a range of address. Often referred to as house number.

Trillium Software System Return Data & Output Tables 3-60 US Match Possibilities Data Area

Table 3.14 US Match Possibilities Data Area (Continued)

Field Position Length Description

Addr_primary_oe 26 1 Code that identifies the side or sides of a street for which a given address range is applicable.

For street, high-rise, firm and multi-carrier records, B=Both sides of the street, E=Even side of a street (even-numbered addresses in the range), O=Odd side of a street (odd numbered addresses in the range). For general delivery, post office box, and rural route/highway contract records, this code is always “B” (Both).

100-198 Main Ave. E (Even addresses in the range) 101-199 Main Ave. O (Odd addresses in the range) 100-199 Main Ave. B (Even & odd addresses in the range)

Str_pre_direction 27 - 28 2 Prefix street direction that precedes the street name. Common letter designations like N, SW, and so on

Street_name 29 - 56 28 Street name. Street name from the postal directory.

Str_suffix 57 - 60 4 Street type. (e.g. Ave., Rd., etc.) Appropriate abbreviations are used.

Str_post_direction 61 - 62 2 Street post direction that follows the street name. Common letter designations like N, SW, and so on

Bldg_firm_sec_ 63 - 102 40 The name of a company, building, apartment name complex, shopping center, or other distinguishing secondary address information. This field is normally used with firm and high-rise records but may also contain literals such as ‘Postmaster’ or ‘United States Postal Service.’

Trillium Software System™ Programmer’s Guide, Volume 2 DISPLAY_BASEDATA Parameter Options 3-61

Table 3.14 US Match Possibilities Data Area (Continued)

Field Position Length Description

Addr_sec_add 103 - 106 4 A descriptive code used to identify the type of address secondary range information in the Address Secondary Range field. This code may be useful in address matching, (such as, the secondary address numbers may indicate apartment, suite, or trailer numbers, and so on)

Addr_sec_low 107 - 114 8 Code that describes an apartment, room, suite, space, floor or other secondary addressing numeric or alphanumeric that follows a street address. The low-end secondary address component in a range of secondary addresses.

Addr_sec_high 115 - 122 8 Code that describes an apartment, room, suite, space, floor or other secondary addressing numeric or alphanumeric that follows a street address. The high-end secondary address component in a range of secondary addresses.

Addr_sec_oe 123 1 Code that identifies a secondary address within a range of secondary addresses as being o(dd), e(ven), or b(oth).

DISPLAY_BASEDATA Parameter Options

This table explains the behavior of the US Postal Geocoder when attempting to match the input street name and components to the postal directory. By using DISPLAY_BASEDATA with specific values, the possibility of getting a match can be improved or possible matches can be returned to the calling program for evaluation.

Syntax: DISPLAY_BASEDATA abc a – Position 1 (N, 3, A, B, and so on) b – Position 2 (P) c - Postion 3

Trillium Software System Return Data & Output Tables 3-62 DISPLAY_BASEDATA Parameter Options

Table 3.15 US Geocoder DISPLAY_BASEDATA Values (Position 1)

Column 1 Value Description

NNo display.

Apply the spelling algorithm as necessary on streets beginning with the same first character, with the exception of numeric types of streets. No population of the street name or details buffer is performed.

This is the default.

4 No display and no spelling algorithm applied – the street must be an exact match. No population of the street name or details buffer is performed.

5No display.

Apply the spelling algorithm to every street on the directory. No population of the street name or details buffer is performed.

Y Display the basedata (house number and components) to standard output. Apply the spelling algorithm as necessary on streets beginning, with the same first character with the exception of numeric types of streets and return this information.

6 Display the basedata (house number and components) to standard output – the street must be an exact match, and return this information. No spelling algorithm applied

7 Display the basedata (house number and components) to standard output. Apply the spelling algorithm to every street on the directory and return this information.

3 Return to the Street_Name_Buffer and Details_Buffer the Level 2 (street name) and Basedata (house number and components), applying the spelling algorithm as necessary on streets beginning with the same first character, with the exception of numeric types of streets.

A Return to the Street_Name_Buffer and Details_Buffer the Level 2 (street name) and Basedata (house number and components) without applying a spelling algorithm. The street must be an exact match.

Trillium Software System™ Programmer’s Guide, Volume 2 DISPLAY_BASEDATA Parameter Options 3-63

Table 3.15 US Geocoder DISPLAY_BASEDATA Values (Position 1)

Column 1 Value Description

B Return to the Street_Name_Buffer and Details_Buffer the Level 2 (street name) and Basedata (house number and components), applying the spelling algorithm to every street on the directory.

2 Display to standard output only the street names from the directory, applying the spelling algorithm as necessary on streets beginning with the same first character, with the exception of numeric types of streets.

8 Display to standard output only the street names from the directory without applying a spelling algorithm. The street must be an exact match.

9 Display to standard output only the street names from the directory, applying the spelling algorithm to every street on the directory.

M This parameter value ‘M’ can only be followed by two 4-character numerics:

The first 4-characters indicate the number of megabytes of the Level 2 table to be held in memory. The second of the 4-character numbers indicates the number of megabytes of the basedata to be held in memory

Table 3.16 US Geocoder Display_BaseData Values (Position 2)

Column 2 Value Description

P Using this value allows streets that have a value of "O" (Other) on the USPS alias street file, to be returned in the output area.

This option has matching implications, allowing for different street names representing the same location. If the street name is a window_key field and/or matching field, we suggest using ZIP+4 (which will be the same) as a strong address indicator.

See the note below, involving this special function.

Trillium Software System Return Data & Output Tables 3-64 DISPLAY_BASEDATA Parameter Options

Table 3.17 US Geocoder Display_BaseData Values (Position 3)

Column3 Value Description

Y For dual address processing, uses the pr_gin_bldg_firm_name field to store the second address. If no second address is present, sets the pr_gin_bldg_ firm_name field to blank.

U Invokes functionality of SHOW_UNIQUE_ZIPS parameter.

A Combines Y and U values being invoked.

Trillium Software System™ Programmer’s Guide, Volume 2 DISPLAY_BASEDATA (“P” Option Functionality) 3-65

DISPLAY_BASEDATA (“P” Option Functionality)

Many of the street names that are contained on the USPS alias file are valid as is, and it is not required to change them to the preferred. Those streets are indicated with a value of "O" in the USPS alias_type_code on the master file.

Some examples of this ‘P’ option in action are:

Input data Output, with ‘P’ Output, ‘P’ NOT Explanation: contains: enabled: enabled:

ROUTE 137 ROUTE 137 LONG POND RD In this case, a street is known by two names, but both are valid.

12 LAGRANGE ST 12 LAGRANGE ST 12 LA GRANGE ST Here, a street seems to be misspelled, but both are actually valid.

MONTVALE ST MONTVALE ST MONTVALE AVE Here, there is a street name for which more than one type is valid.

US Postal Geocoder Error Codes

The following error codes are all returned by the US Postal Geocoder:

Table 3.18 US Postal Geocoder Error Codes

Value Description

0 Program has executed successfully. The user must check the fail level because a complete match to the directory was not obtained.

1 Matched Directory – there is a match but the user must check the fail level code for more information.

2 Invalid Call Type – “ACTION” parameter must be O, P, or C.

3 Insufficient Storage Available – not enough memory to hold the postal directories.

4 Level 2 Seek Error – when performing street-level processing, the Geocoder had trouble locating the area in the file, PMBUL2, defined by the postal finance code.

5 Base Data Seek Error – when performing street-level processing, the Geocoder had trouble locating the area in the file, PMBUBD, defined by the street.

Trillium Software System Return Data & Output Tables 3-66 US Postal Geocoder Error Codes

Table 3.18 US Postal Geocoder Error Codes (Continued)

Value Description

6 Base Data Open Error – when performing street-level processing, the Geocoder could not open file, PMBUBD.

7 Level 1 Open Error – when performing street-level processing, the Geocoder could not open file, PMBUL1.

8 Level 2 Open Error – when performing street-level processing, the Geocoder could not open file, PMBUL2.

9 CICS System Not Initialized (CICS only) – Access to the ZMAT TS queue failed. Check stderr for more information.

A CICS Free Memory Error (CICS Only)

B CICS Queue Error (CICS Only)

C Invalid DISPLAY_BASEDATA Value (CICS Only)

D Database dates do not match.

E Bad read, level 1

I CASS violation

J Error in DPV processing. (Check the retxtra >aux_ret_code for more information.)

K Error in LACSLink processing. (Check the retxtra >aux_ret_code for more information.)

L Error in SuiteLink processing. (Check the retxtra >aux_ret_code for more information.)

M Bad open on abbreviation

N Bad read on abbreviation

Trillium Software System™ Programmer’s Guide, Volume 2 US Postal Geocoder Error Codes 3-67

Table 3.19 RETXTRA > AUX_RET_CODE Return Values

Value Description

2 DL * missing dpvini unlock code

4 DL * general malloc error

5DL * hash table malloc error 6DL * hash table lrecl error

7DL * fake table lrecl error

8DL * cmra table lrecl error 9DL * hash table load

10 DL * fake table load

11 DL * cmra table load

12 DL * lcd table load 13 DL * data too old

14 DL * not valid ini file

15 DL * unlock code invalid 16 DL * unlock code missing

17 DL * get_date failed to get the date

18 DL * ini file read error 19 DL * ini file write error

21 DL * hash table name is too long

22 DL * hash table name is invalid 23 DL * one of the hash tables is missing

24 DL * LACS load error.

25 DL * LACS missing filename

26 DL * LACS error on street validation open

27 DL * Hit on a violation record in DPV.

28 DL * Hit on a violation record in LACS

29 DL * Bad open on LACS hash file

Trillium Software System Return Data & Output Tables 3-68 US Postal Geocoder Error Codes

Table 3.19 RETXTRA > AUX_RET_CODE Return Values (Continued)

Value Description

30 DL * Bad open on LACS hint file

31 DL * Bad open on LACS leftrite file

32 DL * Bad open on LACS rv9 file 33 DL * Bad read on LACS hash file

34 DL * Bad read on LACS hint file

35 DL * Bad read on LACS leftrite file 36 DL * Bad read on LACS rv9 file

37 DL * Nostat table lrecl error

38 DL * Nostat table load

39 DL * Vacant table lrecl error 40 DL * Vacant table load

99 DL * Error in dpvni lockdown routine

100 S* Can’t malloc the word array 101 S* Can’t open the header file

102 S* Can’t open the LCD file

103 S* Can’t open the zip9 file 104 S* Can’t open the noise file

105 S* Can’t open the normal file

106 S* Can’t open the lookup file 107 S* Can’t malloc the header array

108 S* Can’t malloc the LCD array

109 S* Can’t malloc the zip9 array

110 S* Can’t malloc the noise array

111 S* Can’t malloc the normal array

112 S* Can’t malloc the lookup array

113 S* Missing one or more SuiteLink file names.

Trillium Software System™ Programmer’s Guide, Volume 2 US Centroid Census Geocoder API Output 3-69

US Centroid Census Geocoder API Output

Input Data to Centroid Census Geocoder

The following table shows the 247-byte input/output data layout of the US Postal Geocoder. This string is input for the Centroid Census Geocoder.

Table 3.20 US Centroid Census Input and Output Data

Field Position Length Description

Input Geographic Match Section (inarea — First 130 bytes)

Pr_gin_str_name 1 - 22 22 Input street name

Pr_gin_postal_code 23 - 31 9 Input postal code

Pr_gin_str_pre_direction 32 - 33 2 Input pre direction

Pr_gin_str_post_ 34 - 35 2 Input post direction direction

Pr_gin_str_suffix 36 - 39 4 Input street suffix

Pr_gin_house_number 40 - 49 10 Input house number

Pr_gin_secondary_ 50 - 55 6 Input secondary number number

Pr_gin_secondary_type 56 - 59 4 Input secondary type

Pr_gin_bldg_firm_name 60 - 85 26 Input building firm

Pr_gin_postal_number 86 - 91 6 Post office number

Pr_gin_postal_city_ 92 - 97 6 Postal city number number

Pr_gin_postal_city_name 98 - 127 30 Postal city name

Pr_gin_stprvcty_name 128 - 2 State, province, county 129

Trillium Software System Return Data & Output Tables 3-70 Input Data to Centroid Census Geocoder

Table 3.20 US Centroid Census Input and Output Data (Continued)

Field Position Length Description

Pr_gin_record_type 130 1 Input record type: 1=street 2=rr/hc 3=pobox 4=error 5=Bad Street Pattern.

Output Geographic Match Section (outarea — 117 bytes)

Pr_gout_postal_code 1 - 9 9 Output postal code

Pr_gout_delivery_point 10 - 11 2 Output delivery point

Pr_gout_delivery_point_ 12 1 Output delivery point code cd

Pr_gout_carrier_route 13 - 16 4 Output carrier route

Pr_gout_deliver_addr 17 - 66 50 Output delivery address line rebuilt from the best available matched or parsed address components.

Pr_gout_house_number 67 - 76 10 Output house number

Pr_gout_str_pre_ 77 - 78 2 Output pre direction direction

Pr_gout_str_name 79 - 100 22 Output street name

Pr_gout_str_post_ 101 - 2 Output post direction direction 102

Pr_gout_str_suffix 103 - 4 Output street suffix 106

Pr_gout_secondary_type 107 - 4 Output of the postal geocoder 110 identifying the type of apartment.

Pr_gout_secondary_ 111 - 6 Output of the postal geocoder number 116 identifying the apartment number.

Trillium Software System™ Programmer’s Guide, Volume 2 Input Data to Centroid Census Geocoder 3-71

Table 3.20 US Centroid Census Input and Output Data (Continued)

Field Position Length Description

Pr_gout_fail_level 117 1 A numeric code (0 – 5) to identify the level at which the address matched or failed to match the postal directories. Valid match fail levels are: 0=No failure: a match. 1=City/state: city/state code not available. 2=Street name: street name spelling failure. 3=Primary range: house number failure. 4=Address components: failure of other address elements (such as: business name, street type, direction, apartment #) when matched via a street. 5=Ambiguous failure: not one clear match (when missing information prohibits matching.)

Trillium Software System Return Data & Output Tables 3-72 US Centroid Census Geocoder Output Data

US Centroid Census Geocoder Output Data

This table shows the output data returned from the Centroid Census Geocoder.

Table 3.21 US Centroid Census Geocoder Output Data

Field Position Length Description

Output XRef Match Section

Ret_Code 1 1 Geocoder program execution status. See “US Centroid Census Geocoder Output XRef Match Section Error Codes” on page 3-79.

Postal_Code 2 – 10 9 9-digit ZIP code provided by the postal geocoder.

State_Code 11 – 12 2 FIPS state code FIPS (Federal Information Processing Standards). State codes - 2 digits. Valid codes are 01-99.

County_Code 13 – 15 3 FIPS County code Standard non-zero, 3-digit number depicting a primary political subdivision of a state. Always odd. Valid codes 001– 099, plus Independent Cities in 510–840 by fives or tens, and parishes in .

Tract_Code 16 – 21 6 Census tract code Four digit basic code, implied decimal point and 2 suffix. Small statistical subdivision of a county. Designed to have relatively homogeneous populations of between 2,500 and 8,000 residents. Valid codes 0001.00 – 9899.99.

Blk_Group 22 1 Census block group code Defined as that set of census blocks sharing the same digit within a census tract. (e.g. BG ‘3’ within a tract would include any block numbered between 301 and 309.

Trillium Software System™ Programmer’s Guide, Volume 2 US Centroid Census Geocoder Output Data 3-73

Table 3.21 US Centroid Census Geocoder Output Data (Continued)

Field Position Length Description

Mcd_Code 23 – 25 3 Census Minor Civil Division (MCD) • An MCD is a primary political and administrative subdivision of a county, typically a town, township, etc. • A CCD is a statistical subdivision of a county roughly equivalent to an MCD defined for areas without stable MCD definitions. They are used interchangeably in geocoding.

Msa_Code 26 – 29 4 Census Metropolitan Statistical Area Four digits. A standalone metropolitan area defined by entire counties or by MCD in New England. MSA boundaries are defined by the Office of Management and Budget.

Latitude 30 – 38 9 Angular distance, up to 180 degrees north or south of the equator, measured in degrees to 6 decimal places.

Longitude 39 – 48 10 Angular distance, up to 180 degrees east or west of the prime meridian in Greenwich, England, measured in degrees to 6 decimal places.

Output Street Tract Match Section

Ret_code 1 1 Geocoder execution status. See “US Centroid Census (Street Tract Match Section) Error Codes” on page 3-80.

Street_name 2 – 23 22 Street name

Street_pre_ 24 – 25 2 Street prefix direction that precedes the direction street name. Commonly letter designations like N, SW, and so on

Street_Post_ 26 – 27 2 Follows the street name. Commonly letter Direction designations like N, SW, and so on

Street_Suffix 28 – 31 4 Street type (e.g. Ave., Rd., etc.) Appropriate abbreviations are used.

Trillium Software System Return Data & Output Tables 3-74 US Centroid Census Geocoder Output Data

Table 3.21 US Centroid Census Geocoder Output Data (Continued)

Field Position Length Description

Cens_State 32 – 33 2 FIPS (Federal Information Processing Standards) State codes. Valid codes are 01-99.

Cens_County 34 – 36 3 FIPS County code. Standard non-zero, 3-digit number depicting a primary political subdivision of a state. Always odd. Valid codes 001 – 099 plus Independent Cities in Virginia 510–840 by fives or tens and parishes in Louisiana.

Cens_Tract 37 – 42 6 Census tract code. Four digit basic code, implied decimal point and 2-digit suffix. Small statistical subdivision of a county. Designed to have relatively homogeneous populations of between 2,500 and 8,000 residents. Valid codes are 0001.00 – 9899.99.

Cens_Bg 43 1 Census block group code. Defined as that set of census blocks sharing the same digit within a census tract. For example, BG 3 within a tract would include any block numbered between 301 and 399.

Cens_Mcd 44 – 46 3 Census Minor Civil Division Code • An MCD is a primary political and administrative subdivision of a county, typically a town, township, etc. • A CCD is a statistical subdivision of a county roughly equivalent to an MCD defined for areas without stable MCD definitions. These are used interchangeably in geocoding.

Trillium Software System™ Programmer’s Guide, Volume 2 US Centroid Census Geocoder Output Data 3-75

Table 3.21 US Centroid Census Geocoder Output Data (Continued)

Field Position Length Description

Cens_Msa 47 – 50 4 Census Metropolitan Statistical Area Code A standalone metropolitan area defined by entire counties or by MCD in New England. MSA boundaries are defined by the Office of Management and Budget.

Latitude 51 – 59 9 Angular distance, up to 180 degrees north or south of the equator, measured in degrees to 6 decimal places.

Longitude 60 – 69 10 Angular distance, up to 180 degrees east or west of the prime meridian in Greenwich, England, measured in degrees to 6 decimal places.

Fail_Level 70 1 A numerical indicator of the accuracy of the match for the street-level lookup.

0=Exact match to the directory. 1=5-digit ZIP code failure, ZIP not found in directory. 2=Street name failure; street name not found in directory. 3=Primary range failure; typically the house number cannot be found on the census directory. 4=Street components failure; secondary street components (like apt. information) not found on directory. 5=Ambiguous failure; when not one clear match (usually when missing information prohibits matching.)

Output Gaci Data

Zipcode 49 – 53 5 5-digit ZIP code provided by the postal geocoder.

Trans_Type 54 1 Transaction type

Trillium Software System Return Data & Output Tables 3-76 US Centroid Census Geocoder Output Data

Table 3.21 US Centroid Census Geocoder Output Data (Continued)

Field Position Length Description

State_Code 55 – 56 2 FIPS State codes FIPS (Federal Information Processing Standards). State codes are 2 digits. Valid codes are 01 – 99.

County_Code 57 – 59 3 FIPS County code Standard non-zero, 3-digit number depicting a primary political subdivision of a state. Always odd. Valid codes: 001–099 plus Independent Cities in Virginia 510–840 by fives or tens and parishes in Louisiana.

Tract_Code 60 – 65 6 Census tract code Four digit basic code, implied decimal point and 2-digit suffix. Small statistical subdivision of a county. Designed to have relatively homogeneous populations of between 2,500 and 8,000 residents. Valid codes are 0001.00 – 9899.99.

Blk_Group 66 1 Block group One digit. Defined as that set of census blocks sharing the same digit within a census tract. For example, BG 3 within a tract would include any block numbered between 301 and 399.

Mcd_Code 67 – 69 3 Census Minor Civil Division Code An MCD is a primary political and administrative subdivision of a county, typically a town, township, and so on. A CCD is a statistical subdivision of a county roughly equivalent to an MCD defined for areas without stable MCD definitions. They are used interchangeably in geocoding.

Trillium Software System™ Programmer’s Guide, Volume 2 US Centroid Census Geocoder Output Data 3-77

Table 3.21 US Centroid Census Geocoder Output Data (Continued)

Field Position Length Description

Msa_Code 70 – 73 4 Census Metropolitan Statistical Area Code Four digits. A standalone metropolitan area defined by entire counties or by MCD in New England. MSA boundaries are defined by the Office of Management and Budget.

Latitude 74 – 82 9 Angular distance, up to 180 degrees north or south of the equator, measured in degrees to 6 decimal places.

Longitude 83 – 92 10 Angular distance, up to 180 degrees east or west of the prime meridian in Greenwich, England, measured in degrees to 6 decimal places.

Output Resolved Data

State_Code 93 – 94 2 FIPS State code FIPS (Federal Information Processing Standards). State codes - 2 digits. Valid codes are 01– 99.

County_Code 95 – 97 3 FIPS County code Standard non-zero, 3-digit number depicting a primary political subdivision of a state. Always odd. Valid codes 001– 099 plus Independent Cities in Virginia 510–840 by fives or tens and parishes in Louisiana.

Tract_Code 98 – 103 6 Census tract code Four digit basic code, implied decimal point and 2-digit suffix. Small statistical subdivision of a county. Designed to have relatively homogeneous populations of between 2,500 and 8,000 residents. Valid codes are 0001.00 – 9899.99.

Trillium Software System Return Data & Output Tables 3-78 US Centroid Census Geocoder Output Data

Table 3.21 US Centroid Census Geocoder Output Data (Continued)

Field Position Length Description

Blk_Group 104 1 Block group Defined as that set of census blocks sharing the same digit within a census tract. (e.g. BG 3 within a tract would include any block numbered between 301 and 399.

Mcd_Code 105 – 3 Census Minor Civil Division Code 107 An MCD is a primary political and administrative subdivision of a county, typically a town, township, and so on A CCD is a statistical subdivision of a county roughly equivalent to an MCD defined for areas without stable MCD definitions. Used interchangeably in geocoding.

Msa_Code 108 – 4 Census Metropolitan Statistical Area 111 Code Four digits. A standalone metropolitan area defined by entire counties or by MCD in New England. MSA boundaries are defined by the Office of Management and Budget.

Lat_Code 112 – 9 Angular distance, up to 180 degrees north or 120 south of the equator, measured in degrees to 6 decimal places.

Lon_Code 121 – 10 Angular distance, up to 180 degrees east or 130 west of the prime meridian in Greenwich, England, measured in degrees to 6 decimal places.

Coord_Level 131 1 Accuracy indicator, depends upon the accuracy of the returned data: 1=XRef – most accurate return, match on 9- digit zip code. 2=ACG – next most accurate return, match on street name. 3=GACI – least accurate return, match on 5- digit zip code.

Trillium Software System™ Programmer’s Guide, Volume 2 US Centroid Census Geocoder Output XRef Match Section Error Codes 3-79

Table 3.21 US Centroid Census Geocoder Output Data (Continued)

Field Position Length Description

Fail_Level_ For_ 132 1 A numerical indicator of the accuracy of the Xref match for the 9-digit zip code level lookup. 0=Exact match to the directory. 1=No match to the directory, no return.

US Centroid Census Geocoder Output XRef Match Section Error Codes

These error codes are returned by the output XRef match section of the US Centroid Census Geocoder. They are populated in the gm_ret_code field.

Table 3.22 US Centroid Census Geocoder Output XRef Match Section Error Codes

Value Error Message Description

0 No Error Program has executed successfully. User must check the fail level; a complete match to the directory was not obtained.

1 Matched to Directory Matched to Directory

2 Invalid Call Type ACTION must be either O, P, or C. (API only)

3 Insufficient Storage Not enough memory to load census directories. Available

4 Base Data Seek Error When performing street-level processing, Geocoder had trouble locating the area in the file, GMBUBD, defined by the street.

5 Base Data Open Error When performing street-level processing, the Geocoder could not open the file GMBUBD.

6 Level 1 Open Error When performing street-level processing, the Geocoder could not open the file GMBUL1.

7 Gaci Data Open Error Geocoder could not open the file GMGACI.

Trillium Software System Return Data & Output Tables 3-80 US Centroid Census Geocoder Street Tract Match Section Error Codes

US Centroid Census Geocoder Street Tract Match Section Error Codes

These error codes are returned by the street tract match section of the US Centroid Census Geocoder. They are populated in the ret_code field.

Table 3.23 US Centroid Census (Street Tract Match Section) Error Codes

Value Error Message Description

0 No error Program has executed successfully and user must check the fail level because a complete match to the directory was not obtained.

8 Matched to Directory User must check the fail level.

9 Invalid Call Type ACTION must be O=Open, P=Process, or C=Close.

A Insufficient Storage Not enough memory to load census directories.

B Level 2 Seek Error When performing street-level processing, the Geocoder had trouble locating the area in the file, AMBUL2, defined by the street.

C Base Data Seek Error When performing street-level processing, the Geocoder could not open the file AMBUBD.

D Base Data Open Error When performing street-level processing, the Geocoder could not open the file AMBUBD.

E Level 1 Open Error Geocoder could not open the file AMBUL1.

F Level 2 Open Error Geocoder could not open the file AMBUL2.

G CICS Queue Error

H CICS GM System Not Initialized

I CICS GM Freemain Failures

J Bad Read on Level1 GMMATCH

Trillium Software System™ Programmer’s Guide, Volume 2 US Centroid Census Geocoder DISPLAY_BASEDATA Options 3-81

US Centroid Census Geocoder DISPLAY_BASEDATA Options

This table explains the behavior of the Centroid Census Geocoder when attempting to match the input street name and components to the postal directory. By using DISPLAY_BASEDATA with specific values, the possibility of getting a match can be improved or possible matches can be returned to the calling program for evaluation.

Table 3.24 Centroid Census Geocoder DISPLAY_BASEDATA Values

Value Description

Y Display the basedata (house number and components) to standard output. Apply the spelling algorithm as necessary on streets beginning, with the same first character with the exception of numeric types of streets and return this information.

2 Display to standard output only the street names from the directory, applying the spelling algorithm as necessary on streets beginning with the same first character, with the exception of numeric types of streets.

Trillium Software System Return Data & Output Tables 3-82 US Interpolated Rooftop Census Geocoder API Output

US Interpolated Rooftop Census Geocoder API Output Input Data

The following table shows the 247-byte input/output data layout of the US Rooftop Census Geocoder. This data string is used as the input to the Interpolated House Number Census Geocoder.

Table 3.25 US Rooftop Census Geocoder Input and Output Data

Field Position Length Description

Input Geographic Match Section (inarea — First 130 bytes)

Pr_gin_str_name 1 - 22 22 Input street name

Pr_gin_postal_code 23 - 31 9 Input postal code

Pr_gin_str_pre_direction 32 - 33 2 Input pre direction

Pr_gin_str_post_ 34 - 35 2 Input post direction direction

Pr_gin_str_suffix 36 - 39 4 Input street suffix

Pr_gin_house_number 40 - 49 10 Input house number

Pr_gin_secondary_ 50 - 55 6 Input secondary number number

Pr_gin_secondary_type 56 - 59 4 Input secondary type

Pr_gin_bldg_firm_name 60 - 85 26 Input building firm

Pr_gin_postal_number 86 - 91 6 Post office number

Pr_gin_postal_city_ 92 - 97 6 Postal city number number

Pr_gin_postal_city_name 98 - 127 30 Postal city name

Pr_gin_stprvcty_name 128 - 2 State, province, county 129

Trillium Software System™ Programmer’s Guide, Volume 2 US Interpolated Rooftop Census Geocoder API Output 3-83

Table 3.25 US Rooftop Census Geocoder Input and Output Data

Field Position Length Description

Pr_gin_record_type 130 1 Input record type: 1=street, 2=rr/hc, 3=pobox, 4=error 5=Bad Street Pattern.

Output Geographic Match Section (outarea — 117 bytes)

Pr_gout_postal_code 1 - 9 9 Output postal code

Pr_gout_delivery_point 10 - 11 2 Output delivery point

Pr_gout_delivery_point_ 12 1 Output delivery point code cd

Pr_gout_carrier_route 13 - 16 4 Output carrier route

Pr_gout_deliver_addr 17 - 66 50 Output delivery address line rebuilt from the best available matched or parsed address components.

Pr_gout_house_number 67 - 76 10 Output house number

Pr_gout_str_pre_ 77 - 78 2 Output pre direction direction

Pr_gout_str_name 79 - 100 22 Output street name

Pr_gout_str_post_ 101 - 2 Output post direction direction 102

Pr_gout_str_suffix 103 - 4 Output street suffix 106

Pr_gout_secondary_type 107 - 4 Output of the geocoder identifying 110 the type of apartment.

Pr_gout_secondary_ 111 - 6 Output of the geocoder identifying number 116 the apartment number.

Trillium Software System Return Data & Output Tables 3-84 Output Data Layout

Table 3.25 US Rooftop Census Geocoder Input and Output Data

Field Position Length Description

Pr_gout_fail_level 117 1 A numeric code (0 – 5) used to identify the level at which the address matched or failed to match the postal directories. Valid match fail levels are: 0=No failure: a match. 1=City/state: where city/state code was not available. 2=Street name: street name spelling failure. 3=Primary range: failure of house number. 4=Address components: failure of other address elements (such as: business name, street type, direction, apartment #) when matched via a street. 5=Ambiguous failure: when there is not one clear match (usually when more information is required or missing information prohibits matching.)

Output Data Layout

This table describes fields that are returned from the Interpolated Rooftop Census Geocoder.

Table 3.26 US Rooftop Census Geocoder Output Record Format

Field Position Length Description Supplied by the US Rooftop Census Geocoder

hm_ret_code 1 1 Rooftop Census Geocoder program execution status. See “Error Codes” on page 3-87.

hm_st_name 2–31 30 Street name

Trillium Software System™ Programmer’s Guide, Volume 2 Output Data Layout 3-85

Table 3.26 US Rooftop Census Geocoder Output Record Format

Field Position Length Description hm_pre_ dir 32–33 2 Street prefix direction – precedes the street name. Commonly letter designations such as N or SW. hm_post_ dir 34–35 2 Street post direction; follows the street name. Commonly letter designations such as N or SW. hm_st_suffix 36–39 4 Street types like Ave. or Rd. Appropriate abbreviations are used. hm_state 40-41 2 Census state code hm_county 42–44 3 Census County code – Three-digit, standard, non-zero odd number, between 001–999, that depicts a primary political subdivision of a state. Based on Federal Information Processing Standards (FIPS). hm_place 45-49 5 Census place code – FIPS code assigned to places (including independent cities) according to alphabetic sequence within a state. hm_tract 50-55 6 Census tract code – Four-digit code, with an implied decimal point and a two-digit suffix that specifies the small statistical subdivision of a county with relatively homogeneous populations of between 2,500 and 8,000 residents.

Valid codes between 0001.00–9899.99, plus independent cities in Virginia 510– 840 by fives or tens and parishes in Louisiana hm_block 56-59 4 Census Block Code – Four-digits. Census blocks are small areas that do not cross boundaries of counties, county subdivisions, places, census tract or block numbering areas, American Indian areas, congressional districts, voting districts, urban or rural areas, or urbanized areas. hm_msa 60-63 4 Metropolitan statistical area – code that specifies either an MSA or PSMA. hm_msa_ind 64 1 Tells whether hm_msa contains an MSA or PSMA.

Trillium Software System Return Data & Output Tables 3-86 Output Data Layout

Table 3.26 US Rooftop Census Geocoder Output Record Format

Field Position Length Description

hm_cbsa 65-69 5 Core-based statistical area. Five-digit code that defines a metropolitan or micropolitan area.

hm_necma 70-73 4 New England County metropolitan area. Four-digit code that defines a metropolitan area in New England. Similar to MSA.

hm_mcd 74-78 5 Census Minor Civil Division. Five-digit code that specifies either an MCD or CCD (which are used interchangeably)

• MCD refers to a primary political and administrative subdivision of a county (typically a town or township). • CCD refers to a statistical subdivision of a county roughly equivalent to an MCD, defined for areas without stable MCD definitions.

hm_smcd 79-83 5 Census Sub Minor Civil Division – A further sub- division of a MCD; specifically, a sub-barrio in Puerto Rico. SMCDs are legal subdivisions of MCDs.

hm_latitude 84-92 9 Angular distance, up to 90 degrees north or south of the equator, measured in degrees to six decimal places

hm_longitude 93-102 10 Angular distance, up to 180 degrees east or west of the prime meridian in Greenwich, England, measured in degrees to six decimal places.

hm_acc_ind 103 1 Accuracy score for the resulting latitude/longitude.

hm_fail_level 104 1 Fail Level. Refer to the table below for valid values.

hm_county_ 105-154 50 Corresponding county name for returned county name code.

hm_place_ 155-204 50 Corresponding place name for returned place name code.

Trillium Software System™ Programmer’s Guide, Volume 2 Error Codes 3-87

Table 3.26 US Rooftop Census Geocoder Output Record Format

Field Position Length Description

hm_msa_ 205-254 50 Corresponding MSA/PMSA name for returned name MSA/PMSA code.

hm_necma_ 255-304 50 Corresponding NECMA name for returned NECMA name code.

hm_cbsa_ 305-354 50 Corresponding CBSA name for returned CBSA name code.

hm_filler 355-400 46 Reserved for future enhancements.

Error Codes

These error codes are returned by the Rooftop Census Geocoder.

Table 3.27 US Interpolated Rooftop Census Error Codes

Value Description

0No Error

1 Matched Directory - there is a match but the user must check the fail level code for more information.

2 Invalid Call Type - the Action parameter must be O, P, or C.

3 Insufficient Storage Available - not enough free memory to run the Census Geocoder.

4 Level 2 Seek Error - when performing street-level processing, the geocoder had trouble locating the area in the file HMBUL2.

5 Base Data Seek Error - when performing street-level processing, the geocoder had trouble locating the area in one of the basedata files.

6 Base Data Open Error - when performing street-level processing, could not open one or more of the following files: HMBUB1, HMBUB2, HMBUB3, HMBUB4

7 Level 1 Open Error - when performing street-level processing, could not open file, HMBUL1

Trillium Software System Return Data & Output Tables 3-88 CA Postal Geocoder API Output

Table 3.27 US Interpolated Rooftop Census Error Codes (Continued)

Value Description

8 Level 2 Open Error - when performing street-level processing, could not open file, HMBUL2

A MSA Open Error - Could not open HMMSA file.

B Name Open Error - Could not open HMNAME file.

C MSA Read Error - Could not read HMMSA file.

D Name Read Error - Could not read HMNAME file.

CA Postal Geocoder API Output

This table shows the input/output data layout for the CA Postal Geocoder.

CA Postal Geocoder Input and Output Data

Table 3.28 CA Postal Geocoder Input and Output Data

Field Position Length Description Input Geographic Match Section

Postal_Code 1–6 6 Postal code. Original post code from input record.

House_Number 7–16 10 House number. Typically the value preceding the street name.

Street_Name 17–46 30 Street name

Street_Type 47–52 6 Street type, such as Ave. or Rd.

Trillium Software System™ Programmer’s Guide, Volume 2 CA Postal Geocoder Input and Output Data 3-89

Table 3.28 CA Postal Geocoder Input and Output Data (Continued)

Field Position Length Description

Street_Dir 53–54 2 Street direction. For example: N=North/Nord S=South/Sud E=East/Est W=West O=Ouest NE=North East/Nord-est NW=North West NO=Nord-Ouest SE=South East/Sud-est SW=South West SO=South Ouest

Building 55–84 30 Building name

Sub_Building 85–114 30 For a building, the unit type, like Apt. or Unit.

Sub_Building_Value 115–124 10 For a building, the unit value, like Apt.# or Unit#.

Organization_Name 125 - 30 Organization name. Business name 154 located at this address.

Route_Type 155 - 20 Route type: 174 RR=Rural Route SS=Suburban Service MR=Mobile Route GD=General Delivery

Route_Number 175 - 10 Route number 184

Trillium Software System Return Data & Output Tables 3-90 CA Postal Geocoder Input and Output Data

Table 3.28 CA Postal Geocoder Input and Output Data (Continued)

Field Position Length Description

Prov_Name 185 - 2Province name code: 186 NF= NS= PE= NB= QC= ON= MB= SK= AB= BC= NT= YT= NU=

Area_Name 187 - 30 Area name 216

Record_Type 217 1 Address type: 1 – Street Record 2 – Route Record 3 – Po Box Record 4 – Records that don't fit any other type 6 – Street w/ Route Record E – Pattern Error Record F – Foreign Record

Filler 218 - 8 Reserved for future use 225

Trillium Software System™ Programmer’s Guide, Volume 2 CA Postal Geocoder Input and Output Data 3-91

Table 3.28 CA Postal Geocoder Input and Output Data (Continued)

Field Position Length Description Output Geographic Match Section

Ret_Code 1 1 Geocoder program execution status. For values, see “CA Postal Geocoder Program Error Codes” on page 3-101.

Postal_Code 2 - 7 6 Value from the postal directory when there is a match to the street components, otherwise the original input post code is returned.

House_Number 8 - 17 10 House number. Typically precedes the street name.

Street_Name 18 - 47 30 Street name

Street_Type 48 - 53 6 Street type. For example Ave. or Rd.

Street_Dir 54 - 55 2 Street direction: N=North/Nord S=South/Sud E=East/Est W=West O=Ouest NE=North East/Nord-est NW=North West NO=Nord-Ouest SE=South East/Sud-est SW=South West SO=South Ouest

Building 56 - 85 30 Building name

Sub_Building 86 - 115 30 For a building, the unit type. (e.g. Apt. or Unit)

Sub_Building_Value 116 - 10 For a building, the unit value. (e.g. 125 Apt.# or Unit#)

Organization_Name 127 - 30 Organization name; Business name 155 located at this address.

Trillium Software System Return Data & Output Tables 3-92 CA Postal Geocoder Input and Output Data

Table 3.28 CA Postal Geocoder Input and Output Data (Continued)

Field Position Length Description

Route_Type 156 - 20 Secondary route type: 175 RR=Rural Route SS=Suburban Service MR=Mobile Route GD=General Delivery

Route_Number 176 - 10 Secondary route number. Number that 185 identifies a rural route, suburban service, or mobile route delivery mode.

Prov_Cnty 186 - 2Province name code: 187 NF=Newfoundland NS=Nova Scotia PE=Prince Edward Island NB=New Brunswick QC=Quebec ON=Ontario MB=Manitoba SK=Saskatchewan AB=Alberta BC=British Columbia NT=Northwest Territories YT=Yukon NU=Nunavut

Area_Name 188 - 30 Area name 217

Trillium Software System™ Programmer’s Guide, Volume 2 CA Postal Geocoder Input and Output Data 3-93

Table 3.28 CA Postal Geocoder Input and Output Data (Continued)

Field Position Length Description

Rec_Type 218 1 Record type code: 1=Street address record 2=Street served by route record 3=lock box address record 4=Route service address record 5=General delivery address record A=Building name record B=Large volume receiver name (Street) record C=Government name (Street) record D=Large volume receiver name (Lock Box) record E=Government name (Lock box) record F=General delivery name record

Addr_Type 219 1 Address type: 1=Civic (street) address format 2=Delivery installation (station) address format

Install_Name 220 - 30 Delivery Installation name 249

Install_Type 250 - 5 Category of Delivery Installation: 254 BDP=Bureau De Post CC=Concession Commerciale CDO=Commercial Dealership Outlet CMC=Community Mail Center CPC=Centre Postal Communautaire CSP=Comptoir Service Postal LCD=Letter Carrier Depot PDF=Poste Des Facteurs PO=Post Office RPO=Retail Postal Outlet STN=Station SUCC=Succursale

Trillium Software System Return Data & Output Tables 3-94 CA Postal Geocoder Input and Output Data

Table 3.28 CA Postal Geocoder Input and Output Data (Continued)

Field Position Length Description

Install_Qual 255 - 15 Installation qualifier. When more than 269 one delivery installation serves and are described by the Delivery Installation Name, the qualifier name uniquely identifies the delivery installation.

Multiple_Installations 270 1 Multiple installations

Deliver_Addr 271 - 50 Reconstructed street address. 320 Constructed from the postal geocoder returned street components to provide a usable mailing address.

Fail_Level 321 1 Numerical indicator of the match accuracy. 0=Exact match to the directory. 1=City failure; city not found in directory 2=Street Name failure; not found in directory 3=Primary Range failure; typically the house number cannot be found on the postal directory 4=Street Components failure; secondary street components (like apartment information) not found on the postal directory. 5=Ambiguous Failure: when there is not one clear match (usually when more information is required or missing information prohibits matching).

Number_of_Changes 322 - 3 Numerical indicator to the number of 324 changes to the output address.

Conflict_Pc 325 1 1=A match to a non-PO box address and PO box was present on the input.

Postal_Code_Changed 326 1 Y – Flag indicating postal code output is different from the input.

Trillium Software System™ Programmer’s Guide, Volume 2 CA Postal Geocoder Input and Output Data 3-95

Table 3.28 CA Postal Geocoder Input and Output Data (Continued)

Field Position Length Description

Muni_Prov_Changed 327 1 Y – Flag indicating city name output is different from the input.

Street_Name_ 328 1 Y – Flag indicating street name output Changed is different from the input.

Street_Components_ 329 1 Y – Flag indicating street components Changed output is different from the input.

Co_Status 330 1 Canada Post status:

N=Not correctable V=Verifiable C=Correctable.

Filler 331 - 20 Reserved for future use 350

Trillium Software System Return Data & Output Tables 3-96 CA Match Possibilities Data Area

CA Match Possibilities Data Area

The following layout shows the fields that are included in the “details buffer”, of the CA Postal Geocoder.

Table 3.29 CA Match Possibilities Data Area

Field Position Length Description

Rec_Type 1 1 Record type code: 1=Street address record 2=Street served by route record 3=Lock box address record 4=Route service address record 5=General delivery address record A=Building name record B=Large volume receiver name (Street) record C=Government name (Street) record D=Large volume receiver name (Lock Box) record E=Government name (Lock box) record F=General delivery name record

Addr_Type 2 1 Address type. 1=Civic (street) address 2=Delivery installation (station) address format

Street_Name 3 - 32 30 Street name

Street_Type 33 - 38 6 Street type. (e.g. Ave. or Rd.)

Trillium Software System™ Programmer’s Guide, Volume 2 CA Match Possibilities Data Area 3-97

Table 3.29 CA Match Possibilities Data Area (Continued)

Field Position Length Description

Street_Dir 39 - 40 2 Street direction: N=North/Nord S=South/Sud E=East/Est W=West O=Ouest NE=North East/Nord-est NW=North West NO=Nord-Ouest SE=South East/Sud-est SW=South West SO=South Ouest

Addr_Parity 41 1 Address parity for the house number. O=Odd number; E=Even number; B=Both odd & even

Addr_Numb_Start 42 - 51 10 Low range house number. Starting house # value on postal directory.

Addr_Numb_End 52 - 61 10 High range house number value on the postal directory.

Ste_Numb_Start 62 - 67 6 Starting suite number value on directory.

Ste_Numb_End 68 - 73 6 Ending suite # value on directory.

Box_Numb_Start 74 - 78 5 Starting box # value on directory.

Box_Numb_End 79 - 83 5 Ending box # value on directory.

Route_Type 84 - 85 2 RR=Rural Route SS=Suburban Service MR=Mobile Route GD=General Delivery

Route_Numb 86 - 89 4 Route number Number that identifies a rural route, suburban service, or mobile route delivery mode.

Misc_Data 90 - 149 60 Miscellaneous data

Trillium Software System Return Data & Output Tables 3-98 CA Match Possibilities Data Area

Table 3.29 CA Match Possibilities Data Area (Continued)

Field Position Length Description

Postal_Code 150 - 6 Postal code value from the postal 155 directory when there is a match to the street components, otherwise the original input post code is returned.

Province 156 - 2 NF=Newfoundland 157 NS=Nova Scotia PE=Prince Edward Island NB=New Brunswick QC=Quebec ON=Ontario MB=Manitoba SK=Saskatchewan AB=Alberta BC=British Columbia NT=Northwest Territories YT=Yukon NU=Nunavut

Ptwn_Name 158 - 30 City name 187

Correct_Street_Name 188 - 30 Corrected street name 217

Correct_Street_Type 218 - 6 Corrected street type 223

Correct_Street_Dir 224 - 2 Corrected street direction 225

Install_Name 226 - 30 Install name 255

Trillium Software System™ Programmer’s Guide, Volume 2 CA Match Possibilities Data Area 3-99

Table 3.29 CA Match Possibilities Data Area (Continued)

Field Position Length Description

Install_Type 256 - 5 BDP=Bureau De Post 260 CC=Concession Commerciale CDO=Commercial Dealership Outlet CMC=Community Mail Center CPC=Centre Postal Communautaire CSP=Comptoir Service Postal LCD=Letter Carrier Depot PDF=Poste Des Facteurs PO=Post Office RPO=Retail Postal Outlet STN=Station SUCC=Succursale

Install_Qual 261 - 15 When more than one delivery installation 275 serves and are described by the Delivery Installation Name, the qualifier name uniquely identifies the delivery installation.

Multiple_Installations 276 1 Multiple installations

Trillium Software System Return Data & Output Tables 3-100 CA DISPLAY_BASEDATA Parameter Options

CA DISPLAY_BASEDATA Parameter Options

This table explains the behavior of the CA Postal Geocoder when attempting to match the input street name and components to the postal directory. By using DISPLAY_BASEDATA with specific values, the possibility of getting a match can be improved or possible matches can be returned to the API for evaluation.

Table 3.30 CA Geocoder DISPLAY_BASEDATA Values

Value Description

N No display. Apply the spelling algorithm as necessary on streets beginning with the same first character, with the exception of numeric types of streets. No population of the street name or details buffer is performed.

Default Using any of the other values blanks out the postal form.

4 No display and no spelling algorithm applied – the street must be an exact match. No population of the street name or details buffer is performed.

5 No display, apply the spelling algorithm to every street on the directory. No population of the street name or details buffer is performed.

Y Display the basedata (house number and components) to standard output. Apply the spelling algorithm as necessary on streets beginning with the same first character, with the exception of numeric types of streets and return this information.

6 Display basedata (house number & components) to standard output and return this information. No spelling algorithm applied – the street must be an exact match.

7 Display the basedata (house number and components) to standard output. Apply the spelling algorithm to every street on the directory and return this information.

3 Return to the street_name_buffer and details_buffer the Level 2 (street name) and basedata (house number and components). Apply the spelling algorithm as necessary on streets beginning with the same first character with the exception of numeric types of streets.

Trillium Software System™ Programmer’s Guide, Volume 2 CA Postal Geocoder Error Codes 3-101

Table 3.30 CA Geocoder DISPLAY_BASEDATA Values

Value Description

A Return to the street_name_buffer and details_buffer the Level 2 (street name) and basedata (house number and components). The street must be an exact match. No spelling algorithm applied.

B Return to the street_name_buffer and details_buffer the Level 2 (street name) and basedata (house number and components). Apply the spelling algorithm to every street on the directory. Display to standard output only the street names from the directory.

2 Display to standard output only the street names from the directory.

8 Display to standard output only the street names from the directory. Street must be an exact match. No spelling algorithm applied.

9 Display to standard output only the street names from the directory. Apply the spelling algorithm to every street on the directory.

CA Postal Geocoder Error Codes

This table describes the error codes returned by the CA Postal Geocoder.

Table 3.31 CA Postal Geocoder Program Error Codes

Value Description

0No Error

1 Matched Directory – User must check the fail level code for more information.

2 Invalid Call Type – the action parameter must be O, P, or C.

3 Insufficient Storage Available – not enough free memory to run the Geocoder.

4 Level 2 Seek Error – when performing street-level processing, the Geocoder had trouble locating the area in the file, CABUL2, defined by the postal finance code.

5 Base Data Seek Error – when performing street-level processing, the Geocoder had trouble locating the area in the file, CABUBD, defined by the street.

6 Base Data Open Error – when performing street-level processing, the Geocoder could not open the file, CABUBD.

Trillium Software System Return Data & Output Tables 3-102 CA Postal Geocoder Error Codes

Table 3.31 CA Postal Geocoder Program Error Codes

Value Description

7 Level 1 Open Error – when performing street-level processing, the Geocoder could not open the file, CABUL1.

8 Level 2 Open Error – when performing street-level processing, the Geocoder could not open the file, CABUL2.

9 Area decode open error – could not access area names

A Level PI open error – could not open CABUPI file

B Level P open error – could not open CABUPC file

C Level P seek error – error reading CABUPI file

D Amuni open error – could not open CAAMUNI file

E Free Memory Error (CICS Only)

F Invalid DISPLAY_BASEDATA Value (CICS Only)

Trillium Software System™ Programmer’s Guide, Volume 2 AU Geocoder API Output 3-103

AU Geocoder API Output

This table shows the input/output data layout for the AU Postal Geocoder.

AU Postal Geocoder Input and Output Data

Table 3.32 AU Postal Geocoder Input and Output Data

Field Position Length Description

Input Geographic Match Section (street_info — 200 bytes)

Postal_Code 1 - 4 4 Postal code

House_Number 5 - 14 10 House number; typically the value that precedes the street name.

Street_Name 15- 44 30 Street name, direction

Street_Type 45 - 48 4 Street type. For example Ave. or Rd.

Street_Dir 49 - 50 2 Street direction. Directional indicator for street: N, S, E or W.

Building 51 - 80 30 Building name

Sub_Building 81 - 95 15 Within a building, the unit type. For example Apt. or Unit.

Sub_Building_ 96 - 105 10 Within a building, the unit value. For Value example Apt# or Unit#.

Organization_Name 106 - 135 30 Organization name; Business name located at this address.

State 136 - 138 3 State; State name.

Postal_City 139 - 168 30 Postal city; City name\

Filler 169 - 182 14 Reserved for future use.

Floor 183 - 186 4 Floor

Floor_Num 187 - 191 5 Floor value

Trillium Software System Return Data & Output Tables 3-104 AU Postal Geocoder Input and Output Data

Table 3.32 AU Postal Geocoder Input and Output Data (Continued)

Field Position Length Description

Dp_Id 192 - 199 8 Delivery point ID. Number assigned by Australia Post to designate the address or range of addresses.

Record_Type 200 1 Address type

Output Geographic Match Section (return_info — 300 bytes)

Ret_Code 1 1 Return code. For values, see “AU Geocoder Program Error Codes” on page 3-110.

Postal_Code 2 - 5 4 Original postal code or postal code from the directory when a match was possible. This value depends on the match success of the street components as indicated by the fail level.

House_Number 6 - 15 10 House #. (Typically the value preceding the street name.)

Street_Name 16 - 45 30 Street name. Original street name or street name from the postal directory when a match was possible.

Street_Type 46 - 49 4 Street type. (e.g. Ave., Road, etc.)

Street_Dir 50 - 53 4 Street direction. Directional Indicator for the street, usually N, S, E or W.

Building 54 - 83 30 Building name

Sub_Building 84 - 90 7 Type. Apt., Unit, and so on

Sub_Building_ 91 - 95 5 Value. Apt.#, Unit#, and so on Value

Postal_Num 96 - 103 8 Postal number. Box Number

Postal_Pfx 104 - 106 3 Postal prefix. Box Prefix

Postal_Sfx 107 - 109 3 Postal suffix. Box Suffix

Floor 110 - 113 4 Floor

Trillium Software System™ Programmer’s Guide, Volume 2 AU Postal Geocoder Input and Output Data 3-105

Table 3.32 AU Postal Geocoder Input and Output Data (Continued)

Field Position Length Description

Floor_Num 114 - 118 5 Floor value

Filler4 119 - 124 6 Reserved for future use

State 125 - 127 3 State name

Postal_City 128 - 157 30 Postal city name

Rec_Type 158 1 Address type. Values include:

1=Street record 2=PoBox record with street information 3=PoBox record 4=Error record e=Pattern error record f=foreign record

Deliver_Addr 159 - 208 50 Reconstructed street address; Constructed from the returned street components to provide a mailing address.

Postal_Code_ 209 1 Y – Flag indicating postal code output is Changed different from the input.

City_State_ 210 1 Y – Flag indicating city name output is Changed different from the input.

Street_Name_ 211 1 Y – Flag indicating street name output is Changed different from the input.

Street_ 212 1 Y – Flag indicating street components Components_ output different from input. Changed

Trillium Software System Return Data & Output Tables 3-106 AU Match Possibilities Data Area

Table 3.32 AU Postal Geocoder Input and Output Data (Continued)

Field Position Length Description

Fail_Level 213 1 A numerical indicator of the match accuracy. 0=Exact match to the directory. 1=City failure, city not found in postal directory. 2=Street name failure, not found in directory. 3=Primary range failure, typically the house # cannot be found on the directory. 4=Street components failure, secondary street components (like apt. information) not found on directory. 5=Ambiguous failure; not one clear match (usually when more information is required or missing information prohibits matching).

Allotment 214 - 220 7 Numeric, Lot number. Value designating land parcel without a house number.

Filler1 221 - 240 20 Reserved for future use.

Dp_Id 241 - 249 9 Delivery point ID. Number assigned by Australia Post to designate address or range of addresses.

Filler 250 - 300 51 Reserved for future use.

AU Match Possibilities Data Area

The following layout shows the fields that are included in the “details buffer”, of the AU Postal Geocoder.

Table 3.33 AU Match Possibilities Data Area

Field Length Position Description

Street_ 30 1 - 30 Street name Name

Street_ 4 31 - 34 Street type, such as Ave. or Rd. Type

Trillium Software System™ Programmer’s Guide, Volume 2 AU Match Possibilities Data Area 3-107

Table 3.33 AU Match Possibilities Data Area

Field Length Position Description

Street_Dir 4 35 - 38 Street direction, usually N,S,E, or W.

FromHsno 10 39 - 48 Starting house # value on the directory.

ToHsno 10 49 - 58 Ending house # value on the directory.

PC 4 59 - 62 Postal code

State 3 63 - 65 State

Postal_City 30 66 - 95 Postal city; City name

Fail_Level 1 96 A numerical indicator of the accuracy of the match. 0=Exact match to the directory. 1=City failure, city name not found in the postal directory. 2=Street name failure, not found in the postal directory. 3=Primary range failure, house # not found on the postal directory. 4=Street components failure, secondary street components (like apartment information) not found on the postal directory. 5=Ambiguous failure, when there is not one clear match (usually when more information is required or missing information prohibits matching). 6=Number of Changes Failure: when more than one change made to components of the matched record.

Dp_Id 9 97 - 105 Delivery point ID – Number assigned by Australia Post to designate the address or range of addresses.

Allotment 5 106 - 110 Numeric, Lot number – Value designating land parcel without a house number.

Unit 7 111 - 117 Unit type (Apt., Unit, and so on)

Unit_ 5 118 - 122 Numeric, Unit number on postal directory (Apt#, Number Unit#, etc.)

Trillium Software System Return Data & Output Tables 3-108 AU Match Possibilities Data Area

Table 3.33 AU Match Possibilities Data Area

Field Length Position Description

Floor 4 123 - 126 Floor type: F=Floor G=Ground Floor B=Basement M=Mezzanine

Floor_Num 5 127 - 131 Corresponding Floor value

Postal_ 8 132 - 139 Postal number; used for box addresses. Num

Postal_Pfx 3 140 - 142 Postal number prefix

Postal_Sfx 3 143 - 145 Postal number suffix

Filler 6 146 - 151 Reserved for future use.

Trillium Software System™ Programmer’s Guide, Volume 2 AU DISPLAY_BASEDATA Parameter Options 3-109

AU DISPLAY_BASEDATA Parameter Options

This table explains the behavior of the AU Geocoder when attempting to match the input street name and components to the postal directory.

By using specific values with the Display_Basedata parameter, the possibility of getting a match can be improved or possible matches can be returned to the program for evaluation.

Table 3.34 AU Geocoder DISPLAY_BASEDATA Values

Value Description

N No display. Apply the spelling algorithm as necessary on streets beginning with the same first character, with the exception of numeric types of streets. No population of the street name or details buffer is performed. Default; using any other values blanks out postal form.

4 No display and no spelling algorithm applied – the street must be an exact match. No population of the street name or details buffer is performed.

5 No display. Apply the spelling algorithm to every street on the directory. No population of the street name or details buffer is performed.

Y Display the basedata (house number and components) to standard output. Apply the spelling algorithm as necessary on streets beginning with the same first character, with the exception of numeric types of streets and return this information.

6 Display the basedata (house number and components) to standard output and return this information. The street must be an exact match. No spelling algorithm applied.

7 Display the basedata (house number and components) to standard output and return this information. Apply the spelling algorithm to every street on the directory.

3 Return to the street_name_buffer and details_buffer the Level 2 (street name) and basedata (house number and components). Apply the spelling algorithm as necessary on streets beginning with the same first character, with the exception of numeric types of streets.

Trillium Software System Return Data & Output Tables 3-110 AU Geocoder Error Codes

Table 3.34 AU Geocoder DISPLAY_BASEDATA Values

Value Description

A Return to the street_name_buffer and details_buffer the Level 2 (street name) and basedata (house number and components). The street must be an exact match. No spelling algorithm applied.

B Return to the street_name_buffer and details_buffer the Level 2 (street name) and basedata (house number and components) Apply the spelling algorithm to every street on the directory. Display to standard output only the street names from the directory

2 Display to standard output only the street names from the directory

8 Display to standard output only the street names from the directory. The street must be an exact match. No spelling algorithm applied.

9 Display to standard output only the street names from the directory applying the spelling algorithm to every street on the directory.

AU Geocoder Error Codes

The following error codes are all returned by the AU Geocoder.

Table 3.35 AU Geocoder Program Error Codes

Value Description

0No Error

1 Matched Directory – there is a match; user must check fail level code for more information.

2 Invalid Call Type – the action parameter must be O, P, or C.

3 Insufficient Storage Available – Not enough memory to run the Geocoder.

4 Level 2 Seek Error – when performing street-level processing, the Geocoder had trouble locating the area in the file, AUBUL2, defined by the postal finance code.

5 Base Data Seek Error – when performing street-level processing, the Geocoder had trouble locating the area in the file, AUBUBD, defined by the street.

Trillium Software System™ Programmer’s Guide, Volume 2 AU Geocoder Error Codes 3-111

Table 3.35 AU Geocoder Program Error Codes

Value Description

6 Base Data Open Error – when performing street-level processing, could not open file, AUBUBD.

7 Level 1 Open Error – when performing street-level processing, could not open file, AUBUL1.

8 Level 2 Open Error – when performing street-level processing, could not open the file, AUBUL2.

9 CICS System Not Initialized (CICS Only)

A Auxiliary city table open error.

B Queue Error (CICS Only)

C Memory Free Error (CICS Only)

D Invalid DISPLAY_BASEDATA Value (CICS Only)

Trillium Software System Return Data & Output Tables 3-112 DE Geocoder API Output

DE Geocoder API Output

This table shows the input/output data layout for the DE Postal Geocoder.

DE Postal Geocoder Input and Output Data

Table 3.36 DE Postal Geocoder Input and Output Data

Field Position Length Description

Input Geographic Match Section (street_info — 200 bytes)

Postal_Code 1 - 10 10 Original Postal Code from the input record

House_Number 11 - 18 8 House number; typically, the value following the street name.

Street_Name 19 - 48 30 Street name.

Building 49 - 78 30 Building name.

Sub_Building 79 - 93 15 Unit type within a building, such as Apt. or Unit.

Sub_Building_ 94 - 103 10 Unit value within a building, such as Apt.# or Value Unit#.

Organization_ 104 - 133 30 Organization name (usually the business Name name).

Postal_City 134 - 163 30 City name, identified by the Parser.

Alt_PoBox_Name 164 - 173 10 Contains PO box name when street is also present on the input. When MANIPULATE_ POBOX is set to ‘Y’ and the street is not found on the directory, the geocoder uses the data in this field to attempt a match at the PO box level.

Alt_PoBox_ 174 -181 8 Alternative PO Box number value. Number

Trillium Software System™ Programmer’s Guide, Volume 2 DE Postal Geocoder Input and Output Data 3-113

Table 3.36 DE Postal Geocoder Input and Output Data

Field Position Length Description

Alt_PoBox_ 182 1 Indicates the input position on the address line Position for the PO box. 1 = before street 2 = after street

Area_Key 183 - 190 8 Code for geographic area (state, district, community)

Filler 191 - 199 9 Reserved for future use.

Record_Type 200 1 Built record type: 1=street record 3=PO Box record 4=error record F=foreign record E=pattern error – unknown street pattern review group record.

Output Geographic Match Section (return_info — 300 bytes)

Ret_Code 1 1 Geocoder program execution status. See “DE Geocoder Program Error Codes” on page 3- 118.

Postal_Code 2 - 6 5 Postal code from the directory when there is a match to street components; otherwise the original input post code is returned.

House_Number 7 - 14 8 House #; Usually the value following the street name.

Street_Name_ 15 - 44 30 Street name displayed in uppercase. Upper

Street_Name_ 45 - 74 30 Street name displayed in mixed case. Uplow

Building 75 - 104 30 Building name

Sub_Building 105 - 119 15 Unit type within a building, such as Apt. or Unit.

Trillium Software System Return Data & Output Tables 3-114 DE Postal Geocoder Input and Output Data

Table 3.36 DE Postal Geocoder Input and Output Data

Field Position Length Description

Sub_Building_ 120 - 129 10 Unit value within a building, such as Apt.# or Value Unit#.

Postal_City_ 130 -159 30 Postal city displayed in uppercase. Upper

Postal_City_ 160 -189 30 Postal city displayed in mixed case. Uplow

Rec_Type 190 1 Record type

Deliver_Addr_ 191 - 240 50 Street address reconstructed from the Upper geocoder returned street components to provide a usable mailing address. Displayed in uppercase.

Deliver_Addr_ 241 - 290 50 Street address reconstructed from the Uplow geocoder returned street components to provide a usable mailing address. Displayed in mixed case.

Postal_Code_ 291 1 Y – Flag that indicates the postal code output Changed is different from the input.

City_State_ 292 1 Y – Flag that indicates the city name output is Changed different from the input.

Street_Name_ 293 1 Y – Flag that indicates the street name output Changed is different from the input.

Street_ 294 1 Y – Flag that indicates the street components Component_ output is different from the input. Changed

Trillium Software System™ Programmer’s Guide, Volume 2 DE Match Possibilities Data Area 3-115

Table 3.36 DE Postal Geocoder Input and Output Data

Field Position Length Description

Fail_Level 295 1 Numerical indicator of the match accuracy:

0=Exact match to the directory. 1=City failure - not found in the postal directory. 2=Street name failure - not found in directory. 3=Primary range failure, typically the house number cannot be found on the postal directory. 4=Street components failure, secondary street components (like apartment information) not found in the postal directory. 5=Ambiguous failure; not one clear match (when missing information prohibits matching).

lsa_postal_code 296 - 300 5 Large Scale Addressee Postal Code – code is assigned to businesses that receive large amounts of mail on a daily basis.

DE Match Possibilities Data Area

This layout shows fields that make up the “details buffer”, of the DE Geocoder.

Table 3.37 DE Match Possibilities Data Area

Field Position Length Description

Street_Name 1 - 30 30 Street name

Street_Name_Ul 31 - 60 30 Street name displayed in mixed case.

FromHsno 61 - 68 8 Starting house # value on the directory.

ToHsno 69 - 76 8 Ending house # value on the directory.

PC 77 - 82 6 Postal code

Postal_City 83 - 112 30 Postal city

Trillium Software System Return Data & Output Tables 3-116 DE DISPLAY_BASEDATA Parameter Options

Table 3.37 DE Match Possibilities Data Area (Continued)

Field Position Length Description

Fail_Level 113 1 Matched fail level. See ‘Output Geographic Match Section’ for values.

Organization_ 114 -143 30 Organization (business) name. Name

LSA_Postal_Code 144-148 5 Large-scale address postal code. Code is assigned to businesses that receive large amounts of mail on a daily basis.

Filler 149 - 2 Reserved for future use. 150

DE DISPLAY_BASEDATA Parameter Options

This section explains the behavior of the DE Geocoder when attempting to match the input street name and components to the postal directory. By using these specific values, the possibility of getting a match can be improved or possible matches can be returned to the calling program for evaluation.

Table 3.38 DE Geocoder DISPLAY_BASEDATA Values

Value Display Action

N No display, apply spelling algorithm as necessary on streets beginning with the same first character, with the exception of numeric types of streets. No population of the street name or details buffer is performed. This is the default; using any of the other values blanks out postal form.

4 No display and no spelling algorithm applied – the street must be an exact match. No population of the street name or details buffer is performed.

5 No display, apply the spelling algorithm to every street on the directory. No population of the street name or details buffer is performed.

Y Display the basedata (house number and components) to standard output. Apply the spelling algorithm as necessary on streets beginning with the same first character, with the exception of numeric types of streets and return this information.

Trillium Software System™ Programmer’s Guide, Volume 2 DE DISPLAY_BASEDATA Parameter Options 3-117

Table 3.38 DE Geocoder DISPLAY_BASEDATA Values

Value Display Action

6 Display the basedata (house number and components) to standard output and return this information. No spelling algorithm applied – the street must be an exact match.

7 Display the basedata (house number and components) to standard output. Apply the spelling algorithm to every street on the directory and return this information.

3 Return to the street_name_buffer and details_buffer the Level 2 (street name) and basedata (house number and components) Apply the spelling algorithm as necessary on streets beginning with the same first character, with the exception of numeric types of streets.

A Return to the street_name_buffer and details_buffer the Level 2 (street name) and basedata (house number and components) No spelling algorithm applied. The street must be an exact match.

B Return to the street_name_buffer and details_buffer the Level 2 (street name) and basedata (house number and components) Apply the spelling algorithm to every street on the directory. Display to standard output only the street names from the directory

2 Display to standard output only the street names from the directory

8 Display to standard output only the street names from the directory. No spelling algorithm applied. The street must be an exact match.

9 Display to standard output only the street names from the directory. Apply the spelling algorithm to every street on the directory.

Trillium Software System Return Data & Output Tables 3-118 DE Geocoder Error Codes

DE Geocoder Error Codes

The following error codes are all returned by the DE Geocoder.

Table 3.39 DE Geocoder Program Error Codes

Error Message Description Error Code Error

0 No Error

1 Matched Directory There is a match but the user must check fail level code.

2 Invalid Call Type action must be either O, P, or C.

3 Insufficient Storage Not enough free emory to run the Geocoder. Available

4 Level 2 Seek Error When performing street-level processing, the Geocoder had trouble locating the area in the file, DEBUL2.

5 Base Data Seek Error When performing street-level processing, Geocoder had trouble locating the area in the file, DEBUBD, defined by the street.

6 Base Data Open Error When performing street-level processing, could not open DEBUBD.

7 Level 1 Open Error When performing street-level processing, could not open DEBUL1.

8 Level 2 Open Error When performing street-level processing, the could not open the file, DEBUL2.

9 Auxiliary City Table Open Geocoder could not open the file, DEACITY. Error

A Error for lowercase Geocoder could not open the file or the file is missing. character standardization file

B Error for uppercase Geocoder could not open the file or the file is missing. character standardization file

Trillium Software System™ Programmer’s Guide, Volume 2 HK Geocoder API Output 3-119

HK Geocoder API Output

This table shows the input/output data layout for the HK Postal Geocoder.

HK Postal Geocoder Input and Output Data

Table 3.40 HK Geocoder Input and Output Data

Field Description Position Length

Input Geographic Match Section (street_info — 200 bytes)

Filler 1 - 10 10 Reserved for future use

House_Number 11 - 18 8 House number

Street_Name 19 - 48 30 Street name

Building 49 - 78 30 Building name

Sub_Building 79 - 103 25 Type (APT)

Organization_Name 104 - 133 30 Organization name

Postal_City 134 - 163 30 Postal city

Area_Name 164 -193 30 Area name

Filler 194 - 199 6 Reserved for future use

Record_Type 200 1 Built record type Output Geographic Match Section (return_info — 300 bytes)

Ret_Code 1 1 Return code – For values, see “HK Postal Geocoder Error Codes” on page 3-123.

House_Number 2 - 9 8 House number

Street_Name 10 - 39 30 Street name

Building 40 - 69 30 Building name

Trillium Software System Return Data & Output Tables 3-120 HK Postal Geocoder Input and Output Data

Table 3.40 HK Geocoder Input and Output Data (Continued)

Field Description Position Length

Sub_Building 70 - 84 15 Type (APT)

Sub_Building_Value 85 - 94 10 Value (1)

Postal_City 95 - 124 30 Postal city

Area_Name 125 - 154 30 Area name

Rec_Type 155 1 Record type

Deliver_Addr1 156 - 205 50 Output delivery address 1

Deliver_Addr2 206 - 255 50 Output delivery address 2

Delivery_Office 256 - 258 3 Delivery office code

Beat_Number 259 - 263 5 Delivery beat code

Postal_Code_Changed 264 1 Specifies whether the postal code has changed: Y=postal code changed; N=postal code not changed.

City_State_Changed 265 1 Specifies whether the city state has changed: Y=city state changed; N=city state not changed.

Street_Name_Changed 266 1 Specifies whether street name has changed: Y = street name changed. N = street name not changed.

Street_Components_ 267 1 Specifies if street components changed: Changed Y=street components changed; N=street components not changed.

Fail_Level 268 1 Matched fail level

Building_Street 269 - 298 30 Street name of building

Filler 299 - 300 2 Reserved for future use

Trillium Software System™ Programmer’s Guide, Volume 2 HK Match Possibilities Data Area 3-121

HK Match Possibilities Data Area

The following layout shows the fields that are included in the “details buffer”, of the HK Postal Geocoder.

Table 3.41 HK Match Possibilities Data Area

Field Position Length Description

Delivery_Office 1 - 3 3 Delivery office code

Beat_Number 4 - 8 5 Beat number

Street_Name 9 - 38 30 Street name

Building_Name 39 - 68 30 Building name

Parity 69 1 Parity

Lo_Number_Type 70 - 81 12 Low number type

Lo_Numb 82 - 86 5 Low number

Hi_Number_Type 87 - 98 12 Hi number type

Hi_Numb 99 - 103 5 Hi number

Area 104 - 106 3 Area

Building_Street 107 - 136 30 Street name of building

Filler 137 - 150 14 Reserved for future use

HK DISPLAY_BASEDATA Parameter Options

This table explains the behavior of the HK Geocoder when attempting to match the input street name and components to the postal directory.

By using the DISPLAY_BASEDATA parameter with specific values, the possibility of getting a match can be improved. Also, possible matches can be returned to the calling program for evaluation.

Trillium Software System Return Data & Output Tables 3-122 HK DISPLAY_BASEDATA Parameter Options

Table 3.42 HK Geocoder DISPLAY_BASEDATA Values

Value Display Action

N No display, apply the spelling algorithm as necessary on streets beginning with the same first character, with the exception of numeric types of streets. No population of the street name or details buffer is performed. Default; using any of the other values blanks out postal form.

4 No display and no spelling algorithm applied – the street must be an exact match. No population of the street name or details buffer is performed.

5 No display, apply the spelling algorithm to every street on the directory. No population of the street name or details buffer is performed.

Y Display the basedata (house number and components) to standard output, Apply the spelling algorithm as necessary on streets beginning with the same first character, with the exception of numeric types of streets and return this information.

6 Display the basedata (house number and components) to standard output. No spelling algorithm applied - the street must be an exact match and return this information.

7 Display the basedata (house number and components) to standard output. Apply the spelling algorithm to every street on the directory and return this information.

3 Return to the street_name_buffer and details_buffer the Level 2 (street name) and basedata (house number and components). Apply the spelling algorithm as necessary on streets beginning with the same first character with the exception of numeric types of streets.

A Return to the street_name_buffer and details_buffer the Level 2 (street name) and basedata (house number and components). No spelling algorithm applied. Street must be an exact match.

B Return to the street_name_buffer and details_buffer the Level 2 (street name) and basedata (house number and components). Apply the spelling algorithm to every street on the directory. Display to standard output only the street names from the directory

2 Display to standard output only the street names from the directory.

Trillium Software System™ Programmer’s Guide, Volume 2 HK Geocoder Error Codes 3-123

Table 3.42 HK Geocoder DISPLAY_BASEDATA Values

Value Display Action

8 Display to standard output only the street names from the directory. No spelling algorithm applied. The street must be an exact match.

9 Display to standard output only the street names from the directory. Apply the spelling algorithm to every street on the directory.

HK Geocoder Error Codes

The following error codes are all returned by the ret_code field in the HK Geocoder output geographic match section:

Table 3.43 HK Postal Geocoder Error Codes

Value Error Message Description

0 No Error None

1 Matched Directory There is a match but must check the fail level code for more information.

2 Invalid Call Type ACTION must be either O, P, or C.

3 Insufficient Storage Not enough free memory to run the Geocoder. Available

4 Level 2 Seek Error When performing street-level processing, Geocoder had trouble locating the area in HKBUL2 file defined by the postal finance code.

5 Base Data Seek When performing street-level processing, the Geocoder had Error trouble locating the area in the file, HKBUBD, defined by the street.

6 Base Data Open When performing street-level processing, could not open Error HKBUBD.

Trillium Software System Return Data & Output Tables 3-124 HK Geocoder Error Codes

Table 3.43 HK Postal Geocoder Error Codes

Value Error Message Description

7 Level 1 Open Error When performing street-level processing, could not open HKBUL1.

8 Level 2 Open Error When performing street-level processing, could not open the HKBUL2.

9 Area decode open Could not open HKACITY file error

Trillium Software System™ Programmer’s Guide, Volume 2 IT Geocoder API Output 3-125

IT Geocoder API Output

This table shows the input/output data layout for the IT Postal Geocoder.

IT Postal Geocoder Input and Output Data

Table 3.44 IT Postal Geocoder Input/Output Record Format

Field Length Position Description

Input Geographic Match Section (supplied by the Customer Data Parser)

postal_code 5 1–5 Postal Code; original post code from the input record.

state 2 6–7 State name, as identified by the Parser

postal_city 30 8–37 City name, as identified by the Parser.

street_name 40 38–77 Street name.

street_type 15 78–92 Type of street.

street_direction 10 93–102 Street direction.

house_number 10 103–112 House number; value following the street name.

sub_building 15 113–127 Unit type, within a building, such as Apt.

sub_building_value 10 128–137 Unit value, within a building, such as Apt# or Unit#.

commune 30 138–167 Commune name

building 30 168–197 Building or complex name

record_type 1 198 Built record type, specified as either: 1=street record 3=PO Box record 4=error record F=foreign record E=pattern error—Unknown street pattern review group record.

filler 102 199–300 Reserved for future use.

Trillium Software System Return Data & Output Tables 3-126 IT Postal Geocoder Input and Output Data

Table 3.44 IT Postal Geocoder Input/Output Record Format

Field Length Position Description

Output Geographic Match Section (supplied by the IT Postal Geocoder)

ret_code 1 301 Postal Geocoder program execution status.

postal_code 5 302–306 Postal code value from the Postal Directory when there is a match to the street components; otherwise, the original input post code is returned.

state 2 307–308 State name, as identified by the Parser

postal_city 30 309–338 City name, as identified by the Parser.

street_name 40 338–378 Street name.

street_type 15 379–393 Type of street

street_direction 10 394–403 Street direction

house_number 10 404–413 House number; value following the street name.

sub_building 15 414–428 Unit type, within a building, such as Apt. or Unit.

sub_building_value 10 429–438 Unit value, within a building, such as Apt# or Unit#.

commune 30 439–468 Community name

building 30 469–498 Building or complex name

record_type 1 499 Built record type, specified as either: 1=street record 3=PO Box record 4=error record F=foreign record E=pattern error—Unknown street pattern review group record.

Trillium Software System™ Programmer’s Guide, Volume 2 IT Match Possibilities Data Area 3-127

Table 3.44 IT Postal Geocoder Input/Output Record Format

Field Length Position Description

deliver_addr 50 500–549 Reconstructed street address. Constructed from the geocoder returned street components to provide a usable mailing address.

postal_code_ 1 550 Y – Flag indicating the postal code output is changed different from the input.

city_changed 1 551 Y – Flag indicating city name output is different from input.

street_name_ 1 552 Y – Flag indicating street name output is changed different from input.

street_components_ 1 553 Y – Flag indicating the street components changed output is different from the input.

fail_level 1 554 A numerical indicator of the accuracy of the match.

IT Match Possibilities Data Area

This layout shows fields that make up the “details buffer”, of the IT Geocoder.

Table 3.45 IT Match Possibilities Data Area

Field Position Length Description

Street_Name 1 - 40 40 Street name

Hsno 41 - 48 8 Starting house # value on the directory.

PC 49 - 54 6 Postal code

Postal_City 55 - 84 30 Postal city

Fail_Level 85 1 Matched fail level. See ‘Output Geographic Match Section’ for values.

Filler 86 - 150 65 Reserved for future use.

Trillium Software System Return Data & Output Tables 3-128 IT DISPLAY_BASEDATA Parameter Options

IT DISPLAY_BASEDATA Parameter Options

This section explains the behavior of the IT Geocoder when attempting to match the input street name and components to the postal directory. By using these specific values, the possibility of getting a match can be improved or possible matches can be returned to the calling program for evaluation.

Table 3.46 IT Geocoder DISPLAY_BASEDATA Values

Value Display Action

N No display, apply spelling algorithm as necessary on streets beginning with the same first character, with the exception of numeric types of streets. No population of the street name or details buffer is performed. This is the default; using any of the other values blanks out postal form.

4 No display and no spelling algorithm applied – the street must be an exact match. No population of the street name or details buffer is performed.

5 No display, apply the spelling algorithm to every street on the directory. No population of the street name or details buffer is performed.

Y Display the basedata (house number and components) to standard output. Apply the spelling algorithm as necessary on streets beginning with the same first character, with the exception of numeric types of streets and return this information.

6 Display the basedata (house number and components) to standard output and return this information. No spelling algorithm applied – the street must be an exact match.

7 Display the basedata (house number and components) to standard output. Apply the spelling algorithm to every street on the directory and return this information.

3 Return to the street_name_buffer and details_buffer the Level 2 (street name) and basedata (house number and components) Apply the spelling algorithm as necessary on streets beginning with the same first character, with the exception of numeric types of streets.

A Return to the street_name_buffer and details_buffer the Level 2 (street name) and basedata (house number and components) No spelling algorithm applied. The street must be an exact match.

Trillium Software System™ Programmer’s Guide, Volume 2 IT Geocoder Error Codes 3-129

Table 3.46 IT Geocoder DISPLAY_BASEDATA Values

Value Display Action

B Return to the street_name_buffer and details_buffer the Level 2 (street name) and basedata (house number and components) Apply the spelling algorithm to every street on the directory. Display to standard output only the street names from the directory

2 Display to standard output only the street names from the directory

8 Display to standard output only the street names from the directory. No spelling algorithm applied. The street must be an exact match.

9 Display to standard output only the street names from the directory. Apply the spelling algorithm to every street on the directory.

IT Geocoder Error Codes

The following error codes are all returned by the IT Geocoder.

Table 3.47 IT Geocoder Program Error Codes

Error Message Description Error Code

0 No Error

1 Matched Directory There is a match but the user must check fail level code.

2 Invalid Call Type action must be either O, P, or C.

3 Insufficient Storage Not enough free emory to run the Geocoder. Available

4 Level 2 Seek Error When performing street-level processing, the Geocoder had trouble locating the area in the file, ITBUL2.

5 Base Data Seek Error When performing street-level processing, Geocoder had trouble locating the area in the file, ITBUBD, defined by the street.

Trillium Software System Return Data & Output Tables 3-130 IT Geocoder Error Codes

Table 3.47 IT Geocoder Program Error Codes

Error Message Description Error Code Error

6 Base Data Open Error When performing street-level processing, could not open ITBUBD.

7 Level 1 Open Error When performing street-level processing, could not open ITBUL1.

8 Level 2 Open Error When performing street-level processing, the could not open the file, ITBUL2.

9 Auxiliary City Table Open Geocoder could not open the file, ITACITY. Error

Trillium Software System™ Programmer’s Guide, Volume 2 UK Geocoder API Output 3-131

UK Geocoder API Output

This table shows the input/output data layout for the UK Postal Geocoder.

UK Geocoder Input/Output Data

Table 3.48 UK Geocoder Input and Output Data

Field Description Position Length

Input Geographic Match Section (street_info — 235)

Postal_Code 1 - 8 8 Postal code

House_Number 9 - 18 10 House number

Thorough_Name 19 - 48 30 Thoroughfare name, direction

Thorough_Desc 49 - 63 15 Descriptor (type)

Dpndthorough_Name 64 - 93 30 Dependent thoroughfare name, direction

Dpndthorough_Desc 94 - 108 15 Dependent thoroughfare description (type)

Building 109 - 138 30 Building/house name

Sub_Building 139 - 168 30 Type and value; for example, Flat, Flat#.

Sub_Building_Value 169 - 178 10 Value only (1)

Organization_Name 179 - 208 30 Organization name

PoBox 209 - 214 6 Pobox number

CntyPtwnCd 215 - 224 10 County/post town code

Locl_Code 225 - 229 5 Trillium locality code

Ddlc_Code 230 - 234 5 Double-dependent locality code

Record_Type 235 1 Trillium–determined record type

Trillium Software System Return Data & Output Tables 3-132 UK Geocoder Input/Output Data

Table 3.48 UK Geocoder Input and Output Data (Continued)

Field Description Position Length

Output Geographic Match Section (return_info — 450)

Ret_Code 1 1 Return code. See “UK Geocoder Error Codes” on page 3-139.

Out_Postal_Out 2 - 5 4 Postal code outbound

Out_Postal_In 6 - 8 3 Postal code inbound

House_Number 9 - 18 10 House number

Thorough_Name 19 - 48 30 Thoroughfare name

Thorough_Desc 49 - 63 15 Descriptor (type)

Dpndthorough_Name 64 - 93 30 Dependent thoroughfare name

Dpndthorough_Desc 94 - 108 15 Descriptor (type)

Building 109 - 138 30 Building/house name

Sub_Building 139 - 168 30 Sub building; (e.g. Flat, Flat#)

Sub_Building_Value 169 - 178 10 Value only

Organization_Name 179 - 208 30 Organization name

PoBox 209 - 214 6 Pobox number

Cnty_Code 215 - 219 5 County code

Cnty_Name 220 - 249 30 County name

Ptwn_Code 250 - 254 5 Post town code

Ptwn_Name 255 - 284 30 Post town name

Locl_Code 285 - 289 5 Locality code

Locl_Name 290 - 319 30 Locality name

Trillium Software System™ Programmer’s Guide, Volume 2 UK Geocoder Input/Output Data 3-133

Table 3.48 UK Geocoder Input and Output Data (Continued)

Field Description Position Length

Ddlc_Code 320 - 324 5 Double dependent locality code

Ddlc_Name 325 - 354 30 Double dependent locality name

Delivery_Point 355 - 356 2 Delivery point suffix

Fail_Level 357 1 Matched fail level

Paf_Key 358 - 365 8 Key provided from PAF file

Organization_Key 366 - 373 8 Organization key provided from PAF file

Postcode_Type 374 1 Set to one of the following: L=Large user S=small user or street

Locality_Changed 375 1 Y = indicates geography component changed from original input

Postcode_Changed 376 1 Y = indicates postcode changed from original

St_Name_Changed 377 1 Y = indicates the thoroughfare name changed from original input

St_Part_Changed 378 1 Y = indicates the thoroughfare type changed from original input

Building_changed 379 1 Y = indicates the building name changed from original input.

Sub_building_ 380 1 Y = indicates the sub-building name changed from changed original input. organization_ 381 1 Y = indicates the organization fields changed from changed original input.

Filler 382 - 450 69 Reserved for future use.

Trillium Software System Return Data & Output Tables 3-134 UK Match Possibilities Data Area

UK Match Possibilities Data Area

This layout shows the fields included in the “details buffer” of the UK Geocoder. The details buffer is 70,000 bytes to hold 200 possible matches. The buffer is available only in real-time implementations.

Table 3.49 UK Match Possibilities Data Area

Field Position Length Description

Postal_Out 1 - 4 4 Outbound post code

Postal_In 5 - 7 3 Inbound post code

Organization_Name 8 - 37 30 Organization name

Building 38 - 67 30 Building name

House_Number 68 - 75 8 Building number (hsno)

Thorough_Name 76 - 105 30 Thoroughfare name

Thorough_Desc 106 - 15 Thoroughfare descriptor 120

Dpndthorough_ 121 - 30 Dependent thoroughfare name Name 150

Dpndthorough_Desc 151 - 15 Dependent thoroughfare descriptor 165

Sub_Building 166 - 30 Sub building name 195

Cnty_Name 196 - 30 County name 225

Ptwn_Name 226 - 30 Post town name 255

Locl_Name 256 - 30 Locality name 285

Ddlc_Name 286 - 30 Double dependent locality name 315

Trillium Software System™ Programmer’s Guide, Volume 2 UK DISPLAY_BASEDATA Parameter Options 3-135

Table 3.49 UK Match Possibilities Data Area (Continued)

Field Position Length Description

Delivery_Point_ 316 - 2 Delivery point suffix (DPS) Suffix 317

Paf_Key 318 - 8 Key provided from PAF file 325

Organization_Key 326 - 8 Organization key provided from PAF file 333

Postcode_Type 334 1 Flag: Set to L=Large user, or S=Small user or street

Fail_level 335 1 Matches fail level

Source_index 336-341 6 Source index

Filler 342 - 9 Reserved for future use 350

UK DISPLAY_BASEDATA Parameter Options

These values change how the Geocoder matches and formats returned data. Certain values specify how the Geocoder is used in terms of three options.

• Details indicator – controls the amount of data returned • Spell indicator – controls the street name matching • Format indicator – controls whether returned PAF data is combined with parsed data.

Each indicator has a number of settings, which are described in the appropriate tables below. Each value corresponds to a different combination of Detail, Spelling and Format options. This table shows the options available through API calls to the UK Geocoder. These options offer increased functionality through the population of the street name and details buffers.

Trillium Software System Return Data & Output Tables 3-136 UK DISPLAY_BASEDATA Parameter Options

Parameter Syntax – DISPLAY_BASEDATA Pos.1, Pos. 2, Pos. 3, Pos. 4, Pos. 5, Pos. 6

Table 3.50 UK Geocoder DISPLAY_BASEDATA Values

Display Action, Street Spelling Action Pos. 1 Pos. 2 Pos. 3 Pos. 4 Pos. 5 Pos. 6 Format Spell Detail

3––––– Populate street name & details buffers with possible address records with Fail level 0, 4 and 5. Up to 200 possibilities. Com- bined return, first character street name spelling. Either “3” or “I” is recommended. This value populates the details buffer

Blend First Buffer with a combination of parsed/geocoded fields.

M––––– Populate details buffer only when more than one record with the same house # input. Otherwise it is populated as value “3” (see

Blend First Buffer above). Combined return, first character street name spelling.

I––––– Populate street name and details buffer. Exact PAF return, first- character street name spelling. Either “I” or “3” is recom- mended. It populates the buffer with possible matches using

Exact First Buffer PAF only data.

L––––– Populate details buffer when more than one record with the same parsed house number. Otherwise it is populated as option I (see

Exact First Buffer above). Exact PAF return, first-character street name spelling.

A––––– Populate street name and details buffer, combined return, no street name spelling Blend No Buffer

J––––– Populate street name and details buffer, exact PAF return, no street name spelling Exact No Buffer

B––––– Populate street name and details buffer, combined return, all street names spelled Blend All Buffer

K––––– Populate street name and details buffer, exact PAF return, all street names spelled Exact All Buffer

Trillium Software System™ Programmer’s Guide, Volume 2 UK DISPLAY_BASEDATA Parameter Options 3-137

Table 3.50 UK Geocoder DISPLAY_BASEDATA Values

Display Action, Street Spelling Action Pos. 1 Pos. 2 Pos. 3 Pos. 4 Pos. 5 Pos. 6 Pos. Format Spell Detail

T––––– Details buffer populated only when Fail level is 0, or with sub- building records from Fail Level 5 matching Blend First Buffer

–1–––– Business name matching - parsed business name must match PAF business name or Fail level 4 is returned (even if address components match).

2 Business name matching - no incoming business name on an address, but the PAF has an address with a business name - allow a match if all else matches.

–H–––– Try harder matching - attempt to manipulate parsed fields to get a match to PAF records. Caution - may slow processing time.

––1––– Cautious switch - limits PAF matching to addresses with the same parsed outbound postcode (first portion of postal code). It forces failure when there are differences between inbound post- code data and street components (like street type.)

––2––– Extra cautious switch - implements tighter PAF matching; only an exact match of the parsed house # to the PAF record house # is allowed (e.g. 34 will not match 34B). Also, if an address has no parsed sub-building, but matches to a single exact house number PAF and range address, the exact address is chosen as primary return. Forces fail level 5.

–––1–– Building name matching - parsed building name must match PAF building name or Fail level 4 returned (even if other components match).

––––1– A parsed house # (4) with many matching PAF records with the same house # (4) will not match to a single PAF range house # (1-5). Returns Fail level 5.

–––––1 Compare parsed building name to PAF building field, then PAF orga- nization field on each PAF address record comparison.

Trillium Software System Return Data & Output Tables 3-138 Format Indicator Values

Format Indicator Values

Blend Blend of parsed field data and PAF data is populated into geocoder output area fields (useful for van- ity names not held on PAF like house names)

Exact Only data on PAF directory record is used to populate geocoder output area fields

Spell Indicator Values

First Spelling algorithm applied to PAF streets beginning with the same first letter as input street

No No spelling algorithm applied - PAF street must be an exact match to input street

All Every PAF street in parsed posttown is considered for matching

Details Indicator Values

No No street name or details buffer population, nothing written to standard output

WriteAll Street name and details buffer data written to standard output

WriteStr Only street name buffer written to standard output

Buffer Street name and details buffers populated with records on PAF with same postal code or else get Fail level 0, 4 or 5, up to a maximum of 200 possibilities.

Trillium Software System™ Programmer’s Guide, Volume 2 UK Geocoder Error Codes 3-139

UK Geocoder Error Codes The following error codes are all returned by the UK Geocoder.

Table 3.51 UK Geocoder Error Codes

Error Message Description

0No Error

1 Matched Directory There is a match; user must check the fail level code for more information.

2 Invalid Call Type ACTION must be either O, P, or C.

3 Insufficient Storage Available Not enough memory to run the Geocoder.

4 Level 2 Seek Error When performing street-level processing, Geocoder had trouble locating the area in UKBUL2, defined by the postal finance code.

5 Base Data Seek Error When performing street-level processing, the Geocoder had trouble locating the area in the file, UKBUBD, defined by the street.

6 Base Data Open Error Street-level processing, could not open UKBUBD.

7 Level 1 Open Error Street-level processing, could not open UKBUL1.

8 Level 2 Open Error For street-level processing, could not open the file, UKBUL2.

9 Area decode open error Could not access area names.

A Level PI open error

B Level P open error

C Level P seek error

D CICS Memory Error (CICS Only)

E CICS Queue error (CICS only)

F Invalid DISPLAY_BASEDATA (CICS)

Trillium Software System Return Data & Output Tables 3-140 UK Geocoder Error Codes

Table 3.51 UK Geocoder Error Codes

Error Message Description

O Bad open of EXTDAT_FNAME Building/organization name processing, bad open file of UMEXDATA.

P Read error of EXTDAT_FNAME Building/organization name processing, read error file of UMEXDATA.

Trillium Software System™ Programmer’s Guide, Volume 2 TG Geocoder API Output 3-141

TG Geocoder API Output

This table lists the input/output record format of the Trillium Global Geocoder:

Table 3.52 TG Geocoder Input/Output Record Format

Field Description Position Length

Input Geographic Match Section (street info – 600 bytes)

Tg_in_postal_code 1 15 Postal code identified by Parser.

Tg_in_state 16 30 State/Province name identified by Parser.

Tg_in_postal_city 46 30 City name identified by Parser.

Tg_in_house_number 76 15 House number identified by Parser.

Tg_in_street_name 91 50 Street name identified by Parser.

Tg_in_street_type 141 15 Street type identified by Parser.

Tg_in_street_dir 156 12 Street direction identified by Parser.

Tg_in_box_type 168 20 Box description.

Tg_in_box_number 188 10 Box number.

Tg_in_sub_building 198 20 First unit description identified by Parser.

Tg_in_sub_building_ 218 10 First unit number identified by Parser. value

Tg_in_sub_building2 228 20 Second unit description identified by Parser.

Tg_in_sub_building2_ 248 10 Second unit number identified by Parser. value

Tg_in_other 258 60 First building name or neighborhood identified by Parser.

Tg_in_other2 318 60 Second building name or neighborhood identified by Parser.

Trillium Software System Return Data & Output Tables 3-142 TG Geocoder API Output

Table 3.52 TG Geocoder Input/Output Record Format

Field Description Position Length

Tg_in_busname 378 100 Business name identified by Parser.

Tg_in_state_code 478 5 State code identified by Parser.

Tg_in_city_code 483 5 City code identified by Parser.

Tg_in_box_ind 488 1 Box type indicator identified by Parser.

Tg_in_unit1_ind 489 1 First unit type indicator identified by Parser.

Tg_in_unit2_ind 490 1 Second unit type indicator Identified by Parser.

Tg_in_filler4 491 1 Reserved for expansion.

Tg_in_record_type 492 1 Record type identified by Parser. 1= street record, 3 = PO Box, 6 = PO Box & street, E = Pattern Error, F = foreign record

Tg_in_filler 493 108 Reserved for expansion.

Output Geographic Match Section (return info – 900 bytes)

Tg_out_ret_code 1 1 Return code. See “TG Geocoder Error Codes” on page 3-152.

Tg_out_postal_code 2 15 Postal code returned from Postal Geocoder.

Tg_out_state 17 30 Corrected Province/State name returned from Geocoder.

Tg_out_postal_city 47 50 Corrected city name returned from Postal Geocoder.

Tg_out_house_number 97 20 House number returned from Postal Geocoder.

Tg_out_street_name 117 100 Corrected street name returned from Geocoder.

Tg_out_street_type 217 15 Corrected street type returned from Postal Geocoder.

Tg_out_street_dir 232 12 Corrected street direction returned from Geocoder.

Trillium Software System™ Programmer’s Guide, Volume 2 TG Geocoder API Output 3-143

Table 3.52 TG Geocoder Input/Output Record Format

Field Description Position Length

Tg_out_sub_building 244 20 First unit description identified by Parser.

Tg_out_sub_building_ 264 10 First unit number returned from Postal Geocoder. value

Tg_out_sub_building2 274 20 First unit description identified by Parser.

Tg_out_sub_building2_ 294 10 Second unit number returned from Postal value Geocoder.

Tg_out_other 304 80 First neighborhood/building name returned from Geocoder.

Tg_out_other2 384 80 Second neighborhood/building name returned from Geocoder.

Tg_out_busname 464 100 Business name returned from Postal Geocoder.

Tg_out_box_ind 564 1 Box type returned from Postal Geocoder.

Tg_out_unit1_ind 565 1 First unit type returned from Postal Geocoder.

Tg_out_unit2_ind 566 1 Second unit type returned from Postal Geocoder.

Tgout_box_number 567 10 Return box number.

Tgout_unit1_number 577 10 Return unit 1 number.

Tgout_unit2_number 587 10 Return unit 2 number.

Tg_out_rec_type 597 1 Record type returned from TG Postal Geocoder.

Tg_out_delivery_addr 598 120 Re-constructed delivery address returned from TG Geocoder based on DELIVERY_TYPE parameter.

Tg_out_province_ 718 1 Indicator for change made to province returned changed from Geocoder.

Trillium Software System Return Data & Output Tables 3-144 TG Geocoder API Output

Table 3.52 TG Geocoder Input/Output Record Format

Field Description Position Length

Tg_out_city_changed 719 1 Indicator for change made to city returned from Geocoder.

Tg_out_street_name_ 720 1 Indicator for change made to street name changed returned from Geocoder.

Tg_out_street_type_ 721 1 Indicator for change made to street type returned changed from Geocoder.

Tg_out_street_ 722 1 Indicator for change made to street direction direction_changed returned from Geocoder.

Tg_out_dwelling_1_ 723 1 Indicates change made to primary dwelling changed returned from Geocoder.

Tg_out_dwelling_2_ 724 1 Indicates change made to secondary dwelling changed returned from Geocoder.

Tg_out_neighborhood_ 725 1 Indicates change made to neighborhood 1 1_changed returned from Geocoder.

Tg_out_neighborhood_ 726 1 Indicates change made to neighborhood 2 2_changed returned from Geocoder.

Tg_out_business_ 727 1 Indicates change made to business name returned name_changed from Geocoder.

Tg_out_postal_code_ 728 1 Indicates change made to the postal code returned changed from Geocoder.

Tg_out_fail_level 729 1 Fail level identified by Postal Geocoder.

Tg_out_ext_key_1 730 15 External key returned. Used in linking to external tables.

Tg_out_ext_key_2 745 15 External key returned. Used in linking to external tables.

Tg_out_ext_key_3 760 15 External key returned. Used in linking to external tables.

Trillium Software System™ Programmer’s Guide, Volume 2 TG Geocoder DISPLAY_BASEDATA Parameter Options 3-145

Table 3.52 TG Geocoder Input/Output Record Format

Field Description Position Length

Tg_out_box_no 775 10 Box number return

Tg_out_hsno 785 15 House number return

Tg_out_unit1_no 800 10 Unit1 number return

Tg_out_unit2_no 810 10 Unit2 number return

Tg_out_filler 820 81 Reserved for future use.

TG Geocoder DISPLAY_BASEDATA Parameter Options

This table describes behavior of the TG Geocoder when attempting to match the input street name and components to the postal directory. The DISPLAY_ BASEDATA parameter gives the possibility of getting a match which can be improved. Matches can also be returned to the API program for evaluation.

Format: DISPLAY_BASEDATA ab a – Value 1, b – Value 2

Table 3.53 TG Postal Geocoder DISPLAY_BASEDATA Values

Description Value 1

N No display. Apply the spelling algorithm as necessary on streets beginning with the same first character, with the exception of numeric types of streets. No population of the street name or details buffer is performed. This is the default.

4 No display and no spelling algorithm applied – the street must be an exact match. No population of the street name or details buffer is performed.

5 No display, apply the spelling algorithm to every street on the directory. No population of the street name or details buffer is performed.

Trillium Software System Return Data & Output Tables 3-146 TG Geocoder DISPLAY_BASEDATA Parameter Options

Table 3.53 TG Postal Geocoder DISPLAY_BASEDATA Values

Description Value 1 Value

Y Display the basedata (house number and components) to standard output. Apply the spelling algorithm as necessary on streets beginning with the same first character, with the exception of numeric types of streets and return this information.

6 Display the basedata (house number and components) to standard output. No spelling algorithm applied – the street must be an exact match and return this information.

7 Display the basedata (house number and components) to standard output. Apply the spelling algorithm to every street on the directory and return this information.

3 Return to the street_name_buffer and details_buffer the Level 2 (street name) and basedata (house number and components). Apply the spelling algorithm as necessary on streets beginning with the same first character, with the exception of numeric types of streets.

A Return to the street_name_buffer and details_buffer the Level 2 (street name) and basedata (house number and components). No spelling algorithm applied. The street must be an exact match.

B Return to the street_name_buffer and details_buffer the Level 2 (street name) and basedata (house # and components). Apply the spelling algorithm to every street on the directory.

2 Display to standard output only the street names from the directory. Apply the spelling algorithm as necessary on streets beginning with the same first character, with the exception of numeric types of streets.

8 Display to standard output only the street names from the directory. No spelling algorithm applied. The street must be an exact match.

9 Display to standard output only the street names from the directory. Apply the spelling algorithm to every street on the directory.

Trillium Software System™ Programmer’s Guide, Volume 2 Using a Translation File with the DISPLAY_BASEDATA Parameter 3-147

Using a Translation File with the DISPLAY_BASEDATA Parameter The ‘T’ option allows for a translation matrix file to be used in the program. The Geocoder uses this file to remove accents from the data it compares.

To implement the translation file, the second character must be a capital ‘T’. This is followed by a string which holds the name of the file where the translation matrix is located.

It must follow the first byte which is already used. The first character is pretty much ignored for the purposes of the translation file (N, 4, 5, 9).

Table 3.54 TG Geocoder DISPLAY_BASEDATA Values (Value 2)

Value 2 Description

T Allows for a translation matrix file to use in the program. The TG Geocoder uses this file to remove accents from the data it compares.

This option ignores the first value, and only looks for the translation matrix file. The details and street buffers are not available with this option.

Trillium Software System Return Data & Output Tables 3-148 LEVEL_MATCHING parameter values

LEVEL_MATCHING parameter values

This is a list of all values used with the LEVEL_MATCHING parameter.

Table 3.55 LEVEL_MATCHING Parameter Values

Pos. Mexico Brazil Spain France Netherlands Singapore Portugal Belgium Malaysia Italy Switzerland

1 Street match 01 1 1 1 11 1 1 1 1 indicator

2 Dwelling match 00 0 1 1 00 0 0 0 0 indicator

3 Neighborhood 11 1 1 0 11 0 0 1 1 match indicator

4 Province match 11 0 0 0 00 0 1 1 0 indicator

5 Business name 00 0 1 0 01 0 0 0 0 match

6 Street type match 01 1 1 0 11 1 1 1 1

7 Street direction 00 0 0 0 00 0 0 0 0 match

8 Postal Code 11 1 1 1 11 1 1 1 1 match

9 Acceptance score 98 93 93 93 93 93 93 93 93 93 93

10 Street name score 90 90 90 90 90 90 90 90 90 90 90 passing level

11 Neighborhood 95 95 95 95 95 95 95 95 95 95 95 score passing level

Trillium Software System™ Programmer’s Guide, Volume 2 TG Geocoder Match Possibilities Data Area 3-149

Table 3.55 LEVEL_MATCHING Parameter Values

Pos. Mexico Brazil Spain France Netherlands Singapore Portugal Belgium Malaysia Italy Switzerland

12 Business name 95 95 95 95 95 95 95 95 95 95 95 score passing level

13 Post code length 55 5 5 6 57 4 5 5 4 indicator

14 Directory version 00 0 0 0 00 0 0 0 0

15 Address priority 00 0 0 0 01 0 0 0 0

16 Directory style 00 0 0 0 00 0 0 0 0

17 Delivery type 11 1 2 1 01 1 1 0 0

18 DISPLAY_ 0 BASEDATA

TG Geocoder Match Possibilities Data Area

These fields make up the layout of the “details buffer” for the TG Geocoder.

Table 3.56 TG Geocoder Match Possibilities Data Area

Field Position Length Description

Street_name 1 100 Street name.

Street_type 101 15 Street type. For example, Ave., Rd., and so on. Appropriate abbreviations are used.

Street_Dir 116 12 Street direction. Street directional that follows the street name. Common letter designations like N, SW, and so on

FromHsNo 128 15 Starting house # value on postal directory.

Trillium Software System Return Data & Output Tables 3-150 TG Geocoder Match Possibilities Data Area

Table 3.56 TG Geocoder Match Possibilities Data Area (Continued)

Field Position Length Description

ToHsno 143 15 Ending house # value on the directory.

PC 158 15 Postal code

State 173 30 State Name

Postal_City 203 50 City Name

Fail_Level 253 1 The matched Fail Level returned for TG geocoder

Box_Low 254 10 First Box number or letter associated with street or neighborhood postal entry.

Box_High 264 10 Last Box number or letter associated with a street or neighborhood postal entry.

Unit 274 20 Primary dwelling (Apt., flat, suite etc.) identification number.

Unit_Low 294 10 Starting unit number associated with unit range

Unit_High 304 10 Ending unit number; last unit number associated with unit range

Unit2 314 20 Secondary unit number associated with dwelling (Apt., flat or suite).

Unit2_Low 334 10 Starting secondary unit number associated with unit range

Unit2_High 344 10 Ending secondary unit number; last number associated with unit range

Other 354 80 Primary Neighborhood information. (Country Specific)

Other2 434 80 Secondary neighborhood information. (Country Specific)

Busname 514 100 Business Name, if matched to specific postal entry (sometimes used for large scale addressees) (Country Specific)

Trillium Software System™ Programmer’s Guide, Volume 2 TG Geocoder Match Possibilities Data Area 3-151

Table 3.56 TG Geocoder Match Possibilities Data Area (Continued)

Field Position Length Description

Box_Ind 614 1 Box Type identification.

B= Box A = Apartment S= Suite, etc.

Unit1_Ind 615 1 Primary Unit Type identification.

A = Apartment S = Suite, etc.

Unit2_Ind 616 1 Secondary Unit Type identification

External_1 617 15 Additional data associated with postal entry. Country specific (if applicable)

External_2 632 15 Additional data associated with postal entry. Country specific (if applicable)

External_3 647 15 Additional data associated with postal entry. Country specific (if applicable)

Boxno_Std 662 10 Box number returned with a match to postal entry

Hsno_Std 672 15 House number returned with a match to postal entry

Unit1No_Std 687 10 Primary dwelling number returned with match to postal entry

Unit2No_Std 697 10 Secondary dwelling number returned with match to postal entry

Filler 707 94 Filler

Trillium Software System Return Data & Output Tables 3-152 TG Geocoder Error Codes

TG Geocoder Error Codes

The following error codes are all returned by the Trillium Global Geocoder.

Table 3.57 TG Geocoder Error Codes

Value Error Message

0No Error

1 Matched Directory – there is a match but the user must check the fail level code for more information.

2 Invalid Call Type – ACTION must be either O, P, or C.

3 Insufficient Storage Available – not enough memory to run the Geocoder.

4 Level 2 Seek Error – when performing street-level processing, the Geocoder had trouble locating the area in the file, TGBUL2, defined by the postal finance code.

5 Base Data Seek Error – when performing street-level processing, the Geocoder had trouble locating the area in the file, TGBUBD, defined by the street.

6 Base Data Open Error – when performing street-level processing, the Geocoder could not open the file, TGBUBD.

7 Level 1 Open Error – when performing street-level processing, Geocoder could not open file, TGBUL1.

8 Level 2 Open Error – when performing street-level processing, Geocoder could not open file, TGBUL2.

9 Auxiliary city table open error.

A Bad open on CSTATE TGMATCH – could not open CSTATE file

B No records on Level 1 file for directory version – Invalid directory version entered.

Trillium Software System™ Programmer’s Guide, Volume 2 Matcher Functions – Error Codes 3-153

Matcher Functions – Error Codes

The following error codes are all returned from the Matcher programs.

Add Records

The following error codes are returned by the Add Records Matcher function.

Table 3.58 Error Codes from Add Records

Value Description

0 No errors detected.

1 No prior initialization.

2 Invalid window type specified.

3 Insufficient memory for adding to window.

Clear Window The following error codes are returned by the Clear Window Matcher function.

Table 3.59 Error Codes from Clear Window

Value Description

0 No errors detected.

1 No prior initialization.

2 Invalid window type specified.

3 Attempting to clear empty window.

Trillium Software System Return Data & Output Tables 3-154 Create Common

Create Common The following error codes are returned by the Create Common Matcher function.

Table 3.60 Error Codes from Create Common

Value Description

0 No errors detected.

1 No prior initialization.

2 Invalid window type specified.

3 Insufficient memory.

End Matcher The following error codes are all returned by the End Matcher function.

Table 3.61 Error Codes from End Matcher

Value Description

0 No errors detected.

1 No prior initialization.

Trillium Software System™ Programmer’s Guide, Volume 2 Initialize Matcher 3-155

Initialize Matcher

The following error codes are all returned by the Initialize Matcher Matcher function.

Table 3.62 Error Codes from Initialize Matcher

Value Description

0 No errors detected.

1 Insufficient memory for initialization.

2 Bad open of statistics file.

3 Bad open of links file.

Match Candidate

The following error codes are all returned by the Match Candidate Matcher function.

Table 3.63 Error Codes from Match Candidate

Value Description

0 No errors detected.

1 No prior initialization.

2 Invalid window type specified.

3 Attempting to match against empty window.

Trillium Software System Return Data & Output Tables 3-156 Match Window

Match Window

The following error codes are returned by the Match Window Matcher function.

Table 3.64 Error Codes from Match Window

Value Description

0 No errors detected.

1 No prior initialization.

2 Invalid window type specified.

3 Attempting to match against empty window.

Number of Reference Matches

The following error codes are returned by the Number of Reference Matches Matcher function.

Table 3.65 Error Codes from Number of Reference Matches

Value Description

0 No errors detected

1 No prior initialization

Trillium Software System™ Programmer’s Guide, Volume 2 Number of Reference Suspects 3-157

Number of Reference Suspects

The following error codes are all returned by the Number of Reference Suspect Matches Matcher function.

Table 3.66 Error Codes from Number of Reference Suspects

Value Description

0 No errors detected

1 No prior initialization

Obtain Reference Match

The following error codes are all returned by the Obtain Reference Match Matcher function.

Table 3.67 Error Codes from Obtain Reference Match

Value Description

0 No errors detected.

1 No prior initialization.

2 Invalid window type specified.

3 No records in window.

4 Specified record number out of range.

Trillium Software System Return Data & Output Tables 3-158 Obtain Reference Suspect

Obtain Reference Suspect The following error codes are all returned by the Obtain Reference Suspect Matcher function.

Table 3.68 Error Codes from Obtain Reference Suspect

Value Description

0 No errors detected.

1 No prior initialization.

2 Invalid window type specified.

3 No records in window.

4 Specified record number out of range.

Process Parameters

The following error codes are all returned by the Process Parameters Matcher function.

Table 3.69 Error Codes for Process Parameters

Value Description

0 No errors detected.

1 No prior initialization.

2 No parameter file name specified.

3 Could not open the parameter file.

4 Invalid field position.

5 Invalid field length.

6 Spaces needed to delimit parameter file entries.

7 No threshold scores specified. Not applicable for parmtype ‘0.’

Trillium Software System™ Programmer’s Guide, Volume 2 Process Parameters 3-159

Table 3.69 Error Codes for Process Parameters (Continued)

Value Description

8 No field names or field positions and lengths specified.

9 No comparison routine names specified. Not applicable for parmtype ‘0.’

A (10) Insufficient memory for constructing internal list.

B (11) Unknown propagation routine specified.

C (12) Bad match score threshold value.

D (13) Unknown comparison routine specified.

E (14) Field positions couldn’t be retrieved from dictionary.

F (15) For parmtypes 0,1, 2, 3, and 7: Missing beginning parenthesis. For parmtypes 4,5, and 6: Invalid pattern category specified in grade pattern list. Exceeds record length 80

G (16) For parmtypes 0,1, 2, 3, and 7: Missing comma/ending parenthesis. For parmtypes 4, 5, and 6: No field list specified prior to grade pattern list.

H (17) For parmtypes 0,1, 2, 3, and 7: Unknown keyword in parameter entry. For parmtypes 4, 5, and 6: Invalid pattern identified in grade pattern list.

I (18) For parmtypes 0,1, 2, 3, and 7: Comparison routine name too long. For parmtypes 4, 5, and 6: Bad (non ABCDEF) character in pattern grade string.

J (19) Target and source must be the same length

K (20) Invalid routines name found.

L (21) Invalid parmval found.

M (22) Invalid parmval for routine.

N Excess number of fields (greater than 50) in match fields

Trillium Software System Return Data & Output Tables 3-160 Sort Window

Retrieve Records

The following error codes are all returned by the Retrieve Records Matcher function.

Table 3.70 Error Codes from Retrieve_Records

Value Description

0 No errors detected.

1 No prior initialization.

2 Invalid window type specified.

3 Attempting to retrieve from empty window.

4 Specified window member out of range.

Sort Window The following error codes are all returned by the Sort Window Matcher function.

Table 3.71 Error Codes from Sort Window

Value Description

0 No errors detected.

1 No prior initialization.

2 Invalid window type specified.

3 Attempting to sort empty window.

4 Invalid sort order specified.

Trillium Software System™ Programmer’s Guide, Volume 2 Universal Cleansing Adapter API Error Codes 3-161

Universal Cleansing Adapter API Error Codes This table describes the codes that can be returned from the Universal Cleansing Adapter (UCA) API program.

Table 3.72 Universal Cleansing Adapter (UCA) Error Codes

Value Description

0 No error.

1 Null pointer returned on "new". Occurs anywhere.

2 Invalid operation.

4 Invalid state.

8 Error loading the DLL.

16 Invalid entry point.

32 Field not found.

33 Geocoder failed. Check fail level. Occurs on Process.

64 Unsupported country.

128 Error not implemented.

00XX Converter did not open. The Converter return code is added to this number. Occurs on Open. Some examples: 0033 = Converter file not found. 0031 = Parameter processing error.

10XX* Parser did not open. The pr_return value is added to this number. Occurs on Open.

20XX Parser process error; the pr_return value is added to this number. Occurs on Process.

30XX Parser did not close; pr_return value is added to this number. Occurs on Close.

40XX Geocoder did not open; the ret_code value is added to this number. Occurs on Open.

4001 Requested geocoder could not open. Occurs on Open.

Trillium Software System Return Data & Output Tables 3-162 Universal Cleansing Adapter API Error Codes

Table 3.72 Universal Cleansing Adapter (UCA) Error Codes (Continued)

Value Description

50XX Geocode failed; ret_code value is added to this number. Occurs on Open and/or Process.

60XX Geocoder did not close; ret_code value is added to this number. Occurs on Close.

70XX Router did not open; Router return code is added to this number. Occurs on Open.

80XX Router did not process; Router return code is added to this number. Occurs on Process.

90XX Router did not close; Router return code is added to this number. Occurs on Close.

100XX Data Reconstructor did not open; Reconstructor return code is added to this number. Occurs on Open.

110XX Data Reconstructor did not process; Reconstructor return code is added to this number. Occurs on Process.

120XX Data Reconstructor did not close; Reconstructor return code is added to this number. Occurs on Close.

130XX DPV did not open; DPV return code is added to this number. Occurs on Open.

140XX DPV did not process; DPV return code is added to this number. Occurs on Process.

150XX DPV did not close; DPV return code is added to this number. Occurs on Close.

The XX portion of the Error Code corresponds to a particular return code. For example, if you get "1050", the decimal number "50" is equivalent to an ASCII number 2 which translates into parser initialization error (where Parser cannot access or find Parser tables).

US Postal Geocoder return codes appear in the section “US Postal Geocoder Error Codes” on page 3-65.

Trillium Software System™ Programmer’s Guide, Volume 2 XML Function Error Codes 3-163

XML Function Error Codes

These error codes are all displayed from the individual XML functions.

XML Converter Error Codes

These error codes can all be returned from the XML Converter function.

Table 3.73 XML Converter Error Codes

Value Description

0 No error. XML Converter is functioning properly.

1 – 17 DDL/Parm file entry missing or error reading it.

29 Unable to allocate memory for the control block.

30 Unable to open the log file.

31 Missing the XML_RECORD_ELEMENT parameter.

32 Either the XML_TO_FIX_TAGS parameter or the FIX_TO_XML_TAGS parameter must be specified.

33 Error opening data dictionary.

34 A field is not defined in the DDL.

35 Unable to allocate memory for the XML record.

36 Invalid element name.

101 No prior initialization. Need to call openXMLConverter first.

110 Missing the XML_TO_FIX_TAGS parameter.

114 Missing end tag for XML element in the XML record.

121 Internal error; not enough space for element.

122 Cannot find XML element name in the XML record.

201 Missing the FIX_TO_XML_TAGS parameter.

202 The XML record buffer has not been allocated.

Trillium Software System Return Data & Output Tables 3-164 XML Converter Error Codes

XMLinit

These error codes can all be returned from the XMLinit function.

Table 3.74 XMLinit Error Codes

Value Description

0 No error.

1 Missing parameter file name.

2 Cannot open the parameter file.

3 Cannot open the parameter echo file.

4 Invalid parameter name found in the file.

5 Unknown command line parameter.

6 Duplicate parameter name found in file.

7 Invalid format for override parameter.

8 Invalid format for parameter in source program.

9 Parameter value was expected to be numeric.

10 Missing override value.

11 No ending quote.

12 Insufficient memory for a parameter entry

13 Insufficient memory for parameter value of type string.

14 Insufficient memory for parameter value of type long.

15 Insufficient memory for parameter value of type double.

16 Extraneous parenthesis found.

29 Insufficient memory for the control block.

30 Cannot open the log file.

31 Missing the XML_RECORD_ELEMENT parameter.

Trillium Software System™ Programmer’s Guide, Volume 2 XML2fix 3-165

Table 3.74 XMLinit Error Codes

Value Description

32 Either the XML_TO_FIX_TAGS parameter or the FIX_TO_XML_TAGS parameter must be specified.

33 Error opening data dictionary.

34 A field is not defined in the DDL.

35 Insufficient memory for the XML record.

XML2fix These error codes can all be returned from the XML2fix function

Table 3.75 XML2fix Error Codes

Value Description

0 No error.

101 Two possible errors: 1–No prior initialization; must call xmlinit first; or 2–Initialization failed; check the return code for xmlinit.

110 Missing the XML_TO_FIX_TAGS parameter.

114 Missing end tag for XML element in the record.

121 Internal error: not enough space for element.

122 Cannot find XML element name in the XML record.

Trillium Software System Return Data & Output Tables 3-166 Fix2XML

Fix2XML These error codes can all be returned from the Fix2XML function

Table 3.76 Fix2XML Error Codes

Value Description

0 No error.

101 Two possible errors: 1–No prior initialization; must call xmlinit first; or 2–Initialization failed; check the return code for xmlinit.

102 XML buffer has not been allocated.

201 Missing the FIX_TO_XML_TAGS parameter.

202 XML buffer has not been allocated.

Trillium Software System™ Programmer’s Guide, Volume 2 Index I-1

ba_pattern field 3-34 Index ba_return field 3-33, 3-35 ba_rev_group field 3-34 A ba_user1 field 3-34 ACTION parameter (on C) 2-6 ba_user1_display field 3-34 Add Record Function parameters Batch COBOL calls on IBM Mainframe 2-2 COBOL on IBM Mainframe 2-108 BPREPOS output table 3-33 API calls Business Data Parser on IBM Mainframe 2-1 Calling from COBOL 2-13 API calls (COBOL on IBM Mainframe) 2-2 GA#PRSI function 2-13 API Load Modules and Entry Points Repository Output Record Format (COBOL on IBM Mainframe) 2-2 3-33 AU Geocoder return codes 3-35 Calling from a COBOL Program C 2-67 AU Postal Geocoder CA Geocoder AU#AMAT function 2-67 Input/Output Record Format 3-88 AU#MTCI function 2-67 CA Postal Geocoder calling from COBOL 2-67 CA#AMAT function 2-62 Display BaseData Parameter CA#MTCI function 2-62 Options 3-109 calling from COBOL 2-62 Input and Output Data Layout Display BaseData Values 3-100 3-103 Match Possibilities Data Area 3-96 Match Possibilities Data Area 3-106 call types Program Error Messages 3-110 defining 2-9, 2-54, 2-58 Calling 2-76 B CASS API 2-21 ba_category field 3-33 Working Storage Code 2-27 ba_comprehension field 3-33 Centroid Geocoder 2-58 ba_confidence field 3-33 CFRECONS ba_data_present_user1 field 3-34 Return Codes 3-37 ba_filler_01 field 3-34 Clear Window function parameters ba_filler_02 field 3-34 COBOL on IBM Mainframe 2-109 ba_filler_03 field 3-34 COBOL ba_global_review_codes field 3-33 calling the Investigator with 2-7 ba_line field 3-34 COBOL calls ba_line_rules field 3-33 to Business Data Parser 2-13 ba_line_type field 3-34 to Customer Data Parser 2-11 ba_misc_addr field 3-34 to Data Reconstructor 2-102 ba_misc_review_codes field 3-33 to US Postal Geocoder 2-17 ba_orig_linepat field 3-33 Converter

Index I-2 Index

Calling from a COBOL Program 2-9 DE Geocoder COBOL CF#CONI function 2-9 Calling from COBOL 2-71 Error Codes 3-2 Program Error Messages 3-118 Create Common function parameters DE Postal Geocoder COBOL on IBM Mainframe 2-110 Display BaseData Values 3-116 Create Window Key Error Codes 3-118 calling from COBOL 2-100 Input and Output Data Layout CF#WKEY function 2-100 3-112 Create Window Key function parameters Input/Output Record Format 3-112 COBOL on IBM Mainframe 2-101 Match Possibilities Data Area 3-115 Create Window Key Function Parameters DE Postal Geocoder Add Mat Function (COBOL on IBM Mainframe) 2-101 Parameters (COBOL on IBM Mainframe) Create Window Key Program 2-71 parameters for (COBOL on IBM DE Postal Geocoder parameters Mainframe) 2-101 COBOL on IBM Mainframe 2-73 Customer Data Parser DE Postal Geocoder Parameters (COBOL Calling from a COBOL Program on IBM Mainframe 2-73 2-11 E PA#PRSI 2-11 End Matcher function parameters Repository Output Record Format COBOL on IBM Mainframe 2-111 3-3 Error codes Sample COBOL JCL 2-12 for Add_Record 3-153 Customer Data Parser output 3-3 for Clear_Window 3-153 D for Create_Common 3-154 Data Reconstructor for End_Matcher 3-154 Calling from a COBOL Program for Match_Candidate 3-155 2-102 for Match_Window 3-156 Compiler Error Messages 3-38 for Process_Parameters 3-158- Error Codes 3-37 3-159 RC#MULTI 2-102 for Retrieve_Record 3-160 Data Reconstructor compiler for Sort_Window 3-160 error messages from 3-38 error codes Data Reconstructor Compiler error for Data Reconstructor 3-37 messages 3-39 from Window Key Generator 3-44 Data Reconstructor error codes 3-37 LACSLink, DPV, SuiteLink 3-56 Data Reconstructor parameters error messages COBOL on IBM Mainframe 2-103 from Data Reconstructor Compiler DE Add Mat function parameters 3-39 COBOL on IBM Mainframe 2-71

T r i l l i u m S o f t w a r e S y s t e m ™ P r o g r a m m e r ’ s G u i d e , V o l u m e 2 Index I-3

F Error Codes 3-2 Investigator output 3-2 Federal Information Processing Investigator parameters Standards, see FIPS 3-85 COBOL on IBM Mainframe 2-8 G Investigator parameters (COBOL on IBM Global Data Router Mainframe) 2-8 calling from COBOL 2-15 IP#MTCI call 2-58 IT Add Mat function parameters return codes 3-36 COBOL on IBM Mainframe 2-81 RT#ROUT 2-15 IT Postal Geocode API H COBOL 2-81 HK Geocoder IT Postal Geocoder Add Mat Function Calling from COBOL 2-76 Parameters (COBOL on IBM Mainframe) 2-81 HK#MTCI function 2-77 IT Postal Geocoder API HK Postal Geocoder Display BaseData Values 3-128 Display BaseData Values 3-121 Error Codes 3-129 Error Messages 3-123 Input/Output Record Format 3-125 HK#AMAT Function 2-76 Match Possibilities 3-127 Input and Output Data Layout Match Possibilities Data Area 3-127 3-119 Output 3-125 Input/Output Data Format 3-119 Program Error Messages 3-129 Match Possibilities Data Area 3-121 IT Postal Geocoder parameters HK Postal Geocoder parameters COBOL on IBM Mainframe 2-83 COBOL on IBM Mainframe 2-78 IT Postal Geocoder Parameters (COBOL on HK Postal Geocoder Parameters (COBOL IBM Mainframe) 2-83 on IBM Mainframe) 2-78 HK Postal Geocoder Program Error M Messages 3-123 M#ADDREC function (COBOL on IBM HK_Postal Geocoder Mainframe) 2-105, 2-107 Add Mat Function parameters M#CLEARW function (COBOL on IBM COBOL on IBM Mainframe 2-76 Mainframe) 2-106, 2-107 I M#CMATCH function (COBOL on IBM Mainframe) 2-105 Initialize Matcher function 2-111 M#COMMON function (COBOL on IBM input name and address (INA) 2-11 Mainframe) 2-107 Interpolated Geocoder 2-58 M#ENDMAT function (COBOL on IBM Interpolated Plus Geocoder 2-58 Mainframe) 2-106, 2-107 Investigator M#GETMAT function 2-117 Calling from a COBOL Program 2-7 M#GETMAT function (COBOL on IBM CFINVESI function 2-7 Mainframe) 2-105

Index I-4 Index

M#GETSUS function 2-106, 2-118 Create Common function M#INITMR function 2-106 Error Codes 3-154 M#INITMR function (COBOL on IBM Create Common function (COBOL) Mainframe) 2-105 2-109 M#NUMMAT function 2-115, 2-116 End Matcher function M#NUMMAT function (COBOL on IBM Error Codes 3-154 Mainframe) 2-105 M#NUMSUS function 2-106 End Matcher function (COBOL) M#PARAMS function 2-106, 2-119 2-110 M#PARAMS function (COBOL on IBM Initialize Matcher function Mainframe) 2-105 Error Codes 3-155 M#RETRVR function 2-121 Initialize Matcher function M#RETRVR function (COBOL on IBM (COBOL) 2-111 Mainframe) 2-107 Match Candidate function M#SORTWN function 2-122 Error Codes 3-155 M#SORTWN function (COBOL on IBM Match Candidate function Mainframe) 2-107 (COBOL) 2-113 M#WMATCH function (COBOL on IBM Match Window function Mainframe) 2-107 Match Candidate (Reference Match) Error Codes 3-156 function Match Window function (COBOL) for COBOL 2-113 2-114 Match Candidate function parameters Number of Reference Matches COBOL on IBM Mainframe 2-113 function Match Possibilities Error Codes 3-156 Record Format 3-96, 3-106, 3-115, Number of Reference Matches 3-121 function (COBOL) 2-115 Match Possibilities Data Area 3-59, 3-149 Number of Reference Suspects record format 3-59, 3-149 function Match Window (Window Match) Function Error Codes 3-157 2-114 Number of Suspect Matches Match Window (Window Match) function function (COBOL) 2-116 for COBOL 2-114 Obtain Reference Match function Matcher Error Codes 3-157 Add Record function Obtain Reference Match function Error Codes 3-153 (COBOL) 2-117 on COBOL 2-107 Obtain Reference Suspect Match Calling from COBOL 2-104 function (COBOL) 2-118 Clear Window function Obtain Reference Suspects Error Codes 3-153 function on COBOL 2-108 Error Codes 3-158

T r i l l i u m S o f t w a r e S y s t e m ™ P r o g r a m m e r ’ s G u i d e , V o l u m e 2 Index I-5

Process Parameters function PR_BEST_ST_TL field 3-19 Error Codes 3-158 PR_BOX_MASK field 3-13 Process Parameters function PR_BOX_NAME field 3-13 (COBOL) 2-119 PR_BOX_NAME_DISPLAY field 3-13 PR_BOX_NBR field 3-13 Reference matching mode 2-104 PR_BOX_TYPE field 3-13 Retrieve Records function PR_CATEGORY field 3-9 (COBOL) 2-121 PR_CITY_LNAME_DIR field 3-21 Sort Window function PR_CITY_NAME field 3-20 Error Codes 3-160 PR_CITY_NAME_DISPLAY field 3-20 Sort Window function (COBOL) PR_CITY_NUMBER field 3-20 2-122 PR_CITY_STATUS field 3-20 Window Matching mode 2-106 PR_COMPLEX1_NAME field 3-14 PR_COMPLEX1_NAME_DISPLAY field 3-14 N PR_COMPLEX1_TYPE field 3-14 Number of Reference Matches function PR_COMPLEX1_TYPE_DISPLAY field 3-14 parameters PR_COMPLEX2_NAME field 3-14 COBOL on IBM Mainframe 2-115 PR_COMPLEX2_NAME_DISPLAY field 3-14 Number of Suspect Matches function PR_COMPLEX2_TYPE field 3-15 parameters PR_COMPLEX2_TYPE_DISPLAY field 3-15 COBOL on IBM Mainframe 2-116 PR_COMPLEX3_NAME field 3-15 PR_COMPLEX3_NAME_DISPLAY field 3-15 O PR_COMPLEX3_TYPE field 3-15 Obtain Reference Match function (C on PR_COMPLEX3_TYPE_DISPLAY field 3-15 UNIX) 2-105 PR_COMPREHENSION field 3-3 Obtain Reference Match function PR_CONFIDENCE field 3-3 parameters PR_COUNTRY_NAME field 3-19 COBOL on IBM Mainframe 2-117 PR_COUNTRY_NAME_DISPLAY field 3-19 Obtain Reference Suspect Match function PR_DWEL1_MASK field 3-16 parameters PR_DWEL1_NAME field 3-16 COBOL on IBM Mainframe 2-118 PR_DWEL1_NAME_DISPLAY field 3-16 output PR_DWEL1_NBR field 3-16 from Customer Data Parser 3-3 PR_DWEL1_TYPE field 3-16 PR_DWEL2_MASK field 3-17 from Investigator 3-2 PR_DWEL2_NAME field 3-17 output tables PR_DWEL2_NAME_DISPLAY field 3-17 from Window Key Generator 3-44 PR_DWEL2_NBR field 3-17 P PR_DWEL2_TYPE field 3-17 PR_DWEL3_MASK field 3-18 PARM-TYPE PR_DWEL3_NAME field 3-18 possible values for 2-120 PR_DWEL3_NAME_DISPLAY field 3-18 PM#CASS function 2-21 PR_DWEL3_NBR field 3-18 PR_BEST_NUMBER field 3-19

Index I-6 Index

PR_DWEL3_TYPE field 3-18 PR_ST_TL field 3-11 PR_GEOCD_A field 3-22 PR_ST_TL_DISPLAY field 3-11 PR_GEOCD_B field 3-22 PR_ST_TYPE1 field 3-11 PR_GEOG_REVIEW_CODES field 3-8 PR_ST_TYPE1_DISPLAY field 3-12 PR_GLOBAL_REVIEW_CODES field 3-9 PR_ST_TYPE2 field 3-12 PR_HSE_MASK field 3-11 PR_ST_TYPE2_DISPLAY field 3-12 PR_HSE_NBR field 3-11 PR_STREET_REVIEW_CODES field 3-7 PR_HSE_NBR_DISPLAY field 3-11 PR_WORLD_ORIGIN field 3-22 PR_HSE_TYPE field 3-11 Process Parameters function parameters PR_LINE_RULES field 3-5 COBOL on IBM Mainframe 2-119 PR_MISC_ADDR field 3-19 PR_MISC_REVIEW_CODES field 3-8 R pr_name_sect 3-27 Reference Match Entry Point Order PR_NAME_TYPES field 3-9 for COBOL 2-105 PR_NEIGH1_NAME field 3-20 reference matches PR_NEIGH1_NAME_DISPLAY field 3-20 on COBOL 2-104 PR_NEIGH2_NAME field 3-20 Required Trillium Software System and PR_NEIGH2_NAME_DISPLAY field 3-20 SAS/C Resources 2-12, 2-21 PR_NUMBER_OF_NAMES field 3-9 PR_ORIG_LINEPAT field 3-3 S PR_POST_OFFICE_CODE field 3-22 Sample COBOL JCL PR_POStal_CODE field 3-21 for calling US Postal Geocoder 2-51 PR_POSTAL_CODE_DIR field 3-21 Sort Window function parameters PR_POSTAL_CODE_MASK field 3-21 COBOL on IBM Mainframe 2-122 PR_POSTAL_CODE_MASK_DIR field 3-21 PR_POSTAL_CODE_TYPE field 3-21 T PR_POSTAL_CODE_TYPE_DIR field 3-22 TG Geocoder parameters PR_PR_ST_DIR field 3-12 COBOL on IBM Mainframe 2-96 PR_PR_ST_DIR_DISPLAY field 3-12 TG Postal Geocoder PR_REV_GROUP field 3-9 Display BaseData Values 3-145 PR_RTE_MASK field 3-13 Error Codes 3-152 PR_RTE_NAME field 3-12 Input and Output Data Layout PR_RTE_NAME_DISPLAY field 3-12 PR_RTE_NBR field 3-12 3-141 PR_RTE_TYPE field 3-13 TG Postal Geocoder Add Mat Function PR_SC_ST_DIR field 3-12 Parameters (COBOL on IBM Mainframe) PR_SC_ST_DIR_DISPLAY field 3-12 2-94 PR_ST_PROV_CTY_NAME field 3-21 Trillium Global Geocoder PR_ST_PROV_CTY_NAME_DISPLAY field Calling from COBOL 2-94 3-21 TG#AMAT function 2-94 PR_ST_PROV_NUMBER field 3-22 TG#MTCI function 2-95

T r i l l i u m S o f t w a r e S y s t e m ™ P r o g r a m m e r ’ s G u i d e , V o l u m e 2 Index I-7

U Display BaseData Values 3-62, UK Geocoder 3-63, 3-147 Calling from COBOL 2-86 Input/Output Record Format 3-46 UK Geocoder Return Data 2-92 Program Return Codes 3-65 UK Postal Geocder US Geocoder (CASS) Input and Output Data Layout PM#CASS function 2-21 3-131 US Interpolated House Number Census UK Postal Geocoder Geocoder Display BaseData Values 3-135 Calling from COBOL 2-54 Error Codes 3-139 HM#MTCI function 2-54 How the UK Geocoder Works 2-91 Input and Output Data Layout Input/Out Record Format 3-131 3-82 US Postal Geocoder Match Possibilities Data Area 3-134 Calling from COBOL 2-17 UM#AMAT function 2-86 Input and output data layout 3-46 UM#MTCI function 2-87 UK Postal Geocoder Add Mat Function Match Possibilities Data Area 3-59 parameters PM#MTCI function 2-17 COBOL on IBM Mainframe 2-86 Return Info Data Area 3-48 UK Postal Geocoder parameters Secondary Return Info Data Area COBOL on IBM Mainframe 2-88 3-53 UK Postal Geocoder Parameters (COBOL US Postal Geocoder parameters on IBM Mainframe) 2-88 COBOL on IBM Mainframe 2-19 US Census Geoders 2-58 US Postal Geocoder Parameters (COBOL US Centroid Census Geocoder on IBM Mainframe) 2-19 Calling from COBOL 2-51 W GM#MTCI function 2-51 Window Key Generator Input data layout 3-69 Error Codes 3-44 Output data layout 3-72 Window Key Generator error codes 3-44 Street Tract Match Section Error Window Key Generator output tables 3-44 Codes 3-80, 3-87 window keys XRef Match Section Error Codes creating, for matching 2-100 3-79 definition of 2-100 US Centroid Census Geocoder parameters COBOL on IBM Mainframe 2-52 X US Centroid Census Geocoder Parameters XML Converter (COBOL on IBM Mainframe) 2-52 Error Codes 3-163 US Geocoder Xpediter considerations 2-6 CASS 2-21

Index