DOCUMENT:Q193963 11-APR-2001 [sna] TITLE :Conversion Errors Result when Return Value is Repositioned PRODUCT :Microsoft SNA Server PROD/VER:WINDOWS:1.0 SP1 OPER/SYS: KEYWORDS: ====================================================================== ------------------------------------------------------------------------------- The information in this article applies to: - Microsoft COM Transaction Integrator for CICS and IMS, version 1.0 SP1 ------------------------------------------------------------------------------- SYMPTOMS ======== A variety of type conversion errors may occur when the return value of a method has been repositioned. Specifically, the return value must be a recordset with the Occurs Depending On (ODO) attribute specified. By default, the return value is defined before other parameters. However, it is possible to reposition the return value so that it follows other parameters. One reason for repositioning the return value is when it is a recordset with an (ODO) specification. It must be repositioned to a location following the ODO parameter. A variety of COMTI runtime errors may occur at type conversion time; the following is an example. A COMTI runtime error occurs when an output parameter of COBOL PIC 9(n) DISPLAY (zoned decimal, numeric) type is presented to COMTI for conversion. For example, the automation type is long and the COBOL type is PIC 9(3) DISPLAY. A SNA Server trace shows the following data is returned from the mainframe 0xF1F2F3. The data is correct for the COBOL type, but COMTI flags the following error. Event ID: 102 Source: COMTI Type: Error Category: General (102) COM Transaction Integrator reported the following exception to a client: Component: CUServer.Search.1 Method: GetInfo Exception description: (1562) Parameter HEADER_LENGTH in method GetInfo contained an invalid zoned decimal value. Check the mainframe server program. If it is correct, verify that the correct COM Transaction Integrator-created component library is deployed. CAUSE ===== COMTI conversion routines always process the return value first, regardless of its "position" with respect to other parameters. Therefore, repositioning the return value so that it is not first can cause a variety of errors in converting other parameters. This occurs because buffer pointers become incorrect during the series of conversions. STATUS ====== Microsoft has planned to correct this problem in SNA Server version 4.00 U.S. Service Pack 2. This supported feature is now available as a hotfix, but has not been fully regression tested and should be applied only to systems having a specific need for it. Unless you are severely impacted by this problem, Microsoft recommends that you wait for the next Service Pack that contains the correction. Contact Microsoft Technical Support for more information. Additional query words: ====================================================================== Keywords : Technology : kbAudDeveloper kbCOMTISearch kbCOMTI100SP1 Version : WINDOWS:1.0 SP1 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.