DCL Command Procedures: Design and Implementation
This course starts with the basic components of command procedures and builds to describe the extensive capabilities available within command procedures.
-
DCL Command Procedures
This course covers DCL Command Procedures from the basics to advanced features and usage. It builds on topics from earlier courses such as symbols and logical names as well as diving deeper into advanced features like Lexical Functions, Execution Flow Control and File I/O. Students will be able to create complex and powerful tools to control and automate common system management and business operations.
Prerequisites: OpenVMS Fundamentals or equivalent experience.
Course Objectives
Upon completion of the course, students should be able to:
- Use programming concepts and methodology
- Design and implement command procedures
- Control the process environment from within the command procedure
- Interact with the user and other command procedures
- Control and redirect I/O
- Work with sequential files
- Work with lexical functions
Curriculum
Course Outline
Programming Concepts
- DCL as a programming language
- DCL command syntax
- Symbols and variables
- Conditional tests
- Loops
- Lexical functions
Design Considerations
- Error handling
- Preserving a user environment
- Protecting the command procedure environment
- Passing information to command procedures
- Obtaining information interactively
- Nested command procedures
- Subroutines
- Recursion
- Programming menus
- Batch considerations
String Manipulation
Eyebrow Heading
Lorem Ipsum Dolor Sit Amet
- Obtaining the string length
- Locating a string within another string
- Extracting parts of a string
- Normalizing strings
- Arrays
- Constructing strings with F$FAO
- Bit fields and special characters
- Escape sequences
- Time conversion
I/O and I/O Redirection
- Process-permanent logicals: SYS$INPUT, SYS$OUTPUT, SYS$ERROR, SYS$COMMAND
- I/O redirection
- The $ PIPE command
- Introduction to file I/O
- Reading and writing sequential files
Obtaining Process and System Information
- Process concepts
- Obtaining process information
- Wildcarding on processes
- Obtaining system and cluster information
- Wildcarding on nodes
- Obtaining console information
File Processing
- RMS file concepts
- Indexed file processing
Obtaining Device, File, and Queue Information
- Obtaining device information
- Wildcarding on device names
- File attributes
- File lookup
- Obtaining queue information
- Translating logical names
Programming Methodology
- Planning and implementing command procedures