Lightning Fast Data Integration with Salesforce

Lightning Fast Data Integration with Salesforce

May 08, 2015 0 Comments

Sumit Sarkar shares his experiences with Lightning Connect and invites you to a joint webinar with Salesforce's Jason Choy.

In Winter ’15, Salesforce took a big step toward becoming an all-in-one “customer success platform” with the release of Salesforce1 Lightning. This next-generation platform has several components, but we’ve been talking a lot about one in particular—Lightning Connect. This revolutionary feature uses OData to change the game by treating live external data as native objects driven from the platform using APEX triggers and classes, SOQL, SOSL, Lookup Relationships, Custom Tabs and Details. With Lightning Connect, you have the ability to integrate all your back-office systems with Salesforce in real time.

To get the most out of Lightning Connect, however, you need the OData service provided by Progress® DataDirect Cloud™. This winning combination enables you to expose almost any data source, be it on-premise, behind a firewall or in the cloud, as an OData endpoint.

This is a big deal, but you don’t just have to take my word for it. On May 12 at 1 pm EDT, DataDirect Cloud product manager, Matthew Monahan, is teaming up with Salesforce’s Jason Choy for a webinar where they will discuss real-world applications of this powerful partnership. If you just can’t wait to see it, keep reading. Not too long ago, I developed my own proof of concept where I was able to set up and show off Lightning Connect integration with our back-office systems in less than 4 hours over 6 days.

Lightning Connect POC

In the spirit of the Salesforce1 Platform, my project was completed using point-and-click configuration from end to end. Though my data source (Progress® OpenEdge®) may be different from yours, my integration experiences apply to any corporate business systems or databases.

Day 1: Request Connection Information for POC

Time: 15 minutes

Level of Difficulty: Easy

On the first day, I contacted Progress Software IT and Sales Operations with my intent to integrate invoices from our system of record behind the corporate firewall with our Sales Cloud as an External Data Source as a proof of concept for Lightning Connect. I wanted to start by working in a sandbox and I was advised to get the invoices from a development data warehouse environment, rather than our ERP system at this stage. The steps for connecting directly with the ERP will be similar.

Day 2: Data Model Relationship Planning

Time: 15 minutes

Level of Difficulty: Easy

With my credentials to the data warehouse created, I set up a quick call with our Sales Operations analyst who provided the entity in the data warehouse that contain invoice data. It happened to be called “Invoice.”

Field name Filter criteria
Invoice_SoldTo = account.Customer_Number__c

Day 3: Get Started with Developer and Trial Accounts

Time: 60 minutes

Level of Difficulty: Easy

On the third day, I contacted our Salesforce Account team to request an evaluation of Lightning Connect, and they requested our production organization ID. In the meantime, I created a developer account in Salesforce that comes with Lightning Connect.

Next, I created a trial account in DataDirect Cloud to produce OData from our on-premise data warehouse for Lightning Connect External Objects.

screenshot of DataDirect Cloud data sources

Figure 1: Data sources supported by DataDirect Cloud

In our case, the data warehouse is built on Progress OpenEdge. I specified the connection information provided by IT and named the data source “ProgressEDW” as shown in Figure 2. The “Connector ID” value is generated from the on-premise connector downloaded from DataDirect Cloud, which establishes a secure connection behind our firewall. The steps will be similar for other applications or databases such as SQL Server or Oracle.

 DataDirect Cloud Login Screen

Figure 2: DataDirect Cloud Login Screen

From here, I clicked the OData tab to select the entities I wanted to expose to Salesforce from the data warehouse (tables or views), as shown in Figure 3.

Figure 3: Selecting the entities to expose to Salesforce

Figure 3: Selecting the entities to expose to Salesforce

Next, I logged into my Salesforce Developer account (see this tutorial for details) to configure the external data source using the following steps:

  • Click Setup > Develop > External Data Sources.
  • Enter Label and Name and select Type of Lightning Connect: OData 2.0.
  • Enter URL as "" (ProgressEDW is the name of the DataDirect Cloud data source configured above.)
  • Specify Identity Type as Named Principal and Authentication Protocol as Password Authentication, and enter the DataDirect Cloud credentials.

Figure 4: Creating new external data sources

Figure 4: Creating new external data sources

  • Click the new External Data Source and click Validate and Sync.
  • Select the entities and click Sync to create external objects.

Figure 5: External objects from the data warehouse

Figure 5: External objects from the data warehouse

Now I have external objects for Invoices and InvLines from the data warehouse, as shown in Figure 5. It’s so cool to see the external object for “Invoices” and the mapped columns from the database to custom fields. It really does seem like “magic” as shown in Figure 6.

Figure 6: External objects with mapped columns from the database to custom fields

Figure 6: External objects with mapped columns from the database to custom fields

That was easier than I would have expected!

Day 4: Building Related Lists in Developer Sandbox

Time: 60 minutes

Level of Difficulty: Intermediate

I ran into an issue creating a related list with external objects by following this tutorial from tquila, so I posted my question to the Salesforce community and received an answer that same day from Carolina Ruiz Medina, Principal Developer at Financial Force.

I was pleasantly surprised by the speedy reply since Lightning Connect is relatively new.

Day 5: Migrating the POC From Development to Sandbox

Time: 60 minutes

Level of Difficulty: Easy

On the fifth day of my project, I received a note from James Green at Salesforce that Lightning Connect has been successfully enabled on our org. I requested Sales Operations create a new sandbox since the feature cannot be directly enabled for existing sandboxes.

Once that was finished, I was ready to start working with some real-time data. I double-checked creation of an external data source and verified that the type “Lightning Connect: OData 2.0” was available. At this point, I’m no longer limited to just one external source as in my developer account!

I repeated the previous steps to create the external objects in my new sandbox. To create a related list of invoices by account object, I located the Customer_Number__c field recommended by SalesOps.

Figure 7: Creating a related list of invoices by account object

Figure 7: Creating a related list of invoices by account object

Next, I clicked the “Invoices” external object shown in Figure 8 and created an indirect relationship between Accounts.Customer_Number__c and Invoices.SoldTo__c. I then created a related list from the Account page.

Figure 8: Creating a related list from the Account page.

Figure 8: Creating a related list from the Account page.

This is so cool—and the invoice data remains physically stored behind our firewall.

Day 6: Show and Tell

Time: 30 minutes

Level of Difficulty: Easier than expected

The business unit gave me a prime slot to demo the POC at our Quarterly Business Review. Even though I think my work was pretty awesome already, I added the Salesforce1 app for Chrome to simulate mobile access to data in our on-premise system of record, as shown in Figure 9.

Figure 9: Simulation of mobile access to our on-premise SOR using the Salesforce1app

Figure 9: Simulation of mobile access to our on-premise SOR using the Salesforce1 app

The sales executives were completely blown away. Before my demo, they had been struggling with integration of this very same data using Tableau Reporting. Now, I have demos lined up with IT and SalesOps leadership. Even our CTO recognizes my name now.

Learn to Unlock Powerful Data Integration

It’s really exciting that data integration can be self-service and point-and-click in the spirit of the Salesforce platform. This means Salesforce devs and IT professionals can take their innovation to the next level without dealing with grueling data integration.

Webinar: Salesforce Lightning Connect and DataDirect Cloud--The Fastest Way to Integrate All Your Data with Salesforce

Join us for the latest DataDirect webinar

Of course, my project is just one example of what you can do with Lightning Connect and DataDirect Cloud. In our webinar on May 12 at 1 pm EDT, Progress’s Matthew Monahan and Jason Choy from Salesforce will cover more real-world use cases, field your questions and enable you to unlock the limitless potential of back-office data integration with Salesforce.

I truly believe this sort of broad data integration will be revolutionary in the coming years. Luckily, you don’t have to wait for it to mature—it’s already here. You can pick up a free trial of DataDirect Cloud from our website.

Sumit Sakar

Sumit Sarkar

Technology researcher, thought leader and speaker working to enable enterprises to rapidly adopt new technologies that are adaptive, connected and cognitive. Sumit has been working in the data access infrastructure field for over 10 years servicing web/mobile developers, data engineers and data scientists. His primary areas of focus include cross platform app development, serverless architectures, and hybrid enterprise data management that supports open standards such as ODBC, JDBC, ADO.NET, GraphQL, OData/REST. He has presented dozens of technology sessions at conferences such as Dreamforce, Oracle OpenWorld, Strata Hadoop World, API World, Microstrategy World, MongoDB World, etc.

Comments are disabled in preview mode.
Latest Stories
in Your Inbox

Subscribe to get all the news, info and tutorials you need to build better business apps and sites

More From Progress
Getting Started with Kinvey
Read More
Low-Code Platforms: What Developers Think and Why
Read More
Hello Tractor
Read More