Rich display files™ are saved to standard DDS source members and compiled using the standard Create Display File (CRTDSPF) command. They work with conventional RPGLE programs, and rely on traditional RPG operations, such as ExFmt (Execute Format), Read, and Write. This allows RPG developers to use procedural programming techniques they already understand. Profound UI’s session controller provides all the features developers are familiar with from traditional RPG programming, including statefullness, call stacks, level checks, informative error handling, subfile processing, overlays, message files, and more.
The DDS code of a Rich Display File™ contains metadata information to represent the graphical interface. Similar to traditional display files, Rich Display Files™ are organized into separate record formats that correspond to different screens, window dialogs, and/or subfile grids. Each record format can contain a number of GUI widgets, or controls. Rich display files™ have complete versatility in regards to the presentation layer of your application and can serve as a direct replacement for traditional green-screen display files. They do not use or rely on the old 5250 text-based protocol used in legacy RPG applications.
An important aspect of Profound UI is direct binding to program fields and database files. All widgets and their properties can be tied directly to fields in your backend programs. The concept is similar to display file fields and indicators in traditional green-screen application design. It allows RPG programs to easily populate the user interface with server data, as well as control the appearance of the interface through server-side code. In addition, widgets can be linked directly to DB2 database files on the i. For example, a customer dropdown can automatically be linked to the customer master file, or be configured as a database-driven auto complete field. The user interface platform takes care of loading the data, and there is no additional code that has to be added to your backend program.