Page 1 of 1

Delete a System Symbol Dynamically

PostPosted: Mon Oct 31, 2011 1:44 pm
by gidonlando
Hello all,
I have been requested by our DB2 team to add new system symbols to a z/OS 1.9 system.
My plan is to copy an updated IEASYMxx member and to run a job that uses IEASYMUP to add the symbols dynamically.
Usual practice in our site when making changes is to create a set of jobs that undo all changes made and restore the system to the state it was at before the changes.
For that set of jobs I want to dynamically delete the symbols I've created. I couldn't find a way of deleting symbols using IEASYMUP and couldn't find another way of doing it, any suggestions?

Re: Delete a System Symbol Dynamically

PostPosted: Tue Nov 01, 2011 12:44 pm
by mongan
As a system programmer I do not like at all what you are trying to do. This is just a very bad idea. IEASYM is not something you just "play" with. Why don't you just use a member in your proclib and set values? We generate this member after an IPL from our IEASYM values.
You can include it in your Jobs:
// INCLUDE MEMBER=SYMDEF

//* SYMDEF'S --- STAND:30 Oct 2011 --- 01:55:33
// SET CATVL=O9PMC1,
// JESVL=O9PJS,
// MACHINE=ZOS9PROD,
// OMVS=F0,
// PAC=CPAC,
// PPRFX=O9,
// PRDVL=O9PPD1,
// SYSALVL=2,
// SYSCLONE=P1,
// SYSENV=P,
// SYSNAME=Z9P1,
// SYSPLEX=PLEX1,
// SYSR1=O9PRS1,
// SYSR2=O9PRS2,
// SYSR3=O9PRS3,
// SYSVNRN=V1R9,
// VMUSERN=S390PROD

Re: Delete a System Symbol Dynamically

PostPosted: Tue Nov 01, 2011 2:47 pm
by gidonlando
Hello Mongan, thank you for your reply.
I don't understand your suggestion. Is SYMDEF a member that is generated automatically after IPL that then sets values in the system?
If so, how does this procedure work?
What is standard practice in your site when Updating/Creating system symbols?
Just to be safe I want to make sure I described my plan correctly:
- I make a copy of IEASYMxx and add the new symbols (make a backup of last working IEASYMxx as well).
- Run a job that copies updated IEASYMxx to SYS1.PARMLIB and that craetes the symbols dynamically in the system.

Re: Delete a System Symbol Dynamically

PostPosted: Tue Nov 01, 2011 8:22 pm
by mongan
I did not go into detail with my answer, just made suggestions. We have a member in our proclib called symdef that sets all the values that the ieasym.. has in it, all you have to do is include this in any job where you want to use the values. Remember, only parmlib and proclib (started tasks) members will resolve the variables used, jobs do not do this. That is why we use the proclib symdef member so that any job from any library can use the symdef variables. As I already said, I shudder at the thought of you changing the IEASYM.. member, if anything goes wrong you may not be able to IPL your system any more!