Incorrect comma delimiter executing Fast Unload with COMMA parameter using a hexadecimal value
search cancel

Incorrect comma delimiter executing Fast Unload with COMMA parameter using a hexadecimal value

book

Article ID: 40637

calendar_today

Updated On:

Products

Fast Unload for DB2 for z/OS

Issue/Introduction

While using Fast Unload for Db2 for z/OS (PFU) to unload data in comma delimited format and
using COMMA parameter x'6A' as the delimiter the unloaded data has x'49' instead of the specified x'6A'.

 

Cause

The user was not specifying the correct CCSID for the source system. The customer environment was operating with a Latin character set.

 

Resolution

User initially set CCSID (500,930,932).  Site then adjusted to CCSID (1047,930,932).
This produced the correct x'6A' character in the unloaded data.

IBM CCSID 1047 defines x'6A' as a 'Broken bar'. In the Latin America character set the broken bar is a x'49'.

FASTUNLOAD
DISCARDS 100
DISPLAY-STATUS 10000
CCSID (1047,930,932)
EXCP YES
INPUT-FORMAT TABLE
IO-BUFFERS 50
LOAD-CONTROL NONE
OUTPUT-FORMAT COMMA-DELIMITED
COMMA X'6A'
PART-INDEPENDENCE NO
SHRLEVEL CHANGE
SORTFLAG ALL
SORTSIZE 4M
SORTNUM 8
ESTIMATED-ROWS 7500000
SQL-ACCESS  NONE
SELECT * FROM authid.table;

Sample data unloaded. Hex On display. Note the x'6A' below that displays as a ¦

000001 '99999 '¦'TEST ALL NINES                                    '¦100¦'A'
       7FFFFF4767ECEE4CDD4DCDCE44444444444444444444444444444444444476FFF67C7
       D999990DAD35230133059552000000000000000000000000000000000000DA100AD1D


In the SYSOUT of the job PFU can be seen adjusting the CCSID to the required target CCSID:

PFU0661I - PFU PROCESSING AN EBCDIC DB2 OBJECT
           USING CCSID( 1027,  5035,  4396).

PFU0671I - PFU WILL CONVERT OBJECT DATA TO TARGET
           USING CCSID( 1047,   930,   932).

Additional Information

COMMA—Define a Field Separator

 

CCSID—Specify the CCSIDs for Data Translation

 

OUTPUT-FORMAT—Specify the Data Format and Data Checks: COMMA-DELIMITED