Solved

Initialize MWO

  • 1 October 2019
  • 5 replies
  • 803 views

Userlevel 6
Badge +12
Why it is not recommend to initialize the MWO if it is not essential?
icon

Best answer by Isuru Wijeratna 1 October 2019, 12:30

View original

5 replies

Userlevel 6
Badge +21
All three platforms are designed to work online as well as offline. Therefore, it keeps the data inside the mobile by using SQLite database.
This database is created when user activates the mobile. Data related to user will be downloaded and database is created. Once it is successfully activated, User able to do their fieldwork.

If no transaction is done yet, It is OK to Initialize because there is nothing to sync back to IFS application.

Eventually users are doing their fieldwork and they update day to day work on mobile. Hence mobile has something to sync with IFS Applications. This sync process happens based on the interval which user is given. One the sync time elapsed only, data will sync to IFS application. Sync process is depends on proper internet connection. if not, data doesn’t sync and remain on the mobile. (normally end-users doesn’t care about the internet connection and they hope everything is working fine as expected).
If you initialize the mobile in above situation, you LOSS your data. There is no way to take those back. Therefore, the initialization is not recommended unless it is not highly needed.

Note:
There are some special scenarios based on the Business process to initialize the mobile ( not frequently ) to get some data from the back end server. However, if there is something to sync before initialization, those data will loss.
Userlevel 2
Badge +6
Good Answer @Isuru Wijeratna! Initialization also remove Fail Transactions which might lead to loss of work in some cases.
Userlevel 6
Badge +14
Initialize device means you wipe out all data in the local database and download fresh data set from the server. Normal scenario is user initialize the device when activate (First time) and then he get data updates automatically via push messages. Server also send batch updates by a schedule. Initialization is a costly operation in server. Specially if the use has large data set. But some cases manual initialization is required when role out major updates (Eg: publish new custom filed to the solution).

So unless required initialization is not recommended. Concurrent initialization could also affect the server performance because of server start processing data in parallel. Also this could effect on Touch App Server as well. Scheduled Activation is recommended when customer need to roll out new devices. This will reduce the impact on concurrent initializations activities. With scheduled activation, customer can pre initialize new devices in advance which can be scheduled as batches in the back office. So when a new user activate his device, he download pre initialized data from the server.
Userlevel 6
Badge +12
Always good to avoid unnecessary app inits due the reasons explained in previous replies. Also worth to look into the reason behind frequent app init. If it sync large data set you may see more problems in the server.
Userlevel 6
Badge +10

There should be a prompt that if the user has unprocessed transactions that they get a warning if they do a “force intialise”

Reply