Your Browser is not longer supported

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

{{viewport.spaceProperty.prod}}

REMOVE Delete objects from syntax file

&pagelevel(4)&pagelevel

The REMOVE statement is used to delete objects from the open syntax file. Objects in this sense are domains, programs, commands, statements, operands or operand values. The term “delete” as used below implies two operations:

  1. SDF-A removes the definition of the object to be deleted from the open syntax file. This applies to all types of syntax files.

  2. SDF-A writes into the processed user or group syntax file the information that the object to be deleted is disabled. This presupposes that, when the syntax file was opened, a group or system syntax file in which the object to be deleted is defined was specified for the GROUP-DESCRIPTIONS or SYSTEM-DESCRIPTIONS operand. In this case the command name cannot be used for another command.

The removal of mandatory operands from a system command is not allowed. This prevents a permanent syntax error during execution.

The standard SDF statements cannot be deleted.

REMOVE OBJECT=*DOMAIN removes also the commands assigned exclusively to this domain, unless the command has been defined with REMOVE-POSSIBLE=*NO.

An object defined with REMOVE-POSSIBLE=*NO (in ADD or MODIFY statements) cannot be deleted.

REMOVE

OBJECT = *PRIVILEGE(...) / *DOMAIN(...) / *COMMAND(...) / *PROGRAM(...) / *STATEMENT(...) /

*OPERAND(...) / *VALUE(...) / *CORRECTION-INFORMATION(...)

*PRIVILEGE(...)

   NAME = <structured-name 1..30>

*DOMAIN(...)

   NAME = *ALL(...) / <structured-name 1..30 with-wild> / list-poss(2000): <structured-name 1..30> 

*ALL(...

  EXCEPT = *NONE / <structured-name 1..30 with-wild> /
                list-poss(2000): <structured-name 1..30>

  ,REMOVE-ATT-COMMANDS = *YES / *NO

*COMMAND(...)

   NAME = *ALL(...) / <structured-name 1..30 with-wild> / list-poss(2000): <structured-name 1..30

*ALL(...)

  EXCEPT = *NONE / <structured-name 1..30 with-wild> /
                list-poss(2000): <structured-name 1..30>

*PROGRAM(...)

   NAME = *ALL(...) / <structured-name 1..30 with-wild> / list-poss(2000): <structured-name 1..30

*ALL(...)

  EXCEPT = *NONE / <structured-name 1..30 with-wild> /
                list-poss(2000): <structured-name 1..30>

*STATEMENT(...)

   NAME = *ALL(...) / <structured-name 1..30 with-wild> / list-poss(2000): <structured-name 1..30

*ALL(...)

  EXCEPT = *NONE / <structured-name 1..30 with-wild> /
                list-poss(2000): <structured-name 1..30>

  ,PROGRAM = <structured-name 1..30>

*OPERAND(...)

   OPERAND-L1 = *CURRENT / <structured-name 1..20>
   ,VALUE-L1 = *NO / *COMMAND-REST / *INTEGER / *LONG-INTEGER / *X-STRING / *C-STRING / *NAME /

*ALPHANUMERIC-NAME / *STRUCTURED-NAME / *FILENAME /

*PARTIAL-FILENAME / *TIME / *DATE / *TEXT / *CAT-ID / *LABEL / *VSN /

*COMPOSED-NAME / *X-TEXT / *FIXED / *DEVICE / *PRODUCT-VERSION /

*POSIX-PATHNAME / *POSIX-FILENAME / <composed-name 1..30>

   ,OPERAND-L2 = *NO / <structured-name 1..20>   
   ,VALUE-L2 = *NO / *COMMAND-REST / *INTEGER / *LONG-INTEGER / *X-STRING / *C-STRING / *NAME /

*ALPHANUMERIC-NAME / *STRUCTURED-NAME / *FILENAME /

*PARTIAL-FILENAME / *TIME / *DATE / *TEXT / *CAT-ID / *LABEL / *VSN /

*COMPOSED-NAME / *X-TEXT / *FIXED / *DEVICE / *PRODUCT-VERSION /

*POSIX-PATHNAME / *POSIX-FILENAME / <composed-name 1..30>

  ,OPERAND-L3 = *NO / <structured-name 1..20>
  ,VALUE-L3 = *NO / *COMMAND-REST / *INTEGER / *LONG-INTEGER / *X-STRING / *C-STRING / *NAME /

*ALPHANUMERIC-NAME / *STRUCTURED-NAME / *FILENAME /

*PARTIAL-FILENAME / *TIME / *DATE / *TEXT / *CAT-ID / *LABEL / *VSN /

*COMPOSED-NAME / *X-TEXT / *FIXED / *DEVICE / *PRODUCT-VERSION /

*POSIX-PATHNAME / *POSIX-FILENAME / <composed-name 1..30>

  ,OPERAND-L4 = *NO / <structured-name 1..20>   
  ,VALUE-L4 = *NO / *COMMAND-REST / *INTEGER / *LONG-INTEGER / *X-STRING / *C-STRING / *NAME /

*ALPHANUMERIC-NAME / *STRUCTURED-NAME / *FILENAME /

*PARTIAL-FILENAME / *TIME / *DATE / *TEXT / *CAT-ID / *LABEL / *VSN /

*COMPOSED-NAME / *X-TEXT / *FIXED / *DEVICE / *PRODUCT-VERSION /

*POSIX-PATHNAME / *POSIX-FILENAME / <composed-name 1..30>

  ,OPERAND-L5 = *NO / <structured-name 1..20>
  ,ORIGIN = *CURRENT / *COMMAND(...) / *STATEMENT(...)

*COMMAND(...)

   NAME = <structured-name 1..30>

*STATEMENT(...)

   NAME = <structured-name 1..30>
  ,PROGRAM = <structured-name 1..30>

*VALUE(...)
  OPERAND-L1 = *ABOVE-CURRENT / <structured-name 1..20>
  ,VALUE-L1 = *CURRENT / *COMMAND-REST / *INTEGER / *LONG-INTEGER / *X-STRING / *C-STRING / 

*NAME / *ALPHANUMERIC-NAME / *STRUCTURED-NAME / *FILENAME /

*PARTIAL-FILENAME / *TIME / *DATE / *TEXT / *CAT-ID / *LABEL / *VSN /

*COMPOSED-NAME / *X-TEXT / *FIXED / *DEVICE / *PRODUCT-VERSION /

*POSIX-PATHNAME / *POSIX-FILENAME / <composed-name 1..30>

  ,OPERAND-L2 = *NO / <structured-name 1..20>
  ,VALUE-L2 = *NO / *COMMAND-REST / *INTEGER / *LONG-INTEGER / *X-STRING / *C-STRING / 

*NAME / *ALPHANUMERIC-NAME / *STRUCTURED-NAME / *FILENAME /

*PARTIAL-FILENAME / *TIME / *DATE / *TEXT / *CAT-ID / *LABEL / *VSN /

*COMPOSED-NAME / *X-TEXT / *FIXED / *DEVICE / *PRODUCT-VERSION /

*POSIX-PATHNAME / *POSIX-FILENAME / <composed-name 1..30>

  ,OPERAND-L3 = *NO / <structured-name 1..20>
  ,VALUE-L3 = *NO / *COMMAND-REST / *INTEGER / *LONG-INTEGER / *X-STRING / *C-STRING / 

*NAME / *ALPHANUMERIC-NAME / *STRUCTURED-NAME / *FILENAME /

*PARTIAL-FILENAME / *TIME / *DATE / *TEXT / *CAT-ID / *LABEL / *VSN /

*COMPOSED-NAME / *X-TEXT / *FIXED / *DEVICE / *PRODUCT-VERSION /

*POSIX-PATHNAME / *POSIX-FILENAME / <composed-name 1..30>

  ,OPERAND-L4 = *NO / <structured-name 1..20>
  ,VALUE-L4 = *NO / *COMMAND-REST / *INTEGER / *LONG-INTEGER / *X-STRING / *C-STRING / 

*NAME / *ALPHANUMERIC-NAME / *STRUCTURED-NAME / *FILENAME /

*PARTIAL-FILENAME / *TIME / *DATE / *TEXT / *CAT-ID / *LABEL / *VSN /

*COMPOSED-NAME / *X-TEXT / *FIXED / *DEVICE / *PRODUCT-VERSION /

*POSIX-PATHNAME / *POSIX-FILENAME / <composed-name 1..30>

  ,OPERAND-L5 = *NO / <structured-name 1..20>
  ,VALUE-L5 = *NO / *COMMAND-REST / *INTEGER / *LONG-INTEGER / *X-STRING / *C-STRING / 

*NAME / *ALPHANUMERIC-NAME / *STRUCTURED-NAME / *FILENAME /

*PARTIAL-FILENAME / *TIME / *DATE / *TEXT / *CAT-ID / *LABEL / *VSN /

*COMPOSED-NAME / *X-TEXT / *FIXED / *DEVICE / *PRODUCT-VERSION /

*POSIX-PATHNAME / *POSIX-FILENAME / <composed-name 1..30>

  ,ORIGIN = *CURRENT / *COMMAND(...) / *STATEMENT(...)   

*COMMAND(...)

   NAME = <structured-name 1..30>

*STATEMENT(...)

   NAME = <structured-name 1..30>
   ,PROGRAM = <structured-name 1..30>

*CORRECTION-INFORMATION(...)

   PM-NUMBER = *ALL / list-poss(20): <alphanum-name 8..8>

OBJECT =
Type of the object to be deleted.

OBJECT = *PRIVILEGE(...)
Specifies that a privilege is to be deleted. This operand value is reserved for Fujitsu Software Development.

OBJECT = *DOMAIN(...)
Specifies that domains are to be deleted. The commands assigned to these domains are not deleted if:

  • they are assigned to at least one other domain,

  • they are defined with REMOVE-POSSIBLE=*NO or

  • the user specifies REMOVE-ATT-COMMANDS=*NO.

Domains do not contain statements, which means that no statements can be deleted when a domain is deleted.

NAME = *ALL(...)
All domains are deleted.

EXCEPT = *NONE / <structured-name 1..30 with-wild> / list-poss(2000): <structured-name 1..30>
The domains specified here are not deleted.

NAME = <structured name 1..30 with-wild / list-poss(2000): <structured-name 1..30>
The domains named or the domains whose name matches the name of the wildcard selector are deleted.

REMOVE-ATT-COMMANDS = *YES / *NO
Specifies whether the commands assigned to the domain are deleted.

OBJECT = *COMMAND(...)
Specifies that commands are to be deleted. This includes the deletion of the associated operands.

NAME = *ALL(...)
All commands are deleted.

EXCEPT = *NONE / <structured-name 1..30 with-wild> / list-poss(2000): <structured-name 1..30>
The commands specified here are not deleted.

NAME = <structured name 1..30 with-wild / list-poss(2000): <structured-name 1..30>
The commands named or the commands whose name matches the name of the wildcard selector are deleted.

OBJECT = *PROGRAM(...)
Specifies that programs are to be deleted. This includes deleting the associated statements.

NAME = *ALL(...)
All programs are deleted.

EXCEPT = *NONE / <structured-name 1..30 with-wild> / list-poss(2000): <structured-name 1..30>
The programs specified here are not deleted.

NAME = <structured name 1..30 with-wild / list-poss(2000): <structured-name 1..30>
The programs named or the programs whose name matches the name of the wildcard selector are deleted.

OBJECT = *STATEMENT(...)
Specifies that statements are to be deleted. This includes deleting the associated operands.

NAME = *ALL(...)
All statements are deleted.

EXCEPT = *NONE / <structured-name 1..30 with-wild> / list-poss(2000): <structured-name 1..30>
The statements specified here are not deleted.

NAME = <structured name 1..30 with-wild / list-poss(2000): <structured-name 1..30>
The statements / the statements whose name matches the name of the wildcard selector are deleted.

PROGRAM = <structured-name 1..30>
Name of the program to which the statements belong.

OBJECT = *OPERAND(...)
Specifies that an operand is to be deleted. This includes deleting the associated operand values. If this operand is included in a structure, it is specified by the path leading to it, i.e. by specifying the operands and operand values that introduce the structure in this path. If the name of one of the operands in the path is unique, not only within its structure, but also with respect to the higher-ranking structure (or globally within the command or statement), the path need not be completely (or not at all) specified. An operand that is not absolutely essential to identify the operand to be deleted, as well as the operand value pertaining to it, can be omitted. An operand value specified for VALUE-Li (i=1,...,5) must pertain to the operand defined by OPERAND-Li. After the first VALUE-Li=*NO, SDF-A takes the operand defined by OPERAND-Li as the one that is to be deleted. Subsequently, SDF-A does not interpret the specifications for any other OPERAND-Lj, VALUE-Lj. If a value other than *NO is specified for VALUE-Li, the value specified for OPERAND-Li + 1 must also be other than *NO.

OPERAND-L1 = *CURRENT / <structured-name 1..20>
Specifies the operand to be deleted (VALUE-L1 = *NO) or an operand in the path leading to it (VALUE-L1 î *NO). *CURRENT means that OPERAND-L1 is the current object. <structured-name> must be a globally unique operand name within the command or statement.

VALUE-L1 = *NO / *COMMAND-REST / *INTEGER / *LONG-INTEGER / *X-STRING / *C-STRING /*NAME / *ALPHANUMERIC-NAME / *STRUCTURED-NAME / *FILENAME /*PARTIAL-FILENAME / *TIME / *DATE / *TEXT / *CAT-ID / *LABEL / *VSN / *COMPOSED-NAME / *X-TEXT / *FIXED / *DEVICE / *POSIX-PATHNAME / *POSIX-FILENAME / *PRODUCT-VERSION / <composed-name 1..30>
*NO means that OPERAND-L1 is to be deleted. Otherwise, an operand value that introduces a structure is to be specified. This structure must directly or indirectly contain the operand that is to be deleted. If the operand value introducing the structure is of the data type KEYWORD-NUMBER, then the particular value defined for it is to be specified (see ADD-VALUE TYPE=*KEYWORD,...,VALUE=<c-string>). Here it must be remembered that this particular value is to be specified in each case without the prefixed asterisk. If the operand value introducing the structure is not of the type
KEYWORD-NUMBER, then the data type defined for it is to be specified.

OPERAND-L2 = *NO / <structured-name 1..20>
*NO means that OPERAND-L2 is irrelevant for the specification of the operand to be deleted. Otherwise, the name of an operand that is unique within the structure determined by VALUE-L1 is to be specified. This operand is either the one to be deleted (VALUE-L2 = *NO) or an operand that is in the path leading to the operand to be deleted (VALUE-L2 î *NO).

VALUE-L2 = analogous to VALUE-L1
*NO means that VALUE-L2 is irrelevant for the specification of the operand to be deleted. Otherwise, an operand value introducing a structure is to be specified. This structure must directly or indirectly contain the operand to be deleted. For further information see VALUE-L1.

OPERAND-L3 = *NO / <structured-name 1..20>
*NO means that OPERAND-L3 is irrelevant for the specification of the operand that is to be deleted. Otherwise, the name of an operand that is unique within the structure determined by VALUE-L2 is to be specified. This operand is either the one to be deleted (VALUE-L3 = *NO) or an operand that is in the path leading to the operand to be deleted (VALUE-L3 î *NO).

VALUE-L3 = analogous to VALUE-L1
*NO means that VALUE-L3 is irrelevant for the specification of the operand to be deleted. Otherwise, an operand value introducing a structure is to be specified. This structure must directly or indirectly contain the operand that is to be deleted. For further information see VALUE-L1.

OPERAND-L4 = *NO / <structured-name 1..20>
see OPERAND-L2.

VALUE-L4= analogous to VALUE-L1
see VALUE-L2.

OPERAND-L5 = *NO / <structured-name 1..20>
see OPERAND-L2.

ORIGIN =
Specifies the command or statement to which the operand to be deleted belongs.

ORIGIN = *CURRENT
The operand pertains to a command or statement that currently either is itself the current object or contains an operand or operand value that is the current object.

ORIGIN = *COMMAND(...)
The operand pertains to a command.

NAME = <structured-name 1..30>
Name of the command.

ORIGIN = *STATEMENT(...)
The operand pertains to a statement.

NAME = <structured-name 1..30>
Name of the statement.

PROGRAM = <structured-name 1..30>
Name of the program to which the statement pertains.

OBJECT = *VALUE(...)
Specifies that an operand value is to be deleted. This includes deleting the associated structures. The operand value to be deleted is specified by the path leading to it, i.e. by specifying the operands and operand values introducing a structure in this path. If the operand value to be deleted pertains to an operand that is not attached to any structure, the path contains only this operand. If the operand value to be deleted does pertain to an operand attached to a structure, the path also includes the higher-ranking operands as well as the associated operand values introducing the structure. If the name of one of the operands in the path is unique, not only within its structure, but also with respect to the higher-ranking structure (or globally within the command or statement), the path need not be completely specified. An operand that is not absolutely essential to identify the operand value to be deleted, as well as the operand value pertaining to it, can be omitted. An operand value specified for VALUE-Li (i=1,...,5) must pertain to the operand defined by OPERAND-Li. After the first OPERAND-Li + 1 = *NO, SDF-A takes the operand value defined by VALUE-Li as the one whose definition is to be deleted. Subsequently, SDF-A does not interpret the specifications as to any other OPERAND-Lj, VALUE-Lj. If a value other than *NO is specified for OPERAND-Li, the value specified for VALUE-Li must likewise be other than *NO.

OPERAND-L1 = *ABOVE-CURRENT / <structured-name 1..20>
Specifies the operand to which the operand value to be deleted pertains (OPERAND-L2 = *NO) or an operand in the path leading to this operand value (OPERAND-L2 î *NO). *ABOVE-CURRENT means that a value pertaining to OPERAND-L1 is the current object. <structured-name> must be a globally unique operand name within the command or statement.

VALUE-L1 = *CURRENT / *COMMAND-REST / *INTEGER / *LONG-INTEGER / *X-STRING / *C-STRING / *NAME / *ALPHANUMERIC-NAME / *STRUCTURED-NAME / *FILENAME / *PARTIAL-FILENAME / *TIME / *DATE / *TEXT / *CAT-ID / *LABEL / *VSN / *COMPOSED-NAME / *X-TEXT / *FIXED / *DEVICE / *POSIX-PATHNAME / *POSIX-FILENAME / *PRODUCT-VERSION / <composed-name 1..30>
Specifies the operand value to be deleted (OPERAND-L2=*NO) or an operand value introducing a structure in the path leading to the operand to be deleted (OPERAND-L2î*NO). *CURRENT means that VALUE-L1 is the current object. If it is not the current object and of the data type KEYWORD(-NUMBER), then the particular value defined for it is to be specified (see ADD-VALUE TYPE=*KEYWORD,...,VALUE=<c-string>). Here it must be remembered that this particular value is to be specified in each case without the prefixed asterisk. If the operand value is not of the type KEYWORD(-NUMBER), then the data type defined for it is to be specified.

OPERAND-L2 = *NO / <structured-name 1..20>
*NO means that the definition of VALUE-L1 is to be deleted. Otherwise, the name of the operand to which the operand value that is to be deleted pertains (OPERAND-L3 = *NO) or the name of an operand in the path leading to the operand value to be deleted (OPERAND-L3 î *NO) is to be specified. If an operand name is specified, this must be unique within the structure defined by VALUE-L1.

VALUE-L2 = *NO / *COMMAND-REST / *INTEGER / *LONG-INTEGER / *X-STRING / *C-STRING /*NAME / *ALPHANUMERIC-NAME / *STRUCTURED-NAME / *FILENAME /*PARTIAL-FILENAME / *TIME / *DATE / *TEXT / *CAT-ID / *LABEL / *VSN /*COMPOSED-NAME / *X-TEXT / *FIXED / *DEVICE / *POSIX-PATHNAME / * POSIX-FILENAME / *PRODUCT-VERSION / <composed-name 1..30>
*NO means that the VALUE-L2 is irrelevant for the specification of the operand value to be deleted. Otherwise, an operand value is to be specified. This operand value is either the one that is to be deleted (OPERAND-L3 = *NO) or an operand value introducing a structure in the path leading to the operand value to be deleted (OPERAND-L3 î *NO). For further information see VALUE-L1.

OPERAND-L3 = *NO / <structured-name 1..20>
*NO means that OPERAND-L3 is irrelevant for the specification of the operand value to be deleted. Otherwise, the name of the operand to which the operand value that is to be deleted pertains (OPERAND-L4 = *NO) or the name of an operand in the path leading to the operand value to be deleted (OPERAND-L4 î *NO) is to be specified. If an operand name is specified, this must be unique within the structure defined by VALUE-L2.

VALUE-L3 = analogous to VALUE-L2
*NO means that VALUE-L3 is irrelevant for the specification of the operand value to be deleted. Otherwise, an operand value is to be specified. This operand value is either the one that is to be deleted (OPERAND-L4 = *NO) or an operand value introducing a structure in the path leading to the operand value to be deleted (OPERAND-L4 î *NO). For further information see VALUE-L1.

OPERAND-L4 = *NO / <structured-name 1..20>
see OPERAND-L3.

VALUE-L4 = analogous to VALUE-2
see VALUE-L2.

OPERAND-L5 = *NO / <structured-name 1..20>
see OPERAND-L3.

VALUE-L5 = analogous to VALUE-2
see VALUE-L2.

ORIGIN =
Specifies the command or statement to which the operand value to be deleted pertains.

ORIGIN = *CURRENT
The operand value to be deleted belongs to a command (or statement) that currently either is itself the current object or else contains an operand or operand value that is the current object.

ORIGIN = *COMMAND(...)
The operand value pertains to a command.

NAME = <structured-name 1..30>
Name of the command.

ORIGIN = *STATEMENT(...)
The operand value pertains to a statement.

NAME = <structured-name 1..30>
Name of the statement.

PROGRAM = <structured-name 1..30>
Name of the program to which the statement pertains.

OBJECT = *CORRECTION-INFORMATION(...)
Reserved for Fujitsu Software Development.