Portal | Manuals | References | Downloads | Info | Programs | JCLs | Mainframe wiki | Quick Ref
IBM Mainframe Computers Forums Index
 
Register
 
IBM Mainframe Computers Forums Index Mainframe: Search IBM Mainframe Forum: FAQ Memberlist Profile Log in to check your private messages Log in
 
Difference between symbolic parameter and an override

 
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> JCL & VSAM
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    Post subject: Difference between symbolic parameter and an override
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: 1200
Location: India

PostPosted: Fri Aug 15, 2003 2:31 pm    Post subject: Re
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: 238
Location: USA

PostPosted: Thu Aug 21, 2003 7:19 pm    Post subject:
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    Post subject:
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    Post subject: Reply to: Procedure clarifications
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    IBMMAINFRAMES.com Support Forums -> JCL & VSAM All times are GMT + 6 Hours
Page 1 of 1

 

Search our Forum:

Similar Topics
Topic Author Forum Replies Posted
This topic is locked: you cannot edit posts or make replies. PS file data should be passed as symb... d_sarlie JCL & VSAM 15 Tue Oct 03, 2017 5:18 am
No new posts Difference in SORT & ICETOOL Mohan Kothakota DFSORT/ICETOOL 5 Fri Sep 22, 2017 4:56 pm
No new posts Regarding time parameter shanthi gude JCL & VSAM 7 Mon Sep 04, 2017 2:31 pm
No new posts Paasing symbolic parameter to instrea... Robert Sample JCL & VSAM 2 Thu Jul 27, 2017 1:22 pm
No new posts JTS parameter Shashank Chaubey JCL & VSAM 2 Thu Jul 13, 2017 4:15 pm

Facebook
Back to Top
 
Job Vacancies | Forum Rules | Bookmarks | Subscriptions | FAQ | Polls | Contact Us