|
I'm new to ILE COBOL and I am having a problem. I have a program that was written in COBOL and now I would like it to call an RPGLE program. I have created and compiled the COBOL program as CBLLE. It seems to go through the CBLLE code ok, until I try to pass the parameters. The error messages I get are as follows: Message ID . . . . . . : RNQ0222 Severity . . . . . . . : 99 Message type . . . . . : Inquiry Date sent . . . . . . : 08/16/02 Time sent . . . . . . : 14:09:29 Message . . . . : Pointer or parameter error (C G D F). Cause . . . . . : RPG procedure GSS999R in program KLPLIB/AMFNST5LE at statement *INIT had an error due to a pointer not being correctly set. The cause of the error is most likely one of the following: -- A basing pointer was not set. -- A procedure pointer was not set. -- The pointer was set, but the object it referenced has been destroyed. -- A parameter was not passed to the program containing the procedure. -- A parameter was not passed to the procedure by its caller within the program. -- A pointer offset was greater than the size of the space the pointer was pointing to. Message . . . . : Message 'MCH3601' in program object 'AMFNST5LE' in library 'KLPLIB' (C D F G). Cause . . . . . : Message 'MCH3601' was detected in COBOL statement 2820 of COBOL program 'AMOFLPRG' in program object 'AMFNST5LE' in library 'KLPLIB'. I don't know what AMOFLPRG is and can't find an object with that name. When I do a dump for the RPG program, this is what I see in the fields that I am trying to pass back and forth. (prtzip5, prtzip4, and prtdlvp should GO to the RPGLE program and @barcd9, @bardc11 should come BACK from the RPGLE program.) I don't know what the QRNL- stuff is either. I'm thinking that the *NULL is the problem, but don't know how to fix it. _QRNL_PRMCPY_@BARCD11 POINTER SPP:*NULL _QRNL_PRMCPY_@BARCD9 POINTER SPP:*NULL _QRNL_PRMCPY_PRTDLVP POINTER SPP:CC52E38B3A018A99 _QRNL_PRMCPY_PRTZIP4 POINTER SPP:CC52E38B3A018A95 _QRNL_PRMCPY_PRTZIP5 POINTER SPP:CC52E38B3A018A90 _QRNL_PSTR_@BARCD11 POINTER SPP:*NULL _QRNL_PSTR_@BARCD9 POINTER SPP:*NULL _QRNL_PSTR_PRTDLVP POINTER SPP:CC52E38B3A018A99 _QRNL_PSTR_PRTZIP4 POINTER SPP:CC52E38B3A018A95 _QRNL_PSTR_PRTZIP5 POINTER SPP:CC52E38B3A018A90 @BARCD11 CHAR(14) NOT ADDRESSABLE @BARCD9 CHAR(12) NOT ADDRESSABLE This is what shows up as going from my CBLLE program: (which looks right to me) BARC11 OF PARAMETER-LIST CHAR(14) " " "4040404040404040404040404040"X BARC9 OF PARAMETER-LIST CHAR(12) " " "404040404040404040404040"X DELP OF PARAMETER-LIST CHAR(2) "26" "F2F6"X ZIP4 OF ZIP-CODE OF PARAMETER-LIST CHAR(4) "2301" "F2F3F0F1"X ZIP5 OF ZIP-CODE OF PARAMETER-LIST CHAR(5) "48226" "F4F8F2F2F6"X\ And this is my call statement: CALL LINKAGE TYPE IS PROCEDURE 'GSS999R' USING BY REFERENCE PARAMETER-LIST. I have also tried variations of the call including this: CALL LINKAGE TYPE IS PROCEDURE 'GSS999R' USING BY reference zip5, zip4, delp RETURNING parameter-list. 01 PARAMETER-LIST. 05 ZIP-CODE. 10 ZIP5 PIC X(05). 10 ZIP4 PIC X(04). 05 DELP PIC X(02). 05 BARC9 PIC X(12). 05 BARC11 PIC X(14). Can anyone help??? Kathleen Potillo Save a Life! Adopt from your local Animal Shelter. www.dearborn-animals.com
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.