Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

ADDDEF Add default protection rule

This function is used to enter a rule for the assignment of default values to files and job variables in a rule container (guard). If this is the first rule to be entered then a new rule container is created. The SCOPE is set to *USER-ID in the administrative part of the guard.

If the rule container already exists, the SCOPE remains unchanged and the rule is inserted at the specified position in the rule container.

Users can only create rule containers under their own user ID. Guard administrators may create rule containers under different user IDs.

A rule container for pubset-global default protection can only be created by TSOS or a guard administrator. It must be stored under the user ID TSOS.

Macro

Operands

ADDDEF

MF = C / D / L / M / E

,PREFIX = D / <name 1>

,MACID = EFA / <name 3>

,PARAM = <name 1..8>

,DIALOG = *STD / *NO / *COGUARD / *USERID /

*CATALOG / <var: enum-of _dialog_s:1>

,ERRMSG = *NO / *YES / <var: bit:1>

,COGUARD = ’ ’ / <c-string 1..40: filename 1..24 without-gen-vers with-wild(40)> / <var: char:40>

,RULENAM = ’ ’ / <c-string 1..12: alphanumeric name 1..12> / <var: char:12>

,RULEPOS = structure(2):

(1) target: *LAST / *BEFORE / <var: enum-of _target_s:1>
(2) posnam: ’ ’ / <c-string 1..12: alphanumeric name 1..12> / <var: char:12>

,OBJECT = structure(2):

(1) objnam: ’ ’ / *TEMP /
    <c-string 1..80: filename 1..41 without-cat-gen-user-vers with-wild(80)> / <var: char:80>

(2) objtype: *FILE / <var: enum-of _object_type_s:1>

,ATTRGUA=*NONE / <c-string 1..18: filename 1..18 without-cat-gen-vers> / <var: char:18>

,UIDGUA=*ANYUID / <c-string 1..18: filename 1..18 without-cat-gen-vers>/ <var: char:18>

,GUACHK = *YES / *NO / <var: enum-of _guard_check_s:1>

For a description of the parameters MF, PREFIX, MACID, PARAM see the “Executive Macros” manual [ 16 ].

DIALOG

Dialog control
The user can use the interface in a guided dialog and can define the type of dialog that is to be performed. Dialog control has no effect in batch mode and thus corresponds to the setting DIALOG-CONTROL=*NO.

=*STD

For each selected rule container, the user can decide in interactive mode whether or not the command should be executed. However, dialog control is only performed if the name of the rule container is specified using wildcards.
It is possible to abort the command.

=*NO

The function is executed for every selected rule container without any query being issued.

=*COGUARD

For each selected rule container, the user can decide in interactive mode whether or not the function should be executed. Dialog control is performed regardless of whether or not the name of the rule container is specified using wildcards.
It is possible to abort the function.

=*USERID

This guided dialog can only be used by system administrators.
For each selected user ID, the guard administrator can decide in interactive mode whether or not the function should be executed. However, dialog control is only performed if the user ID in the name of the rule container is specified using wildcards
It is possible to abort the function.

=*CATALOG

For each selected catalog ID, the user can decide in interactive mode whether or not the function should be executed. However, dialog control is only performed if the catalog ID in the name of the rule container is specified using wildcards.
It is possible to abort the function.

ERRMSG

Message output
The user can specify whether any errors which occur should be reported in a message. This may be required if, for example, a positioning rule is not available and processing is impossible as a consequence.

=*NO

No messages are output.

=*YES

Messages are output.

COGUARD

Name of the rule container
This operand designates the name of a rule container in which a first or subsequent rule is to be entered. If the container does not already exist, it is newly created.
The container name is user-definable. However, only active rule containers are used in order of priority for the search for matching default values. These must have a predefined name.
If wildcards are used in the name of a rule container, the rule is entered in multiple containers, provided that these are accessible.
Only guard administrators are able to specify wildcards in the user ID.


CAUTION!
A value must be specified for this operand. Only uppercase characters may be used!


RULENAM

Name of the rule
This operand designates the name of the rule which is to be processed. Duplicated names are not permitted in a container.


CAUTION!
A value must be specified for this operand. Only uppercase characters may be used!


RULEPOS

Position
This operand designates the position within a rule container at which the rule which is to be processed should be inserted. The sequence of rules is decisive for the determination of the protection attribute default values.

target

Specifies the target position in the rule container

*LAST

The rule is to be appended at the final position in the rule container.

*BEFORE

The rule is to be entered in front of the rule named with RULENAM.

posnam

Name of the rule for the position specification

This operand designates the name of an existing rule in the rule container in front of which the rule which is to be processed should be positioned, if the target specification of the RULEPOS operand has the value *BEFORE. The command is rejected if no rule with this name exists.


CAUTION!
A value must be specified for this operand if the “target” partial specification in RULEPOS has the value *BEFORE. Only uppercase characters may be used!


OBJECT

Object
This operand designates the name of the object to which the rule which is to be processed is to apply.

objnam

Object name
Specifications concerning the name of the object.
The name specification may contain wildcards or may be partially qualified. It may not contain a catalog or user ID.
Alias names and declared prefixes are not permitted; the specified object name is used unchanged.


CAUTION!
Only uppercase characters may be used!


*TEMP

The rule applies to all temporary objects.

objtype

Type of object name in accordance with the SDF syntax description (see the “Commands” manual [4]).
Specifications concerning the object’s SDF name type. Currently only the SDF name type <filename> (*FILE) is supported. This is available for both files and job variables

ATTRGUA

Attributes
This operand designates the name of a guard of type STDAC which contains the attributes. The name must not contain a catalog ID. If the named guard is inaccessible at the time the function is called - because it has not been created yet or because the SCOPE prohibits the use of the guard - then the function aborts with an error message.


CAUTION!
Only uppercase characters may be used!


=*NONE

No attributes are defined in this rule. The default values for the attributes are determined from the next higher level in the hierarchy when default value assignment is performed (pubset-global or usual system default).

UIDGUA

User IDs
Name of a guard of type DEFPUID which contains the user IDs for path completion in the case of pubset-global default protection. The name must not contain a catalog ID. If the named guard is inaccessible at the time the function is called - either because it has not been created or because the SCOPE prohibits the use of the guard - then the function aborts with an error message.


CAUTION!
This operand may be specified only by TSOS or a guard administrator. Only uppercase characters may be used!


=*ANYUID

No guard for user IDs is specified. The name of the object applies to all the user IDs in a pubset.

GUACHK

Guard check
When the function is executed, the availability of the guards named in the rule can be checked if required.

=*YES

The guard check is activated. The availability of the named guards is checked. If one of the guards does not exist or if the owner of the rule container specified in the COGUARD operand is not authorized to use one of the guards, the function aborts with a corresponding return code.
It should be noted that this check is simply a ‘snapshot’ which can be invalidated if other tasks modify the guard immediately after the function has been executed.

=*NO

The guard check is deactivated.
The command is executed independently of whether the named guards are available and whether they can be used by the owner of the rule container specified in the COGUARD operand.

Macro return codes

SC2    

SC1    

Maincode

Meaning

X’00’

X’00’

X’0000’

class A: CMD0001

X’02’

X’00’

X’3000’

class A: DEF3000
Warning: The dialog control query was answered with ’Terminate’ and execution of the function was aborted.

X’02’

X’00’

X’3003’

class A: DEF3003
Warning: During wildcard processing it was not possible to process all the rule containers correctly.


X’01’

X’3100’

class B: DEF3100

X’00’
X’01’
X’02’
X’03’
X’04’
X’05’
X’06’
X’07’
X’08’
X’09’
X’0A’
X’0B’
X’0C’
X’0D’

Invalid parameter address
Invalid operand: DIALOG
Invalid operand: COGUARD
Invalid operand: RULENAM
Operand RULEPOS: invalid “target” partial specification
Operand RULEPOS: invalid “posnam” partial specification
Operand OBJECT: invalid “objnam” partial specification
Operand OBJECT: invalid “objtype” partial specification
Invalid operand: ATTRGUA
Invalid guard type for attribute guard
Invalid operand: ATTRGUA
Invalid guard type for user ID guard
Invalid operand: GUACHK
Invalid value in reserved field

X’00’

X’20’

X’3200’

class C: DEF3200

X’00’

X’40’

X’3300’

class D: DEF3300

X’00’

X’40’

X’3302’

class D: DEF3302

X’00’

X’40’

X’3303’

class D: DEF3303

X’00’

X’40’

X’3304’

class D: DEF3304

X’00’

X’40’

X’3305’

class D: DEF3305

X’00’

X’40’

X’3306’

class D: DEF3306

X’00’

X’40’

X’3307’

class D: DEF3307

X’00’

X’40’

X’3308’

class D: DEF3308

X’00’

X’40’

X’3309’

class D: DEF3309

X’00’

X’40’

X’3313’

class D: DEF3313

X’00

X’40

X’3314’

class D: DEF3314

X’00’

X’40’

X’3315’

class D: DEF3315

X’00’

X’40’

X’3318’

class D: DEF3318

X’00

X’40

X’3319’

class D: DEF3319

X’00’

X’40’

X’3320’

class D: DEF3320

X’00’

X’80’

X’3900’

class E: DEF3900

X’00’

X’80’

X’3901’

class E: DEF3901

X’00’

X’80’

X’3902’

class E: DEF3902

The precise cause of the error can be determined by calling the /HELP-MSG command with the error number specified in the table, e.g. /HELP-MSG DEF3902.