Concept of Synchronization Packages
Data Storage On Mobile Device
Anveo Mobile App stores data encrypted on the device, to allow work even without network connection (off-line). What data is sent to the device is defined by Anveo Synchronization Packages. Each Anveo Mobile App User is assigned to one or more Synchronization Packages (see here). Each additional assignment is optional and additive.
Always Available App
Anveo Mobile App is designed to be always available for the user. This is very important for business apps. This is why Anveo Mobile App does not use two different modes for being on-line or off-line. All required business processes are executed locally first. This guarantees a fluid working process even with unreliable connections because you never know in advance when network coverage will be bad.
Of course, you can send and receive important data in short terms from Dynamics. This is always done using a synchronization process with a local data storage.
Amount of Data
Because Anveo Mobile App always stores data on the mobile device, maximum amount of data is limited. However, a smart phone or tablet-PC is no database server, so you cannot load a complete Dynamics database onto your device. But Anveo Client Suite provides with Synchronization Packages a very flexible set-up to define the required data. This includes field selections and various filter options.
The maximum amount of data depends on several facts:
- Number of tables
- Number of fields in tables
- Number of of records in tables
- Number of FlowFields
- Number and size of long texts and pictures in BLOB fields
- Number of used languages
- Number of used companies
- Processor speed of mobile device (CPU)
- Device memory (RAM)
- Internet speed: WiFi, LTE, HSDPA, UMTS, EDGE or GSM?
- Resources of Windows Server for SQL Servers, Anveo Server and NAV Web Services (CPU, RAM, disc speed)
- Complexity of Synchronization Packages
Because these values may vary a lot, we cannot give a universal answer to what the maximum amount of data is. It has to be tested for each individual scenario in a test database with (a copy of) live data. Then, you can try out your own data using your own devices whether hard- and software fits user’s requirements. Anveo provides free test licenses to do so.
This test environment should be used as well to test general device compatibility of the Anveo Mobile App. Because of a high combination of hard- and software, Anveo cannot give a guarantee for an error-free app for any existing device. This must be tested in advance by yourself. Of course, it is our interest to fix issues with special operating system versions or devices if technically possible with reasonable effort. In this case, please contact our support team.
Initialization and Synchronization
At the first connection of the user or the device, all required data in addition to structural data are transmitted first. This happens during initialization of Anveo Mobile App. Additional connections are used to synchronize in a few seconds the automatically detected changes since the last connection and transmit only the changed data. Thus, the data to be transmitted can be considerably reduced, which saves time and data volume.
Concept of Data Transfer
The Anveo Mobile App must be installed as an app on your smart phone or tablet PC. It connects via internet to the Anveo Server to run the initialization and synchronisation process. The Anveo Server should be secured via a firewall to allow required ports only. The Anveo Server sends the data to the Dynamics Web Service that processes the request.
The Anveo Mobile App records all changes of the user in strict chronological order. This task list will be processes by the Dynamics Web Service in exactly the same order upon synchronization. First, all changes from the user will be sent from the device to Dynamics. Then the Anveo Delta Server calculates the changes for this user. This individual update packages will be send back to the user.
Data Definition In Synchronization Packages
For the Anveo Mobile App synchronization packages are required for operation that contain the tables to be transferred from Dynamics. These data are transferred to a mobile device, received, processed, and sent back to Dynamics as needed. Each synchronization package contains tables of Dynamics that can be connected with filters, a hierarchy and a company to a data packet.
Initialization Creates Device Entry for Anveo User
During first connection of an Anveo User called initialization, Anveo Delta Server automatically creates a pair of user and device. This is used to track changes for local database copies of the app. This allows a fast synchronization by sending out changes only. Anveo Delta Server stores sent data for each user and device for a fast calculation of changes. The amount of data required is highly optimized, only primary key fields are stored for each user and device.
In Anveo User setup, you can manage all Anveo User Devices (see here).
If you delete a local database in the app, the corresponding Anveo User Devices is not deleted automatically in Dynamics.
If you delete a Anveo User Device in Dynamics, the Anveo User cannot synchronize any more, but the local database on the mobile device remains intact.
In future versions of Anveo Mobile App an automatic delete message might be implemented to allow remote deletions.
If a user deletes a database on the mobile device and reconnects afterwards with same device, a new Anveo User Device entry will be created in Dynamics. The previous Anveo User Device with same Device ID will be deleted automatically.
If you use virtual devices (emulators) for development, Device ID might be the same for multiple emulator instances. This means, the last user that runs an initialization can synchronize only. If you want to turn of automatic clean-up of device entries, activate the setting in Anveo Client Suite setup.
It is highly recommended to delete unused Anveo User Devices in Dynamics to optimize required data store.
Multiple Occurrence of Same Table in Synchronization Packages
In a synchronization packet, it is possible to add a table arbitrarily often, even with different filters. All data resulting from the filters and hierarchical data will be transferred to the user of the Anveo Mobile App; For example, the table Cust. Ledger Entry appears twice in a synchronization package, once with a filter to Customer No. 10000 and once with filter on Customer No. 20000; in that case all Customer Ledger Entries for customer 10000 and 20000 will be transferred to the mobile device.