IBM Mainframe Forum Index
 
Log In
 
IBM Mainframe Forum Index Mainframe: Search IBM Mainframe Forum: FAQ Register
 

Difference between symbolic parameter and an override


IBM Mainframe Forums -> JCL & VSAM
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
K. Shiju Thomas

New User


Joined: 14 Aug 2003
Posts: 1
Location: INDIA - CHENNAI

PostPosted: Thu Aug 14, 2003 2:40 pm
Reply with quote

What is the difference between symbolic parameter and an override parameters in executing a proc????
Back to top
View user's profile Send private message
mcmillan

Site Admin


Joined: 18 May 2003
Posts: 1210
Location: India

PostPosted: Fri Aug 15, 2003 2:31 pm
Reply with quote

Dear Thomas,

Symbolic Parameters are used to override the parameters of an EXEC/DD statement. There are 2 types:

1. System Symbols Ex: &SYSUID
2. JCL Symbols (Symbolic Parameter)

Override parameters are used to override or nulllify DD/EXEC statements on the fly.
Back to top
View user's profile Send private message
mdtendulkar

Active User


Joined: 29 Jul 2003
Posts: 237
Location: USA

PostPosted: Thu Aug 21, 2003 7:19 pm
Reply with quote

Hello K. Shiju Thomas,

Using system symbols and JCL symbols, you can design your procedures to be easily modified. If the procedure does not contain required system symbols and JCL symbols, you can override the statement. For its current execution, you can override an in-stream or cataloged procedure by:

1) Overriding, nullifying, or adding EXEC statement parameters
2) Overriding, nullifying, or adding parameters to DD or OUTPUT JCL
statements
3) Adding DD or OUTPUT JCL statements


Overriding a parameter modifies only that parameter; the system uses all other parameters on the original statement.

For example, if you override the data set name on a DD statement that includes a UNIT and VOL=SER parameter, the system will still use the UNIT and VOL=SER parameters.

Invalid parameters in a procedure cannot be corrected through overrides. Before processing overrides, the system scans the original procedure statements for errors and issues error messages.


Hope this helps you,

Regards

Mayuresh Tendulkar
Back to top
View user's profile Send private message
nuthan

Active User


Joined: 26 Sep 2005
Posts: 146
Location: Bangalore

PostPosted: Wed Oct 10, 2007 4:16 pm
Reply with quote

Symbolic parameter means if you write a one catlog procedure in that you have given a

//ddname dd dsn=somename.

if you are calling the catlog procedure each time the data set name is fixed.But you want to change that data set name when ever you want the you can recode that step like this

//dda dd dsn=&s

if you are using that catalog procedure in some ware another job

inthat

//step1 exec=Ctalog procedure name s=abc

this value is repalced in above statement.

//ddname dd dsn=abc

The symbolic parameter is used to override parameters on dd statements.They can be used in both cataloged and instram procedures.provided a convenient means of assigning values to commonly used jcl parameters.Are assigned values in the Proc or EXeC statements.

temporary Parameter: I never heard this parameter. I guess it is temporary dataset

This temporary dataset which ur saying (userid.jobname.jobid.Ddsnumber.xxx ) --which one is right would be created and deleted with in the step itself depends on DISP Paremeter.
Back to top
View user's profile Send private message
rameshvaamshy
Currently Banned

New User


Joined: 19 Aug 2007
Posts: 14
Location: bangalore

PostPosted: Wed Oct 10, 2007 4:16 pm
Reply with quote

check out whether this helps
using overriding concept u can override,nullify,and add parameters to EXEC,DD,OUTPUT JCL stmts.



Coding Symbols in JCL

JCL symbols and system symbols can represent parameters, subparameters, or values in procedures or in the parameter field of statements; those that vary each time a job runs are good candidates to be coded as symbols.

You can code JCL symbols in:


JCL statements in the input job stream, submitted either in batch mode or from a TSO session (but not in the job stream read in in response to a START command)

Statements in cataloged or in-stream procedures (which do not include started task JCL)

DD statements that are added to a procedure (something that is possible, but not practical for a started task procedure).


You may code system symbols only in started task JCL (jobs and procedures), which can be read only from a procedure library. Therefore, you can code system symbols only in statements in cataloged procedures.
For example, if the data set name on a DD statement in an INCLUDE group can vary each time the INCLUDE group is imbedded in the JCL, you can code the DSNAME parameter as a system symbol on the DD statement:




DSNAME=&DAY


If a job step is charged to different account numbers each time the procedure is executed, code the ACCT parameter on the EXEC statement as one or more system symbols or JCL symbols:



ACCT=&ALLNOS
ACCT=&FIRST&SECOND&THIRD



___ References _________________________________________________________
| |
| |
| ° For information about using symbols in nested procedures, see |
| "Using Symbols in Nested Procedures" in topic 5.4.6. |
| |
| ° For information about using symbols in started task JCL, see |
| "Using Symbols in Started Task JCL" in topic 7.4.2. |
| |
| |
|________________________________________________________________________|


Rules for Coding Symbols in JCL
Follow these rules when coding symbols in JCL:


Do not code EXEC statement parameter and subparameter keywords as names for JCL symbols.
Example: Do not code &REGION=200K or REGION=&REGION; correctly code REGION=&SIZE.


Do not code DD or JOB statement keywords as JCL symbols in procedures or jobs that are started by a START command from the operator console. This rule includes the following obsolete keywords:

AFF
SEP
SPLIT
SUBALLOC


This rule also includes DCB subparameters. For example, do not use the following DCB subparameters as symbol values:


BFALN
LRECL

For a complete list of DCB subparameters, see "DCB Subparameters" in topic 12.16.6.

When coding a JCL symbol that has the same name as a system symbol, keep in mind that the substitution text for the JCL symbol overrides the substitution text for the system symbol with the same name.

Do not use symbols to change the identifier field, name field, or operation field of a JCL statement.

Do not specify symbols in records in an in-stream data set defined by the DD * or DATA parameter. The system does not substitute text for symbols in SYSIN data.


In addition to the preceding rules for coding symbols in JCL, you also need the general rules for coding system symbols. See the section on coding system symbols in z/OS MVS Initialization and Tuning Reference.
Note: JCL does not support substringing of system symbols or JCL symbols. (Substringing allows you to specify a subset of characters in a substitution text.) Therefore, the section on substringing symbols in the general rules for coding symbols in z/OS MVS Initialization and Tuning Reference is not entirely applicable.

However, one topic of that section in z/OS MVS Initialization and Tuning Reference discusses "double ampersand notation," a technique that could be useful in coding your JCL.

For instance, suppose you want to enter a substringed symbol as a parameter of an EXEC statement of a started task. By using a double ampersand you can force MVS to defer processing the statement until after the JCL is executed and the program is running. For example, given a value of '05' for SYSCLONE, the statement could read:




//Step1 EXEC PGM=MVSCMD,PARM='F RMF,S III,MEMBER(3&&SYSCLONE(2:1))'


The MVS converter will change that to:



//Step1 EXEC PGM=MVSCMD,PARM='F RMF,S III,MEMBER(3&SYSCLONE(2:1))'


which is the JCL that gets executed. Your MVSCMD program would then take what is in the PARM on its EXEC statement and issue it as an MVS command:



F RMF,S III,MEMBER(3&SYSCLONE(2:1))


which the command symbolic substitution routine then processes and changes to:



F RMF,S III,MEMBER(35)
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic View Bookmarks
All times are GMT + 6 Hours
Forum Index -> JCL & VSAM

 


Similar Topics
Topic Forum Replies
No new posts Difference between joblib and steplib JCL & VSAM 2
No new posts Pull data using date difference betwe... DB2 6
No new posts Difference between PLT txn and schedu... CICS 3
No new posts Using the Jobname parameter in a Qual... ABENDS & Debugging 1
No new posts Timestamp difference and its average ... DB2 11
Search our Forums:

Back to Top