The following use cases illustrate some of the ways that you can use DB2 data maps.
Packed Decimal Data Stored in Character Columns
Some DB2 tables use a single DB2 column to store an array of fields in a format that might not be consistent with the column type. For example, a VARCHAR column might contain multiple packed decimal fields.
To solve this problem, you can create a data map by importing record definitions, change the problem VARCHAR column to a GROUP field, and add an array of child packed decimal fields. The numeric data can then be columnized and loaded into numeric columns on the target.
Code Page Dependent on Values Within the Data
Your company amalgamates data from multiple international sites into a single DB2 subsystem. Although the DB2 catalog indicates that the data is stored in a single code page, in reality the data is stored in multiple code pages, with the code page being dependent on values within the data. DB2 conversion is turned off because the updating applications set the client and server CCSIDs to the same value.
To manage code pages correctly, you can create a data map by importing record definitions. Then add a record ID condition and set the code page as required. You can set the code page either once in the properties of the data map or multiple times, once for each character field. Repeat the process of adding a record ID condition and setting the code page for each type of code page.
Expansion Routine Called Through a User-Defined Function
Instead of using the DB2 compressed table space facility, your company stores data using an in-house compression and encryption routine.
To solve the problem of expanding and decrypting the data, you can create a data map by importing record definitions, add user-defined functions to expand the problem DB2 columns, and include the user-defined columns in the PowerCenter mapping.
Character Data that Contains Hexadecimal '0' Values
PowerCenter workflows truncate character data that they read from a DB2 relational source at the first hexadecimal '0' value. In certain cases you want the workflow to preserve hexadecimal '0' values and to write the entire column string to the target.
To accomplish this goal, you can define a DB2 data map by importing record definitions. Then perform the following actions:
Specify
PreserveLowValues=Yes
in the
Custom Properties
field of the
Config Object
tab in the Powercenter Workflow Manager.
Specify LOWVALUES=Y in the DBMOVER configuration file on the Integration Service machine.