Use DECLARE FOO CHAR(*) VARYING for the input value. If you need to copy it inside of a BEGIN or nested PROCEDURE block, or as CONTROLLED, you can use LENGTH(FOO) for a dynamic length.
You only receive the user parameter sideof the PARM, not the LE side. -- Shmuel (Seymour J.) Metz http://mason.gmu.edu/~smetz3 ________________________________________ From: IBM Mainframe Discussion List [[email protected]] on behalf of Farley, Peter [[email protected]] Sent: Sunday, November 20, 2022 1:20 AM To: [email protected] Subject: Question on writing PL1 to use EXEC PARM/PARMDD It's been quite a long while since I had a finger in any PL1 code, but I now have a small PL1 side project I need some help with. I have a question about how to handle not only the "standard" EXEC PARM of up to 100 bytes, but also how to handle the newer EXEC PARMDD option which allows up to 32760 bytes of PARM data in a PL1 OPTIONS(MAIN) procedure. In COBOL the quasi-standard I have been using is this structure in the LINKAGE section of a main program that expects PARM/PARMDD input: LINKAGE SECTION. 01 PARM-AREA. 05 PARM-LEN PIC S9(4) BINARY. 05 PARM-DATA. 10 PARM-X OCCURS 0 TO 32760 DEPENDING ON PARM-LEN PIC X. That structure occupies no storage in the COBOL program, and instead is accessed directly by using the R1 address passed to the COBOL program by the "EXEC PGM=" process. How do I define a similar vehicle for PARM data in current releases of Enterprise PL1 (I have the V5.3.0 version available to me for this project)? Is there a way to do it with a CHAR (*) VARYING BASED variable? Or have I lost all sense of what is and is not possible in PL1? Please be gentle, it has been a very *long* time since I have done any actual PL1 coding, and a lot of memory cells from that bygone era have been lost to bit rot. Any RTFM's or url pointers much appreciated. Peter This message and any attachments are intended only for the use of the addressee and may contain information that is privileged and confidential. If the reader of the message is not the intended recipient or an authorized representative of the intended recipient, you are hereby notified that any dissemination of this communication is strictly prohibited. If you have received this communication in error, please notify us immediately by e-mail and delete the message and any attachments from your system. ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN
