G

 

DPS V5.1.1


Supported Platforms:

OS/390, VSE

Supported ADABAS Versions:

5.x, 6.x, 7.x, 8.x

Current Fix Level:

K

Current Zap Level:


--
Batch, On-line, or Both:

Batch

Current Version:

5.1.1.k

Currently, no Zaps are necessary for DPS V5.1.1.

Fixes

FIX EXPLANATION

A

COLACLZ - COLACLZ has been changed to correctly observe COLSCALE. In the case of a column value having less digits after removing leading zeros than the number of digits to the right of the decimal point, a change has been made to place 1 zero to the left of the decimal point and the correct number of digits to the right of the decimal point. Reference #1-6406

FLDACLZ - FLDACLZ has been changed to correctly observe COLSCALE. In the case of a field value having less digits after removing leading zeros than the number of digits to the right of the decimal point, a change has been made to place 1 zero to the left of the decimal point and the correct number of digits to the right of the decimal point. Reference #1-6406

FLDASUPR - FLDASUPR will now look at a new parameter (the last parameter in the field parameter list) to determine if the field value is null in adabas. Reference #1-6420

When mapping a field ETR to a column with NULL=NEVER defined, sometimes produced column values inconsistent with V421. Reference #1-6420

B

ACTALODD - Allow the column delimiter to be a variable length number of characters. Reference #1-5157

ACTALODD - Add a new variable length number of characters to be an end of line delimiter. Reference #1-5461

ACTALODD - Add a close call to close the DDIMAGE file. ACTALODF WTOs and I/O functions are now operating system independent. ACTALOD2 Reference #1-6684

ACTALODF - COLSCALE does not work properly in the case of a null column value. Reference #1-7027

ACTAVBM - When fields mapped to VBM_VALUE columns are null suppressed and contain nulls, ACTAVBM may incorrectly identify transactions as meeting the criteria specified in the VBMPARM file, causing DPS output to be incorrect. This correction is for an update with either the before image or after image containing a null value. Reference #1-6698

COLADAT8 - COLADAT8 incorrectly allowed a day value of 00. Reference #1-6613

COLANVAL - New column ETR COLANVAL with similar functionality to FLDANVAL to validate numeric data or set to null. Reference #1-7146

COLATBL - The parameter NOTFOUND can now be set to a value of 3, FLDATBL which will set a value to null in the case of a not found condition. The message frequency (&MESSAGE) for a not found condition can now be set to never, always, or 1st time (default is 1st time). Reference #1-6743

FLDAYCMP - New field ETR that will convert 4-byte year complement to 4-byte year. Reference #1-6741

There may be missing updates when an MU in a PE is denormalized and concatenated in a PE row. Reference #1-6471

DPSGETC does not return column information on a F (first) call. A new parameter was added as the last parameter in the list for Return Order. The possible values are I, for CSQL order (DPS interal), or F, for FTTE order (I is the default). FTTE order should always be specified if DPSGETC is called from one of the ACTALODx action ETRs. Reference #1-6492

Checkpoint x'41' AOS/DBS CHANGE FIELD LENGTH should not assume a file list, only the first file number in the checkpoint should be evaluated. Reference #1-6505

The DPSSPLIT JAVA version has been enhanced to allow the input of two "input file" file names: MAT file followed by its related CTL file, with the two names delimited by a semi-colon. Split processing will be performed on both files, and any "<FILE-NAME>" instances found in the CTL file will be replaced with the full path/file-name of the corresponding MAT file. (This functionality only applies only applies to CTL files targeting DB2-UDB [non-mainframe DB2].) Refer to the DPSSPLIT usage instructions for details. Reference #1-6607

For DB2AIX (DB2 UDB or DB2 non-mainframe) only - add NOCHARDEL after the COLDEL0X09 value in the CTL statement is there has been no value specified for CHARDELIMITER in the DDPARML file. Reference #1-6608

For DB2AIX (DB2 UDB or DB2 non-mainframe) only - add 1 header record to the CTL file for each table in the CTL file. This will allow sites to utilize the new "include table name in name of output file" option in DPSSPLIT (Java version). Reference #1-6614

For DB2AIX (DB2 UDB or DB2 non-mainframe) only - add a delimiter in the CTL file that contains CTLxxx ; after the last column for each table. Reference #1-6631

Duplicate column order numbers may be generated in the CTL file. Reference #1-6659

Rows were incorrectly generated when Primary Key(PKEY) columns contained null values. This fix prevents a row from being generated if any portion of the PKEY is null. Reference #1-6672

If a specific MU or PE occurrence is mapped to every row of a child table, DPS incorrectly generates an update only to the row that matched the occurrence number. This fix will cause an update to be generated for every row, if a specific occurrence was modified and is mapped to that row. Reference #1-6677

DPSSPLIT JAVA version has been enhanced to provide a diagnostic mode to aid in the identification of corrupt and/or dirty data issues. Refer to the DPSSPLIT usage instructions for the -d option. Reference #1-6679

Make a close call to the ACTALODx modules to close the DDIMAGE file. Reference #1-6684

If column suppress is set to yes, the column count was incorrectly incremented on the method statement (DB2 UDB only) Reference #1-6706

KEEPBLANKS has been added as a new global parameter in the DDPARML file. KEEPBLANKS=YES will cause DB2AIX (DB2 UDB or DB2 non-mainframe) to place KEEPBLANKS on the LOAD statement in the CTL file. Reference #1-6751

The SQL Server BCP version was hardcoded as 6.0 in the CTL statements. RDBVER is a new global parameter that can be specified in the DDPARML to represent the SQL Server version number. DPS will set the BCP version in the CTL file based on the RDBVER value. If no RDBVER value is specified, 6.0 will be the default. Reference #1-6772

A S0C4 abend may occur during a materialization extract or materialization run that is processing expanded file components when there were many files included in the run. Reference #1-6776

A S0C4 abend may occur when generating a date mask parameter as part of the SQL statement (Oracle only) Reference #1-6848

The column sequence number in the CTL statement is incorrectly set if multiple FTTE statements are defining a single column (SQL Server and SYSBASE only). Reference #1-6865

An LTR00166 message has been added to DPS. This message will display if invalid numeric data is encountered in a field defined to ADABAS as packed or unpacked. This message will display the DBID, FNR, ISN, and 2-digit field name containing the invalid ADABAS data before encountering a S0C7 abend. Reference #1-6895

A diagnostic execution of DPS Materialization or Propagation is now available. The DIAGNOSTIC mode will analyze all packed or unpacked fields that are mapped for invalid numeric data. If invalid numeric data is encountered, an LTR00166 message will be displayed for each invalid numeric value and the job will end with an RC 8. When DPS is run in DIAGNOSTIC mode no CTL, MAT,SQLOUT or DDIMAGE output is created. Valid diagnostic mode runtime parameters are: MATERIALIZATION DIAGNOSTIC, MATERIALIZATION TRANS DIAGNOSTIC, PROPAGATION DIAGNOSTIC, and PROPAGATION TRANS DIAGNOSTIC. Reference #1-6895

The DPSSPLIT.java module has been enhanced to provide significant performance improvements. This is known as the 9/15/08 build file. Reference #1-6914 An IEC143I 213-17 abend may occur when processing an input file with a large block interface and a file defined with more than 65535 tracks on 1 volume. Reference #1-7077
C

Update transactions are generated for a column mapped to the special value mappings of ADADATIM, ADATIME, ADADATE, or ADATIMDA, when no other column values have been modified for the row. These updates are only detected when the before image and after image are located in different PLOG blocks. Reference #1-7248

Duplicate transactions occur in tables with denormalized repeating columns (i.e. a column mapped with CONCAT='Y' that is NOT an MU within a PE). Reference #1-7253

A customer written ETR encounters a S0C4 abend when using DPSGETC. Reference #1-7254

D

ACTALODD - Corrected problem with end of line delimiter. Reference #1-7384

When using ACTALODD and specifying an end of line delimiter added the end of line delimiter at the end of all lines with the table name. Reference #1-7778

The length calculation for the hex column delimiter and the hex end of delimiter was incorrect. Reference #1-7702

Correctly set special mapping TRANTYPE column value if OPTIMIZE=NO. Reference #1-7721

ACTALODF - Correctly set special mapping TRANTYPE column value if OPTIMIZE=NO. Reference #1-7721

ACTALOD2 - Correctly set special mapping TRANTYPE column value if OPTIMIZE=NO. Reference #1-7721

ACTANDEL - New Action ETR for use when the RDBMS utilizes the CASCADE on Delete feature. This routine will suppress deletes for child tables that originate from an ADABAS delete. Only child tables with an entry in the CHILDTBL dataset will have deletes suppressed. All deletes for child tables that originate from an ADABAS update will be processed. A new parameter was added as the last parameter passed to an action ETR. This indicates what type of ADABAS transaction the ROW originated from. Reference #1-7479

Improved the handling of ADABAS backed-out transactions. Reference #1-7306

Modifications were made to maclib members and programs for support of the new ACTANDEL action ETR. Reference #1-7479

An Adabas RC 53 may be encountered when AUTOFDT, CHECKFDT, or SHOWFDT is specified. The record buffer size used for Adabas calls has been increased to avoid this error. Reference #1-7530

DPS generates updates with empty set clauses if the only column that changed is a column that is suppressed from the table using COLSUPPRESS=YES. This correction will prevent an update from being generated if this condition exists. Reference #1-7547

A SOC6 abend may occur in EXTRPLOG when transactions on the RESTARTI file are involved in a backed-out transaction. Reference #1-7578, #1-7624

A SOC3 abend may occur in ACTALODD during Materialization. Reference #1-7672

A SOC6 abend may occur in DPSYNC when a x'03' checkpoint is encountered. Reference #1-7694

Correctly set special mapping TRANTYPE column value even if no ACTALODx action ETR is mapped. Make change to always include TRANTYPE column in SET CLAUSE on update statements. Reference #1-7721

A SOC4 abend may occur in DPSTRMAT when RDBMS=TERADATA and a database name, table name or column name is exactly 30 bytes in length Reference #1-7756

A SOC6 abend may occur when processing a partial backout transaction. DPS has been modified to permit a site to restart DPS/DPSync while Treehouse support investigates the cause of the S0C6 abend. Details on how to execute the restart will be provided by Treehouse personnel as needed. Reference #1-7835

An APC019 error is encountered in APC when processing an expanded file defined with the EXP parameter in the DDPARM file. Reference #1-7887

Support for ADAv82. Note that DPS does not support spanned block records. Reference #1-7894
E

ACTALODD - Properly handle 2-byte column and character delimiters. Reference #1-9058

ACTALOD2 - Properly handle 2-byte column and character delimiters. Reference #1-9058

COLADAT8 - Made z\OS and VSE operating system independent. Reference #1-8329

COLANATT - Added validation and substitution through user modifiable variables. As delivered, it will behave as it previously did. A customer can choose to alter the behavior if an input value is an invalid date/time value. The options are to leave the value as is, set to null, set to current date/time or set to a user defined date/time. Reference #1-9182

COLAPACK - Made z\OS and VSE operating system independent. Reference #1-8329

FLDAISOT - Added validation and substitution through user modifiable variables. As delivered, it will behave as it previously did. A customer can choose to alter the behavior if an input value is an invalid date/time value. The options are to leave the value as is, set to null, set to current date/time or set to a user defined date/time. Reference #1-9182

FLDANATS - Made z\OS and VSE operating system independent. Reference #1-8329

FLDANATT - Added validation and substitution through user modifiable variables. As delivered, it will behave as it previously did. A customer can choose to alter the behavior if an input value is an invalid date/time value. The options are to leave the value as is, set to null, set to current date/time or set to a user defined date/time. Reference #1-9182

FLDAPACK - Made z\OS, VSE and BS2000 operating system independent. Reference #1-8329, #1-8579

FLDAUBIN - Made z\OS and VSE operating system independent. Reference #1-8329

FLDAYCMP - Made z\OS and VSE operating system independent. Reference #1-8329

An SOC6 abend may occur when processing backed out transactions. Reference #1-7999, #1-8082, #1-8208, #1-8303, #1-8679

Support for Oracle datatype TIMESTAMP. Reference #1-8110, #1-8331

Increase the maximum occurrence of MU and PE fields to 999 (previously the limit was 191) Reference #1-8112

The special value mapping of FNR is incorrectly set to the anchor file number when using expanded files. This fix will set the value to the actual Adabas file number. Reference #1-8310

Correct the opening of a VB file in the the z\OS I/O modules Reference #1-8549

A new optional zap, P18566.zap, is available for customers that want ADADATE/ADATIME/ADADATIM/ADATIMDA set to the date of the ADASAV when running DPS materialization. P18566.zap replaces optional zap 1-1756. Reference #1-8566

COBOL field parameter list FLDCPLST is missing a period. Reference #1-8720

Properly handle Char columns in the CTL file and no longer trim trailing blanks in the MAT file for DB2. Reference #1-9159

DDECHO functionality does not work when running in a VSE environment. Changes were made to instruct DPS if a SYS006 statement is present in the VSE JCL write DDPARMx statements to SYS006, else write DDPARMx statements to SYS005. Reference #1-9164

Processing expanded files under Adabas v8.2 causes an EXTE0008 error when running tRelational GENDPS or when the CHECKEXP parameter is included in a DPS run. Reference #1-9205
F

Missing or incorrect transactions may be encountered if a RESTARTI input file contains at least 1 PLOG image flagged as backed out. Reference #1-9535

Missing or incorrect transactions may be encountered when a PLOG block contains a record from a spanned block file and a record from a non-spanned block file(if the non-spanned block file is a file processed by DPS). Reference #1-9553

A SOC4 abend may occur during a Materialization run with a target RDBMS of DB2 specified. Reference #1-9673

G

NOTE: Changes in this fix level require that DCB information NOT be
specified on any input file used in DPS runs. Sites that currently
have DCB information on DPS Input files, should remove that DCB
information. Failure to do so will cause inconsistent and possibly
incorrect results from the DPS run.

FLDACZD - added support for BS2000. Reference #1-9836

DPSSPLIT - 300 table limit removed and modified to do the I/O above
the 31 bit line. Reference #1-9893

An S213-17 abend occurs when opening INASSO01 during propagation of an Adabas Expanded File with CHECKEXP option. DPS has been updated to support associator files with large block sizes. Reference #1-9987

Propagation may end with an RC=1000 if the target RDBMS is TERADATA and no PKEY column is mapped for a table. Reference #2-4255

If AUTOFDT and SHOWFDT are defined in the DDPARM, the FDT listing does not report the first FDT information immediately after the FILE=xx,DBID=xx information. Reference #2-4259

For Oracle only, if a character delimiter is defined, include an OPTIONALLY ENCLOSED BY 'chardelimiter' statement in the CTL file for each character or varchar column. Reference #2-4330

If a PLOG block contains only 1 record, which is a spanned block record for a file not being processed by DPS, DPS may place a duplicate record in the WORKPOOL. Reference #2-4437

In a Propagation or Propagation Extract run, the Session number is missing in all but the first message. Reference #2-5698

H

ACTALODD - Changes to allow for a VSE environment to properly

ACTALODF getmain a record for DDIMAGE/SYS030 after the file is opened.

ACTALOD2 Also insures the record is the correct length.

Reference #2-5852

ACTAVBM - Modifications to function in z\OS VSE environments.

FLDADAT9

Reference #2-5659

COLACAST - New Column ETR that will return the occurrence number for an

MU or PE. This ETR can be mapped to a column derived from

a MU or PE. The mapped column should also be mapped

with CONCAT=Y.

Reference #2-9970

COLACNP - Expand the max length of the replacement column value from

2000 bytes to 16,500 bytes.

Reference #2-5873

COLAMAX - Correct recognition of an LB field when parsing a

COLASUPR - compressed ADASAV/PLOG image.

DPS won't include this value in any RDBMS column value.

Reference #2-5878

COLANATT - Date values off by one day when the value is

FLDAISOT 01/13/1900 17:00:00.

FLDANATT

Reference #2-5680

FLDANAT2 - New Field ETR that translates an 8-byte binary Natural timestamp

field (STCK) to a 26 byte value, including 6 positions

of microseconds that looks like:

YYYY-MM-DD HH:MM:SS:ZZZZZ - if SQLSERVER or SYBASE

YYYY-MM-DD HH.MM.SS.ZZZZZ - if Oracle

YYYY-MM-DD-HH.MM.SS.ZZZZZ - all others get ISO Standard

Reference #2-5664

* DPSSPLIT on the mainframe has been changed to do I/O above the line and assembled AMODE 31 RMODE ANY.

Reference #1-9893

* SELECT processing was modified for 2 issues:

1. SELECT of a specific occurrence higher than 1 is incorrect if a previous occurrence of the specified elementary field was null.

2. SELECT of a binary value with an equal condition

Reference #2-5876, #3-1143

* An oC3 abend is encountered in LTRUPDT during propagation of a file that contains a LB field.

DPS will recongize the LB field when parsing a compressed ADASAV/PLOG image, but not include this value in any RDBMS column value.

Reference #2-5878

* DPSv511 fix G forces the DCB=(RECFM=VB,LRECL=32756,BLKSIZE=32760) on output files RESTARTO/DDEXTRM/DDEXTRP. If these output files are read into a subsequent DPS run as input files (RESTARTI/DDEXTRL) and the DCB information is specified in the JCL and the DCB is NOT DCB=(RECFM=VB,LRECL=32756,BLKSIZE=32760), DPS will ignore the error and the input file and process with RC 0.

DPS v511 fix H will no longer ignore the error and will issue a S001 abend due to an IEC020I 001-4 error.

It is STRONGLY recommended that DCB information not be coded on the RESTARTI/DDEXTRL input files. If sites require the DCB to be specified, it should be DCB=(RECFM=VB,LRECL=32756,BLKSIZE=32760).

Reference #2-5921

* A SOC4 abend was encountered if a COBOL Action ETR with AMODE=24 is used.

DPS will now set AMODE=31 immediately after the call to the Action ETR.

Reference #2-5983

* A RC13 is encountered running Materialization with DPS v511 fix G.

Reference #2-7110

* ADAv83 compatibility.

Reference #2-7480, #3-1651, #3-1689

* For Oracle, if a column values exceeds 2499 characters (the longest record allowed), concatenate and split the column value on multiple lines.

Reference #3-1241

* EXT00020--SEQUENCE ERROR DETECTED after work pool reset encountered when running DPS V511 with DPSync v311

Reference #3-1738

J

* DPS v511 fix H does not correctly process complex Select statements. Specifying multiple Select statements for the same file results in DPS ignoring all but the first Select statement.

Reference #32092

* Adabas v8.4 compatibility

Reference #32187

K

* S213-17 error with CHECKEXP specified for an expanded file if the associator file has a large block size.

Reference #32363

* DPS v511 fix J does not correctly process SELECT statements with NE operator when the column values is null.

Reference #32717, #32727