Operational Control Language


Operational Control Language

Operational Control Language (OCL) is the control language of the IBM System/34 and System/36 minicomputer family. Other control languages include CL (System/38 and AS/400), JCL (System/370), and REXX (AS/400). The facility of DOS to use batch files is also control language.

On the IBM S/34 and S/36, OCL statements are used to directly load user or system programs into memory, assign system resources to them, and transfer system control to them in a process called execution. The fact that a program is on a computer's disk drive does not in itself cause the computer to begin working on the program.

OCL statements can be entered from the keyboard, but are generally stored in a S/34-S/36 procedure member. A procedure member is a freely editable member within a library, not dissimilar from a source member. On the S/34-S/36, procedures are not compiled.

OCL statements begin with two slashes and a space. Here's an example of a short procedure stored on a System/36 as PROC1:

 ** Procedure PROC1
 ** 
 ** Written by Joe User 2006-05-29
 **
 ** 
 // * 'PROC1 procedure is running'
 // * ' '
 // IFF ACTIVE-'PROC2,PROC3' GOTO OKAY
 ** IFF means 'if false'
 ** ACTIVE-'nnn,nnn2' means at least one of the listed programs is currently running
 ** GOTO xxx means skip to the statement that says TAG xxx and resume processing
 // PAUSE ' Cannot continue because other Payroll is running'
 // CANCEL                                               stops execution of this procedure
 // TAG OKAY
 // IFF DATAF1-PFILE1 IFF DATAF1-PFILE2 GOTO NODELT
 // * ' Caution, Pay Data Exists'                        displays info on CRT
 // * ' '
 // * ' Press 1 to continue and DELETE existing files'
 // IFF '1'=?1R? CANCEL     A parameter is indicated by question marks surrounding a number
 ** Using 1R between question marks indicates that the parameter is required and processing
 ** waits for user input.  CANCEL means immediately go to end of job.
 // LOAD $DELET                                         $DELET is used to delete files
 // RUN
 // IF DATAF1-PFILE1 SCRATCH UNIT-F1,LABEL-PFILE1       deletes a disk file
 // IF DATAF1-PFILE2 SCRATCH UNIT-F1,LABEL-PFILE2
 // END                                              END returns control from a system program
 // LOAD PR101                                          PR101 is the sample RPG program
 // FILE NAME-PAYMAST,DISP-SHR                          PAYMAST is the payroll master file
 // FILE NAME-PFILE1,DISP-NEW,RECORDS-100,EXTEND-100    A new file PFILE1 is created
 ** 100 records are assigned to PFILE1 - if full, the system tries to extend it by another 100
 ** each time it fills.
 // RUN
 ** It's not necessary or valid to put an END statement after most user programs
 // SWITCH 1XXXXXXX                                    Causes U1 to be SETON in the RPG program
 // LOCAL OFFSET-1,DATA-'PROC1'      Places PROC1 in the Local Data Area
 // LOCAL OFFSET-101,DATA-'?USER?'   Substitutes the operator's User ID                        
 ** LDA becomes the external data structure (UDS) in an RPG program
 // LOAD PR102
 // FILE NAME-PAYMAST,DISP-SHR                         DISP-SHR means the file is shared
 ** Other programs can use PAYMAST at the same time
 // FILE NAME-PFILE,LABEL-PFILE1
 ** NAME/LABEL is used when the RPG disk file and the actual disk file names are different.
 // RUN
 // RETURN                                             Return means go to end-of-job

In this short procedure, a number of OCL statements and procedure control expressions (PCE) are used. Comments are represented by an asterisk in column 1, or can be placed after the end of a statement.


Wikimedia Foundation. 2010.

Look at other dictionaries:

  • Control (management) — Controlling is one of the managerial functions like planning, organizing, staffing and directing. It is an important function because it helps to check the errors and to take the corrective action so that deviation from standards are minimized… …   Wikipedia

  • Operational transformation — Operation Transformation redirects here. For the cross media event, see Operation Transformation (TV series). Operational transformation (OT) is a technology for supporting a range of collaboration functionalities in advanced groupware systems.… …   Wikipedia

  • language — /lang gwij/, n. 1. a body of words and the systems for their use common to a people who are of the same community or nation, the same geographical area, or the same cultural tradition: the two languages of Belgium; a Bantu language; the French… …   Universalium

  • Operational Zone of the Adriatic Littoral — Operationszone Adriatisches Küstenland (de) Operational Zone of the Adriatic Littoral Administrative district of Nazi Germany …   Wikipedia

  • Fuzzy control system — Fuzzy control and Fuzzy Control redirect here. For the rock band, see Fuzzy Control (band). A fuzzy control system is a control system based on fuzzy logic a mathematical system that analyzes analog input values in terms of logical variables that …   Wikipedia

  • Air traffic control — For the Canadian musical group, see Air Traffic Control (band). Airport Traffic Control Towers (ATCTs) at Amsterdam s Schiphol Airport, the Netherlands …   Wikipedia

  • Clandestine HUMINT operational techniques — The Clandestine HUMINT page deals with the functions of that discipline, including espionage and active counterintelligence. This page deals with Clandestine HUMINT operational techniques, also called tradecraft . It applies to clandestine… …   Wikipedia

  • Traffic Control — ➡ law enforcement * * * Introduction       supervision of the movement of people, goods, or vehicles to ensure efficiency and safety.       Traffic is the movement of people and goods from one location to another. The movement typically occurs… …   Universalium

  • Single Integrated Operational Plan — The Single Integrated Operational Plan (SIOP) was the United States general plan for nuclear war from 1961 to 2003. The SIOP gave the President of the United States a range of targeting options, and described launch procedures and target sets… …   Wikipedia

  • TUTOR (programming language) — Infobox programming language name = TUTOR (aka PLATO Author Language) paradigm = imperative (procedural) year = c. 1965 designer = Paul Tenczar Richard Blomme [from page 4 of The TUTOR Language by Bruce Sherwood, 1974.] developer = Paul Tenczar… …   Wikipedia