Managing Sync Performance

Source: This article refers to Managing Sync Performance


1 Introduction

The size of your company database has a direct impact on the amount of time required to synchronize data to the mobile application and on the application performance itself.

The following document outlines the scope of impact by database volume and device, how database volume can be viewed, and actions that can be taken to improve data usage, sync performance, and application performance.


1.1 Device Database Size Recommendations

The following table represents the recommended and maximum database size and business object counts for optimal synchronization time performance:

  Database Size Number of Objects
Recommended 400 MB 10,000 objects of any given object (see list below)
Maximum 600 MB 20,000 objects of any given object (see list below)

1.1.1 High Impact Business Objects

The data objects that have the greatest impact on synchronization performance are:

  • Activity
  • Attachment
  • Batch
  • BatchQuantity
  • BusinessPartner
  • Equipment
  • Person
  • ReservedMaterial
  • SalesOpportunity
  • SalesOrder
  • SalesQuotation
  • ServiceCall

1.2 Differences in Devices

The following chart shows data synchronization time in minutes:seconds (mm:ss) at different volume loads of Activities.

1.2.1 Time to Synchronize by Device (iOS / Android)

  5k Activities 10k Activities 20k Activities 50k Activities 100k Activities
Older Android Device 1:02 2:44 5:23 16:59 43:58
Newer Android Device 0:53 2:22 4:30 12:05 29:42
Older iPad 1:07 5:05 12:10 32:17 65:10
Newer iPad 0:23 0:48 01:21 04:43 11:21
Older iPhone 1:28 7:48 16:00 41:04 89:05
Newer iPhone 0:19 1:19 1:34 5:26 13:46

1.2.1.1 Device Details
Note: iOS is faster than the equivalent Android device when performing a sync, as iOS uses a proprietary binary format which is more efficient.
Type Device OS
Older iPhone iPhone 4S (MC918LL/A) iOS 9.3.2
Older iPad iPad 3 64GB (MC707FD/A) iOS 9.3.2
Newer iPhone iPhone 6S (MKQT2ZD/A) iOS 10.2
Newer iPad iPad Pro (MLMN2TY/A) iOS10.1.1
Older Android Sony Xperia Z5 Compact 6.0.1
Newer Android Google Pixel 7.1.1

1.2.2 Time to Synchronize by Device (Windows)

The following chart shows data synchronization time in minutes:seconds (mm:ss) at different volume loads of Activities.

  5k Activities 10k Activities 20k Activities 50k Activities 100k Activities
Newer Desktop 0:05 0:10 0:20 0:40 1:20
Newer Laptop 0:07 0:15 0:20 0:50 1:40
Older Laptop 0:05 0:15 0:25 1:05 2:35

1.2.2.1 Device Details
Type Device OS
Newer Desktop Desktop 2015 i5-4690k SSD Windows 10 64-bit
Newer Laptop Laptop 2012 i5-2520m NO SSD Windows 10 64-bit
Older Laptop Laptop 2011 i7-2620m SSD Windows 10 64-bit

1.3 Background Apps and Performance

Background apps and processes running on a device will impact full-sync performance. This generally includes apps such as maps, navigation systems, music players, etc.


2 Establishing a Baseline

In order to determine the efficacy of remediate action, you will need to establish a baseline.


2.1 Viewing Object Count from Mobile

Business object counts can be viewed from the mobile app by completing the following steps:

  1. Navigate to Settings and select Contact Support from the action menu (⋮).
  2. The application will display the business object counts for high impact business objects and other business objects in the body of an email:


  3. If you don’t wish to send an email to Coresystems Support, select the Cancel option from the top.
Note: Business object counts viewed from the mobile applicaiton take into account both user permission settings and relevant company settings.

2.2 Viewing Company Object Count

Company business object counts can be viewed using the Query API tool located in the Admin Module.

The following query can serve as a template for returning a maximum count for business objects that could be sent to the mobile application:

SELECT COUNT(a.id) FROM Activity a



Here, Activity can be replaced by another business object to return a count (example: BusinessPartner).

Note: To return a count for a specific account (such as a technician), you could use an API management tool such as Postman and pass the account credentials into the request sent to the Query API.

3 Taking Action

The following actions can be taken to improve performance and synchronization times.

Permissions
Permissions can be applied to users and business objects to further customize behavior and improve performance. For example, a user could be assigned Read permissions for their Own Activities, filtering out activites that are assigned to other employees.
Data Sync Rules
Data Sync Rules can be applied to determine what data is stored in the mobile app when in "offline" mode.

3.1 Permissions Management

Permissions and permission groups are viewed and managed in the Coresuite Store.

3.1.1 Operation Permissions

Operation Permissions determine what records users can CREATE, READ, UPDATE, and/or DELETE.

Option Description
All By selecting, the permissions settings will be available for all users associated with the given permission group. For example, if you applied Read on Attachments and assigned it to All, you would be able to read/view all attachments.
Own By selecting, the permissions settings (example Update on Activity) will be available for all users associated with the given permission group. For example, if you applied Update on Activity and assigned it to Own, you would be able to update your own activities.
None By selecting, the permissions settings (example Delete on Quotations) will be available for no users associated with the given permission group. For example, if you applied Delete on Quotations and assignted it to None, you would be unable to delete quotations.

3.1.2 Business Objects

User Group permissions can be applied to individual business objects to customize behavior. The following business objects have the greatest impact on synchronization performance:


3.2 Data Sync Rules

In the User Groups tab of the Admin module, you can view and manage the User Groups and Data Sync Rules for your company.

Data Sync Rules are used to control what information is stored in the mobile application for offline use.

The benefits of using data sync rules are:

They can decrease bandwidth used while syncing technician devices.
They can decrease application memory usage on mobile devices.
They can improve equipment and item search, as less irrelevant data is filtered out.
They can help streamline communication between technicians and the back-office, and ensure that technicians only receive the data they need, when they need it.
Attention: Please note that Data Sync Rules do NOT represent a security measure, as they do not impact the web-based applications and the Data API. They are merely used to improve performance and data integrity for the mobile application.

3.2.1 Applying Data Sync Rules

The following data sync rules can be applied to a company:

Data Object Data Sync Rule What is Synced
Item
R01 Items used as Reserved Materials on Service Calls where the technician has been responsible / assigned.
R13 Sync only Items that belong to a branch the current user is assigned to.
R23 Sync only Warehouse that belong to a branch the current user is assigned to.
Business Partner
RO2 Business Partners that are associated with Activities and/or Service Calls where the technician has been responsible / assigned.
RO2a Addresses that are associated with Activities and/or Service Calls where the technician has been responsible / assigned.
RO2b Contacts that are associated with Activities and/or Service Calls where the technician has been responsible / assigned.
Equipment
R04 Equipment that is associated with Activities and/or Service Calls where the technician has been responsible / assigned.
Sales or Service Documents
R16 Sync only Incidents issued by Business Partners for which at least one Activity and/or Service Call has the current user set as responsible.
R17 Sync only Defects issued by Business Partners for which at least one Activity and/or Service Call has the current user set as responsible.
R18 Sync only Payment Terms issued by Business Partners for which at least one Activity and/or Service Call has the current user set as responsible.
R19 Sync only Sales Opportunities issued by Business Partners for which at least one Activity and/or Service Call has the current user set as responsible.
Service Call
R06 Previous Service Calls open for Equipment on which technician is currently assigned to work, providing a service history (historical data of work completed on Equipment).This enables the technician to view relevant Equipment service details without needing to sort through past Service Call records.
R07 Service Calls handled in the last six (6) months, where the technician was responsible / had previously been assigned.
R08 Service Calls where the technician is responsible / has been assigned.
Activity
R09 All Activities that are associated with Service Calls where the technician has been responsible / assigned.
R10 Previous Activities performed on Equipment for which technician is currently responsible / assigned to work, providing a service history (historical data of work completed on Equipment).This enables the technician to view relevant Equipment service details without needing to sort through past Service Call records.
R11 Activities performed within the last six (6) months, where the technician was responsible / has previously been assigned.
R12 Activities where the technician is responsible / has been assigned.

Was this article helpful?
0 out of 0 found this helpful
Have more questions? Submit a request

Comments

0 comments

Article is closed for comments.