Oracle CRM On Demand Desktop Administration Guide > How Oracle CRM On Demand Desktop Synchronizes Data > How Oracle CRM On Demand Desktop Synchronizes Data with Oracle CRM On Demand >

How Oracle CRM On Demand Desktop Synchronizes Oracle CRM On Demand Data


Oracle CRM On Demand Desktop synchronization of data with CRM On Demand is based on the configuration of the customization package. The customization package contains configuration files, which include objects, object fields, and object relationships.

To synchronize Oracle CRM On Demand data, for example, opportunities or accounts, Oracle CRM On Demand Desktop does the following:

  1. Verifies the user login and connection to Oracle CRM On Demand.
  2. Checks the version to ensure Oracle CRM On Demand Desktop is compatible with the current version of Oracle CRM On Demand.
  3. Checks the version of Oracle CRM On Demand Desktop to ensure it has the latest version of the customization package.
  4. Determines the number of records of each type of record, such as opportunities or accounts, which are records that are visible to the user through the ownership or team membership view mode, or book-based visibility for the record type. When book-based visibility is set for a record type, the Oracle CRM On Demand Desktop synchronizes records of that type, which are associated with the user specified book. Data filters are applied to the top of the records that are visible to the user, and records are then restricted by the filter configuration. The basic logic is to find all the records that are visible on the server side, compare them with the client side, and calculate the difference between the server and the client. All synchronization uses this logic.
  5. Gets the values of the change keys for all synchronization objects that are enabled, such as opportunities or accounts, for example, the record ID and the last updated date in the Oracle CRM On Demand database. The change key by default includes the record Id and the time the record was last updated in the Oracle CRM On Demand database.
  6. Compares the set of IDs and timestamps in Microsoft Outlook with the set of IDs and timestamps on the Oracle CRM On Demand server to do the following:
    • Determine the differences that exist between the data sets for insert, update, and delete operations.
    • Identify conflicts and create a log entry in the synchronization conflict list for any conflict.
  7. For each difference, Oracle CRM On Demand Desktop performs one of the following operations in Microsoft Outlook or on the Oracle CRM On Demand server:
    • Insert. Query the Oracle CRM On Demand database to get the details of the new record and then insert the appropriate item in Microsoft Outlook.
    • Update. Query the Oracle CRM On Demand database to get the details of the updated record and then update the appropriate item in Microsoft Outlook. Note that an Oracle CRM On Demand update overwrites all fields in the corresponding Microsoft Outlook item, not just the updated fields.
    • Delete. Delete the appropriate item in Microsoft Outlook.
    • Microsoft Outlook insert. Use the user key that is defined in the metadata to query the Oracle CRM On Demand database, and then do one of the following:
      • If it does not find a match, then it inserts the appropriate record in the Oracle CRM On Demand database, and then queries the Oracle CRM On Demand database to get the record ID and timestamp.
      • If it does find a match, then it returns a deduplication conflict, a situation when two records, one in Microsoft Outlook and the other in Oracle CRM On Demand, have the same values for the fields acting as user keys. This deduplication conflict is not an error. After the user resolves the conflict by selecting the correct values or object instance, the object is synchronized. If the user does not resolve the issue, then synchronization continues, but the object involved in the conflict is not synchronized.
    • Microsoft Outlook update. Use the user key that is defined in the metadata to query the Oracle CRM On Demand database, and then do one of the following:
      • If it does not find an update for the modification number of the record, then it updates the appropriate record in the Oracle CRM On Demand database and then queries the Oracle CRM On Demand database to get the record Id and updated timestamp.
      • If it does find an update for the modification number, then it returns an update conflict, a situation when two records, one in Microsoft Outlook and the other in Oracle CRM On Demand, have the same modification number, that is, they are changed in both places. This update conflict is not an error. After the user resolves the conflict by selecting the correct values or object instance, this object is synchronized. If the user does not resolve the issue, then synchronization continues, but the object involved in the conflict is not synchronized. In this situation, Oracle CRM On Demand Desktop makes the change in the Oracle CRM On Demand database during the update operation.
    • Microsoft Outlook delete. Delete the appropriate record in the Oracle CRM On Demand database.
  8. If a conflict occurs, then Oracle CRM On Demand Desktop does the following:
    1. Updates the synchronization issues and the Syncdump.xml log file that describes conflicts on the client.
    2. Prompts the user to choose which changes to keep in each of the following situations:
      • Update the record in Microsoft Outlook and on the Oracle CRM On Demand server.
      • Update the record in one data set and delete the record in the other data set.
  9. Repeat Step 4 for each additional Oracle CRM On Demand data object that requires synchronization.
Oracle CRM On Demand Desktop Administration Guide, Version 5.2 Copyright © 2017, Oracle and/or its affiliates. All rights reserved. Legal Notices.