DSPFIL and DDS: Defining Interactive Device Designs for Legacy Apps
In the ecosystem of IBM i (AS/400) and tools like CA 2E (Synon), the combination of DSPFIL (Display File) functions and DDS (Data Description Specifications) remains the cornerstone for building interactive user interfaces. While modern web-based UI frameworks are gaining ground, many mission-critical legacy applications still rely on these technologies to define how data is presented and captured on “green screen” terminal devices. The Core Components
To understand how interactive designs are defined in this environment, it is essential to distinguish between the two primary technologies:
DDS (Data Description Specifications): This is the underlying language used to describe the format and characteristics of files on the IBM i, including physical, logical, and display files. For user interfaces, DDS defines individual fields, their screen positions (row/column), data types, and display attributes such as color or highlighting.
DSPFIL (Display File) Function: In development environments like CA 2E, DSPFIL is a specific function type used to create interactive subfile displays—essentially lists of records that users can scroll through and interact with. Defining the Interactive Design
Defining an interactive device design involves a structured process of mapping data from the database to the screen layout. 1. Establishing the Based-On Access Path
A DSPFIL function is typically built over a specific access path (a view of the database). This path dictates which records are eligible for display and in what order they appear. 2. Automatic Screen Mapping
When a DSPFIL function is first created, the system automatically places fields on the screen:
Key Fields: Positioned at the top of the screen to allow users to “position to” specific records.
Non-Key Fields: Automatically placed as selector fields within the subfile control record, enabling users to filter the list.
Subfile Records: The body of the screen displays the actual data records in a tabular format, defined by the columns mapped from the access path. 3. Customizing with Device Design Editors
Developers use an Edit Device Design panel or a Screen Designer to refine the layout. Within these editors, you can: DDS for display files – IBM