The PROIV Timing Cycle is based on the assumption that the fields will be visited in consecutive order but a GUI screen must support the visiting of fields in random order. PROIV Functions can be written to support this concept but there are some problems that are difficult to overcome with programming.

A common technique for GUI screens is to define the Last Change Field as 0. This allows the user to visit any field in any order. If the user skips around, the underlying Timing Cycle executes all fields, detecting Mandatory Input fields, executing after field logic and reading files.

There are two problems with this technique:

EODEXIT(VALIDATE) will cause the execution of both the before and after field logic for each intervening field before the save and exit. See also .FORCEWRITE.

 

Glossary of Terms
 

Last Change Field

The field in the Timing Cycle on which all files are read and the data displayed on the screen.
 

First enterable field

The first field on the screen that can accept data.  For Paging Screens and Flat Screens with no Last Change Field (=0), exit from this field is treated as cancel
 

EOD

End of data. Instructs the Timing Cycle to save the record.
 

CANCEL

Exit screen without saving
 

EODEXIT(1)

A Logic Command that mimics the behaviour of entering EOD from the keyboard.
 

 

Comment on this topic

Topic ID: 520128