ES_DSENQSHR

ES_DSENQSHR
Enable and configure handling of the DSENQSHR keyword when it is specified on the JCL job card, and when it is not specified on the job card.
Syntax
ES_DSENQSHR={ALLOW|AUTO|USEJC|DISALLOW}
Parameters
ALLOW
For JCL jobs that have the DSENQSHR keyword specified on the JCL job card, sets DSENQSHR to the value specified on the job card. For jobs that do not have the DSENQSHR keyword specified on the JCL job card, sets DSENQSHR=ALLOW for each of those jobs.
AUTO
Use the value specified on the JCL Job card, which sets ES_DSENQSHR to ALLOW when that value is either ALLOW or USEJC, and DISALLOW otherwise.
DISALLOW
For jobs that do not have the DSENQSHR keyword specified on the JCL job card, sets DSENQSHR=DISALLOW for each of those jobs.
Default
ES_DSENQSHR=DISALLOW
Comments
When ES_DSENQSHR is not set, the value of DSENQSHR on the JCL job card is used. In this case, if DSENQSHR is set to USEJC on the job card, ES_DSENQSHR is set to DISALLOW.

When DSENQSHR is allowed on a job, exclusive dataset locks are downgraded to SHARED after performing the last step that requires an exclusive lock.

Exclusive locks resulting from a dynamic exclusive enque (for example an IDCAMS DELETE operation) are maintained as exclusive until the end of the job regardless of the DSENQSHR setting.

Use VSAM Shareoptions with VSAM datasets. You can enable these using the ES_SHAREOPT=Y environment variable.