☜ | Environment (Job)Draft MDC Standard | ☞ |
The following ssvns, specifying default environments, are defined. This clause pertains to the following five ssvns:
^$Job( processid , "DEVICE" ) | default device environment |
^$Job( processid , "GLOBAL" ) | default global variable environment |
^$Job( processid , "Job" ) | default Job environment |
^$Job( processid , "Lock" ) | default lock environment |
^$Job( processid , "ROUTINE" ) | default routine environment |
A process may always obtain and assign a value to these nodes, where processid = $Job. However, for technical reasons or security concerns, implementations may restrict access to these nodes for processids other than the current processid. An attempt to violate this restriction causes an error condition with an implementor-specified ecode beginning with “Z”.
When a process starts, the values of these ssvns are in general defined by the implementation. However, a process initiated by a Job command inherits the default environments of the initiating process, unless explicitly specified otherwise in the jobargument.
Explicit qualification of a labelref, routineref, gvn, nref, or devn with an environment overrides the default environment for that one reference.
Assigning a non-existent environment to one of these ssvns is not in itself erroneous. However, an attempt to refer to a routine, global variable, lock, or device in a non-existent environment causes an error condition with an ecode = “M26”.
Copyright © Standard Documents; 1977-2024 MUMPS Development Committee;
Copyright © Examples: 1995-2024 Ed de Moel;
Copyright © Annotations: 2003-2008 Jacquard Systems Research
Copyright © Annotations: 2008-2024 Ed de Moel.
Some specifications are "approved for inclusion in a future standard". Note that the MUMPS Development Committee cannot guarantee that such future standards will indeed be published.
This page most recently updated on 18-Nov-2023, 11:36:09.
For comments, contact Ed de Moel (demoel@jacquardsystems.com)