Data Build Manual
Customizing SQL-LOAD Output
Customizing Data Build
099331 Tandem Computers Incorporated 6–17
e. U-OUT-DEMO02-DEM2-DATE2 user exit tests the NULL-VALUE-IND switch
and, if set, NULL-VALUE-REPLACE is moved to the DEM2-DATE2 field in
the output record.
?SECTION U-WS
01 NULL-VALUE-COMPARE-SETUP.
02 FILLER PIC 9(8) COMP VALUE 0.
02 FILLER PIC 9(8) COMP VALUE 0.
02 FILLER PIC 9(8) COMP VALUE 0.
01 NULL-VALUE-COMPARE REDEFINES NULL-VALUE-COMPARE-SETUP PIC X(10).
01 NULL-VALUE-IND PIC 9(4) COMP.
88 NULL-FIELD VALUE 1.
01 NULL-VALUE-REPLACE-SETUP.
02 FILLER PIC 9(4) COMP VALUE 257.
02 FILLER PIC 9(4) COMP VALUE 257.
02 FILLER PIC 9(4) COMP VALUE 257.
02 FILLER PIC 9(4) COMP VALUE 257.
01 NULL-VALUE-REPLACE REDEFINES NULL-VALUE-REPLACE-SETUP PIC X(8).
?SECTION U-PRE-PROCESS
?SECTION U-POST-PROCESS
?SECTION U-IN-DEMO01
...
?SECTION U-IN-DEMO02
...
?SECTION U-IN-DEMO02-DEM2-DATE2
IF DEM2-DATE2 OF IN-DEMO02 = NULL-VALUE-COMPARE
MOVE 1 TO NULL-VALUE-IND
MOVE SPACES TO DEM2-DATE2 OF IN-DEMO02
MOVE 0 TO NULL-VALUE-IND
END-IF.
?SECTION U-OUT-DEMO02-DEM2-DATE2
IF NULL-FIELD
MOVE NULL-VALUE-REPLACE TO DEM2-DATE2-X OF OUT-DEMO02.
?SECTION U-IN-DEMO02-DEM2-DATE3
...
Handling SQL VARCHAR
Data
Data Build loads VARCHAR data at full column width; the original data width is lost.
The following technique will preserve the original data width for SQL-LOAD and
SQL-INSERT.
1. After the BUILD DDL (F2) step, modify the DDL output record definition for each
VARCHAR field as follows:
BEFORE ...
07 columname.
07 ...
AFTER ...
07 columname.
08 LEN PIC S9(4).
08 VAL PIC X(yyy).
07 ...
where yyy is the maximum column width and columname is the name of the field.