Error codes for potential generation differences

Some error codes indicate cases that might cause potential differences between the Pacbase generation and the Rational® Programming Patterns generation. If you analyze these codes, you can anticipate problems before migrating.

The following error codes indicate potential generation differences:

EC3: Screen whose -CS lines contain multiple uses of the same Segment in display or reception in the same category

Example:

Screen whose -CS lines contain multiple uses of the same Segment in display or reception in the same category.

Segment WQ00 is called twice in display with the code A. Segment BM00 is called twice in the repetitive category with the codes T and L.

Message in the RQ file:
----+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+-
BMSECRCG0003                        EC3MULTIPLE CALL OF SEGMENT IN CATEGORY             WQ00
HF0ECRCG0003                        EC3MULTIPLE CALL OF SEGMENT IN CATEGORY             BM00  R
Column contents:
  • 89-92: Segment of the -CS
  • 95: Category

Errors occur upon the generation.

To correct, you must delete the irrelevant duplicates.

EC5: P line with 99BL, 99IT, 99DV, 99DI, 99DC, preceded by a comment line with an OR- or AN-type comment line

Example:

P line with 99IT, preceded by an OR-type line comment line.

Message in the RQ file:
----+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2----+-
BMSECRBC0000                        EC5DOT NOT GENERATED ON THE PREVIOUS LINE  45DE800                                  AYERRP
Column contents:
  • 80-86: Function, subfunction, and line number
  • 121-126: Macro code

Generation differences occur because Pacbase does not generate a period on line 780, contrary to Rational Programming Patterns.

To correct, you can modify the lines in Pacbase, but with caution. The absence of a period might have generated, in Pacbase, nested IF statements that might be relevant.

EC6: P line with a type *A, *P, or *R, with an erroneous condition in functions 20, 25, 30, 35, 60, or 65

Example:

P line with 10*R and an erroneous condition in function 25.

Message in the RQ file:
----+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2----+-
BMSECRBCTEMA                        EC6WRONG CONDITION FOR FUNCTION *A *P *R   25DI           APR   CGPRGM              10*R Z
Column contents:
  • 80-83: Function and subfunction
  • 95-96: Library of the Macro line, if any
  • 101-106: Macro code, if any
  • 121-124: Level and type of function
  • 125-150: Condition

Generation differences appear.

You must correct in Pacbase, according to the information of chapter Use of Structure Code in the manual Online System Development, at the following address:

http://www-01.ibm.com/support/docview.wss?rs=37&uid=swg27005477

EC8: Screen subfunction whose first valid line has a level 00 and whose operator is different from SUP and COA

Example:

Subfunction 25 whose first valid line has a level 00 without any operator.

Message in the RQ file:
----+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----
BMSECRBCHF01                        EC8INVALID FIRST LINE FOR THE FUNCTION     01BB000
Column contents:
  • 80-86: Function, subfunction, and line number

Generation differences appear.

To correct, you must add an operator N, SUP, or COA, depending on the context.

ECA: *B-type P line with an erroneous condition

Example:

25*B P line with a ZZZZ condition.

Message in the RQ file:
----+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2----+---
HF0ECRCG000B                        ECAWRONG CONDITION FOR *B                  ASDD           HF0   CGMACO              25*BZZZZ
Column contents:
  • 80-83: Function and subfunction
  • 95-96: Library of the Macro line, if any
  • 101-106: Macro code, if any
  • 121-124: Level and type of function
  • 125-150: Condition

Generation differences appear.

You must correct in Pacbase, according to the information of chapter Inserting and replacing automatic subfunctions in the manual Business Logic & TUI Clients, at the following address:

http://www-01.ibm.com/support/docview.wss?rs=37&uid=swg27005477

ECB: Screen P line that contains spaces only

Example:

2 P lines in a Screen. These lines contain spaces only.

Messages in the RQ file:
----+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1
BMSECRCG9002                        ECBP LINE WITH ONLY SPACE                  AABB111
BMSECRCG9002                        ECBP LINE WITH ONLY SPACE                  AAFB100              CG999A
Column contents:
  • 80-86: Function, subfunction, and line number
  • 100-105: Macro

Generation differences appear, especially in the generation of the period.

To correct, you must remove the line with the spaces in Pacbase.

ET1: Report with a duplicate label

Example:

In a Report layout, two lines have the same label.

Message in the RQ file:
----+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----
BMSETANPO                           ET1REPORT WITH DUPLICATE LABEL                          15
Column contents:
  • 93-95: Label number

Warnings appear in .Rational Programming Patterns.

You must correct in Pacbase by removing the label number of one of the duplicate lines.

ET4: Unknown label called in a category of the Report

Example:

In the Report description, call of a label that does not exist.

Message in the RQ file:
----+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----
BMSETAMBO                           ET4NON EXISTING LABEL CALLED IN CATEGORY     DD100      08
Column contents:
  • 82-83: Category code
  • 84-86: Line number
  • 93-94: Number of the unknown label

Generation differences appear.

You must correct in Pacbase by removing the label call on the line.

ET5: Unknown structure called in a category of the Report

Example:

In the Report description, call to a structure that does not exist.

Message in the RQ file:
----+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----
APRETAPBA                           ET5NON EXISTING STRUCTURE CALLED IN CATEG    CB130      03
Column contents:
  • 82-83: Category code
  • 84-86: Line number
  • 93-94: Number of the unknown structure

Generation differences appear.

You must correct in Pacbase by removing the label call on the line.

ET6: Structure that calls the same Data Elements in the same position

Example:

In the Report -CE, call of two Data Elements in the same structure, with the same value for the Data Element.

Messages in the RQ file:
----+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2----+----3--
BMSETACG2                           ET6STRUCT CALLING DATA ELEM ON SAME POS.     01111 X01    0 CSSSSSSSSSSXXX          YYYYYYYYYYYYYYYYYYYYYYYYYYYYYY
HFYETACG2                           ET6STRUCT CALLING DATA ELEM ON SAME POS.     01111 X03    0 CSSSSSSSSSSXXX          YYYYYYYYYYYYYYYYYYYYYYYYYYYYYY
Column contents:
  • 82-83: Code of the category
  • 84-86: Line number
  • 88-93: Data Element code
  • 95: Line number of the Data Element
  • 97: Type of working area (-W)
  • 98-110: Code of the source (FFNNDELCODIND)
  • 121-150: Condition

Generation differences appear.

You must correct in Pacbase by removing the duplicates, by keeping the call of the most relevant Data Element, and by taking the functions and conditions into account.

ET7: Missing label in the labels sequence of the Report

Example:

In the Report layout, call of the first label with a label number 05, whereas the preceding labels are not indicated.

Messages in the RQ file:
----+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----
HF0ETAANC                           ET7MISSING LABEL IN SEQUENCE                            01
HF0ETAANC                           ET7MISSING LABEL IN SEQUENCE                            02
HF0ETAANC                           ET7MISSING LABEL IN SEQUENCE                            03
HF0ETAANC                           ET7MISSING LABEL IN SEQUENCE                            04
Column contents:
  • 93-94: Number of the missing label

Generation errors occur.

You must correct in Pacbase. Renumber the labels to correct the sequence gap and adapt the labels calls in the categories.

NV1: Function level not compatible with the operator

Example:

P line with a level 10BL and an EXQ operator.

Message in the RQ file:
----+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+-
BMSPGMAEBDIN                        NV1FUNC.LEVEL NOT COMPATIBLE WITH OPERATOR 99RB100  EXQ   10
Column contents:
  • 80-86: Function, subfunction, and line number
  • 89-91: Operator
  • 95-96: Level

Generation problems can occur.

To correct, you must change the operator or the level, or both, in Pacbase.

PG1: Duplicate P line with an N type

Example:

Two consecutive P lines with the same N operator and the same 10BL level.

Messages in the RQ file:
----+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+
APRPGMCGNDVP                        PG1DUPLICATE P LINE WITH N TYPE            05BB000
APRPGMCGNDVP                        PG1DUPLICATE P LINE WITH N TYPE            05BB010                       CGMAC0
Column contents:
  • 80-86: Function, subfunction, and line number
  • 100-105: Macro

Generation problems can occur.

You must correct in Pacbase. You must change the operator or the level, or both, or remove the duplicate line.

MP4: EL type function whose level is not compatible with a preceding CO, DU, or DW type function

Example:

EL-type function that is preceded by a DW-type function with an incompatible level.

In this example, the condition levels 10DW and 10EL of functions FF10 and FF14 are not compatible.

Message in the RQ file:
----+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8---
HFYECRCG0003                        MP4CO DU DW FOLLOWED BY ELSE NOT COMPATIBLEFF14
Column contents:
  • 80-83: Function and subfunction

Generation differences appear.

To correct, you must modify in Pacbase. For example, you can change the 10EL from FF14 into 10IT COND01 NOT = 'A'.

SG1: Conflict of Segment naming in -CD or -W
If a Segment is renamed in the -CD or -W and if the newly renamed Segment exists, the generation is not identical in Pacbase and Rational Programming Patterns. Pacbase sorts the Data elements according to the line number in the Segment, whereas Rational Programming Patterns sorts according to the Segment code. Generation differences can appear. To prevent them, you must not make different Segments point to the same target Segment. If a Segment is renamed as 00, you must then make sure that the line numbers of Segment 00 are all lower than the line numbers of the Segment that is renamed as 00. The following four examples show the possible cases.

Example 1: Only one -CD line is involved.

In the -CD, call of the MB Data Structure with the Program code DC, with a selection *01=00.

This example shows a -CD where the MB Data Structure is called with the Program code DC with a selection *01=00. The MB00 Segment exists, so there will be a conflict with MB01.

Message in the RQ file:
----+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+---
BMSPGMCGNDVP                        SG1SEGMENT RENAME IN -CD OR -W             DC00     MB00  MB01
Column contents:
  • 80-83: Segment code in the Program
  • 89-92: Renamed called Segment code
  • 95-98: Called Segment code

Example 2: Only one -W line is involved.

In the -W, call of the AC Data Structure with the HH Program code, with a selection *01=00.

This example shows a -W where the AC Data Structure is called with the Program code HH with a selection *01=00. The AC00 Segment exists, so there will be a conflict with AC01.

Message in the RQ file:
----+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+
HF0PGMCGPRGA                        SG1SEGMENT RENAME IN -CD OR -W             HH00     AC00  AC01  AA110
Column contents:
  • 80-83: Segment code in the Program
  • 89-92: Renamed called Segment code
  • 95-98: Called Segment code
  • 101-105: Line number of the work area line

Example 3: Two -W lines are involved.

In the XX100 work area line, call of the BC Data Structure with the BC Program code, with a selection 10.

In the ZZ100 work area line, call of the MB Data Structure with the BC Program code, with a selection 1020.

This example first shows a -W where a BC Data Structure is called in the XX100 work area with the BC Program code and a selection 10. It then shows the call, in the ZZ100 work area, of the MB Data Structure with the BC Program code, with a selection 1020. The same BC Program code is used to call two different Data Structures that point to the same selection (10).

Message in the RQ file:
----+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----
BMSPGMCGPRGA                        SG1SEGMENT RENAME IN -CD OR -W             BC10     MB10  BC10  ZZ100    XX100
Column contents:
  • 80-83: Segment code in the Program
  • 89-92: Renamed called Segment code
  • 95-98: Called Segment code
  • 101-105: Line number of the work area line
  • 110-114: Number of the second work area line

Example 4: A -CD and a -W are involved.

In the -CD, call of the MB Data Structure with the Program code HH, with a selection *20=00.

In the AA110 work area line, call of the MB Data Structure with the HH Program code, with a selection 01=00.

This example first shows a -CD where an MB Data Structure is called with the HH Program code and a selection *20=00. It then shows the call, in the AA110 work area, of the MB Data Structure with the HH Program code, with a selection 01=00. The same HH Program code is used to call two different Data Structures that point to the same selection (00).

Message in the RQ file:
----+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+
HF0PGMCGPRGA                        SG1SEGMENT RENAME IN -CD OR -W             HH00     AC00  AC01  AA110
Column contents:
  • 80-83: Segment code in the Program
  • 89-92: Renamed called Segment code
  • 95-98: Called Segment code
  • 101-105: Line number of the work area line
SG4: Unknown Segment called in -CD or -W

Example:

An unknown Segment is called in the -W.

Message in the RQ file:
----+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9--
T0VPGME23543                        SG4NON EXISTING SEGMENT CALL IN -CD OR -W  LE10     BC10
Column contents:
  • 80-83: Segment code in the Program
  • 89-92: Unknown Segment code

Generation differences appear.

To correct, you must indicate an existing Segment code and remove the call.

SG5: Wrong selection on a -CD continuation line

Example:

There are no arguments on the first line of the -CD for the Segment.

In this example, the selection of arguments is missing on the first -CD line for the Segment.

Message in the RQ file:
----+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1--
BMSPGMCGPRGN                        SG5WRONG SELECTION ON SUITE LINE IN -CD           D0AA              25*BZZZZ
Column contents:
  • 87-90: -CD line identifier

Generation errors occur.

You must correct in Pacbase, according to the information of subchapter Call of Data Structures in the manual Batch Applications, at the following address:

http://www-01.ibm.com/support/docview.wss?rs=37&uid=swg27005477

VAK: Type of code to generate or Block type that is not defined in the Pacbase access key targets
This error is indicated on Database Blocks, Screens, or Programs that are not typed as Macros.

Example 1: Database Block

AR-type Block in the Block Definition

Message in the RQ file:
----+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8--
BMSDBDARHF00                        VAKTYPE CODE TO GENERATE NOT DEFINED IN KEY AR
Column contents:
  • 81: Database Block type

The Database Block is not generated.

To correct, you must indicate a value that is defined in the access key targets.

Example 2: Batch Program

Q type of code to generate for the Program in the Program Definition.

Message in the RQ file:
----+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8--
T0FPGMTRTMSG                        VAKTYPE CODE TO GENERATE NOT DEFINED IN KEY Q
Column contents:
  • 81: Type of code to generate

The Program is not generated.

To correct, you must indicate a value that is defined in the access key targets.

WK1: Macro work area line that declares a table whose name contains a $ character

Example:

In -W, call of a $3CCCC table.

Message in the RQ file:
----+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----
BMSPGMCGMAQ1                        WK1PRESENCE $ IN TABLE AREA OF WSS MACRO     AA110   $3CCC
Column contents:
  • 82-86: Line number in the work areas
  • 90-94: Code of the erroneous table

Generation errors occur. The table index is wrong.

You must correct the relevant Macros in Rational Programming Patterns or in the migration inputs.


Feedback