SlideShare ist ein Scribd-Unternehmen logo
1 von 23
@puntadreamin #PD17
Luciano Straga
Salesforce Certified Professional
Dreamforce 16 & 15 Speaker
@stragaluciano
Salesforce Connect Custom Apex
Adapters
Today, Heroku Redis within Salesforce
Session Agenda
Topic Presentation - Scenario Explained
Heroku Redis – Redis Databases Capabilities - Demo
Salesforce Connect – External Sources – External Objects
Apex Connector Framework - Demo
New Objects Relationships for External Objects - Demo
Resources
Q&A
1
2
3
4
5
6
7
Topic Presentation
Scenario Explained
Punta Airlines
A small airline with growing sales
Basic Requirements – > Sell Tickets
• Visualize and manage current
flights and bookings in SF
• Purchases may occur both in SF
and Website
• Flights and Bookings data is
outside Salesforce
• Two way integration between
Salesforce and Website on real
time
Node Web App -
Redis DB
External REST API Salesforce Connect Salesforce Org
Text Text Text Text
Use Case Scenario
Elements Involved
Heroku Redis
Database Capabilities - Demo
Heroku Redis
Redis Databases
 In-memory key-value data storage - NoSQL
 Data stored in RAM memory
 Flexible Data Types
 String
 Hashes
 Lists -Sets - Sorted Sets
 Bitmaps – Hyperloglogs – Geospatial Indexes
 Common uses:
 Database
 Cache (Non long term storage)
 Message Broker - Broadcasting
Salesforce Connect
Key Features – External Objects – External Sources
Salesforce Connect
Framework
 Seamless integration of external data
 CRUD of data stored outside your Salesforce Org.
 NO DATA REPLICATION/ Redundancy
 Real time data access over external objects.
 Always up to date.
 Native Adapters – Point & Click Integration
 Protocol-specific adapters:
 Odata 2.0 / 4.0
 Cross-org (Between Salesforce orgs)
 Custom Apex Adapters
Salesforce Connect
Used when:
 Large amount of data that
should not be stored in
Salesforce
 Small amounts of data at
any one time.
 Real time access is
crucial to get latest data.
Salesforce External Objects
Key Concepts and Features
 Similar to custom objects.
 __x extension.
 Mapped to external data
tables in external
systems.
 New object relationships:
 External lookups.
 Indirect lookups.
External Objects vs. Custom Objects
Features Custom Objects External Objects
Data stored in Salesforce org Yes NO
CRUD Yes YES*
Tabs / Layouts / Field Level Security Yes YES*
REST - SOAP API / SOQL – SOSL / Apex / Visualforce Yes YES*
Formulas / Workflow / Triggers / Reports Yes YES
Chatter Yes Yes*
Top Differences
Apex Connector Framework
Key Concepts & Capabilities - Demo
Apex Connector Framework
Key Concepts & Capabilities
 Set of classes and methods for creating external data sources.
 DataSource namespace.
 When OData & Cross Salesforce Org adapters are not suitable for the use case.
 Based on REST – SOAP callouts.
 Own custom adapter implementation.
 Two Apex Classes need be extended for creating external data sources:
 DataSource.Connection class.
 DataSource.Provider class.
Apex Connector Framework
DataSource.Connection class
 Obtain external system schema and CRUD
operations.
 Methods to override:
 sync().
 query().
 search().
 upsertRows().
 deleteRows().
 Authentication capabilities.
 Functional capabilities.
 Methods to override:
 getAuthenticationCapabilities ().
 getCapabilities().
 getConnection().
DataSource.Provider class
Apex Connector Framework
External IDs for Salesforce Connect External Objects
 External object has the External ID standard field for unique identification.
 The custom adapter’s code must declare the DataSource.Column named ExternalID.
 Salesforce storages this value.
Apex Connector Framework
Support for Writable External Objects
 Creating,updating and deleting external records are not perfect processes.
 Insert(), update() and create() operations are not allowed for external objects.
 Database.insertAsync().
 Returns a SaveResult object with an identifier for the insert job.
Apex Connector Framework
Authentication for Salesforce Connect Custom Adapters
 DataSource.Provider class declares authentication type:
 Anonymous -> Support for Name Credentials
 Basic
 Certificate
 OAuth
 DataSource.ConnectionParams depends on the Identity Type defined in Salesforce.
 Name Principal –> From external data source definition.
 Per User –> From current user that invokes the query or search.
New Object Relationships for
External Objects
External & Indirect Lookup Relationships - Demo
New Object Relationships for External Objects
External Lookup Relationships Indirect Lookup Relationships
External Object
(Parent)
Standard - Custom - External
(Childs)
Standard - Custom
(Parent)
External
(Childs)
Session Resources
Blaze your own trail!
 https://punta-airlines.herokuapp.com/
 https://github.com/lucianostraga/puntadreaming
 https://trailhead.salesforce.com/module/lightning_connect
 @stragaLuciano
 https://ar.linkedin.com/in/luciano-straga-121a9167
Q&A

Weitere ähnliche Inhalte

Was ist angesagt?

Apex Connector for Lightning Connect: Make Anything a Salesforce Object
Apex Connector for Lightning Connect: Make Anything a Salesforce ObjectApex Connector for Lightning Connect: Make Anything a Salesforce Object
Apex Connector for Lightning Connect: Make Anything a Salesforce ObjectSalesforce Developers
 
Introduction to the SharePoint 2013 REST API
Introduction to the SharePoint 2013 REST APIIntroduction to the SharePoint 2013 REST API
Introduction to the SharePoint 2013 REST APISparkhound Inc.
 
Android SharePoint
Android SharePointAndroid SharePoint
Android SharePointBenCox35
 
Oracle Text in APEX
Oracle Text in APEXOracle Text in APEX
Oracle Text in APEXScott Wesley
 
Barcelona salesforce sdg november lightning connect
Barcelona salesforce   sdg november lightning connectBarcelona salesforce   sdg november lightning connect
Barcelona salesforce sdg november lightning connectAaron Dominguez Sanchez
 
Designing for SharePoint Provider Hosted Apps
Designing for SharePoint Provider Hosted AppsDesigning for SharePoint Provider Hosted Apps
Designing for SharePoint Provider Hosted AppsRoy Kim
 
SQL for Web APIs - Simplifying Data Access for API Consumers
SQL for Web APIs - Simplifying Data Access for API ConsumersSQL for Web APIs - Simplifying Data Access for API Consumers
SQL for Web APIs - Simplifying Data Access for API ConsumersJerod Johnson
 
Oracle APEX Introduction (release 18.1)
Oracle APEX Introduction (release 18.1)Oracle APEX Introduction (release 18.1)
Oracle APEX Introduction (release 18.1)Michael Hichwa
 
OData: A Standard API for Data Access
OData: A Standard API for Data AccessOData: A Standard API for Data Access
OData: A Standard API for Data AccessPat Patterson
 
Introduction to the Office Dev PnP Core Libraries
Introduction to the Office Dev PnP Core LibrariesIntroduction to the Office Dev PnP Core Libraries
Introduction to the Office Dev PnP Core LibrariesEric Shupps
 
CData Power BI Connectors
CData Power BI ConnectorsCData Power BI Connectors
CData Power BI ConnectorsJerod Johnson
 
SPS Belgium 2015 - High-trust Apps for On-Premises Development
SPS Belgium 2015 -  High-trust Apps for On-Premises DevelopmentSPS Belgium 2015 -  High-trust Apps for On-Premises Development
SPS Belgium 2015 - High-trust Apps for On-Premises DevelopmentEdin Kapic
 

Was ist angesagt? (19)

SFDC REST API
SFDC REST APISFDC REST API
SFDC REST API
 
Apex Connector for Lightning Connect: Make Anything a Salesforce Object
Apex Connector for Lightning Connect: Make Anything a Salesforce ObjectApex Connector for Lightning Connect: Make Anything a Salesforce Object
Apex Connector for Lightning Connect: Make Anything a Salesforce Object
 
Introduction to the SharePoint 2013 REST API
Introduction to the SharePoint 2013 REST APIIntroduction to the SharePoint 2013 REST API
Introduction to the SharePoint 2013 REST API
 
Android SharePoint
Android SharePointAndroid SharePoint
Android SharePoint
 
Luz
LuzLuz
Luz
 
API Design Tour: Dell
API Design Tour: DellAPI Design Tour: Dell
API Design Tour: Dell
 
3 jessica
3 jessica3 jessica
3 jessica
 
Talend preso (1)
Talend preso (1)Talend preso (1)
Talend preso (1)
 
Oracle Text in APEX
Oracle Text in APEXOracle Text in APEX
Oracle Text in APEX
 
Work flow
Work flowWork flow
Work flow
 
Introduction to Force.com
Introduction to Force.comIntroduction to Force.com
Introduction to Force.com
 
Barcelona salesforce sdg november lightning connect
Barcelona salesforce   sdg november lightning connectBarcelona salesforce   sdg november lightning connect
Barcelona salesforce sdg november lightning connect
 
Designing for SharePoint Provider Hosted Apps
Designing for SharePoint Provider Hosted AppsDesigning for SharePoint Provider Hosted Apps
Designing for SharePoint Provider Hosted Apps
 
SQL for Web APIs - Simplifying Data Access for API Consumers
SQL for Web APIs - Simplifying Data Access for API ConsumersSQL for Web APIs - Simplifying Data Access for API Consumers
SQL for Web APIs - Simplifying Data Access for API Consumers
 
Oracle APEX Introduction (release 18.1)
Oracle APEX Introduction (release 18.1)Oracle APEX Introduction (release 18.1)
Oracle APEX Introduction (release 18.1)
 
OData: A Standard API for Data Access
OData: A Standard API for Data AccessOData: A Standard API for Data Access
OData: A Standard API for Data Access
 
Introduction to the Office Dev PnP Core Libraries
Introduction to the Office Dev PnP Core LibrariesIntroduction to the Office Dev PnP Core Libraries
Introduction to the Office Dev PnP Core Libraries
 
CData Power BI Connectors
CData Power BI ConnectorsCData Power BI Connectors
CData Power BI Connectors
 
SPS Belgium 2015 - High-trust Apps for On-Premises Development
SPS Belgium 2015 -  High-trust Apps for On-Premises DevelopmentSPS Belgium 2015 -  High-trust Apps for On-Premises Development
SPS Belgium 2015 - High-trust Apps for On-Premises Development
 

Andere mochten auch

Spark Streaming - The simple way
Spark Streaming - The simple waySpark Streaming - The simple way
Spark Streaming - The simple wayYogesh Kumar
 
Squeezing Deep Learning Into Mobile Phones
Squeezing Deep Learning Into Mobile PhonesSqueezing Deep Learning Into Mobile Phones
Squeezing Deep Learning Into Mobile PhonesAnirudh Koul
 
Iatrogenic opioid dependence_in_the_united_states_.18
Iatrogenic opioid dependence_in_the_united_states_.18Iatrogenic opioid dependence_in_the_united_states_.18
Iatrogenic opioid dependence_in_the_united_states_.18Paul Coelho, MD
 
Yealink cp860 quick_start_guide_v80_10
Yealink cp860 quick_start_guide_v80_10Yealink cp860 quick_start_guide_v80_10
Yealink cp860 quick_start_guide_v80_10Miluska Guerra Guerra
 
Comparación entre el mapa curricular del nuevo modelo educativo 2016 y el map...
Comparación entre el mapa curricular del nuevo modelo educativo 2016 y el map...Comparación entre el mapa curricular del nuevo modelo educativo 2016 y el map...
Comparación entre el mapa curricular del nuevo modelo educativo 2016 y el map...Dolores Navarro Vieyra
 
Quality dimensions for evaluating social sciences
Quality dimensions for evaluating social sciencesQuality dimensions for evaluating social sciences
Quality dimensions for evaluating social sciencesRamakanta Mohalik
 
Double Your Hadoop Hardware Performance with SmartSense
Double Your Hadoop Hardware Performance with SmartSenseDouble Your Hadoop Hardware Performance with SmartSense
Double Your Hadoop Hardware Performance with SmartSenseHortonworks
 
Camp digital marstrand_wirelesscar
Camp digital marstrand_wirelesscarCamp digital marstrand_wirelesscar
Camp digital marstrand_wirelesscarSigma IT Management
 
History of Streaming Media at DU
History of Streaming Media at DUHistory of Streaming Media at DU
History of Streaming Media at DUJoseph Labrecque
 
Streming media server
Streming media serverStreming media server
Streming media servernadimsajib
 
Progressing beyond the Desktop at Universities with Adobe AIR
Progressing beyond the Desktop at Universities with Adobe AIRProgressing beyond the Desktop at Universities with Adobe AIR
Progressing beyond the Desktop at Universities with Adobe AIRJoseph Labrecque
 
2017上海寧波建築美學時尚漫遊(簡報)
2017上海寧波建築美學時尚漫遊(簡報)2017上海寧波建築美學時尚漫遊(簡報)
2017上海寧波建築美學時尚漫遊(簡報)旅讀中國
 
Getting started with Apache Spark
Getting started with Apache SparkGetting started with Apache Spark
Getting started with Apache SparkHabib Ahmed Bhutto
 
Volvo Trucks GPS Antenna Placement
Volvo Trucks GPS Antenna PlacementVolvo Trucks GPS Antenna Placement
Volvo Trucks GPS Antenna PlacementAnsys
 
Streaming Media Server Setup Manual
Streaming Media Server Setup ManualStreaming Media Server Setup Manual
Streaming Media Server Setup ManualWilliam Lee
 

Andere mochten auch (20)

Spark Streaming - The simple way
Spark Streaming - The simple waySpark Streaming - The simple way
Spark Streaming - The simple way
 
Squeezing Deep Learning Into Mobile Phones
Squeezing Deep Learning Into Mobile PhonesSqueezing Deep Learning Into Mobile Phones
Squeezing Deep Learning Into Mobile Phones
 
Iatrogenic opioid dependence_in_the_united_states_.18
Iatrogenic opioid dependence_in_the_united_states_.18Iatrogenic opioid dependence_in_the_united_states_.18
Iatrogenic opioid dependence_in_the_united_states_.18
 
Yealink cp860 quick_start_guide_v80_10
Yealink cp860 quick_start_guide_v80_10Yealink cp860 quick_start_guide_v80_10
Yealink cp860 quick_start_guide_v80_10
 
Comparación entre el mapa curricular del nuevo modelo educativo 2016 y el map...
Comparación entre el mapa curricular del nuevo modelo educativo 2016 y el map...Comparación entre el mapa curricular del nuevo modelo educativo 2016 y el map...
Comparación entre el mapa curricular del nuevo modelo educativo 2016 y el map...
 
Spark Tips & Tricks
Spark Tips & TricksSpark Tips & Tricks
Spark Tips & Tricks
 
Quality dimensions for evaluating social sciences
Quality dimensions for evaluating social sciencesQuality dimensions for evaluating social sciences
Quality dimensions for evaluating social sciences
 
Booklet koperasi-oke
Booklet koperasi-okeBooklet koperasi-oke
Booklet koperasi-oke
 
Double Your Hadoop Hardware Performance with SmartSense
Double Your Hadoop Hardware Performance with SmartSenseDouble Your Hadoop Hardware Performance with SmartSense
Double Your Hadoop Hardware Performance with SmartSense
 
About Lukas Rosenblum
About Lukas RosenblumAbout Lukas Rosenblum
About Lukas Rosenblum
 
Qualitative data analysis
Qualitative data analysisQualitative data analysis
Qualitative data analysis
 
Camp digital marstrand_wirelesscar
Camp digital marstrand_wirelesscarCamp digital marstrand_wirelesscar
Camp digital marstrand_wirelesscar
 
History of Streaming Media at DU
History of Streaming Media at DUHistory of Streaming Media at DU
History of Streaming Media at DU
 
Streming media server
Streming media serverStreming media server
Streming media server
 
Progressing beyond the Desktop at Universities with Adobe AIR
Progressing beyond the Desktop at Universities with Adobe AIRProgressing beyond the Desktop at Universities with Adobe AIR
Progressing beyond the Desktop at Universities with Adobe AIR
 
2017上海寧波建築美學時尚漫遊(簡報)
2017上海寧波建築美學時尚漫遊(簡報)2017上海寧波建築美學時尚漫遊(簡報)
2017上海寧波建築美學時尚漫遊(簡報)
 
Getting started with Apache Spark
Getting started with Apache SparkGetting started with Apache Spark
Getting started with Apache Spark
 
Volvo Trucks GPS Antenna Placement
Volvo Trucks GPS Antenna PlacementVolvo Trucks GPS Antenna Placement
Volvo Trucks GPS Antenna Placement
 
Ford
FordFord
Ford
 
Streaming Media Server Setup Manual
Streaming Media Server Setup ManualStreaming Media Server Setup Manual
Streaming Media Server Setup Manual
 

Ähnlich wie Punta Dreaming by Luciano Straga #pd17 - Punta del Este, Uruguay

Best practices in using Salesforce Metadata API
Best practices in using Salesforce Metadata APIBest practices in using Salesforce Metadata API
Best practices in using Salesforce Metadata APISanchit Dua
 
Best practices in using Salesforce Metadata API
Best practices in using Salesforce Metadata APIBest practices in using Salesforce Metadata API
Best practices in using Salesforce Metadata APISanchit Dua
 
What's New for Data?
What's New for Data?What's New for Data?
What's New for Data?ukdpe
 
Building Solutions With Business Connectivity Services
Building Solutions With Business Connectivity ServicesBuilding Solutions With Business Connectivity Services
Building Solutions With Business Connectivity ServicesChakkaradeep Chandran
 
Ado.Net Data Services (Astoria)
Ado.Net Data Services (Astoria)Ado.Net Data Services (Astoria)
Ado.Net Data Services (Astoria)Igor Moochnick
 
How to govern and secure a Data Mesh?
How to govern and secure a Data Mesh?How to govern and secure a Data Mesh?
How to govern and secure a Data Mesh?confluent
 
Building social and RESTful frameworks
Building social and RESTful frameworksBuilding social and RESTful frameworks
Building social and RESTful frameworksbrendonschwartz
 
DataFinder concepts and example: General (20100503)
DataFinder concepts and example: General (20100503)DataFinder concepts and example: General (20100503)
DataFinder concepts and example: General (20100503)Data Finder
 
Ladies Be Architects - Integration - Multi-Org, Security, JSON, Backup & Restore
Ladies Be Architects - Integration - Multi-Org, Security, JSON, Backup & RestoreLadies Be Architects - Integration - Multi-Org, Security, JSON, Backup & Restore
Ladies Be Architects - Integration - Multi-Org, Security, JSON, Backup & Restoregemziebeth
 
Advanced Web Development
Advanced Web DevelopmentAdvanced Web Development
Advanced Web DevelopmentRobert J. Stein
 
Summer '16 Realease notes
Summer '16 Realease notesSummer '16 Realease notes
Summer '16 Realease notesaggopal1011
 
Integrating Salesforce.com and Oracle ERP Using IBM WebSphere Cast Iron
Integrating Salesforce.com and Oracle ERP Using IBM WebSphere Cast IronIntegrating Salesforce.com and Oracle ERP Using IBM WebSphere Cast Iron
Integrating Salesforce.com and Oracle ERP Using IBM WebSphere Cast IronProlifics
 
Integrating SFDC and Oracle ERP with IBM Websphere CastIron Appliance
Integrating SFDC and Oracle ERP with IBM Websphere CastIron ApplianceIntegrating SFDC and Oracle ERP with IBM Websphere CastIron Appliance
Integrating SFDC and Oracle ERP with IBM Websphere CastIron ApplianceSandeep Chellingi
 
June 2023 Architect Group FTW.pdf
June 2023 Architect Group FTW.pdfJune 2023 Architect Group FTW.pdf
June 2023 Architect Group FTW.pdfAmeyKulkarni84
 
黑豹 ch4 ddd pattern practice (2)
黑豹 ch4 ddd pattern practice (2)黑豹 ch4 ddd pattern practice (2)
黑豹 ch4 ddd pattern practice (2)Fong Liou
 
Spark DataFrames: Simple and Fast Analytics on Structured Data at Spark Summi...
Spark DataFrames: Simple and Fast Analytics on Structured Data at Spark Summi...Spark DataFrames: Simple and Fast Analytics on Structured Data at Spark Summi...
Spark DataFrames: Simple and Fast Analytics on Structured Data at Spark Summi...Databricks
 
Adding Search to Relational Databases
Adding Search to Relational DatabasesAdding Search to Relational Databases
Adding Search to Relational DatabasesAmazon Web Services
 

Ähnlich wie Punta Dreaming by Luciano Straga #pd17 - Punta del Este, Uruguay (20)

Best practices in using Salesforce Metadata API
Best practices in using Salesforce Metadata APIBest practices in using Salesforce Metadata API
Best practices in using Salesforce Metadata API
 
Best practices in using Salesforce Metadata API
Best practices in using Salesforce Metadata APIBest practices in using Salesforce Metadata API
Best practices in using Salesforce Metadata API
 
Salesforce connect
Salesforce connectSalesforce connect
Salesforce connect
 
What's New for Data?
What's New for Data?What's New for Data?
What's New for Data?
 
Building Solutions With Business Connectivity Services
Building Solutions With Business Connectivity ServicesBuilding Solutions With Business Connectivity Services
Building Solutions With Business Connectivity Services
 
Ado.Net Data Services (Astoria)
Ado.Net Data Services (Astoria)Ado.Net Data Services (Astoria)
Ado.Net Data Services (Astoria)
 
How to govern and secure a Data Mesh?
How to govern and secure a Data Mesh?How to govern and secure a Data Mesh?
How to govern and secure a Data Mesh?
 
Building social and RESTful frameworks
Building social and RESTful frameworksBuilding social and RESTful frameworks
Building social and RESTful frameworks
 
DataFinder concepts and example: General (20100503)
DataFinder concepts and example: General (20100503)DataFinder concepts and example: General (20100503)
DataFinder concepts and example: General (20100503)
 
Ladies Be Architects - Integration - Multi-Org, Security, JSON, Backup & Restore
Ladies Be Architects - Integration - Multi-Org, Security, JSON, Backup & RestoreLadies Be Architects - Integration - Multi-Org, Security, JSON, Backup & Restore
Ladies Be Architects - Integration - Multi-Org, Security, JSON, Backup & Restore
 
Advanced Web Development
Advanced Web DevelopmentAdvanced Web Development
Advanced Web Development
 
Summer '16 Realease notes
Summer '16 Realease notesSummer '16 Realease notes
Summer '16 Realease notes
 
Integrating Salesforce.com and Oracle ERP Using IBM WebSphere Cast Iron
Integrating Salesforce.com and Oracle ERP Using IBM WebSphere Cast IronIntegrating Salesforce.com and Oracle ERP Using IBM WebSphere Cast Iron
Integrating Salesforce.com and Oracle ERP Using IBM WebSphere Cast Iron
 
Integrating SFDC and Oracle ERP with IBM Websphere CastIron Appliance
Integrating SFDC and Oracle ERP with IBM Websphere CastIron ApplianceIntegrating SFDC and Oracle ERP with IBM Websphere CastIron Appliance
Integrating SFDC and Oracle ERP with IBM Websphere CastIron Appliance
 
Is BCS Dead?
Is BCS Dead?Is BCS Dead?
Is BCS Dead?
 
#CNX14 - Intro to Force
#CNX14 - Intro to Force#CNX14 - Intro to Force
#CNX14 - Intro to Force
 
June 2023 Architect Group FTW.pdf
June 2023 Architect Group FTW.pdfJune 2023 Architect Group FTW.pdf
June 2023 Architect Group FTW.pdf
 
黑豹 ch4 ddd pattern practice (2)
黑豹 ch4 ddd pattern practice (2)黑豹 ch4 ddd pattern practice (2)
黑豹 ch4 ddd pattern practice (2)
 
Spark DataFrames: Simple and Fast Analytics on Structured Data at Spark Summi...
Spark DataFrames: Simple and Fast Analytics on Structured Data at Spark Summi...Spark DataFrames: Simple and Fast Analytics on Structured Data at Spark Summi...
Spark DataFrames: Simple and Fast Analytics on Structured Data at Spark Summi...
 
Adding Search to Relational Databases
Adding Search to Relational DatabasesAdding Search to Relational Databases
Adding Search to Relational Databases
 

Kürzlich hochgeladen

Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareJim McKeeth
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdfPearlKirahMaeRagusta1
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...Health
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplatePresentation.STUDIO
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...panagenda
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesVictorSzoltysek
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastPapp Krisztián
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnAmarnathKambale
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisamasabamasaba
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfVishalKumarJha10
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park masabamasaba
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...masabamasaba
 
%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburg
%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburg%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburg
%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburgmasabamasaba
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...masabamasaba
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdfThe Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdfayushiqss
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech studentsHimanshiGarg82
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionOnePlan Solutions
 

Kürzlich hochgeladen (20)

Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK Software
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdf
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the past
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
 
%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburg
%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburg%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburg
%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburg
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdfThe Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
 

Punta Dreaming by Luciano Straga #pd17 - Punta del Este, Uruguay

  • 2. Luciano Straga Salesforce Certified Professional Dreamforce 16 & 15 Speaker @stragaluciano Salesforce Connect Custom Apex Adapters Today, Heroku Redis within Salesforce
  • 3. Session Agenda Topic Presentation - Scenario Explained Heroku Redis – Redis Databases Capabilities - Demo Salesforce Connect – External Sources – External Objects Apex Connector Framework - Demo New Objects Relationships for External Objects - Demo Resources Q&A 1 2 3 4 5 6 7
  • 5. Punta Airlines A small airline with growing sales Basic Requirements – > Sell Tickets • Visualize and manage current flights and bookings in SF • Purchases may occur both in SF and Website • Flights and Bookings data is outside Salesforce • Two way integration between Salesforce and Website on real time
  • 6. Node Web App - Redis DB External REST API Salesforce Connect Salesforce Org Text Text Text Text Use Case Scenario Elements Involved
  • 8. Heroku Redis Redis Databases  In-memory key-value data storage - NoSQL  Data stored in RAM memory  Flexible Data Types  String  Hashes  Lists -Sets - Sorted Sets  Bitmaps – Hyperloglogs – Geospatial Indexes  Common uses:  Database  Cache (Non long term storage)  Message Broker - Broadcasting
  • 9. Salesforce Connect Key Features – External Objects – External Sources
  • 10. Salesforce Connect Framework  Seamless integration of external data  CRUD of data stored outside your Salesforce Org.  NO DATA REPLICATION/ Redundancy  Real time data access over external objects.  Always up to date.  Native Adapters – Point & Click Integration  Protocol-specific adapters:  Odata 2.0 / 4.0  Cross-org (Between Salesforce orgs)  Custom Apex Adapters
  • 11. Salesforce Connect Used when:  Large amount of data that should not be stored in Salesforce  Small amounts of data at any one time.  Real time access is crucial to get latest data.
  • 12. Salesforce External Objects Key Concepts and Features  Similar to custom objects.  __x extension.  Mapped to external data tables in external systems.  New object relationships:  External lookups.  Indirect lookups.
  • 13. External Objects vs. Custom Objects Features Custom Objects External Objects Data stored in Salesforce org Yes NO CRUD Yes YES* Tabs / Layouts / Field Level Security Yes YES* REST - SOAP API / SOQL – SOSL / Apex / Visualforce Yes YES* Formulas / Workflow / Triggers / Reports Yes YES Chatter Yes Yes* Top Differences
  • 14. Apex Connector Framework Key Concepts & Capabilities - Demo
  • 15. Apex Connector Framework Key Concepts & Capabilities  Set of classes and methods for creating external data sources.  DataSource namespace.  When OData & Cross Salesforce Org adapters are not suitable for the use case.  Based on REST – SOAP callouts.  Own custom adapter implementation.  Two Apex Classes need be extended for creating external data sources:  DataSource.Connection class.  DataSource.Provider class.
  • 16. Apex Connector Framework DataSource.Connection class  Obtain external system schema and CRUD operations.  Methods to override:  sync().  query().  search().  upsertRows().  deleteRows().  Authentication capabilities.  Functional capabilities.  Methods to override:  getAuthenticationCapabilities ().  getCapabilities().  getConnection(). DataSource.Provider class
  • 17. Apex Connector Framework External IDs for Salesforce Connect External Objects  External object has the External ID standard field for unique identification.  The custom adapter’s code must declare the DataSource.Column named ExternalID.  Salesforce storages this value.
  • 18. Apex Connector Framework Support for Writable External Objects  Creating,updating and deleting external records are not perfect processes.  Insert(), update() and create() operations are not allowed for external objects.  Database.insertAsync().  Returns a SaveResult object with an identifier for the insert job.
  • 19. Apex Connector Framework Authentication for Salesforce Connect Custom Adapters  DataSource.Provider class declares authentication type:  Anonymous -> Support for Name Credentials  Basic  Certificate  OAuth  DataSource.ConnectionParams depends on the Identity Type defined in Salesforce.  Name Principal –> From external data source definition.  Per User –> From current user that invokes the query or search.
  • 20. New Object Relationships for External Objects External & Indirect Lookup Relationships - Demo
  • 21. New Object Relationships for External Objects External Lookup Relationships Indirect Lookup Relationships External Object (Parent) Standard - Custom - External (Childs) Standard - Custom (Parent) External (Childs)
  • 22. Session Resources Blaze your own trail!  https://punta-airlines.herokuapp.com/  https://github.com/lucianostraga/puntadreaming  https://trailhead.salesforce.com/module/lightning_connect  @stragaLuciano  https://ar.linkedin.com/in/luciano-straga-121a9167
  • 23. Q&A

Hinweis der Redaktion

  1. General content slide