**Please note: PARSEC Group will be experiencing a temporary website outage on Saturday, December 15th 2018.**
Support services will still be available during this time via our support line, 1-866-3PARSEC.

OpenVMS DCL Procedures

Course Code: HB517S
Length: 5 days

Schedule and Registration

Course Description

This course teaches techniques for creating DCL command procedures for automating user and operating system tasks on an OpenVMS system, including DCL syntax, design and implementation, batch processing, lexical functions, and running applications from a command structure. The course incorporates our Lab+Lecture format.

Who Should Attend

Advanced users of OpenVMS, application programmers, system programmers and system managers.

Instructor was well versed on the material and presented it in an efficient manner. Instructor is more than welcome to return and teach more classes.


No prior programming experience is assumed; however, knowledge of some programming language (BASIC, C, FORTRAN, etc.) and programming language concepts is helpful.

Attendees must have taken OpenVMS Fundamentals or have equivalent professional experience before attending this course.

Benefits of Attending this Class

Upon completion of this course, students will be able to:

  • Create, modify and debug command procedures on OpenVMS systems
  • Understand how existing command procedures work
  • Have experience with passing information between command procedures with symbols
  • Understand how error handling works with DCL

The instructor had extensive experience in VMS/DCL. I've had Paul for other VMS classes and he is a great instructor.

Course Overview

  • DCL commands and command procedures
  • @
  • Syntax of DCL command procedures
  • Design and implementation of command procedures
  • Passing parameters to command procedures
  • Batch processing
  • Use of local and global symbols
  • Locality of reference
  • Modularity of command procedures
  • Use of all OpenVMS lexical functions
  • Use of ANSI escape sequences
  • Error handling
  • Saving and restoring session context
  • Looping
  • Recursion
  • Processing list of files
  • Using multiple search streams
  • Running application programs (such as a text editor) from a command procedure

I particluarly like how the instructor went over labs, showing us first hand how to troubleshoot the many unique types of problems we may encounter with command procedures. Don't change the labs, examples & troubleshooting.

Course Contents

DCL Procedure Fundamentals
  • Uses of symbols
  • How to use symbols
Flow of Control
  • Controlling the flow of execution in DCL
  • Open
  • Read
  • Write
  • Close
  • Deck / EOD
  • Create /Mailbox
  • Delete /Mailbox
Introduction to Lexical Functions
Time Conversion Lexical Functions
String Manipulation Lexical Functions
Process Environment Lexical Functions
Modular Programming in DCL
  • What is modular programming
  • Why use it
  • How to use modular programming in DCL
File and Device Information Lexical Functions
  • Processing Lists of Files
  • Getting Information About Files
  • Logical Names
General Information Lexical Functions
  • Process Information
  • System Information
  • Queue Information
Using ANSI Escape Sequences
  • Control Characters
  • Escape Sequences
Batch Processing
  • Submit Command
  • Batch Specific Commands
Error Handling
  • Error Status
  • Error Messages
  • Error Checking
Advanced Examples
  • Lock Keyboard
  • Directory Tree Listing
  • Remove User's Account
  • Reverse Directory Delete