1 DCL_Tips This help category contains information on syntax used when specifying values for various DCL commands and expressions. 2 Date_Time When a command requires a qualifier that specifies a date/time value, the value is either an absolute time, delta time, or a combination of the two. 3 Absolute Absolute time includes a specific date or time of day. An absolute date/time has one of the following formats: dd-mmm-yyyy hh:mm:ss.cc dd-mmm-yyyy:hh:mm:ss.cc "dd-mmm-yyyy hh:mm:ss.cc" TODAY YESTERDAY TOMORROW You can omit any of the trailing fields in the date or time. You can omit any of the fields in the middle of the format as long as you specify the punctuation marks, for example, "-mmm-yyyy hh". 3 Combination Combination time consists of an absolute time value plus or minus a delta time value. Combination time can use either of the following formats: "[absolute time][+delta time]" [absolute time][-delta time] You can omit the absolute time value. If you do, the delta time is offset from the current date and time. Whenever a plus sign (+) precedes the delta time value, enclose the entire time specification in quotation marks. 3 Delta Delta time is an offset from the current time to a time in the future. Delta time has the following format: "+[dddd-][hh:mm:ss.cc]" You can truncate delta time after the hour field. You can also omit any of the fields after the hour field format as long as you specify the punctuation marks. 3 Examples 1.$ PRINT/AFTER=11-DEC-1996:13 NOVEMBER_REPORT.LIS $ PRINT/AFTER="11-DEC-1996 13" NOVEMBER_REPORT.LIS Both examples specify in absolute time that the file NOVEMBER_REPORT.LIS will be printed on December 11, at 1:00 p.m. 2.$ PRINT/AFTER=11-DEC-1996:13-1:00 NOVEMBER_REPORT.LIS This example specifies in combination time that the file will be printed at 12:00 p.m. on December 11, 1996. 3.$ PRINT/AFTER="+3" NOVEMBER_REPORT.LIS This example specifies in delta time that the file will be printed 3 hours from the present time. 2 Expression When you specify an expression, DCL evaluates values based on the operations specified in the expression. The values can be integers or character strings. Some expression operators are conventional mathematical symbols, for example, plus sign (+). Others specify logical and comparison operations, and consist of letters preceded and followed by periods; for example, .EQS. Operators are assigned a precedence that determines their order of evaluation. You can use parentheses to override this order. For additional information on specifying expressions, refer to the OpenVMS User's Manual. 3 Arithmetic The operator with the highest precedence in an expression is evaluated first. Following this, the next highest operator is evaluated, and so on. Operators with the same precedence are evaluated from left to right, as they appear in the expression. Operator Precedence Description * 6 Arithmetic multiplication / 6 Arithmetic division + 5 Arithmetic plus - 5 Arithmetic minus .EQ. 4 Arithmetic equal .GE. 4 Arithmetic greater than or equal .GT. 4 Arithmetic greater than .LE. 4 Arithmetic less than or equal .LT. 4 Arithmetic less than .NE. 4 Arithmetic not equal .NOT. 3 Logical NOT .AND. 2 Logical AND .OR. 1 Logical OR 3 String The operator with the highest precedence in an expression is evaluated first. Following this, the next highest operator precedence is evaluated, and so on. Operators with the same precedence are evaluated from left to right, as they appear in the expression. Operator Precedence Description + 5 String concatenation - 5 String reduction .EQS. 4 String equal .GES. 4 String greater than or equal .GTS. 4 String greater than .LES. 4 String less than or equal .LTS. 4 String less than .NES. 4 String not equal 2 Filespec File specifications provide the system with the information necessary to identify a unique file or device. File specifications have the following format: node::device:[directory]filename.type;version The punctuation marks are required to separate the fields of the file specification. These fields are: node Network node name device Device name directory Directory name filename File name type File type version File version number 3 Example $ COPY GREEN::DISK1:[JONES]BUSINESS_REPORT.TXT;4 _To: BUSINESS_REPORT.TXT This example shows how a file is specified when using the COPY command to copy a file to the current directory from another user's directory on another node. 2 Integer DCL treats all numeric values as integers. If you do not specify an explicit radix, numeric values are interpreted as decimal. You may specify an explicit radix as follows: %D1000 decimal radix %O1357 octal radix %X12AF hexadecimal radix No blanks are allowed between the radix symbol and the number. For additional information on specifying integers, refer to the OpenVMS User's Manual. 2 Privilege Your set of privileges affects the system resources and system functions you are allowed to use. The following table describes privileges and their functions: ACNT Create a process for which no accounting is performed. ALL Allow all privileges. ALLSPOOL Allocate spooled devices. ALTPRI Increase the base execution priority for any process. BUGCHK Make bugcheck error log entries. BYPASS Access resources without regard to UIC protection. CMEXEC Change mode to Executive. CMKRNL Change mode to Kernel. DETACH Create detached processes. DIAGNOSE Issue diagnostic I/O requests. EXQUOTA Exceed resource quotas. GROUP Control execution of other processes in the same group. GRPNAM Enter names in the group logical name table. GRPPRV Allow access to files in the group and system categories. LOG_IO Issue logical I/O requests. MOUNT Issue mount volume I/O requests. NETMBX Create a network device. OPER Perform system operator functions. PFNMAP Create or delete sections mapped by page frame. PHY_IO Issue physical I/O requests. PRMCEB Create permanent common event flag clusters. PRMGBL Create permanent global clusters. PRMMBX Create permanent mailbox devices. PSWAPM Change process swap mode. READALL Bypass restrictions otherwise preventing process from reading a file. SECURITY Perform security-related functions. SETPRV Grant a process any privilege. SHARE Assign a channel to a device. SHMEM Create or delete data structures in shared memory. SYSGBL Create system global sections. SYSLCK Request locks on system resources. SYSNAM Enter names in the system logical name table. SYSPRV Access resources as if the process has a system UIC. TMPMBX Create temporary mailbox devices. VOLPRO Override protection on a volume. WORLD Control the execution of any process on the system. 3 Example $ SHOW PROCESS/PRIVILEGES 11-DEC-1996 10:15:43.79 User: J_BROWN Process ID: 123000AB1 Node: FABLES Process name: "J_BROWN" Process privileges: TMPMBX may create temporary mailbox NETMBX may create network device In this example, the SHOW PROCESS command is used to display privileges for the current process. The user J_BROWN has TMPMBX and NETMBX privileges. 2 Protection Volume and file protection is specified as follows: (SYSTEM:RWED,OWNER:RWED,GROUP:RWED,WORLD:RWED) There are four categories of protection: one for system processes, one for the owner of the file, one for other members of the owner's group, and one for members of other groups. For each category, any combination of four different types of access may be specified: R read access W write access E execute access (for execution of images) D delete access If you want to deny all access to a category, you must specify the category name without a colon, for example: /PROTECTION=(OWNER:RWE,GROUP,WORLD) For complete information on setting protections, see the OpenVMS Guide to System Security. 3 Example $ DIRECTORY/PROTECTION JUNE_REPORT.LIS Directory DISK1:[J_BROWN] JUNE_REPORT.LIS;1 (RWED,RWED,RE,) In this example, the user entered the DIRECTORY/PROTECTION command to see what the protection is for the file JUNE_ REPORT.LIS. Users in the system and owner categories have read, write, execute, and delete access, users in the group category have read and execute access, and users in the world category have no access to this file. 2 String A character string value is represented as a sequence of characters enclosed in quotation marks (" "). A quotation mark in a character string must be represented by two quotation marks. In certain contexts, the quotation marks are optional. For additional information on specifying character strings, see the OpenVMS User's Manual. 2 Symbol A symbol is an entity that has a name and a value. The name can consist of letters, digits, underscores (_) and dollar sign ($). It can be composed of up to 255 characters. The value of the symbol can be a 32-bit integer or a string with zero to 255 characters. Symbols are defined in DCL with the assignment statement. This is described under the Help topic SYMBOL_ASSIGN. 2 UIC A UIC is a user identification code that can be in either numeric or named format. When a DCL command requires a UIC specification, you can specify either format. However, the system converts all UICs to numeric format when determining a user's access to a data resource. A UIC in numeric format consists of a group number and a member number in the format: [group,member] where: group is an octal number in the range 0 through 37776 representing the group number. member is an octal number in the range 0 through 37776 representing the member number. The square brackets are required in the UIC specification. You can also omit leading zeros when specifying group and member numbers. A UIC in named format consists of a member identifier and optionally, a group identifier, as shown in either of the following: [member] [group,member] The group and member identifiers can each contain up to 31 alphanumeric characters and must contain at least one alphabetic character. The names can include the characters A through Z, dollar signs ($) underscores (_), and the numbers 0 through 9. The brackets are required in the UIC specification. The member number is unique for each user on the system, and is equivalent to the user's numeric UIC (including both the group and the member numbers). The group identifier is equivalent to only the group portion of the UIC. For additional information on specifying UICs, refer to the OpenVMS Guide to System Security.