Page 1 of 1
INVALIDE COMMAND SYNTAXE
Posted:
Mon Jul 02, 2018 8:45 pm
by samb01
Hello,
i'am running en rexx programme but i can't anderstand why i have this message :
21 *-* QUEUE ' 'FIC.I' -'
>L> " "
>C> "FIC.9038"
>V> "XDM.FIC01.DATASET"
>O> " XDM.FIC01.DATASET"
>L> " -"
>O> " XDM.FIC01.DATASET -"
22 *-* END
7 *-* DO I=1 TO DT.0
IKJ56621I INVALID COMMAND NAME SYNTAX
IKJ56621I INVALID COMMAND NAME SYNTAX
IKJ56621I INVALID COMMAND NAME SYNTAX
IKJ56621I INVALID COMMAND NAME SYNTAX
Re: INVALIDE COMMAND SYNTAXE
Posted:
Mon Jul 02, 2018 10:08 pm
by willy jensen
Most likely because you do not have any PULL commands, or a command pulling from the stack.
Re: INVALIDE COMMAND SYNTAXE
Posted:
Mon Jul 02, 2018 11:05 pm
by samb01
Hello, i have queue commands. That's not enought ?
Re: INVALIDE COMMAND SYNTAXE
Posted:
Mon Jul 02, 2018 11:38 pm
by Jim Ruddy
Perhaps if you posted the REXX source it may help figure out what is going on.
Re: INVALIDE COMMAND SYNTAXE
Posted:
Tue Jul 03, 2018 12:33 pm
by samb01
The main programme :
/* REXX */
TRACE I
"EXECIO * DISKR IN (STEM DT."
NUM=1
SPACE = 0
CALL NEWJCL NUM SPACE
DO I=1 TO DT.0
FIC.I = WORD(DT.I,1)
SPACE.I = WORD(DT.I,7)
SPACE = SPACE.I + SPACE
IF SPACE > 83333
THEN DO
SAY 'ON EST DANS LA BOUCLE'
SPACE = 0
NUM = NUM + 1
QUEUE ' ))
QUEUE ""
"EXECIO * DISKW OUT ("
CALL NEWJCL NUM,SPACE
END
QUEUE ' 'FIC.I'
END
EXIT;
the called profgramme :
/* REXX */
TRACE I
PARSE ARG NUM SPACE
NEWJCL:
STEP.1='//COOLJOB (S),'MOVE VSAM',NOTIFY=&SYSUID,REGION=7M,'
STEP.2='// CLASS=O,MSGCLASS=X,MSGLEVEL=(1,1)'
STEP.3='//STEP1 EXEC PGM=ADRDSSU'
STEP.4='//SYSPRINT DD SYSOUT=*'
STEP.5='//OUT1 DD DSN=XXX.DATASETS','
STEP.6='// DISP=(NEW,CATLG,),'
STEP.7='// UNIT=VTS2,LABEL=RETPD=400'
STEP.8='//SYSIN DD *'
STEP.9=' DUMP OUTDDNAME(OUT1) OPTIMIZE(3) FORCECP(0) TOL(ENQF) -'
STEP.10=' DATASET(INCL( -'
DO K=1 TO 10
QUEUE STEP.K
"EXECIO 1 DISKW OUT ("
END
RETURN
and the error is :
>C> "FIC.9038"
>V> "X.FILE.DATASET"
>O> " X.FILE.DATASET"
>L> " -"
>O> " X.FILE.DATASET -"
22 *-* END
7 *-* DO I=1 TO DT.0
23 *-* EXIT
IKJ56621I INVALID COMMAND NAME SYNTAX
IKJ56621I INVALID COMMAND NAME SYNTAX
IKJ56621I INVALID COMMAND NAME SYNTAX
IKJ56621I INVALID COMMAND NAME SYNTAX
IKJ56621I INVALID COMMAND NAME SYNTAX
IKJ56621I INVALID COMMAND NAME SYNTAX
IKJ56621I INVALID COMMAND NAME SYNTAX
...
Re: INVALIDE COMMAND SYNTAXE
Posted:
Tue Jul 03, 2018 2:36 pm
by NicC
For a start you need to use double quotes when assigning strings to the step stem as some of those strings have single quotes as part of the data. You also have an extra quote when assigning to step.5. No point having syntax colouring if you are going to ignore it.
Re: INVALIDE COMMAND SYNTAXE
Posted:
Tue Jul 03, 2018 3:40 pm
by willy jensen
As NicC says, start with fixing your quotes, then look at the logic.
Your program has a QUEUE after the "EXECIO * DISKW OUT ", which will cause problems like the one you are seeing. And I strongly recommend that you do "EXECIO" queued() " DISKW OUT ", plus a "delstack" at the beginning and the end of your program.
Re: INVALIDE COMMAND SYNTAXE
Posted:
Tue Jul 03, 2018 6:10 pm
by expat
And why oh why are you building JCL like that ................. ISPF file tailoring is so much better and easier
and why not use the DFdss dataset list in a dataset ?
//SYSIN DD *
DUMP OUTDDNAME(OUT1) OPTIMIZE(3) FORCECP(0) TOL(ENQF) -'
DATASET(INCL( -'
// DSN=whatever it is ,DISP=SHR
))
/*
If you explain what it is that you are trying to achieve, maybe we can suggest a better method