APP: Initialization Performance Analysis

What This Article Is About

After setting up your Anveo Mobile App solution the first time, you have to take care about your data that will be sent to your device. Your mobile device is no database server like Microsoft SQL Server. It has much less resources like smaller CPU and less RAM.

This is why you have to take control about your amount of data: Simply use Anveo's Synchronization Packages to reduce and limit the amount of data.

If your initialization = first time connection using Anveo still is too slow showing more than ~20-30 incoming data packages, you may want to understand where this data is coming from.

This article shows how find the cause of high CPU load and/or large number of records.

If you do not get any incoming data, you might have a general connection issue. Please run an Anveo Health Check first and solve all connection issues first, if any.

Please note: This feature is available for Anveo 6 and newer only.

Step 1 - Export an Init Analyze Script

Run an Export Init SQL for your Anveo User in Microsoft Dynamics NAV.

Step 2 - Run Init Analyse Script

Open this SQL file in SQL Server Management Studio and run it in a new query window in your database.

Step 3 - Check Your Rows per Table

Analyse the messages for each table. The table number and name is in the top, below you will find CPU time and number of rows for this table.

Look for your largest CPU time and/or largest number of rows to identify your performance problem.

Step 4 - Total Rows

Your total rows should be below ~1.000.000 records. You find this number in the right corner of your query window.

Please Note:

The more rows you have, the slower the initalization is.

CPU performance of a device is very important. An up-to-date device can be 10x faster than a 3-5 year old one.

Step 5

Update your Synchronization Packages:

Add additional filters

Filters are especially important for all ledger entry tables.

Restructure your tables and set-up dependencies like Customer(filtered by Sales Person Code) > connected to Sales Header > connected to Sales Lines instead of sending out all data without any filter.

On-Request-Data: Only include data that you need for your every-day-use. Remove data that is required from time to time only. You can set-up an on-demand request for additional data.Example: Do not send out all ledger entries by default. Set-up an on-demand-sync button on your Anveo Pages that include additional information only for a specific Anveo User, only for a selected customer and only for the next 7 days.Please contact Anveo Support for more information on how to set-up on-demand-requests.

If you still have a long initialization process, re-run these steps again.