DOCUMENT:Q275908 13-JUN-2001 [sna] TITLE :COMTI: Need to Define a Decimal Data Type w/ More Than 18 Digits PRODUCT :Microsoft SNA Server PROD/VER::1.0,4.0,4.0 SP1,4.0 SP2,4.0 SP3 OPER/SYS: KEYWORDS:kbsna400sp1 kbsna400sp2 kbsna400sp3 kbSNA400sp4fix kbSNA400PreSP4fix ====================================================================== ------------------------------------------------------------------------------- The information in this article applies to: - Microsoft SNA Server, versions 4.0, 4.0 SP1, 4.0 SP2, 4.0 SP3 - Microsoft COM Transaction Integrator for CICS and IMS, versions 1.0, 4.0 SP2, 4.0 SP3 ------------------------------------------------------------------------------- SYMPTOMS ======== COM Transaction Integrator (COMTI) Component Builder lets the user describe parameters to methods. If you add a parameter of type Decimal, the Component Builder limits the "COBOL Data Type" value of the Decimal parameter to a maximum of 18 digits. However, if a host application is written in a programming language other than COBOL, a decimal parameter that is passed to Customer Information Control System (CICS) may require more than 18 digits. If you right-click the parameter in Component Builder to bring up the Parameter Properties dialog box, and then click the COBOL Definition tab, you see two spin boxes that allow you to specify the number of digits to the left and right of the parameter's decimal point. The sum of the left and right values default to a maximum of 18. If you try to add numbers with a sum greater than 18, you receive a "DTCOB390" error message. CAUSE ===== Component Builder limits all Decimal datatypes to a maximum of 18 digits to comply with COBOL specifications. RESOLUTION ========== To resolve this problem, obtain the latest service pack for SNA Server 4.0. For additional information, please see the following article in the Microsoft Knowledge Base: Q215838 How to Obtain the Latest SNA Server Version 4.0 Service Pack STATUS ====== Microsoft has confirmed this to be a problem in Microsoft SNA Server version 4.0. This problem was first corrected in SNA Server 4.0 Service Pack 4. MORE INFORMATION ================ When you are converting data to and from Windows Automation datatypes, COMTI Component Builder uses the idiom of COBOL to represent the equivalent mainframe datatypes. COBOL datatypes COMP, COMP-3, and DISPLAY are limited to 18 digits. This is in accordance with COBOL specifications. However the mainframe hardware is capable of storing up to 29 digits in a BCD number. Some mainframe languages exploit this capability to let applications use packed decimals up to 29 digits long. When you are using COMTI with a host application that is written in COBOL, a decimal parameter should never be more than 18 digits long. However, if the host application is written in a language that supports longer packed decimal types, the hotfix allows the longer length to be defined. A decimal datatype cannot exceed 29 digits; this would exceed the size of packed decimal that s370 architecture can handle. Additional query words: Convertprim Dtcob390 Ibmcobol ====================================================================== Keywords : kbsna400sp1 kbsna400sp2 kbsna400sp3 kbSNA400sp4fix kbSNA400PreSP4fix Technology : kbAudDeveloper kbSNAServSearch kbCOMTISearch kbCOMTI100 kbCOMTI400SP2 kbCOMTI400SP3 kbSNAServ400 kbSNAServ400SP1 kbSNAServ400SP2 kbSNAServ400SP3 Version : :1.0,4.0,4.0 SP1,4.0 SP2,4.0 SP3 Issue type : kbbug Solution Type : kbfix ============================================================================= THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY. Copyright Microsoft Corporation 2001.