View previous topic :: View next topic
|
Author |
Message |
vskumar_mf
New User
Joined: 28 Nov 2005 Posts: 11
|
|
|
|
Hi friends,
can anyone explain the main diff b/n these two parameters, bcos i am confusing bcos both are doing the same work i.e to overide or replace parameters or datasets with new values, without changing the catalog or instream procedure.
which one to choose while creating a new catalog/instream proc.
pls friends clarify my doubts..
adv thanks to all
regards
kuimar. |
|
Back to top |
|
|
yuvaraj80
New User
Joined: 03 Oct 2005 Posts: 10
|
|
|
|
Hi Kumar,
The difference between a symbolic and a override can be see like this.
Symbolic is used as a variable, which get substituted with a value assigned to it in the PROC (or in the JCL, if there is a JCL override).
For example -
//TESTPROC PROC CARD01='YUVARAJ.USER.CARDLIB'
//*
//STEP01 EXEC PGM=TESTPGM
//INP01 DD DSN=XXXXX.YYYYY.INP,DISP=SHR
//OUT01 DD DSN=XXXXX.YYYY.OUT,DISP=(NEW,CATLG,DELETE)
//INPCARD DD DSN=&CARD01(COPYCARD),DISP=SHR
In the above example, INPCARD will be substituted with a value of 'YUVARAJ.USER.CARDLIB(COPYCARD)'.
Symbolic comes to our help when there are multiple places where the same text need to be used. In our case the text is "YUVARAJ.USER.CARDLIB".
On the other hand, JCL override is used in a different context. When you want to override any parameter in a PROC, that can be done via a JCL override.
For example, I have a proc (TESTPROC) which is used by 5 jobs (JOB1 thru JOB5) for different sets of inputs. But I want a particular step (STEP03) not to execute for 1 job (JOB2) but for the other 4 jobs. You can achieve this by issuing a JCL override for the COND parameter for that step.
//JOB2 JOB TEST,'ACCOUNT INFO',CLASS=X
//JOBLIB DD DSN=XXXXX.YYYYY.LOADLIB,DISP=SHR
//PROCS JCLLIB ORDER=XXXXX.YYYYY.PROCLIB
//JOBSTEP EXEC TESTPROC,
// STEP03.COND=(0,LE)
The above example is just an illustration and it depends on factors like the return code of the previous step.
Similarly, you can have JCL override for any parameter. The parameter that is overridden may or many not be present in the PROC. If present, the value supplied in the JCL takes precedence over that present in the PROC.
Please tell me if this did not answer your question. |
|
Back to top |
|
|
mvnkprasad
New User
Joined: 01 Sep 2005 Posts: 6 Location: bangalore
|
|
|
|
hi
this is prasad
for symbolic you must and should provide the value for it where ever you are using.(here some dummy value)
where as for override already some value is present.so if we want to override the thing we can replace it according to our programme |
|
Back to top |
|
|
yuvaraj80
New User
Joined: 03 Oct 2005 Posts: 10
|
|
|
|
Hi,
Is this KP who worked in EBO, Tidel Park in Chennai?
Yuvaraj |
|
Back to top |
|
|
mvnkprasad
New User
Joined: 01 Sep 2005 Posts: 6 Location: bangalore
|
|
|
|
no boss |
|
Back to top |
|
|
yuvaraj80
New User
Joined: 03 Oct 2005 Posts: 10
|
|
|
|
Thanks for your clarification. |
|
Back to top |
|
|
Bitneuker
CICS Moderator
Joined: 07 Nov 2005 Posts: 1104 Location: The Netherlands at Hole 19
|
|
|
|
I'm afraid not all questions have been answered. As for the symbolic it's well explained. As for overwrite without adjusting the instream proc I think this is meant: after the exec proc statement (or after the pend) one can add jcl for overwriting stuff within the proc. Example:
//step25.infile dd dsn=blablabla.....
This will replace the the original dd statement //infile dd .... in step25.
Just an addition |
|
Back to top |
|
|
|