When confirming a field, users are automatically navigated to the next invalid document if all fields in the current document are valid. Additional actions may exist after the Confirm Field action. In edge cases, some of these actions get executed against the next invalid document instead of the current document.
For example, consider the Field Confirmed action list below where the DBQuery action simply inserts the id of the current document into a database.
Given this is the last invalid field on the current document. When confirming the field at runtime, the first 2 DBQuery actions would be executed against the current document whereas the last 3 DBQuery actions would be executed against the next invalid document.
This is currently by design. The Thin Client (TC) control tries to move to the next invalid document as soon as the Confirm Field is executed.
In the above example, 2 DB actions are configured directly after the Confirm Field action. These are all viewed as server-side actions so get grouped together. The client-side SamePage action separates the remaining 3 DBQuery actions. This means that there are 2 server-side action groups on the action list.
Therefore, the TC control waits until the server-side group of actions that includes the Confirm Field action executes before moving to the next invalid document. As a result, the subsequent SamePage & DBQuery actions get executed against the next invalid document.
NOTE: This isn't specific to confirming a field and occurs for multiple batch-editing operations in the TC control
To avoid this problem, actions can be configured before the Confirm Field action as shown below. This guarantees all actions are fired against the current document before moving to the next invalid document.
Another option would be to enable the Disable Field Navigation setting on the parent TC form. Enabling this setting means a user would not automatically be navigated to the next invalid field/document during validation. The navigation would need to be performed manually by the user.
Level of Complexity