View previous topic :: View next topic
|
Author |
Message |
vasco ferreira
New User
Joined: 12 Jul 2008 Posts: 32 Location: sintra - portugal
|
|
|
|
I need to provocate a rc.4095 if a previous step had been flushed, but i can't do it.
This is what i've designed;
[color=blue][size=7]//CPUIDN EXEC PGM=PGLGSISI
//*
// IF CPUIDN.RC = 01 THEN
//*
//VISEU EXEC PGM=IEFBR14
//*
// ELSE
//*
//LISBOA EXEC PGM=IEFBR14
//*
// ENDIF
//*
//IF1 IF VISEU.RUN EQ FALSE THEN
//*
//XQATM EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
SET MAXCC = 4095
//*
// ENDIF [/color]
//* [/size]
and this is the result;
1[color=blue]6.01.57 JOB89933 ---- WEDNESDAY, 10 DEC 2008 ----
16.01.57 JOB89933 IRR010I USERID PRDVCF IS ASSIGNED TO THIS JOB.
16.01.58 JOB89933 IEF403I DVASCO01 - STARTED - TIME=16.01.58
16.01.59 JOB89933 -STEPNAME PROCSTEP RC EXCP CONN TCB SRB CLOCK
16.01.59 JOB89933 -CPUIDN 00 135 14 .00 .00 .0
16.01.59 JOB89933 -VISEU FLUSH 0 0 .00 .00 .0
16.02.00 JOB89933 -LISBOA 00 7 0 .00 .00 .0
16.02.01 JOB89933 -XQATM 16 57 8 .00 .00 .0
16.02.01 JOB89933 IEF451I DVASCO01 XQATM - ENDED BY CC 0016 - TIME=16.02.01
16.02.01 JOB89933 -DVASCO01 ENDED. NAME-CALCULO-DA-RBA TOTAL TCB CPU TIM
[/color]
as you see the last step returns "16" and not 4095. Please help.
|
|
Back to top |
|
|
Douglas Wilder
Active User
Joined: 28 Nov 2006 Posts: 305 Location: Deerfield IL
|
|
|
|
In SYSPRINT you should see
********************************* TOP OF DATA **********************************
IDCAMS SYSTEM SERVICES TIME: 16:41:05
SET MAXCC = 4095
IDC3207I REMAINDER OF COMMAND INPUT STREAM IGNORED
IDC0002I IDCAMS PROCESSING COMPLETE. MAXIMUM CONDITION CODE WAS 16
******************************** BOTTOM OF DATA ********************************
According to QW
Code: |
Possible values for LASTCC and MAXCC set by IDCAMS are 0, 4, 8,
12, or 16. |
[code] |
|
Back to top |
|
|
dick scherrer
Moderator Emeritus
Joined: 23 Nov 2006 Posts: 19244 Location: Inside the Matrix
|
|
|
|
Hello,
Quote: |
I need to provocate a rc.4095 if a previous step had been flushed, but i can't do it. |
No, because that is the way the system is designed. Once a job is flushed, no more executions will occur in that job.
If you explain the goal (not setting the rc=4095) but what you really need to accomplish, someone may have suggestions. |
|
Back to top |
|
|
Robert Sample
Global Moderator
Joined: 06 Jun 2008 Posts: 8696 Location: Dubuque, Iowa, USA
|
|
|
|
The DFSMS AMS Services for VSAM manual states two things that are important to your post:
Quote: |
Condition codes that are tested in the IF-THEN-ELSE command sequence or set by the SET command cannot be passed from one job step to the next. |
and
Quote: |
number
specifies the value to be assigned to MAXCC or LASTCC. The maximum value that can be assigned is 16; a greater value will be reduced to 16. |
So from the first quote it becomes apparent that the condition code set by IDCAMS is not a step condition code and should not be thought of in that manner, and from the second quote your setting MAXCC to 4095 will be changed to 16 before the step ends.
And, finally, you cannot change or reset step condition codes in a job -- they are determined by the program completing successfully (or not) and then they exist. Live with them. Get used to them. But don't expect to be able to change them unless the program is changed to produce a different code; then you'll have a new one to live with. |
|
Back to top |
|
|
vasco ferreira
New User
Joined: 12 Jul 2008 Posts: 32 Location: sintra - portugal
|
|
|
|
thank you. I need to give information to another software (ControlM) when a specific step flush. What should i do? |
|
Back to top |
|
|
Robert Sample
Global Moderator
Joined: 06 Jun 2008 Posts: 8696 Location: Dubuque, Iowa, USA
|
|
|
|
I don't know ControlM, and have never used it, so I can't help you there. I know there are some on this board that do use it, so hopefully they'll have some suggestions for you. |
|
Back to top |
|
|
dick scherrer
Moderator Emeritus
Joined: 23 Nov 2006 Posts: 19244 Location: Inside the Matrix
|
|
|
|
Hello,
Do you really mean FLUSHed or do you mean something abended or ended with an undesirable return code?
They are very different situations. . . If the job truly was flushed, you cannot do anything more - it has already terminated. |
|
Back to top |
|
|
gcicchet
Senior Member
Joined: 28 Jul 2006 Posts: 1702 Location: Australia
|
|
|
|
Hi,
Control-M allows you to test a particular step for Condition Codes, User abends, FLUSH etc.
You can code in the Control-M defintion
Code: |
ON PGMST VISEU PROCST CODES FLUSH
DO SHOUT TO OPER URGENCY R
|
or you can test the CPUIDN step
Code: |
ON PGMST CPUIDN PROCST CODES NC0001 A/O
DO SHOUT TO OPER URGENCY R
|
Gerry |
|
Back to top |
|
|
|