Article ID: 249960
Article Last Modified on 11/26/2003
APPLIES TO
- Microsoft SNA Server 4.0
- Microsoft SNA Server 4.0 Service Pack 1
- Microsoft SNA Server 4.0 Service Pack 2
- Microsoft SNA Server 4.0 Service Pack 3
- Microsoft COM Transaction Integrator for CICS and IMS 1.0
- Microsoft COM Transaction Integrator for CICS and IMS 1.0 SP1
- Microsoft COM Transaction Integrator for CICS and IMS 4.0 SP2
- Microsoft COM Transaction Integrator for CICS and IMS 4.0 SP3
This article was previously published under Q249960
SYMPTOMS
When you import COBOL code by using the COBOL Wizard, COBOL definitions with multiple FILLER fields do not import properly in certain situations. (See the "More Information" section of this article for examples) Developers want to be able to download existing COBOL definitions from the mainframe and change the names of fields that are not needed to FILLER. This allows the client program to access only relevant data elements. By importing this modified COBOL code, the Component Builder calculates the total number of bytes that are passed, because many of the irrelevant fields may be COBOL data type COMP or COMP-3.
RESOLUTION
To resolve this problem, obtain the latest service pack for SNA Server 4.0. For additional information, click the following article number to view the article in the Microsoft Knowledge Base:
215838 How to Obtain the Latest SNA Server Version 4.0 Service Pack
STATUS
Microsoft has confirmed that this is a problem in Microsoft SNA Server version 4.0.
This problem was first corrected in SNA Server 4.0 Service Pack 4.
MORE INFORMATION
The following COBOL definition does not import properly. This problem occurs because the FILLER field at the end of a table is followed by another FILLER field, and the redefined section that ends with a FILLER field is followed by another FILLER field.
01 DFHCOMMAREA. 05 OUTAREA-R. 10 DATA1 PIC X(10). 10 DATA2 PIC X(10). 10 FILLER PIC X(10). 10 DATA3 OCCURS 6 TIMES. 15 FILLER PIC 9(2). 15 DATA3ITEM PIC X(2). 15 FILLER PIC X(3). 10 FILLER PIC X(5). 10 FILLER PIC X(10). 10 DATA4 PIC X(30). 10 DATA4A REDEFINES DATA4. 15 FILLER PIC X(2). 15 DATA4AITEM PIC X(3). 15 FILLER PIC X(5). 10 FILLER PIC X(7). 10 FILLER PIC X(6).
When this COBOL definition is imported in SP3 and earlier, it generates the following incorrect definition:
01 DFHCOMMAREA. 05 DATA1 PIC X(10). 05 DATA2 PIC X(10). 05 FILLER PIC X(10). 05 DATA3 OCCURS 6 TIMES. 10 FILLER PIC X(2). 10 DATA3ITEM PIC X(2). 05 FILLER PIC X(17). 05 DATA4AITEM PIC X(3). 05 FILLER PIC X(18).
With this fix installed, the following correct COBOL definition is generated:
01 DFHCOMMAREA. 05 DATA1 PIC X(10). 05 DATA2 PIC X(10). 05 FILLER PIC X(10). 05 DATA3 OCCURS 6 TIMES. 10 FILLER PIC X(2). 10 DATA3ITEM PIC X(2). 10 FILLER PIC X(3). 05 FILLER PIC X(17). 05 DATA4AITEM PIC X(3). 05 FILLER PIC X(38).
Furthermore, if a table consists of all FILLER fields, then the code imports incorrectly under the SNA Server 4.0 base code and SP1, and does not import at all under SP2 and SP3. With base code and SP1, it appears to import but the component cannot be saved. With SP2 and SP3, the code does not import and a COM Transaction Integrator Import COBOL Wizard error window appears with the following error message:
With this fix installed, the COBOL code imports correctly.
Keywords: kbbug kbfix kbsna400presp4fix kbqfe kbsna400sp4fix KB249960