Have you ever copied a piece of JCL made by a colleague? Did the job have a NOTIFY= parameter in the JOB card? Did your colleague suddenly tell you to fix this parameter when he or she received a notify from your job the first time you submitted it? Did you wonder why you did not receive a notify when you submitted the copied job? I have a long list of unpleasant questions regarding NOTIFY. If your answer to one of the above question was YES I have the solution for you here.
There are very few standard JCL variables available for us to use when we code our JCL. Only one of them may be used in user submitted JCL and this variable is called SYSUID and contains the userid of the user submitting the job. You may specify your NOTIFY parameter in the JOB card as NOTIFY=&SYSUID which will force the JES generated NOTIFY to be sent to the submitter of the job when the job terminates. No more receiving of notifications from other users jobs.
SYSUID may also be used in dataset names. Please remember to terminate the variable name with a dot like in procedure variables and other JCL variables. An example is DSN=&SYSUID..WORK.DATASET which specifies a dataset with the userid of the submitter as high level qualifier.
While writing this translation of the former danish tip I once again checked if the newest release of MVS allows more standard JCL variables for user submitted jobs. This was unfortunately not the case, again. In many cases some extra standard JCL variables would help us mainframe geeks a lot. On many occasions I wish for variables containing date and time specification and the name of the MVS running the job. But IBM only thinks such vital information must be available for started tasks and TSO tasks. Too bad.