About Me

My photo
PLANO, Texas, United States

Saturday, September 26, 2020

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 lets your Salesforce org access data from a wide variety of external systems. You can integrate tables from SAP® NetWeaver Gateway, Microsoft Dynamics® NAV, and many other data sources in real time without writing a single line of code. Previously, the only way to integrate external data with Salesforce was to use extract, transform, and load (ETL) tools. That process is time consuming and requires you to copy data into your org that you might never use or quickly becomes stale. In contrast, Salesforce Connect maps data tables in external systems to external objects in your org.

When to use?

Salesforce recommends to 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.

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.

External Objects

  • External objects are similar to custom objects, except that they map to data located outside your Salesforce org. 

  • External object data is always up to date. 

  • API Name include __x in external object

  • Salesforce Connect provides a live connection to external data rather than a copy that consumes storage and must be regularly synced. Accessing an external object fetches the data from the external system in real time.

  • It’s important to remember that external data is never duplicated in your Salesforce org. Salesforce Connect always fetches current data from the external system in real time.


External Objects vs. 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)


Types of External Connections

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. OData (Open Data Protocol) is a modern, REST-based protocol for integrating data. Vendors such as SAP and Microsoft have already implemented OData support, so products such as NetWeaver and SharePoint are directly accessible. Integration products from Salesforce partners extend the reach of Salesforce Connect to a much wider range of back-office systems.

  • Cross-org adapter—Connects to data that’s stored in another Salesforce org. The Cross-org adapter uses the standard Lightning Platform REST API. It directly connects to the other org without the need of an intermediary web service, as is the case with OData.

  • Custom adapter created via Apex—If the OData and cross-org adapters aren’t suitable for your needs, develop your own adapter with the Apex Connector Framework.


Define Relationships for the External Objects

You can define three types of relationships for external objects.

  • Lookup relationship—Links a child standard, custom, or external object to a parent standard or custom object. You can only use this type of relationship if the external data includes a column that identifies related Salesforce records by their 18-character IDs. If that’s not the case, use one of the following two types of relationships, which are unique to external objects.

  • External lookup relationship—Links a child standard, custom, or external object to a parent external object. The values of the standard External ID field on the parent external object are matched against the values of the external lookup relationship field. For a child external object, the values of the external lookup relationship field come from the specified External Column Name.

  • Indirect lookup relationship—Links a child external object to a parent standard or custom object. You select a custom unique, external ID field on the parent object to match against the child’s indirect lookup relationship field, whose values are determined by the specified External Column Name.

No comments:

Post a Comment