book
Article ID: 98339
calendar_today
Updated On:
Products
Endevor
Endevor Natural Integration
Endevor - ECLIPSE Plugin
Endevor - Enterprise Workbench
Show More
Show Less
Issue/Introduction
There is an EXEC statement parameter in zOS 2.1 and above, PARMDD. This parameter enables the job to pass a string longer than 100 characters to the EXEC program IGYCRCTL. Endevor does not support the PARMDD parameter. Therefore processors are limited to passing up to 100 characters using the PARM parameter. Using PARMDD it is possible to pass a string up to approx. 32000 characters. If would be extremely helpful if it were possible to pass parameters longer than 100 characters.
Environment
Release: ENDAE.00200-18.0-Endevor-Software Change Manager Component:
Cause
This enhancement is already requested but there is already a solution that allows to pass long string to IGYCRCTL.
Resolution
The suggestion is to use MULTIPLE C1PRMGEN steps to build the parameter file content and use PARM=OPTFILE in your IGYCRCTL step : //S1 EXEC PGM=C1PRMGEN, PARM=’PARM 1' //PARMOUT DD DSN=&&PARM1,DISP=(,PASS) //S2 EXEC PGM=C1PRMGEN, PARM=’PARM 2' //PARMOUT DD DSN=&&PARM2,DISP=(,PASS) //COMPILE EXEC PGM=IGYCRCTL,PARM=OPTFILE //SYSOPTF DD DSN=&&PARM1,DISP=(OLD,DELETE) // DD DSN=&&PARM2,DISP=(OLD,DELETE) The processor will be executed as shown in the example below: 09:15:25 C1X0240I //*************************************************************** 09:15:25 C1X0240I //* C1PRMGEN - use C1PRMGEN to create a global edit parm cards 09:15:25 C1X0240I //************************************************************** 09:15:25 C1X0240I 21 //C1PRMGN1 EXEC PGM=C1PRMGEN, 09:15:25 C1X0240I // PARM=' LIB,NOSEQ,OBJECT,APOST,NOADATA,CODEPAGE(1140)' 09:15:25 C1X0240I 22 //PARMOUT DD DISP=(NEW,PASS), 09:15:25 C1X0240I // UNIT=VIO, 09:15:25 C1X0240I // SPACE=(80,(1,0)), 09:15:25 C1X0240I // DCB=(RECFM=FB,LRECL=80), 09:15:25 C1X0240I // DSN=&PRMGEN01 09:15:25 C1X0240I //* 09:15:25 C1X0240I 23 //C1PRMGN2 EXEC PGM=C1PRMGEN, 09:15:25 C1X0240I // PARM=' NODBCS,NODECK,NOEXIT,LANGUAGE(EN),LINECOUNT(60),' 09:15:25 C1X0240I 24 //PARMOUT DD DISP=(NEW,PASS), 09:15:25 C1X0240I // UNIT=VIO, 09:15:25 C1X0240I // SPACE=(80,(1,0)), 09:15:25 C1X0240I // DCB=(RECFM=FB,LRECL=80), 09:15:25 C1X0240I // DSN=&PRMGEN02 09:15:25 C1X0240I //* 09:15:25 C1X0240I 25 //C1PRMGN3 EXEC PGM=C1PRMGEN, 09:15:25 C1X0240I // PARM=' TRUNC(OPT),NODYNAM,LIST,RENT,MAP,XREF,OPT' 09:15:25 C1X0240I 26 //PARMOUT DD DISP=(NEW,PASS), 09:15:25 C1X0240I // UNIT=VIO, 09:15:25 C1X0240I // SPACE=(80,(1,0)), 09:15:25 C1X0240I // DCB=(RECFM=FB,LRECL=80), 09:15:25 C1X0240I // DSN=&PRMGEN03 09:15:25 C1X0240I //* 09:15:25 C1X0240I //******************************************************************* 09:15:25 C1X0240I //** COMPILE THE ELEMENT ** 09:15:25 C1X0240I //******************************************************************* 09:15:25 C1X0240I 27 //COMPILE EXEC PGM=IGYCRCTL,COND=(0,LT),MAXRC=4, 09:15:25 C1X0240I // PARM=OPTFILE 09:15:25 C1X0240I //* PARM='&PARMCOB' 09:15:25 C1X0240I 28 //SYSOPTF DD DISP=(OLD,PASS), 09:15:25 C1X0240I // DSN=&PRMGEN01 09:15:25 C1X0240I 29 // DD DISP=(OLD,PASS), 09:15:25 C1X0240I // DSN=&PRMGEN02 09:15:25 C1X0240I 30 // DD DISP=(OLD,PASS), 09:15:25 C1X0240I // DSN=&PRMGEN03