Solved

MWO sync when app version or user device changes


Userlevel 5
Badge +9

We are using IFS 9.

Some of the sync tables for MWO use a combination of user/installed app/device as a unique identifier for sync transactions/data. We wanted to understand what happens if the following information changes before the transactions/data are synced …

  • The user’s install app version changes
  • The user’s device is disabled and a new active device is created

Example

A user has failed transactions, out messages, and push queue records associated with app version 3.17 and device 123. These transactions/messages have not synced yet.

  • The active MWO app version changes from 3.17 to 3.18
  • The user device 123 is disabled. Device 456 is created and is the only “active” device for the user.

What happens to the transactions/data and out messages associated with app ver 3.17 and device 123? Will they still sync?

icon

Best answer by James Ashmore 14 July 2022, 11:09

View original

5 replies

Userlevel 6
Badge +16

The Application Version displays in the format {Major}.{Minor} and only one version within each major version can be Active at any given time.  This is handled via the Touch Apps Server console and is displayed here for information purposes only.

The actual data doesn’t have a version.

So if Failed Transactions exist and the User installed an updated App then the transactions will continue to queue up for the same Work Order regardless of App Version.

If however the User Initializes the App all Failed Transactions will be moved to Deleted Transactions (which cannot be reprocessed) and the data on the device will be reset to the server state. For this reason it is important to manage failed transactions as soon as they occur.

Cheers

James

 

Userlevel 5
Badge +9

Thank you for your response. 

I just want to clarify.

  1. The failed transaction below is for a user with Device ID 167 and App Version 3.18
  1. A new App Version, 3.19, is added to the Applications table before anything is done with the Failed Transaction.
  1. The App Version for the user Device ID 167 is changed to 3.19.

 

  1. Will we still be able to reprocess the Failed Transaction now that the App Versions are different?
Userlevel 6
Badge +16

Yes, this is just a minor version update (3.18 to 3.19) so failed transactions will be able to be reprocessed.

Userlevel 5
Badge +9

Thank you again for the response. I have a related question, You mentioned that our users having multiple devices may be a bug. https://community.ifs.com/service-touch-apps-mwo-mro-43/allow-multiple-devices-for-touch-apps-23467

 

What will happen to failed transactions that are not yet addressed and out messages that have not yet synced if a new active device is created for a user?

Examples

A user has 2 devices. 

  • Device ID 1266 was originally the active device. It is now Disabled.
  • Device ID 1267 was created and is now the Active device.

The user has Out Messages for both devices.

  • Some Out Messages were created for Device ID 1266 when it was active.
  • Some Out Messages were created for Device ID 1267.
  • Will the out messages for both devices sync to his mobile app? Or only the ones created from the active device, Device ID 1267?

 

The user has Failed Transactions for both devices -- Device ID 1266 and 1267.

  • Can the failed transactions for both devices be reprocessed? Or only the ones created for the active device, Device ID 1267?

 

Userlevel 6
Badge +16

Regarding the Out Messages. There is a background job that will remove the Out Messages for Disabled devices so these shouldn’t be something to worry about.

Regarding the Failed Transactions. This is something to look at. When the new device is created and the data Initialized for the User the Failed Transactions for the first device should be moved to Deleted Failed Transactions with the message “Deleted due to Initialization” so you should only see Failed Transactions for the new device. If you are seeing Failed Transactions on both devices/versions can you include this information in the case you raise please as it could all be related.

Cheers

James

 

Reply