Help for ZIPCOL2

PURPOSE

	ZIPCOL2 is used to enter data into an existing IBIS interface file.
Data can be transferred to the interface file from another interface file,
data cards, or both sources. Data is entered by matching keys between the
interface file and the data sources. Pre-sorting of the interface file and
the data sources is required. The size of the interface file is not changed
by operation of ZIPCOL2.

Alphabetic and numeric columns can be mixed in any order for indexing
or data.  The 'alpha keyword is no longer needed.  The alphabetic
fields can be of any length.

The keyword 'NONULL is now added for the case where the receiving 
columns are desired unchanged where a match does not occur.  This
keyword will override any use of NULL or NULSTR keywords.  Also,
dynamic allocation is used for all arrays so the only limit on size
of tables is virtual memory size (exception: number of columns
limited to 200 due to a problem with IBISFileGet).

TAE COMMAND LINE FORMAT

	zipcol2 INP=(A,B) INCOL=(X1,X2,X3,...XK) OUTCOL=(Y1,Y2,Y3,...YK)
		NULL=(C1,C2,...CN) FILE=(D1,D2,D3,...DK,E1,E2,...EN)

	Where A is the IBIS interface file being modified and B is a
secondary input interface file.

EXAMPLE 1

	zipcol2 INP=(INT1,INT2) INCOL=(28,27) OUTCOL=(1,2,3,4)
		FILE=(6,7,8,9,10,11) NULL=(0,0,0,0)

	In this example, columns 6, 7, from INT2 will be used to match
columns 28, 27 from INT1. If a match is made to columns 6,7 of INT2,
then columns 8, 9, 10, 11 from INT2 will be placed in columns 1, 2, 3, 4
of INT1. If no match is found zeros will be placed in columns 1, 2, 3, 4
of INT1.

EXAMPLE 2

	zipcol2 INP=(INT1,INT2) INCOL=(28,27) OUTCOL=(1,2,3,4)
		FILE=(6,7,8,9,10,11) 'NONULL

	In this example, columns 6, 7, from INT2 will be used to match
columns 28, 27 from INT1. If a match is made to columns 6,7 of INT2,
then columns 8, 9, 10, 11 from INT2 will be placed in columns 1, 2, 3, 4
of INT1. If no match is found, the corresponding row of columns
8, 9, 10, 11 will be left at the incoming value.

OPERATION

	ZIPCOL2 operation is as follows. Each key in the first file is checked
against each key in the second. If a match is found, data is transferred from
the second file to the first file. Resultant information is written in an
update mode to the interface file being modified.

Unsorted files are now detected and an error message is written followed
by an abort, since the user must correct the calling procedure.

REVISIONS
  1981-08-25 A. L. Zobrist - Initial version.
  1982-08-19 K. F. Evans - Revision 1.
  1995-03-06 C. R. Schenk (CRI) - Ported to UNIX
  2007-12-29 W. L. Bunch - Switched to USES_ANSI_C AND LIB_CARTO; misc cleanup.
  2016-06-09 W. L. Bunch - Migrated to MIPL.


PARAMETERS:


INP

1. The IBIS interface file being modified. 2. The secondary input interface file.

INCOL

Matching columns in first file

OUTCOL

Columns in first file to receive data from second

NULL

Values to use in numeric columns when no index match

NULSTR

Values to use in alphabetic columns when no index match

FILE

Matching and data columns in second interface file

NULLMODE

'NONULL for no data insertion where there is no match

See Examples:


Cognizant Programmer: