With Salesforce growth to be the world’s #1 customer relationship management (CRM) platform, it comes the time where we need to integrate our Outsystems custom applications to extend Salesforce functionalities with new and dynamic applications that can offer more flexibility and tools to help the users on a daily basis. This will enable the opportunity to have Salesforce data storage as a master database and the full capabilities of Outsystems applications.
In this article we will go through several topics, such as:
Integration with Salesforce
In order to establish the integration connection with Salesforce, you will need to access Integration Builder and connect to Dev environment with your Outsystems user.
Afterwards, in the Integrations Page, click on new Create Integration and select Salesforce. Since we will be in the developing stage and we do not want to affect Salesforce Production data, we recommend to have at least one Testing environment besides the Production environment.
Connect with Salesforce through Sandbox and this will redirect you to the Salesforce Login page so that you can login with the Service Account that will fetch and write data from this environment.
Tables and fields selection from Salesforce
Continuing the process started on the first topic, we will now be selecting the Objects we want to sync with Outsystems.
For a better understanding, here you will be able to select the Tables and in the Field section you will have access to the conventional naming of the field as well as the internal naming on Salesforce.
Continue the wizard, review everything and deploy the Integration.
Create a Connection for the Integration
To create a Connection for the Integration you will need to:
Massive Synchronization
Coming back to Outsystems Service Studio you will notice that a service module with the “_IS” suffix was created with all the services provided by the Integration: Count[Table], Get[Table], Search[Table], Sync[Table]PickLists, etc.
To perform a data rollout to your own tables there are a few steps to follow:
Queue Synchronization
In order to have a close to real time synchronization and to not overload the server with concurrent call to write on the database we need to implement a Queue Synchronization from Salesforce to Outsystems. To do this, we will need to follow the steps:
Both for Queue Synchronization and Massive Synchronization is very important to build a well defined logging system to be easily monitored for possible issues that can happen. For that we recommend to:
Now that you have a replica of your master data in Outsystems you can leverage the Outsystems capabilities to develop better and more performant applications, while maintaining the integrity of the master data on Salesforce.
Gonçalo Condeça Team Leader at AdvanceWorks, 6 years of Outsystems, focused on leveraging Outsystems capabilities while delivering high-end solutions to customers. |