Salesforce Connect

Salesforce Connect is a framework that enables you to view, search, and modify data that’s stored outside your Salesforce org. For example, perhaps you have data that’s stored on premises in an enterprise resource planning (ERP) system. Instead of copying the data into your org, you can use external objects to access the data in real time via web service callouts.

Salesforce Connect maps data tables in external systems to external objects in your org.

 We recommend that you use Salesforce Connect if most of these conditions apply.

  • You have a large amount of data that you don’t want to copy into your Salesforce org.
  • You need small amounts of data at any one time.
  • You need real-time access to the latest data.
  • You store your data in the cloud or in a back-office system, but want to display or process that data in your Salesforce org.

External objects share much of the same functionality as custom objects. For example, you can:

·         Access external objects via list views, detail pages, record feeds, custom tabs, and page layouts.

·         Define relationships between external objects and standard or custom objects to integrate data from different sources.

·         Enable Chatter feeds on external object pages for collaboration.

·         Enable create, edit, and delete operations on external objects.

If you need frequent access to large amounts of external data, ETL might still be your best option for optimal performance. External objects are not a replacement for ETL. They are a complementary approach for accessing external data.

Here is a quick comparison of the features supported in external objects and custom objects.

Feature

Custom Objects

External Objects

Data is stored in your Salesforce org

Yes

No

Read

Yes

Yes

Write

Yes

Yes (limited)

Tabs, layouts

Yes

Yes

Visualforce

Yes

Yes

Field-level security

Yes

Yes

Sharing

Yes

No

REST and SOAP API

Yes

Yes

SOQL

Yes

Yes (limited)

Search and SOSL

Yes

Yes (pass-through)

Formula fields

Yes

Not Yet

Workflow, triggers

Yes

Not Yet

Reports and analytics

Yes

Yes (limited)

Chatter

Yes

Yes (no field tracking)


To connect to data that’s stored on an external system, Salesforce Connect uses one of these specially designed adapters.

·         OData 2.0 adapter or OData 4.0 adapter—Connects to data exposed by any OData 2.0 or 4.0 producer on the Internet.

Sa  Salesforce Cross Org Connector - Share data across Salesforce orgs.

·         Custom adapter created via Apex—If the OData aren’t suitable for your needs, develop your own adapter with the Apex Connector Framework.

Example External Data Source:

 

Example Sync.

Syncing creates the external objects corresponding to the tables that you selected

After synching

You can use Salesforce Connect to reports, dashboard and also in Einstein Analytics.

You can also do external data change tracking.

There is also a batch apex support to process large volumes of data.

You can perform search in external object.

Apex Connector Framework : For building custom adapter


1. Override getAuthenticationCapabilities


2. Override getCapabilities to describe what capabilities we want to support. You can create/update/delete/search/query


3. After you write a inherited class from DataSource.Provider it gets listed in "Type" while creating an external data source.


4. Define the schema. Control comes here when user validate and sync. Inherit from DataSource.Connection

5. Implement sync. Create columns and tables.


6. Query the data following way:


7. Populate a row based on value from external source

Available at an extra cost.






Setup VSCode with Salesforce

Step by Step guide to setup VSCode with Salesforce Install vscode Install Salesforce CLI (developer.salesforce.com/tools/sfdxcli) Perform fo...