View previous topic :: View next topic
Author
Message
murali922 New User Joined: 25 Jul 2005Posts: 92 Location: India
I have the below SORT JCL. Everything including the sort cards look fine.
But I am getting an error which is also pasted below :-
Code:
//SUPERC EXEC PGM=ISRSUPC,
// PARM=(DELTAL,LINECMP,
// '',
// '')
//NEWDD DD DSN=CHGMAN.CRSU.#003150.DCU(RLOLKY37),
// DISP=SHR
//OLDDD DD DSN=CHGMAN.CRSU.DCU(RLOLKY37),
// DISP=SHR
//OUTDD DD DSN=&&T1,UNIT=SYSDA,SPACE=(CYL,(1,1),RLSE),
// DISP=(MOD,PASS)
//STEP1 EXEC PGM=SORT
//SORTIN DD DSN=&&T1
//SORTOUT DD DSN=PV9793A.OUTPUT.FILE,
// DISP=SHR
//SORWK01 DD UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE)
//SORWK02 DD UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE)
//SYSOUT DD SYSOUT=*
//SYSIN DD *
INCLUDE COND=(1,2,CH,EQ,C'EN')
SORT FIELDS=(1,2,A,CH)
/*
//
//*
[ERROR] SYSIN :
INCLUDE COND=(1,2,CH,EQ,C'EN')
*
SORT FIELDS=(1,2,A,CH)
*
WER275A NO KEYWORDS FOUND ON CONTROL STATEMENT
WER275A NO KEYWORDS FOUND ON CONTROL STATEMENT
WER211B SYNCSMF CALLED BY SYNCSORT; RC=0000
WER449I SYNCSORT GLOBAL DSM SUBSYSTEM ACTIVE
******************************** BOTTOM OF DATA ********************************[/ERROR]
Back to top
superk Global Moderator Joined: 26 Apr 2004Posts: 4652 Location: Raleigh, NC, USA
My guess is that this would work much better:
Code:
//SYSIN DD *
SORT FIELDS=(1,2,A,CH)
INCLUDE COND=(1,2,CH,EQ,C'EN')
/*
Back to top
murali922 New User Joined: 25 Jul 2005Posts: 92 Location: India
Hi,
I tried that as well. It fails with the same error.
Back to top
superk Global Moderator Joined: 26 Apr 2004Posts: 4652 Location: Raleigh, NC, USA
You're leaving at least one blank character in front of your sort parameters, since your post and the messages seem to indicate otherwise?
Back to top
murali922 New User Joined: 25 Jul 2005Posts: 92 Location: India
Yes
Back to top
murali922 New User Joined: 25 Jul 2005Posts: 92 Location: India
I changed the sort card to
Code:
SORT FIELDS=(1,2,CH,A)
But gives me another error :-
SYNCSORT FOR Z/OS 1.2.1.0R U.S. PATENTS: 4210961, 5117495 (C) 2005 SYNCSO
AMERICAN EXPRESS TRS IPC z/OS 1.7.1
PRODUCT LICENSED FOR CPU SERIAL NUMBER 45F0A, MODEL 2094 705 LICEN
SYSIN :
SORT FIELDS=(1,2,CH,A)
INCLUDE COND=(1,2,CH,EQ,C'EN')
WER276B SYSDIAG= 169057, 1170945, 1170945, 788928
WER164B 15,968K BYTES OF VIRTUAL STORAGE AVAILABLE, MAX REQUESTED,
WER164B 0 BYTES RESERVE REQUESTED, 1,020K BYTES USED
WER146B 4K BYTES OF EMERGENCY SPACE ALLOCATED
WER189A SORTIN DCB RECFM REQUIRED
WER108I SORTIN : RECFM= ; LRECL= ; BLKSIZE=
WER211B SYNCSMF CALLED BY SYNCSORT; RC=0000
WER449I SYNCSORT GLOBAL DSM SUBSYSTEM ACTIVE
******************************* BOTTOM OF DATA ********************************
Back to top
superk Global Moderator Joined: 26 Apr 2004Posts: 4652 Location: Raleigh, NC, USA
You need a disposition on SORTIN, either DISP=(OLD,PASS) or DISP=(OLD,DELETE).
Back to top
murali922 New User Joined: 25 Jul 2005Posts: 92 Location: India
Sort card doesnt seem to give me any output when i use a temp file. The same JCL when used with a catalogued dataset, works fine.
Code:
//SUPERC EXEC PGM=ISRSUPC,
// PARM=(DELTAL,LINECMP,
// '',
// '')
//NEWDD DD DSN=CHGMAN.CRSU.#003150.DCU(RLOLKY37),
// DISP=SHR
//OLDDD DD DSN=CHGMAN.CRSU.DCU(RLOLKY37),
// DISP=SHR
//OUTDD DD DSN=PV9793A.KEEP,UNIT=SYSDA,SPACE=(CYL,(1,1),RLSE),
// DISP=(MOD,KEEP),
// DCB=(RECFM=FB,LRECL=80,BLKSIZE=800)
//STEP1 EXEC PGM=SORT
//SORTIN DD DSN=PV9793A.KEEP,DISP=MOD
//* DCB=(RECFM=FB,LRECL=80,BLKSIZE=800)
//SORTOUT DD DSN=PV9793A.OUTPUT.FILE,
// DISP=SHR
//SORWK01 DD UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE)
//SORWK02 DD UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE)
//SYSOUT DD SYSOUT=*
//SYSIN DD *
SORT FIELDS=(1,2,CH,A)
INCLUDE COND=(6,2,CH,EQ,C'EN')
/*
Back to top
William Thompson Global Moderator Joined: 18 Nov 2006Posts: 3156 Location: Tucson AZ
Except that
Quote:
//SORTIN DD DSN=PV9793A.KEEP,DISP=MOD
has a disp and
Quote:
//SORTIN DD DSN=&&T1
doesn't.
Back to top
murali922 New User Joined: 25 Jul 2005Posts: 92 Location: India
Even after correcting as William suggested, I get the following error :-
Code:
SYSIN :
SORT FIELDS=(1,2,CH,A)
INCLUDE COND=(6,2,CH,EQ,C'EN')
WER276B SYSDIAG= 291953, 1168213, 1168213, 800066
WER164B 1,736K BYTES OF VIRTUAL STORAGE AVAILABLE, MAX REQUESTED,
WER164B 0 BYTES RESERVE REQUESTED, 992K BYTES USED
WER146B 4K BYTES OF EMERGENCY SPACE ALLOCATED
WER108I SORTIN : RECFM=FB ; LRECL= 80; BLKSIZE= 800
WER110I SORTOUT : RECFM=FB ; LRECL= 80; BLKSIZE= 800
WER061A I/O ERR PV9793AA,STEP1 ,989E,D,SORTIN ,DE- OP,WRNG.LEN.RECORD,0076
WER055I INSERT 0, DELETE 0
WER211B SYNCSMF CALLED BY SYNCSORT; RC=0000
******************************* BOTTOM OF DATA *******************************
Code:
//PV9793AA JOB (UU506505625,NM),'WXX331.GUISE',CLASS=0,MSGCLASS=X,
// NOTIFY=PV9793A
//* SUBMITTED AT BROC6 7.030 AT 14:23:38 BY PV9793A FROM W9508DAC
//* SUBMITTED AT BROC6 7.030 AT 14:01:15 BY PV9793A FROM W9508DAC
/*ROUTE PRINT RMT14
//*
//SUPERC EXEC PGM=ISRSUPC,
// PARM=(DELTAL,LINECMP,
// '',
// '')
//NEWDD DD DSN=CHGMAN.CRSU.#003150.DCU(RLOLKY37),
// DISP=SHR
//OLDDD DD DSN=CHGMAN.CRSU.DCU(RLOLKY37),
// DISP=SHR
//OUTDD DD DSN=&&T1,UNIT=SYSDA,SPACE=(CYL,(1,1),RLSE),
// DISP=(MOD,PASS),
// DCB=(RECFM=FB,LRECL=80,BLKSIZE=800)
//STEP1 EXEC PGM=SORT
//SORTIN DD DSN=&&T1,DISP=MOD,
// DCB=(RECFM=FB,LRECL=80,BLKSIZE=800)
//SORTOUT DD DSN=PV9793A.OUTPUT.FILE,
// DISP=SHR
//SORWK01 DD UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE)
//SORWK02 DD UNIT=SYSDA,
// SPACE=(CYL,(1,1),RLSE)
//SYSOUT DD SYSOUT=*
//SYSIN DD *
SORT FIELDS=(1,2,CH,A)
INCLUDE COND=(6,2,CH,EQ,C'EN')
/*
Back to top
William Thompson Global Moderator Joined: 18 Nov 2006Posts: 3156 Location: Tucson AZ
Code:
WER108I SORTIN : RECFM=FB ; LRECL= 80; BLKSIZE= 800
WER110I SORTOUT : RECFM=FB ; LRECL= 80; BLKSIZE= 800
WER061A I/O ERR PV9793AA,STEP1 ,989E,D,SORTIN ,DE- OP,WRNG.LEN.RECORD,0076
Take a look at the temp file and see if it really is FB/80/800 or actually something else like, say, 76?
Back to top
murali922 New User Joined: 25 Jul 2005Posts: 92 Location: India
I am able to view it because its temporary. But I too got the same doubt. But how can it be created with 76 ? When I have the JCL looking like :-
Code:
//OUTDD DD DSN=&&T1,UNIT=SYSDA,SPACE=(CYL,(1,1),RLSE),
// DISP=(NEW,PASS),
// DCB=(RECFM=FB,LRECL=80,BLKSIZE=800)
Back to top
murali922 New User Joined: 25 Jul 2005Posts: 92 Location: India
Got it !
The problem is because I had it coded like this before (with DCB defined in OUTDD and also SORTIN :-
Code:
//OUTDD DD DSN=&&T1,UNIT=SYSDA,SPACE=(CYL,(1,1),RLSE),
// DISP=(MOD,PASS),
// DCB=(RECFM=FB,LRECL=80,BLKSIZE=800)
//STEP1 EXEC PGM=SORT
//SORTIN DD DSN=&&T1,DISP=MOD,
// DCB=(RECFM=FB,LRECL=80,BLKSIZE=800)
When I removed the DCB defintion in SORTIN it resolved the problem :-
Code:
//OUTDD DD DSN=&&T1,UNIT=SYSDA,SPACE=(CYL,(1,1),RLSE),
// DISP=(MOD,PASS),
// DCB=(RECFM=FB,LRECL=80,BLKSIZE=800)
//STEP1 EXEC PGM=SORT
//SORTIN DD DSN=&&T1,DISP=MOD
Back to top
William Thompson Global Moderator Joined: 18 Nov 2006Posts: 3156 Location: Tucson AZ
Temporaraly give it a real name and rurun the superc....
Back to top
murali922 New User Joined: 25 Jul 2005Posts: 92 Location: India
I problem was basically because I had the same DCB definition twice in the jcl. First time when the &&T1 was created, and the other time in SORTIN.
I removed the DCB definition in SORTIN, which made everything work fine...
Back to top
Please enable JavaScript!