Rules Engine Validation Moments
As the user enters or changes data using the default USoft application interface, field values and data manipulations are validated using a system of four validation moments:
Field validation and group validation do not take place if manipulations are executed in the SQL Command dialog or by using the SqlScript() method. They also do not take place within non-USoft applications that connect to the USoft Rules Engine via ODBC.
Field validation occurs when the user leaves a field after manipulating (newly entering, or changing) the column value in that field. It also occurs when the user performs another action that implies that field manipulation has finished and is ready for validation. For example, when the user issues a commit command by choosing File, Save All from the menu bar.
Group validation occurs when all fields belonging to a group have been entered, and the user leaves the last entered field within that group. A group is a set of fields that either:
A unique key group consists of only one field if the key is single-column. It consists of more than one field if the key spans more than one column. The same applies to foreign key groups and groups of joined column fields.
Do not confuse group validation with GUI control groups. These two issues are entirely unrelated.
In the default application interface, record validation occurs when the user:
Record validation does NOT occur when the user starts typing in another info window, in a lookup window, in a subtype window, or in a secondary window.
Transaction validation occurs when the user issues a commit command by choosing File, Save All from the menu.
If the user moves out of a field to the next field within the record, only field validation occurs, followed by group validation if the move is across a group boundary. Likewise, if the user moves out of a field to the next record, field validation occurs, followed by group validation (if applicable) and record validation.