Data Build Manual
Customizing SQL-LOAD Output
Customizing Data Build
6–12 099331 Tandem Computers Incorporated
SQLMSGS (supplied by Data Build to pass SQLCI messages to the conversion
program)
SQLCI
The conversion program, ZZPROGMX is started under a separate TACL functionally
like the following command:
RUN ZZPROGMX /NAME $ZBLD, NOWAIT/
The conversion program has the following characteristics:
Is a named process, $ZBLD. It must be started before SQLCI and SQLMSGS are
started.
Reads the input data (disk or tape).
Converts the input data and formats an output record as required by SQLCI
LOAD.
Blocks the output records to the largest multiple not greater than 32000 bytes.
Sends the output block in an IPC message to the SQLUTIL process.
Prepares the next block of data while SQLUTIL is processing.
The following is an example of a ZZLOAD file constructed during the CREATE (F4)
step and used in the RUN (F5) step:
RUN $
vol
.ZDATABLD.SQLMSGS/NAME $ZBLDE, NOWAIT/ TABLE1
SQLCI/OUT $S.#ZZLOAD, OUT $ZBLDE/LOAD $ZBLD,=TABLE1,SORTED,RECIN 0051, &
BLOCKIN 31977,SOURCEREC OUT-TABLE1;EXIT;
The SQLMSGS process is named $ZBLDE; this name must match the OUT process
name in the SQLCI command. SQLMSGS receives all SQLCI output messages and
writes them to the following:
Spooler location #LOAD
Work file TABLE1 on the project subvolume, where TABLE1 is the 01 level record
name from the Source Record Descriptions file. The COBOL85 conversion
program object file, ZZPROGMX, reads TABLE1 and includes the SQL messages
in its output messages.
SQLCI LOAD starts three SQL processes:
SQLCI
SQLUTIL
SQLCAT
Most of the action occurs with the SQLUTIL process. SQLUTIL receives the IPC
message from the conversion program, validates the data, prepares the SQL rows, and
sends them to be loaded to disk.