Validation of data changes and error handling
The changes that you make to work list records in a Maximo Anywhere app are either validated in the app or on the server. Validation on the client is immediate whether you are working online or offline. Validation on the server is dependent on connectivity. Regardless of the validation type, any errors that are identified are returned to the app where they must be resolved.
Validation on the client
Local data changes that are subject to field-specific business rules are typically validated as they occur in the app. Any errors that are identified must be resolved before you complete the current action or go to a different screen.
The following examples describe typical error scenarios for data changes that are validated locally in the Maximo® Work Technician app:
- If you leave a required field blank on a particular screen, an error is returned when you try to go to a different screen.
- When you report actual labor, if you enter an end date that is earlier than the start date, an error is returned when you try to close the Select Date and Time window.
- When you change the location of the work order asset to a value that does not match the location on the asset record, a warning is returned prompting you to confirm or clear the new location value.
Validation on the server
Local data changes that are subject to complex business rules must be validated with the server copy of the relevant work list record. The server copy of the work list record is the master copy. Local changes are sent to the server for processing when connectivity is available and data is synchronized. A local change is valid only if it can be applied to the server copy of the work list record without contravening any business rules. If the change is invalid, an error is generated and returned to the app.
The following examples describe typical error scenarios for data changes in the Technician app that are validated on the server:
- You create a work order in the Technician app and manually enter the asset identifier. When local data is synchronized with the server, an error is returned because the asset identifier is invalid.
- You create a labor transaction in the Technician app for a work order that is in progress. Before this change is sent to the server, you are temporarily disconnected. During that time, the same work order on the server is canceled. When connectivity is restored, local data is synchronized. An error is returned because a new labor transaction cannot be posted to a work order that is canceled.
- You cancel a work order in the Technician app. In parallel, the same work order is updated on the server by another user who creates a labor transaction. When local data is synchronized with the server, an error is returned because a work order with labor actuals cannot be canceled.
- You create a labor transaction in the Technician app for a work order that is approved. In parallel, the same work order is updated on the server by another user who reverts the status to Waiting for Approval. When local data is synchronized with the server, an error is returned because a new labor transaction cannot be posted to a work order that is not approved. Some time later, the work order is approved on the server. You resend the work order to the server without changing the labor transaction you created previously. The local change is validated on the server and the enterprise system version of the approved work order is updated with your labor transaction.
Error recovery
After synchronization, any records in the current work list that include errors are highlighted in the app. Within each record, error details are provided. The following options for recovery are available:
- Resend the changes to the server without resolving the errors. If the changes you made previously no longer conflict with the server copy of the work list record, the changes are validated and saved to server. The option to resend changes to the server applies only if you are online.
- Open the record, resolve errors by changing or deleting data that has not yet been saved to the server, and then resend the changes. If the errors were resolved, the changes are validated and saved to the server.
- Undo changes that exist in the local copy of the work list record but have not yet been saved to the server. This action restores the local copy of the record to an error-free state. The action applies to, but is not limited to, any invalid changes for which errors exist.
Error indicators in the work list and record details screens are displayed whether you are online or offline. Error indicators remain in place until the local changes are validated and saved to the server or until the local changes are undone.
Work log entries and reported actuals that are saved to the server cannot be updated or deleted.