Har du nogensinde kopieret noget JCL som en kollega har skruet sammen? Stod der en NOTIFY= parameter i job-kortet? Brokkede din kollega sig over, at dit job sendte en besked til vedkommende, da du selv submittede det første gang? Glemte du alligevel at rette NOTIFY= til dit eget userid? Ja jeg kunne blive ved med at stille irriterende spørgsmål om NOTIFY. Hvis du har svaret ja til mindst et af ovenstående spørgsmål, så er her løsningen på alle dine problemer i den anledning.
Der findes ganske få standard JCL-variable som JES automatisk stiller til rådighed for os, når vi laver JCL. Kun een af dem kan anvendes i bruger submittet JCL og denne variabel hedder SYSUID og indeholder userid for den bruger, der submitter jobbet. Du kan altså i din NOTIFY= i jobkortet skrive NOTIFY=&SYSUID og så vil den, der submitter det pågældende job altid få besked, når jobbet slutter. Slut med at få andres notify.
SYSUID kan også anvendes andre steder, eksempelvis i datasetnavne. Her skal du huske at afslutte med punktum som med procedure-variable og andre JCL-variable. Eksempelvis DSN=&SYSUID..WORK.DATASET for at få submitterens userid som high level qualifier.
I anledningen af dette tip kontrollerede jeg den nyeste release af MVS for at se om IBM endelig synes, at almindelige jobs skal have adgang til flere standard JCL-variable. Det var desværre ikke tilfældet. Det kunne ellers lette tilværelsen for os gamle JCL-tosser en hel del. Jeg har mange gange ønsket mig eksempelvis en variabel med MVS-navnet i. Men nej, den slags skal kun være forbeholdt started task JCL og TSO procedure JCL. Ærgerligt, ærgerligt.