Appendix E: Glossary

Overview

This glossary provides definitions for over 200 terms used throughout this textbook, covering the COBOL language, mainframe computing, file and database systems, CICS transaction processing, financial and accounting concepts, and general information technology. Terms are listed alphabetically. Cross-references to related terms are indicated in italics.


A

ABEND — Abnormal end. The termination of a program or task due to an unrecoverable error. ABENDs are identified by system codes (e.g., S0C7, S0C4) or user-defined codes. See also ABEND code.

ABEND code — A hexadecimal or decimal code that identifies the cause of an ABEND. System ABEND codes begin with "S" (e.g., S0C7 for a data exception); user ABEND codes begin with "U" (e.g., U4038). See Appendix I for a complete reference.

ACCESS MODE — A FILE-CONTROL clause that specifies how records in a file are retrieved: SEQUENTIAL (one after another), RANDOM (by key), or DYNAMIC (both sequential and random in the same program).

ACH — Automated Clearing House. An electronic funds transfer network used for direct deposits, bill payments, and interbank transfers in the United States.

ADATA — Associated data. A compiler output dataset containing detailed symbol, cross-reference, and diagnostic information used by analysis tools.

ALC — Assembler Language Coding. Low-level programming on IBM mainframes, sometimes used for performance-critical modules called by COBOL programs.

ALPHABET clause — A SPECIAL-NAMES paragraph clause that defines a custom collating sequence or maps between character sets (e.g., EBCDIC to ASCII ordering).

Alphanumeric — A data category in COBOL for items that can contain any character. Defined with PICTURE symbol X.

Amortization — The process of spreading a loan's principal repayment over scheduled periodic payments. Each payment includes both interest and principal components, with the interest portion decreasing over time.

ANSI — American National Standards Institute. The organization that standardized COBOL as ANSI X3.23 in 1968, 1974, and 1985.

API — Application Programming Interface. A defined set of protocols and tools that allows software components to communicate. Modern COBOL programs can expose or consume APIs through z/OS Connect or CICS web services.

APR — Annual Percentage Rate. The annualized interest rate charged on a loan or earned on an investment, including fees, expressed as a percentage.

Area A — In fixed-format COBOL, columns 8 through 11. Division headers, section headers, paragraph names, FD entries, and 01-level data items must begin in Area A.

Area B — In fixed-format COBOL, columns 12 through 72. Most COBOL statements and data definitions at levels other than 01 are coded in Area B.


B

Batch processing — A mode of program execution where jobs are submitted for unattended processing, typically through JCL. Batch programs process large volumes of data without user interaction, often scheduled to run during overnight processing windows.

BLL cell — Base Locator for Linkage. An internal pointer used by CICS to address data in the LINKAGE SECTION of a COBOL program. In modern CICS, BLL cells are managed automatically.

BMS — Basic Mapping Support. A CICS facility for defining and managing terminal screen layouts (maps). BMS maps define the position, attributes, and data fields displayed on 3270 terminal screens.

BMS map — A screen layout definition created with BMS macros (DFHMSD, DFHMDI, DFHMDF) that describes the fields, positions, and attributes of a CICS terminal screen.

Binary search — A search technique that repeatedly divides a sorted table in half to locate a target value. Implemented in COBOL with SEARCH ALL on a table with an ASCENDING or DESCENDING KEY.

Blocking factor — The number of logical records grouped into a single physical block on a storage device. Specified in COBOL with the BLOCK CONTAINS clause. Proper blocking improves I/O performance.

Boolean condition — See condition name.


C

CA — Control Area. In VSAM, a group of control intervals that forms the unit of space allocation. A VSAM dataset is composed of one or more control areas.

CALL statement — A COBOL statement that transfers control to another program (subprogram), optionally passing parameters BY REFERENCE, BY CONTENT, or BY VALUE.

Catalog — The z/OS master catalog or user catalog that maps dataset names to their physical locations on storage volumes. VSAM datasets must be defined in a catalog using IDCAMS.

CCSID — Coded Character Set Identifier. A number that identifies a specific character encoding scheme. EBCDIC on z/OS commonly uses CCSID 037 (US English) or 1140 (US English with Euro sign).

CI — Control Interval. In VSAM, the smallest unit of data transfer between a storage device and memory. A CI contains one or more logical records plus control information.

CI split — A VSAM operation that occurs when a new record must be inserted into a full control interval. VSAM moves approximately half the records to a new CI and adjusts the index.

CICS — Customer Information Control System. IBM's online transaction processing system that manages terminal interactions, program execution, data access, and recovery for real-time mainframe applications.

CICS region — An instance of the CICS transaction server running as a z/OS address space. Production environments typically have multiple regions for development, testing, and production workloads.

CICS web services — A CICS capability that allows COBOL programs to provide or consume web services using SOAP or REST protocols. Enables modern clients to invoke CICS transactions through standard HTTP interfaces.

CLASS-ID — A COBOL 2002 paragraph in the IDENTIFICATION DIVISION that defines an object-oriented class, specifying the class name, inheritance, and interface implementation.

CLOSE statement — A COBOL statement that terminates access to a file and releases associated system resources. Every file opened with OPEN must be closed with CLOSE.

COBOL — Common Business-Oriented Language. A programming language created in 1959 by the CODASYL committee, designed for business data processing. Standardized by ANSI/ISO in 1968, 1974, 1985, 2002, and 2014.

COBOL-85 — The 1985 ANSI/ISO COBOL standard (ANSI X3.23-1985) that introduced structured programming constructs including scope terminators, inline PERFORM, and the EVALUATE statement. The most widely implemented standard in production systems.

CODASYL — Conference on Data Systems Languages. The committee of government and industry representatives that designed the original COBOL language in 1959--1960.

Collating sequence — The order in which characters are sorted. EBCDIC and ASCII have different collating sequences: in EBCDIC, lowercase letters sort before uppercase and digits sort after letters; in ASCII, digits sort before letters and uppercase sorts before lowercase.

COMMAREA — Communication Area. A block of data passed between CICS programs or preserved across pseudo-conversational transactions via EXEC CICS LINK, EXEC CICS XCTL, or EXEC CICS RETURN TRANSID.

Compile unit — A single COBOL source program that is compiled independently to produce an object module.

Compiler directive — An instruction to the COBOL compiler that controls compilation behavior (e.g., COPY, REPLACE, BASIS). Not executable statements.

Compound interest — Interest calculated on both the initial principal and the accumulated interest from previous periods. Contrast with simple interest.

COMP — A USAGE clause value specifying binary (fixed-point) storage. On IBM mainframes, COMP items occupy 2, 4, or 8 bytes depending on the PICTURE clause size.

COMP-3 — A USAGE clause value specifying packed decimal storage. Each byte stores two decimal digits (one in each nibble), with the sign in the last nibble. COMP-3 provides exact decimal arithmetic essential for financial calculations.

COMP-5 — An IBM extension specifying native binary storage where the data item can hold any value that fits in the allocated bytes, regardless of the PICTURE clause. Often used for system interface fields.

Condition code — A numeric value (0--4095) set by a program or utility upon completion, indicating success or failure. Tested in JCL with COND or IF/THEN/ELSE parameters to control subsequent job step execution.

Condition name — A level 88 data item that defines a named boolean condition associated with specific values of its parent data item. Provides readable tests in the PROCEDURE DIVISION (e.g., IF ACCOUNT-IS-ACTIVE).

CONFIGURATION SECTION — A section of the ENVIRONMENT DIVISION that specifies the source and object computer and the SPECIAL-NAMES paragraph for environment-specific customization.

Continuation area — In fixed-format COBOL, column 7, used for continuation of non-numeric literals (indicated by a hyphen) or for comment lines (indicated by an asterisk).

Control break — A batch processing pattern where records are grouped by a control field (e.g., department, region) and summary processing occurs when the control field value changes.

Copybook — A reusable source code member containing data definitions or procedure code that is included in COBOL programs at compile time using the COPY statement. Copybooks ensure consistent data definitions across multiple programs.

COPY statement — A compiler directive that includes the contents of a copybook member into the source program at compile time, optionally with text replacement using the REPLACING phrase.

CURSOR — In DB2, a mechanism for processing a result set row by row. A COBOL program declares a cursor, opens it, fetches rows in a loop, and closes it.


D

DASD — Direct Access Storage Device. A disk storage device on a mainframe, such as an IBM 3390. DASD volumes store datasets, VSAM files, and database data.

DATA DIVISION — The third of COBOL's four divisions, containing all data definitions used by the program: FILE SECTION, WORKING-STORAGE SECTION, LOCAL-STORAGE SECTION, and LINKAGE SECTION.

Dataset — A named collection of data on a z/OS system, analogous to a file on other operating systems. Datasets have specific organizations (sequential, partitioned, VSAM) and attributes (record format, record length, block size).

DB2 — IBM's relational database management system for z/OS. COBOL programs access DB2 data using embedded SQL statements (EXEC SQL ... END-EXEC).

DBRM — Database Request Module. The output of the DB2 precompiler containing the SQL statements extracted from a COBOL source program. The DBRM is bound into a plan or package for execution.

DCB — Data Control Block. A z/OS data management structure containing file attributes (RECFM, LRECL, BLKSIZE). In JCL, DCB parameters override or supplement the attributes defined in the COBOL program.

Deadlock — A situation where two or more tasks each hold a resource needed by the other, causing all to wait indefinitely. DB2 detects deadlocks and rolls back one of the participating transactions.

Debugging — The process of finding and correcting errors in a program. COBOL debugging tools include the DISPLAY statement, the USE FOR DEBUGGING declarative, IBM Debug Tool, and compiler listing analysis.

Decimal point, implied — A logical decimal point position in a numeric data item, specified by the V symbol in a PICTURE clause. The decimal point is not stored in memory but is used by the compiler for alignment during arithmetic.

DECLARATIVES — A section of the PROCEDURE DIVISION that contains USE statements for exception handling, such as file error procedures (USE AFTER ERROR PROCEDURE ON filename).

DELETE statement — A COBOL statement that removes a record from a relative or indexed file, or (in embedded SQL) a DB2 row.

Displacement — The offset of a data item from the beginning of its containing record or group item, measured in bytes.

Double-entry bookkeeping — An accounting system where every transaction is recorded as both a debit and a credit of equal amounts, ensuring that the accounting equation (Assets = Liabilities + Equity) always balances.

DSNAME — Dataset Name. The fully qualified name of a z/OS dataset, consisting of one or more qualifiers separated by periods (e.g., PROD.PAYROLL.MASTER). Maximum 44 characters.

Dynamic SQL — SQL statements that are constructed and prepared at runtime rather than embedded in the source code at compile time. Contrast with static SQL.


E

EBCDIC — Extended Binary Coded Decimal Interchange Code. The character encoding system used on IBM mainframes. Each character occupies one byte. EBCDIC differs from ASCII in character ordering and code point assignments.

Elementary item — A data item that has no subordinate items; it is defined with a PICTURE clause. Contrast with group item.

Embedded SQL — SQL statements coded directly within a COBOL program, delimited by EXEC SQL and END-EXEC. Processed by the DB2 precompiler before COBOL compilation.

Endevor — IBM's software configuration management system for mainframe applications. Manages source code versions, promotion through environments, and audit trails.

ENVIRONMENT DIVISION — The second of COBOL's four divisions. Contains the CONFIGURATION SECTION and INPUT-OUTPUT SECTION, which specify hardware and file assignments.

ESDS — Entry-Sequenced Data Set. A VSAM file organization where records are stored in the order they are written, with no key-based access. Analogous to a sequential file with VSAM management.

EVALUATE statement — A COBOL-85 structured conditional statement that provides multi-way branching, similar to a switch/case statement in other languages. Supports WHEN, WHEN OTHER, and complex condition combinations with ALSO.

EXEC CICS — The delimiter that begins a CICS command embedded in a COBOL program, terminated by END-EXEC. The CICS translator converts these commands into COBOL CALL statements before compilation.

EXEC SQL — The delimiter that begins an embedded SQL statement in a COBOL program, terminated by END-EXEC. The DB2 precompiler processes these statements before COBOL compilation.


F

FD — File Description. A DATA DIVISION entry that describes the attributes and record layout of a file defined in the FILE-CONTROL paragraph.

Figurative constant — A COBOL reserved word representing a specific value: ZERO/ZEROS/ZEROES (numeric or character zero), SPACE/SPACES (blank), HIGH-VALUE/HIGH-VALUES (highest value in collating sequence), LOW-VALUE/LOW-VALUES (lowest value), QUOTE/QUOTES (quotation mark), ALL literal (repeating pattern).

FILE-CONTROL — A paragraph in the INPUT-OUTPUT SECTION of the ENVIRONMENT DIVISION that associates internal file names (used in FD entries) with external file references (DD names in JCL).

FILE SECTION — The section of the DATA DIVISION that contains FD entries and their associated record descriptions for files used by the program.

FILE STATUS — A two-byte data item that receives a status code after each file I/O operation, indicating success or the type of error. Checking FILE STATUS after every I/O operation is a fundamental COBOL best practice.

FILLER — A keyword used in data definitions for positions in a record that are not referenced individually. FILLER items occupy space but cannot be referenced by name in the PROCEDURE DIVISION.

Fixed-format — The traditional COBOL source format where specific columns have designated purposes: 1--6 (sequence number), 7 (indicator), 8--11 (Area A), 12--72 (Area B), 73--80 (identification). Inherited from 80-column punch cards.

Free-format — A COBOL 2002 source format that removes column restrictions, allowing code to start in any column. Indicated by the >>SOURCE FORMAT IS FREE directive or compiler option.


G

GDG — Generation Data Group. A z/OS dataset organization that maintains multiple versions (generations) of a dataset under a single base name. Each generation is identified by a relative number (0 for current, -1 for previous, +1 for new).

General ledger — The master accounting record that contains all financial transactions of an organization, organized by account number. The GL is the authoritative source for financial statements.

GIVING clause — An optional phrase in arithmetic statements (ADD, SUBTRACT, MULTIPLY, DIVIDE) and SORT/MERGE that directs the result to a specified data item.

GnuCOBOL — An open-source COBOL compiler that translates COBOL source code to C, then compiles the C code with GCC. Supports COBOL-85 and most COBOL 2002/2014 features. Used throughout this textbook for practice exercises.

GO TO statement — A COBOL statement that transfers control unconditionally to a named paragraph or section. Considered poor practice in structured programming; use PERFORM instead.

Group item — A data item that contains one or more subordinate items. Defined without a PICTURE clause; its size is the sum of its subordinate items. When used in operations, treated as alphanumeric regardless of subordinate types.


H

HANDLE CONDITION — A CICS command that establishes error handling routines for specific CICS exception conditions. Replaced in modern CICS by the RESP option on individual commands.

Hexadecimal — A base-16 numbering system using digits 0--9 and letters A--F. Used extensively in mainframe computing for memory addresses, EBCDIC character codes, and ABEND code interpretation.

HIGH-VALUE — A figurative constant representing the highest value in the current collating sequence. In EBCDIC, HIGH-VALUE is X'FF'. Commonly used to mark end-of-data conditions in processing logic.

Host variable — A COBOL data item used in embedded SQL statements to exchange data between the COBOL program and DB2. Host variables are prefixed with a colon in SQL statements.


I

ICF catalog — Integrated Catalog Facility. The z/OS catalog structure that maps dataset names to physical volume locations. VSAM datasets are always cataloged in an ICF catalog.

IDCAMS — The z/OS utility program (Access Method Services) used to define, alter, delete, print, copy, and manage VSAM datasets and catalog entries.

IDENTIFICATION DIVISION — The first of COBOL's four divisions. Contains the PROGRAM-ID paragraph (required) and optional informational paragraphs (AUTHOR, DATE-WRITTEN, etc.).

IMS — Information Management System. IBM's hierarchical database and transaction management system for z/OS. COBOL programs access IMS databases through DL/I calls.

IMS DB — The database component of IMS, providing hierarchical data storage organized as segment types within a hierarchy.

IMS TM — The transaction management component of IMS, providing online transaction processing similar to CICS but using a different architecture (message-driven).

Index — (1) A data item defined with USAGE INDEX for use with SEARCH and SET statements on OCCURS tables. (2) In VSAM, the component of a KSDS that maps key values to data record locations.

Indicator area — Column 7 in fixed-format COBOL. An asterisk (*) marks a comment line, a hyphen (-) marks a continuation line, a D marks a debugging line, and a slash (/) forces a page eject in the listing.

INITIALIZE statement — A COBOL statement that sets data items to default values: alphanumeric items to spaces, numeric items to zeros. Can selectively initialize categories with the REPLACING phrase.

Inline PERFORM — A COBOL-85 construct (PERFORM ... END-PERFORM) that executes statements between PERFORM and END-PERFORM without requiring a separate paragraph. Supports TIMES, UNTIL, and VARYING phrases.

INSPECT statement — A COBOL statement for counting and replacing characters within a data item. Supports TALLYING (counting), REPLACING (substituting), and CONVERTING (translating) operations.

Intrinsic function — A built-in function invoked with the FUNCTION keyword. Examples include FUNCTION CURRENT-DATE, FUNCTION LENGTH, FUNCTION UPPER-CASE, FUNCTION NUMVAL, FUNCTION ANNUITY.

INVOKE statement — A COBOL 2002 statement that calls a method on an object in object-oriented COBOL programs.

ISPF — Interactive System Productivity Facility. A full-screen editor and dialog manager used on z/OS for editing datasets, browsing output, submitting jobs, and navigating the mainframe environment.


J

JCL — Job Control Language. The command language used on z/OS to define jobs, specify programs to execute, allocate datasets, and control job flow. JCL statements begin with // in columns 1--2.

JES2/JES3 — Job Entry Subsystem. The z/OS component that receives jobs, schedules them for execution, and manages their output. JES2 is the more commonly used variant.

Job — A unit of work submitted to z/OS for execution, defined by JCL statements. A job consists of one or more job steps.

Job step — A single program execution within a job, defined by an EXEC statement in JCL. Each step can execute a different program and access different datasets.

Journal entry — An accounting record that documents a financial transaction, specifying the accounts debited and credited, the amounts, the date, and a description.

JSON — JavaScript Object Notation. A lightweight data interchange format supported natively in COBOL 2014 through the JSON GENERATE and JSON PARSE statements.

JSON GENERATE — A COBOL 2014 statement that converts a COBOL data structure to a JSON text string.

JSON PARSE — A COBOL 2014 statement that parses a JSON text string and populates a COBOL data structure with the extracted values.


K

KSDS — Key-Sequenced Data Set. A VSAM file organization where records are stored in order of a primary key and accessed by that key. Supports sequential, random, and dynamic access. The most commonly used VSAM organization.


L

Ledger — A book or system of accounts that records financial transactions. See general ledger.

Level number — A two-digit number (01--49, 66, 77, 88) that indicates the hierarchical position of a data item in a record structure. 01 is the highest level; higher numbers indicate subordinate items. Special levels: 66 (RENAMES), 77 (independent item), 88 (condition name).

LINKAGE SECTION — A section of the DATA DIVISION that describes data items passed to the program from a calling program or from CICS. Linkage items do not occupy storage in the called program.

Literal — A constant value coded directly in a COBOL statement. Numeric literals contain digits and optionally a sign and decimal point. Alphanumeric literals are enclosed in quotation marks.

LOCAL-STORAGE SECTION — A DATA DIVISION section (COBOL 2002) where items are allocated fresh for each invocation of the program. Unlike WORKING-STORAGE, LOCAL-STORAGE is reinitialized each time the program is called.

LOCK — A mechanism used by DB2 and CICS to prevent concurrent access conflicts. Row locks, page locks, and table locks control concurrent updates.

LOW-VALUE — A figurative constant representing the lowest value in the current collating sequence. In EBCDIC, LOW-VALUE is X'00'.

LPAR — Logical Partition. A division of a physical mainframe into multiple independent logical systems, each running its own copy of z/OS. LPARs allow a single physical machine to function as several separate systems.

LRECL — Logical Record Length. The length in bytes of a single logical record in a dataset, specified in JCL DCB parameters or COBOL FD entries.


M

Mainframe — A large, high-performance computer system designed for high-volume transaction processing, bulk data handling, and enterprise-critical applications. IBM Z series mainframes are the primary platform for COBOL production systems.

MERGE statement — A COBOL statement that combines two or more sorted files into a single sorted output file.

METHOD-ID — A COBOL 2002 paragraph in the IDENTIFICATION DIVISION that defines a method within an object-oriented class.

Microservices — An architectural style where applications are composed of small, independently deployable services that communicate through APIs. COBOL programs can participate as backend services in microservices architectures.

MOVE statement — A COBOL statement that copies data from a source to one or more destinations, applying type conversion and PICTURE editing rules as needed.

MQGET/MQPUT — IBM MQ API calls for receiving and sending messages on message queues. COBOL programs use these calls (via CALL or CICS MQ commands) for asynchronous communication.


N

Nested program — A COBOL program defined within another COBOL program (between PROGRAM-ID and END PROGRAM). Nested programs can access the containing program's data if declared GLOBAL.

NEXT SENTENCE — An obsolete COBOL statement that transfers control to the first statement after the next period. Replaced by CONTINUE in COBOL-85 structured code. Avoid use in new programs.

Numeric edited — A data category for numeric items formatted for display, using PICTURE editing symbols such as Z (zero suppress), * (check protect), $ (currency), and comma/period (insertion).


O

OBJECT-COMPUTER — A CONFIGURATION SECTION paragraph that specifies the computer on which the compiled program will run.

OCCURS clause — A DATA DIVISION clause that defines a table (array) by specifying the number of times a data item is repeated. Supports fixed occurrences, DEPENDING ON for variable-length tables, and KEY IS for ordered tables.

OPEN statement — A COBOL statement that makes a file available for processing. Modes include INPUT (read only), OUTPUT (write new), I-O (read and update), and EXTEND (append).

Overflow — A condition where an arithmetic result exceeds the capacity of the receiving data item. Detected by the ON SIZE ERROR phrase in COBOL arithmetic statements.


P

Package — In DB2, a bound collection of optimized SQL statements from a single DBRM. Packages provide better performance isolation than plans for applications with many programs.

Packed decimal — See COMP-3.

Paragraph — A named unit of the PROCEDURE DIVISION consisting of a paragraph name followed by one or more sentences. Paragraphs can be invoked with PERFORM.

PDS — Partitioned Data Set. A z/OS dataset organized as a directory of members, similar to a folder containing files. Source code, copybooks, JCL, and load modules are commonly stored in PDS or PDSE members.

PDSE — Partitioned Data Set Extended. An enhanced version of PDS that supports dynamic directory expansion, member-level sharing, and program objects.

PERFORM statement — A COBOL statement that transfers control to a paragraph, section, or inline code block, with optional looping (TIMES, UNTIL, VARYING). The primary structured programming construct in COBOL.

PICTURE clause — The COBOL data definition clause that specifies the size, type, and format of an elementary data item using symbolic characters (9, A, X, S, V, P, Z, , $, +, -, etc.). See Appendix F* for a detailed reference.

Plan — In DB2, a bound collection of one or more packages or DBRMs that authorizes a COBOL program to execute its embedded SQL statements.

Precompiler — A processor that translates embedded non-COBOL statements (such as EXEC SQL or EXEC CICS) into standard COBOL CALL statements before the COBOL compiler processes the source.

PROCEDURE DIVISION — The fourth of COBOL's four divisions, containing the executable logic of the program organized into sections and paragraphs.

Program-ID — The required paragraph in the IDENTIFICATION DIVISION that specifies the name of the COBOL program.

Pseudo-conversational — A CICS programming technique where a transaction ends after sending a screen to the user and restarts when the user responds. This frees CICS resources between user interactions, dramatically improving scalability.


Q

QSAM — Queued Sequential Access Method. A z/OS access method for sequential datasets that uses buffering to overlap I/O with processing, improving throughput for sequential file operations.


R

RACF — Resource Access Control Facility. IBM's z/OS security system that controls access to datasets, transactions, and system resources through user IDs, groups, and permission profiles.

READ statement — A COBOL statement that retrieves the next sequential record or a record by key from a file.

RECFM — Record Format. A z/OS dataset attribute specifying how records are organized: F (fixed), V (variable), FB (fixed blocked), VB (variable blocked), U (undefined).

RECORD CONTAINS — An FD clause that specifies the length or length range of records in a file.

REDEFINES clause — A DATA DIVISION clause that allows two or more data items to occupy the same storage location, enabling different interpretations of the same bytes.

Reference modification — A COBOL technique for accessing a substring of a data item using the syntax data-name(start:length). For example, WS-NAME(1:5) accesses the first five characters.

Referential integrity — A database constraint ensuring that foreign key values in one table correspond to primary key values in a related table. Enforced by DB2 to prevent orphaned records.

RENAMES clause — A level 66 clause that provides an alternative grouping of elementary items within a record, allowing a contiguous range of items to be referenced by a single name.

REPLACING phrase — A phrase used with COPY (to substitute text in a copybook), INITIALIZE (to set specific data categories to specified values), and INSPECT (to replace characters).

RESP — A CICS option that receives the response code from a CICS command, enabling inline error handling without HANDLE CONDITION.

REST — Representational State Transfer. An architectural style for web services that uses HTTP methods (GET, POST, PUT, DELETE) and standard data formats (JSON, XML). COBOL programs can provide REST services through z/OS Connect.

RETURN-CODE — A special register that contains the value returned to the operating system or calling program when a COBOL program terminates. Corresponds to the condition code tested in JCL.

REWRITE statement — A COBOL statement that replaces an existing record in a file. The record must have been previously read (for sequential files) or located by key (for indexed files).

ROLLBACK — A DB2 operation that reverses all database changes made since the last COMMIT, restoring the database to its previous consistent state.

ROUNDED phrase — An option on COBOL arithmetic statements that rounds the result to the precision of the receiving data item instead of truncating.

RRDS — Relative Record Data Set. A VSAM file organization where records are accessed by their relative record number (position) within the file.


S

SCLM — Software Configuration and Library Manager. An older IBM mainframe source code management system, largely replaced by Endevor and Git-based systems.

Scope terminator — A COBOL-85 keyword that explicitly ends a statement: END-IF, END-PERFORM, END-READ, END-EVALUATE, END-COMPUTE, END-CALL, etc. Scope terminators replaced the implicit period termination of earlier COBOL standards.

SEARCH statement — A COBOL statement for searching a table defined with OCCURS. SEARCH performs a sequential search; SEARCH ALL performs a binary search on a sorted table.

Section — A named unit of the PROCEDURE DIVISION or DATA DIVISION. In the PROCEDURE DIVISION, a section consists of one or more paragraphs. Sections can be invoked with PERFORM.

Sequential file — A file organization where records are stored and accessed in the order they were written. The simplest and most common file organization in COBOL batch processing.

Sign overpunch — An EBCDIC convention where the sign of a numeric display item is stored in the high nibble of the last byte, sharing the byte with the last digit. See Appendix J.

Simple interest — Interest calculated only on the original principal amount. Contrast with compound interest.

SMF — System Management Facility. A z/OS component that collects system and application performance data in SMF records, used for accounting, capacity planning, and performance analysis.

SORT statement — A COBOL statement that sorts records from one or more input files and writes the sorted records to an output file. Supports ascending/descending key fields and input/output procedures.

SOURCE-COMPUTER — A CONFIGURATION SECTION paragraph that specifies the computer on which the program is compiled.

SPACE — A figurative constant representing one or more blank (space) characters.

SPOOL — Simultaneous Peripheral Operations Online. The JES2/JES3 mechanism that manages print and punch output by directing it to a spool dataset rather than directly to a printer, allowing deferred and controlled output processing.

SQL — Structured Query Language. The standard language for relational database access. COBOL programs use embedded SQL to access DB2 data.

SQLCA — SQL Communication Area. A data structure included in COBOL programs (via EXEC SQL INCLUDE SQLCA) that receives status information after each SQL statement. The SQLCODE field indicates success (0), not found (100), or error (negative).

SQLCODE — A field in the SQLCA that contains the return code from the most recent SQL statement: 0 (success), 100 (no data found), negative value (error).

START statement — A COBOL statement that positions the file pointer for subsequent sequential READ operations on an indexed or relative file.

Static SQL — SQL statements embedded in source code at compile time and bound into a plan or package. The SQL text is fixed; only host variable values change at runtime.

STRING statement — A COBOL statement that concatenates partial or complete contents of multiple data items into a single data item, with delimiter control and pointer tracking.

Subprogram — A COBOL program designed to be invoked by other programs using the CALL statement. Subprograms receive parameters through the LINKAGE SECTION and the USING phrase.

SYSOUT — A JCL DD parameter that directs output to the JES spool for printing or viewing, rather than to a dataset.


T

Table — In COBOL, a data structure defined with the OCCURS clause, analogous to an array. Tables can be one-dimensional, two-dimensional, or three-dimensional.

Transaction — (1) In CICS, a unit of work identified by a four-character transaction ID (TRANSID). (2) In DB2, a logical unit of work bounded by COMMIT and ROLLBACK operations.

TRANSID — Transaction Identifier. A four-character code that identifies a CICS transaction. When a user enters a TRANSID, CICS loads and executes the associated program.

Trial balance — An accounting report that lists all general ledger accounts with their debit or credit balances, verifying that total debits equal total credits.

TSO — Time Sharing Option. A z/OS component that provides interactive command-line access to the mainframe. TSO is the underlying environment for ISPF.

TWA — Transaction Work Area. A CICS area allocated for the duration of a task, available to all programs within that task.


U

UNSTRING statement — A COBOL statement that splits a data item into multiple receiving fields based on delimiter characters, with optional counting and pointer tracking.

USAGE clause — A DATA DIVISION clause that specifies the internal storage format of a data item: DISPLAY (character), COMP/BINARY (binary), COMP-3/PACKED-DECIMAL (packed decimal), COMP-5 (native binary), INDEX, POINTER.

User ABEND — An ABEND initiated by a program through a z/OS or CICS call, using an application-defined code (0--4095) to indicate a specific error condition.


V

VALUE clause — A DATA DIVISION clause that specifies the initial value of a data item in WORKING-STORAGE or LOCAL-STORAGE. VALUE cannot be used with items in the FILE SECTION (except for level 88 condition names).

Variable-length record — A record whose length varies from record to record. Defined in COBOL with RECORD IS VARYING or RECORD CONTAINS min TO max, and in JCL with RECFM=V or RECFM=VB.

VSAM — Virtual Storage Access Method. An IBM z/OS file management system that provides three organizations: KSDS (key-sequenced), ESDS (entry-sequenced), and RRDS (relative record). VSAM offers superior performance and flexibility compared to non-VSAM access methods.


W

WHEN phrase — A clause used in the EVALUATE statement to specify a condition and the actions to take when that condition is true. Multiple WHEN phrases provide multi-way branching.

WITH DUPLICATES — A phrase on the ALTERNATE KEY clause that allows an alternate index to have duplicate key values.

WORKING-STORAGE SECTION — A section of the DATA DIVISION where program variables, constants, switches, and work areas are defined. Items in WORKING-STORAGE retain their values across multiple invocations of the program (in CICS or subprogram contexts).

WRITE statement — A COBOL statement that outputs a record to a file. For sequential files, records are written at the end of the file. For indexed and relative files, records are inserted by key or relative number.

WTO — Write To Operator. A z/OS system service that sends a message to the operator console, commonly used for monitoring and alerting.


X

XML — Extensible Markup Language. A data interchange format supported natively in COBOL 2014 through the XML GENERATE and XML PARSE statements. Widely used in enterprise integrations.

XML GENERATE — A COBOL 2014 statement that converts a COBOL data structure into an XML document.

XML PARSE — A COBOL 2014 statement that processes an XML document and invokes a processing procedure for each XML event encountered.


Z

z/Architecture — The 64-bit instruction set architecture used by IBM Z series mainframes. Provides hardware support for packed decimal arithmetic, cryptographic operations, and other enterprise features.

z/OS — IBM's flagship mainframe operating system. Provides batch processing, online transaction management, database services, security, and workload management for enterprise applications.

z/OS Connect EE — z/OS Connect Enterprise Edition. An IBM product that enables RESTful API access to z/OS subsystems including CICS, IMS, and DB2, allowing COBOL programs to participate in API-driven architectures.

ZERO — A figurative constant representing the value zero. ZEROS and ZEROES are synonyms. When moved to a numeric item, produces a numeric zero; when moved to an alphanumeric item, fills with the character "0".

Zoned decimal — The default DISPLAY format for numeric data in EBCDIC, where each digit occupies one byte. The high nibble of each byte contains a zone portion (F for most digits), and the last byte's zone nibble contains the sign (C for positive, D for negative). See sign overpunch.