HELPLIB.HLB  —  CREATE  /NAME_TABLE
    Creates a new logical name table. The /NAME_TABLE qualifier is
    required.

    Format

      CREATE/NAME_TABLE  table-name

1  –  Parameter

 table-name

    Specifies a string of 1 to 31 characters that identifies the
    logical name table you are creating. The string can include
    alphanumeric characters, the dollar sign ($),  and the underscore
    (_).  Table names must be in uppercase letters; if you specify
    a name using lowercase letters, it will be converted to all
    uppercase. The table name is entered as a logical name in either
    the process directory logical name table (LNM$PROCESS_DIRECTORY)
    or the system directory logical name table (LNM$SYSTEM_
    DIRECTORY).

2  –  Qualifiers

2.1    /ATTRIBUTES

       /ATTRIBUTES[=(keyword[,...])]

    Specifies attributes for the logical name table. If you specify
    only one keyword, you can omit the parentheses. If you do not
    specify the /ATTRIBUTES qualifier, no attributes are set.

    You can specify the following keywords for attributes:

    CONFINE    Specifies that the table name and the logical names
               contained in the table are not copied into a spawned
               subprocess. This keyword can be used only when creating
               a private logical name table. If a table is created
               with the CONFINE attribute, all names subsequently
               entered into the table are also confined.
    NO_ALIAS   Specifies that no identical names (either logical
               names or names of logical name tables) can be created
               in an outer (less privileged) mode in the current
               directory. Unless you specify the NO_ALIAS attribute,
               the table can be "aliased" by an identical name created
               in an outer access mode. This attribute deletes any
               previously created identical table names in an outer
               access mode in the same logical name table directory.
    SUPERSEDE  Creates a new table that supersedes any previous
               (existing) table that contains the name, access mode,
               and directory table that you specify. The new table
               is created regardless of whether the previous table
               exists. (If you do not specify the SUPERSEDE attribute,
               the new table is not created if the previous table
               exists.) This attribute applies to all types of logical
               name tables except clusterwide logical name tables.

               Whether or not you specify SUPERSEDE, the following
               conditions apply:

               o  You cannot create a new clusterwide logical name
                  table with the same name and access mode as an
                  existing clusterwide logical name table until you
                  delete the existing table.

               o  If you specify a new clusterwide logical name table
                  with the same name and access mode as an existing
                  local logical name table, the new clusterwide
                  logical name table is created, and the local table
                  and its logical names are deleted.

               If you specify or accept the default for the qualifier
               /LOG, you receive a message indicating the result.

2.2    /EXECUTIVE_MODE

    Requires SYSNAM (system logical name) privilege.

    Creates an executive-mode logical name table. If you specify
    executive mode, but do not have SYSNAM privilege, a supervisor-
    mode logical name table is created.

2.3    /LOG

       /LOG (default)
       /NOLOG

    Controls whether an informational message is generated when
    the SUPERSEDE attribute is specified, or when the table already
    exists but the SUPERSEDE attribute is not specified. The default
    is the /LOG qualifier; that is, the informational message is
    displayed.

2.4    /PARENT_TABLE

       /PARENT_TABLE=table

    Requires either create (C) access to the parent table and write
    (W) access to the system directory or the SYSPRV privilege.

    Specifies the name of the parent table. The parent table
    determines whether a table is private or shareable; it also
    determines the size quota of the table. If you do not specify
    a parent table, the default table is LNM$PROCESS_DIRECTORY. A
    shareable table has LNM$SYSTEM_DIRECTORY as its parent table.
    The parent table must have the same access mode or a higher level
    access mode than the one you are creating.

2.5    /PROTECTION

       /PROTECTION=(ownership[:access][,...])

    Applies the specified protection to shareable name tables.

    o  Specify the ownership parameter as system (S),  owner (O),
       group (G),  or world (W).

    o  Specify the access parameter as read (R),  write (W), create
       (C),  or delete (D).

    For more information on specifying protection codes, see the VSI
    OpenVMS Guide to System Security.

    The /PROTECTION qualifier affects only shareable logical name
    tables; it does not affect process-private logical name tables.

2.6    /QUOTA

       /QUOTA=number-of-bytes

    Specifies the size limit of the logical name table. The size
    of each logical name entered in the new table is deducted from
    this size limit. The new table's quota is statically subtracted
    from the parent table's quota holder. The parent table's quota
    holder is the first logical name table encountered when working
    upward in the table hierarchy that has an explicit quota and is
    therefore its own quota holder. If the /QUOTA qualifier is not
    specified or the size limit is 0, the parent table's quota holder
    becomes the new table's quota holder and space is dynamically
    withdrawn from it whenever a logical name is entered in this new
    table. If the table has no quota holder and you specify /QUOTA=0,
    the table has unlimited quota.

2.7    /SUPERVISOR_MODE

       /SUPERVISOR_MODE (default)

    Creates a supervisor-mode logical name table. If you do not
    specify a mode, a supervisor-mode logical name table is created.

2.8    /USER_MODE

    Creates a user-mode logical name table. If you do not explicitly
    specify a mode, a supervisor-mode logical name table is created.

                                   NOTE

       User-mode logical names are automatically deleted when
       invoking and exiting a command procedure.

3  –  Examples

    1.$ CREATE/NAME_TABLE TEST_TAB
      $ SHOW LOGICAL TEST_TAB
      %SHOW-S-NOTRAN, no translation for logical name TEST_TAB
      $ SHOW LOGICAL/TABLE=LNM$PROCESS_DIRECTORY TEST_TAB

      In this example, the CREATE/NAME_TABLE command creates a new
      table called TEST_TAB. By default, the name of the table
      is entered in the process directory. The first SHOW LOGICAL
      command does not find the name TEST_TAB because it does not,
      by default, search the process directory table. You must use
      the /TABLE qualifier to request that the process directory be
      searched.

    2.$ CREATE/NAME_TABLE/ATTRIBUTES=CONFINE EXTRA
      $ DEFINE/TABLE=EXTRA MYDISK DISK4:
      $ DEFINE/TABLE=LNM$PROCESS_DIRECTORY LNM$FILE_DEV -
      _$ EXTRA, LNM$PROCESS, LNM$JOB, LNM$GROUP, LNM$SYSTEM
      $ TYPE MYDISK:[COHEN]EXAMPLE1.LIS

      This example creates a new logical name table called EXTRA
      that is created with the CONFINE attribute. Therefore, the
      EXTRA table and the names it contains will not be copied to
      subprocesses.

      Next, the logical name MYDISK is placed into the table EXTRA.
      To use the name MYDISK in file specifications, you must make
      sure that the table EXTRA is searched when RMS parses file
      specifications. To do this, you can define a process-private
      version of the logical name LNM$FILE_DEV to include the name
      EXTRA as one of its equivalence strings. (The system uses
      LNM$FILE_DEV to determine the tables to search during logical
      name translation for device or file specifications, and will
      use the process-private version of the logical name before
      using the default system version.) After you define LNM$FILE_
      DEV, the system searches the following tables during logical
      name translation: EXTRA, your process table, your job table,
      your group table, and the system table. Now, you can use the
      name MYDISK in a file specification and the equivalence string
      DISK4 will be substituted.
Close Help