PL/1 Sort Error

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

PL/1 Sort Error

Hercules390 - Mvs mailing list
The last day or so I have been tinkering with a PL/1 sort job and have finally gotten it to run on TK3.  It still has some type of error and since I know nothing about PL/1 was wondering if someone else might point out what is causing the INVALID EXEC OR ATTACH PARAMETER message below.:

 15.21.50 JOB 1693  IEFACTRT - Stepname  Procstep  Program   Retcode
15.21.50 JOB 1693  TESTPL1    HELOWRLD  PL1L      IEMAA     RC= 0000
15.21.51 JOB 1693  TESTPL1    HELOWRLD  LKED      IEWL      RC= 0004
15.21.51 JOB 1693  +IER067I - INVALID EXEC OR ATTACH PARAMETER
15.21.52 JOB 1693  +IER036I - B =   90
15.21.52 JOB 1693  +IER037I - G =  2600
15.21.52 JOB 1693  +IER038I - NMAX =   35460
15.21.52 JOB 1693  +IER045I - END SORT PH
15.21.52 JOB 1693  +IER049I - SKIP MERGE PH
15.21.53 JOB 1693  +IER054I - RCD IN       3,OUT       3
15.21.53 JOB 1693  +IER052I - EOJ
15.21.53 JOB 1693  TESTPL1    HELOWRLD  GO        PGM=*.DD  RC= 0000


The jobstream below runs on TK3UPD after the PL1FCLG proc LKED step is fixed to allow the SYSLIN from the compile step to get into the link step ( DSN=*.PL1L.SYSLIN ).

//TESTPL1 JOB  (SETUP),
//             'TEST PLI',
//             CLASS=A,
//             MSGCLASS=A,
//             MSGLEVEL=(1,1),
//             NOTIFY=HERC01
//********************************************************************
//*
//* NAME: SYS2.JCLLIB(TESTPL1)
//*
//* DESC: TEST PLI INSTALLATION
//*
//********************************************************************
//HELOWRLD EXEC PL1LFCLG
//*PL1L.SYSLIN DD UNIT=SYSDA
//PL1L.SYSIN DD *
 HELLO: PROC OPTIONS(MAIN);
 CALL IHESRTA ('SORT FIELDS=(1,10,CH,A)',
 'RECORD TYPE=F,LENGTH=(80) ',
 48576,
 RETURN_CODE);
 END HELLO;
//LKED.SYSLIB DD DSN=SYS1.PL1LIB,DISP=SHR
//GO.STEPLIB DD DSN=SYS1.PL1LIB,DISP=SHR
//SORTLIB    DD DSN=SYS1.SORTLIB,DISP=SHR
//GO.SORTOUT DD SYSOUT=A,DCB=(LRECL=80,RECFM=F,BLKSIZE=80)
//GO.SORTWK01 DD UNIT=2314,SPACE=(CYL,10)
//GO.SORTWK02 DD UNIT=2314,SPACE=(CYL,10)
//GO.SORTWK03 DD UNIT=2314,SPACE=(CYL,10)
//GO.SORTIN  DD *,DCB=LRECL=80
THIS IS LINE 1
NOT LINE 2
COULD BE LINE 3
/*
//
 This job also runs on TK4- but needs:

//SYSOUT   DD  SYSOUT=&SOUT      

in the GO step.

Difference in PROC between TK3 and TK4- ?

Phil

 

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: PL/1 Sort Error

Hercules390 - Mvs mailing list
Hello,

here is my source which runs:


           HELLO: PROC OPTIONS(MAIN);
           DECLARE (C, D INITIAL (30000)) FIXED BINARY(31),
                   SYSPRINT FILE STREAM OUTPUT PRINT;
           CALL IHESRTA (' SORT FIELDS=(1,10,CH,A)',
                         ' RECORD TYPE=F,LENGTH=(80)',
                         D, C);
           PUT SKIP FILE(SYSPRINT) DATA(C);
           END HELLO;

Note the IHESRTA parameters, and the leading spaces of sort statements.
Reference : H. Kamp - H. Pudlatz: Einf├╝hrung in die Programmiersprache
PL/I, Vieweg, 1974, 2. Aufl. p. 210

//GO.SORTLIB DD DSN=SYS1.SORTLIB,DISP=SHR is required, too.

I hope this helps.

Regards,
dr. Imre Bartfai

On Wed, Dec 28, 2016 at 7:35 PM, [hidden email] [H390-MVS] <
[hidden email]> wrote:

>
>
> The last day or so I have been tinkering with a PL/1 sort job and have
> finally gotten it to run on TK3.  It still has some type of error and since
> I know nothing about PL/1 was wondering if someone else might point out
> what is causing the INVALID EXEC OR ATTACH PARAMETER message below.:
>
> 15.21.50 JOB 1693  IEFACTRT - Stepname  Procstep  Program   Retcode
> 15.21.50 JOB 1693  TESTPL1    HELOWRLD  PL1L      IEMAA     RC= 0000
> 15.21.51 JOB 1693  TESTPL1    HELOWRLD  LKED      IEWL      RC= 0004
> 15.21.51 JOB 1693  +IER067I - INVALID EXEC OR ATTACH PARAMETER
> 15.21.52 JOB 1693  +IER036I - B =   90
> 15.21.52 JOB 1693  +IER037I - G =  2600
> 15.21.52 JOB 1693  +IER038I - NMAX =   35460
> 15.21.52 JOB 1693  +IER045I - END SORT PH
> 15.21.52 JOB 1693  +IER049I - SKIP MERGE PH
> 15.21.53 JOB 1693  +IER054I - RCD IN       3,OUT       3
> 15.21.53 JOB 1693  +IER052I - EOJ
> 15.21.53 JOB 1693  TESTPL1    HELOWRLD  GO        PGM=*.DD  RC= 0000
>
>
> The jobstream below runs on TK3UPD after the PL1FCLG proc LKED step is
> fixed to allow the SYSLIN from the compile step to get into the link step (
> DSN=*.PL1L.SYSLIN ).
>
> //TESTPL1 JOB  (SETUP),
> //             'TEST PLI',
> //             CLASS=A,
> //             MSGCLASS=A,
> //             MSGLEVEL=(1,1),
> //             NOTIFY=HERC01
> //********************************************************************
> //*
> //* NAME: SYS2.JCLLIB(TESTPL1)
> //*
> //* DESC: TEST PLI INSTALLATION
> //*
> //********************************************************************
> //HELOWRLD EXEC PL1LFCLG
> //*PL1L.SYSLIN DD UNIT=SYSDA
> //PL1L.SYSIN DD *
>  HELLO: PROC OPTIONS(MAIN);
>  CALL IHESRTA ('SORT FIELDS=(1,10,CH,A)',
>  'RECORD TYPE=F,LENGTH=(80) ',
>  48576,
>  RETURN_CODE);
>  END HELLO;
> //LKED.SYSLIB DD DSN=SYS1.PL1LIB,DISP=SHR
> //GO.STEPLIB DD DSN=SYS1.PL1LIB,DISP=SHR
> //SORTLIB    DD DSN=SYS1.SORTLIB,DISP=SHR
> //GO.SORTOUT DD SYSOUT=A,DCB=(LRECL=80,RECFM=F,BLKSIZE=80)
> //GO.SORTWK01 DD UNIT=2314,SPACE=(CYL,10)
> //GO.SORTWK02 DD UNIT=2314,SPACE=(CYL,10)
> //GO.SORTWK03 DD UNIT=2314,SPACE=(CYL,10)
> //GO.SORTIN  DD *,DCB=LRECL=80
> THIS IS LINE 1
> NOT LINE 2
> COULD BE LINE 3
> /*
> //
>
> This job also runs on TK4- but needs:
>
> //SYSOUT   DD  SYSOUT=&SOUT
>
> in the GO step.
>
> Difference in PROC between TK3 and TK4- ?
>
> Phil
>
>
>
>
>
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: PL/1 Sort Error

Hercules390 - Mvs mailing list
dr. Imre Bartfai wrote:
 

 I hope this helps.


Yes, thank you.

Phil
Loading...