I am working on a basic JCL script from the IBM publib.boulder site. Below is the JCL that simply sorts a list of characters in ascending order. The job executes just fine, but the contents of SYSIN are not printed to the job status, as is shown in the publib demonstration
Here is my code:
//SORT JOB OTIMPF01,CLASS=A,MSGCLASS=H
/*
//STEP1 EXEC PGM=SORT
//SYSIN DD * SORT FIELDS=(1,75,CH,A)
/*
//SYSOUT DD SYSOUT=*
//SYSIN DD *
NEPTUNE
PLUTO
EARTH
VENUS
MERCURY
MARS
URANUS
SATURN
JUPITER
/*
//SORTOUT DD SYSOUT=*
/*
I know that it has something to do with the MSGCLASS= statement. The sample code from publib uses MSGCLASS=H, and I was told that that is different depending on who set the option on the mainframe. My question is, how can I figure out what my mainframe's MSGCLASS is set to without having to ask anyone? Again, I just want the result of the characters sorted in ascending order to be displayed in the job status.
It should look like this...
ICE134I 0 NUMBER OF BYTES SORTED: 720
ICE180I 0 HIPERSPACE STORAGE USED = 0K BYTES
ICE188I 0 DATA SPACE STORAGE USED = 0K BYTES
ICE052I 0 END OF DFSORT
EARTH
JUPITER
MARS
MERCURY
NEPTUNE
PLUTO
SATURN
URANUS
VENUS
...Only my job status read-out does not display the characters Earth through Venus in the output of the job status.
My job status looks like this...
IEF373I STEP/STEP1 /START 2014002.1033
IEF374I STEP/STEP1 /STOP 2014002.1033 CPU 0MIN 00.00SEC SRB 0MIN 00.00SEC VIRT 212K SYS 248K EXT 8K SYS 11592K
IEF375I JOB/SORT /START 2014002.1033
IEF376I JOB/SORT /STOP 2014002.1033 CPU 0MIN 00.00SEC SRB 0MIN 00.00SEC
ICE000I 1 - CONTROL STATEMENTS FOR 5694-A01, Z/OS DFSORT V1R5 - 10:33 ON THU JAN 02, 2014 -
ICE010A 0 NO SORT OR MERGE CONTROL STATEMENT
ICE751I 0 C5-K05352 C6-Q95214 E7-K90000
ICE052I 3 END OF DFSORT
I imagine it has to do with properly setting the MSGCLASS. I have tried Googling z/OS MSGCLASS and to no surprise, it comes up with very little.
The key problem is ICE010A 0 NO SORT OR MERGE CONTROL STATEMENT
. Assuming you transcribed your JCL correctly here, you typed:
//SYSIN DD * SORT FIELDS=(1,75,CH,A)
/*
In which case, you presented an empty input stream to SORT
, because the SORT FIELDS=(1,75,CH,A)
was treated as a comment on the DD
statement.
You should have typed:
//SYSIN DD *
SORT FIELDS=(1,75,CH,A)
/*