Field related features
A list of some field related features in the language.
Field Related Enhancements
Update variables with current field buffer
The function fgl_dialog_update_data() can be called during an input statement to write back any field buffer data which are not committed at this stage.
Cursor position retrieval and manipulation
The field cursor position can now be fully controlled within 4GL.
Ignore field conditions during navigations
To increase the flexibility and behaviour when the user navigates through fields on a form, the function fgl_dialog_fieldorder() was introduced to control the navigation field order sequence. If any BEFORE and AFTER field validations should be triggered when jumping from a lower field to a higher field (i.e. when the cursor is located in field f1 and the user clicks field 5), the before and after field validations for field f2-4 can either be executed or ignored.
fgl_dialog_update_data()
This function writes all data from non-commited field buffers to their corresponding variable without leaving the INPUT statement.
Selection of Disabled Fields
It is possible to specify whether the user should be able to select disabled fields e.g. for copy/paste operations.
Field Border Style
4.3 allows the choice of three field border styles which can be applied to all fields or individual fields. The three border style property values are 3D, FLAT and NONE.
Field Order Logic
The function fgl_dialog_field_order() and the fglprofile setting dialog.field_order are used to toggle between two different sets of events that occur when moving from one field to another. 
The normal behaviour is that traversing from one field to another will apply some before and some after logic for all other fields between them. This behaviour can be altered where only the after logic of the current field and the before logic of the destination field is triggered.
This allows the user to freely navigate between fields using the mouse avoiding unnecessary field events.