Synchronization steps: Difference between revisions

Jump to navigation Jump to search
(→‎Uploading local changes: link conflict resolution, remove redundant info)
Line 31: Line 31:
=== Special considerations ===
=== Special considerations ===
* Lookups may present a problem. They may point to a record that does not exist on the server.
* Lookups may present a problem. They may point to a record that does not exist on the server.
* Record state. E.g. closed quote cannot be updated.
* In some cases, the state of record cannot be updated, for example a closed quote.
* We may create a new record on the server, but do not get any confirmation. Next time we try to re-create an existing record.
* We may create a new record on the server, but do not get any confirmation. Next time we try to re-create an existing record.
* Same for the update
* Same for the update
* Some entities such as quote require special processing
* Some entities such as quote require special processing
* Conflicts
* [[Conflict resolution|Conflicts]]
** We may update server record that was meanwhile deleted on the server.
** We may update server record that was meanwhile deleted on the server.
** Both server and client edited the same record.
** Both server and client edited the same record.
You can configure how to resolve conflicts for each entity via Woodford. Within an app project, open an entity and click '''Show Fields''', then change the value of the '''On Conflict''' parameter:
* ConflictDeviceWins - Server changes are overwritten; only changed entity properties are uploaded to the server
* ConflictDeviceWinsFullUpload - Same, but all properties are uploaded
* ConflictUserAction - Resolves conflict by taking no action. User must decide (SyncErrorsForm)
* ConflictServerWins (default setting)


=== The upload ===
=== The upload ===

Navigation menu