Modernization Hub

DFH

Enhanced Definition

`DFH` is the standard three-character prefix used by IBM for most CICS Transaction Server components, modules, macros, messages, and some system transactions. It serves as a clear identifier, distinguishing CICS-specific resources from those of other z/OS subsystems or user applications. This prefix helps in organizing and managing the vast array of components that constitute the CICS environment. `DFH` is a standard prefix used by IBM to identify components, modules, messages, transactions, and resources that are part of the CICS (Customer Information Control System) Transaction Server product on z/OS. It serves as a clear indicator that the associated item belongs to or is managed by CICS, distinguishing it from other z/OS subsystems or user applications.

Key Characteristics

    • Standardized Prefix: DFH is a universally recognized prefix within the CICS ecosystem, applied consistently across various CICS releases and components.
    • Component Identification: It is used for CICS system programs (e.g., DFHFCVS for the File Control Program), CICS-supplied transactions (e.g., DFHTRNP for the terminal purge transaction), and CICS messages (e.g., DFHFC0001).
    • Macro Naming: CICS assembler macros, essential for system programming and advanced application development, also begin with DFH (e.g., DFHPC, DFHDCT TYPE=ENTRY).
    • Library and Dataset Naming: CICS load libraries, source libraries, and other datasets often incorporate DFH in their high-level qualifiers or member names (e.g., SDFHLOAD, SDFHMAC).
    • Reserved for IBM: The DFH prefix is reserved by IBM for CICS-supplied components, preventing naming conflicts with user-developed applications.

Use Cases

    • System Program Calls: When a CICS application needs to interact with a core CICS service, it might implicitly or explicitly invoke a DFH-prefixed program or routine.
    • Error Diagnosis: System programmers and operators frequently encounter DFH-prefixed messages in CICS job logs, console messages, and dumps, which are crucial for understanding CICS internal events and diagnosing problems.
    • Assembler Programming: Developers writing CICS assembler programs utilize DFH-prefixed macros to define CICS resources, communicate with CICS services, and manage program flow.
    • CICS System Administration: When configuring CICS regions, administrators interact with DFH-prefixed parameters, modules, and utilities to define the CICS environment and its operational characteristics.
    • Resource Definition: While not directly used in all resource definitions (like PROGRAM or TRANSACTION), the underlying CICS modules that process these definitions are DFH-prefixed.

Related Concepts

The DFH prefix is intrinsically linked to the CICS Transaction Server itself, as it denotes ownership and origin of core CICS components. It helps differentiate CICS modules from those of other z/OS subsystems like DB2 (DSN), IMS (DFS), or MVS (IEA). When CICS runs on z/OS, DFH-prefixed modules interact with z/OS services, and their names appear in JCL for CICS region startup (e.g., specifying SDFHLOAD in STEPLIB). For COBOL or PL/I applications, while the application programs themselves won't use DFH as a prefix, they rely on the DFH-prefixed CICS modules for their runtime environment and services.

Best Practices:
  • Avoid Naming Conflicts: Never use DFH as a prefix for custom application programs, transactions, or resources to prevent potential naming collisions with IBM-supplied CICS components, which can lead to unpredictable behavior or system failures.
  • Understand Message Formats: Familiarize yourself with common DFH-prefixed CICS messages and their meanings to efficiently diagnose and resolve CICS-related issues.
  • Refer to IBM Documentation: When encountering an unfamiliar DFH-prefixed module or message, always consult the official IBM CICS documentation for accurate and detailed information.
  • Library Management: Be mindful of DFH-prefixed libraries (e.g., SDFHLOAD, SDFHMAC) when managing CICS system libraries, ensuring correct concatenation order and maintenance levels.
  • System Programming Awareness: For system programmers, understanding the purpose of key DFH-prefixed modules is crucial for CICS customization, performance tuning, and problem determination.

Related Vendors

IBM

646 products

MacKinney Systems

54 products

UNICOM Systems

35 products

Trax Softworks

3 products

Related Categories

Transactions

29 products

email

33 products

CICS

214 products

Tools and Utilities

519 products

Administration

395 products

Security

144 products