Synchronization F.A.Q.

Table of Contents

Here is a list of frequently asked questions:

Synchronization Modes

When to launch the full synchronization?

The full synchronization should be launched:

  • to download the current user database (data, metadata, app settings):

    • when a mobile user launches the first synchronization after logging in;

    • when the new version of the CT Mobile app is installed.

  • to send data changes (deletions, insertions, and updates of records) from the CT Mobile app to Salesforce and completely replace the current user database (data, metadata, app settings) if changes were made on the CT Mobile Control Panel.

Important notes:

  • In case of any errors, the full synchronization is interrupted.

  • The CT Mobile app is locked during the full synchronization except for the first full synchronization.

  • The sync process may take a lot of time, depending on the database size.

For more information, read the Full Synchronization article.

When to launch the fast synchronization?

The fast synchronization is intended to:

  • send data change (deletions, insertions, and updates of records) from the CT Mobile app to Salesforce, including changes in the field attributes;

  • download data changes (deletions, insertions, and updates of records) from Salesforce to the device, including changes in the field attributes;

  • update CLM presentations in case of republishing. The CT Mobile app compares the current version of the CLM presentation with the one previously saved. If any discrepancies are found, slides and attachments, which were updated after the last synchronization, will be loaded.

    • In case of the future date in the Forced Load Date field on the CLM presentation record, the CT mobile app asks the current user to download the CLM presentation or not.

    • In the case of the past date or an empty value in the Forced Load Date field, the CLM presentation will be downloaded.

Important notes:

  • In the case of record errors, the fast synchronization continues. Errors could be managed on the Errors screen.

  • The CT Mobile app is not locked during the fast synchronization.

For more information, read the Fast Synchronization article.

When does the mixed synchronization automatically launch instead of the fast synchronization?

The mixed synchronization launches when:

  • the date of the last successful synchronization on the current user’s record is earlier than the date of the last metadata change in the clm__MetadataLastModifiedDate__c field of the Mobile Application Setup record for the current user’s profile (if this record exists) or for the current user’s Salesforce organization;

  • the date of the last metadata change is not set in the clm__MetadataLastModifiedDate__c field of the Mobile Application Setup record.

The mixed synchronization is intended to:

  • download settings and records without re-load of previously downloaded records, which helps to reduce the sync time.

  • download metadata changes in ZIP archive(s) and via API according to the current user profile;

  • send data changes (deletions, insertions, and updates of records) from the CT Mobile app to Salesforce;

  • download data changes (deletions, insertions, and updates of records) from Salesforce to the device;

  • update CLM presentations in case of republishing. The CT Mobile app compares the current version of the CLM presentation with the one previously saved. If any discrepancies are found, slides and attachments, which were updated after the last synchronization, will be loaded.

    • In case of the future date in the Forced Load Date field on the CLM presentation record, the CT mobile app asks the current user to download the CLM presentation or not.

    • In the case of the past date or an empty value in the Forced Load Date field, the CLM presentation will be downloaded.

Important notes:

  • The date of the last metadata change will be updated each time you make a change on CT Mobile Control Panel.

  • You can manually update the date for the corresponding profile by editing the clm__MetadataLastModifiedDate__c field of the Mobile Application Setup record for the current user’s profile (if this record exists) or for the current user’s Salesforce organization.

  • In the case of record errors, the mixed synchronization continues. Errors could be managed on the Errors screen;

  • The CT Mobile app is not locked during the mixed synchronization;

  • To refresh metadata in the ZIP archive

For more information, read the Fast Synchronization article.

How to know that the synchronization is successful?

If the synchronization was successful, the notification «Synchronization completed. Duration: HH:MM:SS.» If an error occurred during the sync process, a notification appears with the text of the error, and the user should close it.

Synchronization Details

What are the synchronization statuses?

Depending on the selected debug level, the sync log record with the corresponding status will be saved for synchronization and all performed operations, except for Geo Tracing and Geolocation. For more information, read the Sync Log article.

Success

  • full synchronization is complete;

  • fast/mixed synchronization is complete (with or without the Sync Recovery functionality and CT Mobile Replication);

  • completed operation.

Partially Success

  • fast/mixed synchronization if there are errors, for example, if the required field is blank or the start date is later than the end date (with or without the Sync Recovery functionality and CT Mobile Replication);

  • operation if some records are not successfully created, updated, deleted, or inserted.

Failed

  • the internet connection has been lost;

  • the device screen has been turned off;

  • the device has been turned off;

  • any errors during first/full synchronization.

  • for operation if all records have errors due to which they were not created, updated, deleted, or inserted.

Where are the synchronization statistics stored?

The Sync Log object is intended to store logs for each performed synchronization.

  • the main Sync log record with the type of synchronization;

  • sync log records for each operation performed during the sync process.

The Sync Log record may include attachments:

  • the SyncSingle.log file with all operations for the first, full, fast, mixed, and quick record synchronization.

  • the sync.log file for the Sync Log History operation.

  • the Documents.zip for the Export Data operation;

For more information, read the Sync Logs article.

Metadata Components and Related Error Handling

What components are included in the metadata archive?

The list of components is available here. Also, the metadata archive includes all offline objects that were specified on the CT Mobile Control Panel: Offline Objects.

How often should you rebuild the metadata archive?

We recommend enabling a metadata checker and setting a schedule for a metadata checker according to your business processes, such as the frequency of updating settings on the CT Mobile Control Panel tabs, changing lookup filters, creating custom labels, managing validation rules, etc.

Why were not the up-to-date metadata components downloaded during the full or mixed synchronization?

The metadata archive has not been created or updated. Some functionality may incorrectly work, for example, offline validation rules.

  1. Check the cloud token is valid.

  2. Create a ZIP archive or refresh metadata in the ZIP archive. We recommend enabling a metadata checker. Also, it is possible to set a schedule for a metadata checker or manually create/update the metadata archive.

Why is the new translation for an object or a field not displayed in the CT Mobile app?

Translation Workbench is used to maintain translated values for metadata and data labels in Salesforce org, for example, to translate fields, objects, related lists, etc.

The lookup filter has been changed. Why has not it been downloaded to the device?

The lookup filters are the components of the metadata archive. If you created or changed the lookup filter, it is necessary to rebuild a metadata archive. We recommend enabling a metadata checker. Also, it is possible to set a schedule for a metadata checker or manually create/update the metadata archive.

The metadata checker has been enabled. Why are not the up-to-date metadata components downloaded to the device?

Please note that the creation of the metadata archive may take some time.

Follow steps:

  1. Go to the Setup → enter Apex Jobs in the Quick Find box → click the Apex Jobs page.

  2. Check that there are no errors in the classes:

    • Schedule_LastModifiledDate is used to build a metadata archive. If the status of the Apex class is Failed, then the metadata archive has not been compiled. Refresh the cloud token value and re-build the archive;

    • Schedule_CheckRetrieveStatus is used to retrieve a metadata archive. If the status of the Apex class is Aborted, then the metadata archive has not been compiled. The class will request the archive until the archive is compiled, and then the class status will change to Completed.

Synchronization Error Handling

How to send the application data dump?

Go to the Send Application Data Dump article.

What to do if the sync process has stopped due to missing the CT Mobile license?

To use the CT Mobile app, assign the CT Mobile license to the mobile users.

What to do if the sync process has stopped due to an inactive organization error?

This error occurs when the Salesforce organization is no longer active. Disconnect then reconnect from Salesforce.

What to do if synchronization takes too long?

The duration of the sync process depends on:

  • the internet connection. Check the requirements for the connection.

  • amount of data. To avoid the synchronization of the large data, customize the criteria to download desired records of offline objects.

  • amount of modified components (objects, fields, layouts) or changes provided on the CT Mobile Control Panel. In this case, mixed synchronization is in progress instead of fast synchronization, and the sync process takes more time.

What to do if the INVALID_TYPE error occurs?

The INVALID_TYPE error occurs if you haven’t access to a field because of revoked access in Salesforce. When you perform fast synchronization, the system cannot retrieve records of objects because the current user has no access to several object fields.

To avoid this issue, we recommend this sequence of steps:

  1. Users perform fast synchronization.

  2. The administrator makes changes to the object model in Salesforce (sharing rules, adding and removing fields, changing a profile for a user).

  3. Users perform a full synchronization.

What to do if the UNKNOWN_EXCEPTION error occurs?

The UNKNOWN_EXCEPTION error occurs due to either an incorrect setting or a Salesforce error.

  • Identify the query where the error occurs during synchronization, and check it in Workbench.

  • If the queries are correct, contact Salesforce and report the error.

What to do if the MALFORMED_QUERY error occurs?

The MALFORMED_QUERY error occurs when the SOQL filter is incorrectly specified for the offline object. Check the SOQL query in the error message.

What to do if the INVALID_FILTER_QUERY_OPERATOR: invalid ID field occurs?

The INVALID_FILTER_QUERY_OPERATOR: invalid ID field error is due to a temporary mobile record ID being inserted into the reference field when the query is formed. Check the custom logic that inserts the temporary ID in the field.

When does No connection to Salesforce occur?

This error occurs in the following cases:

What to do if the synchronization does not work when VPN is enabled?

We recommend granting permissions to the following sites in your VPN settings:

  • *.force.com

  • *.salesforce.com

  • *.lightning.com

  • *.salesforce-communities.com

  • *.visualforce.com

  • *.documentforce.com

  • *.forceusercontent.com

``