SharePoint Integration and Interoperability
-
Upload
richard-harbridge -
Category
Technology
-
view
1.074 -
download
0
Transcript of SharePoint Integration and Interoperability
SharePoint 2010Integration and Interoperability:What You Need to Know
@rharbridge
Presented By: Richard Harbridge
What we will be talking about…1. SharePoint’s Important Interoperability2. What is the BCS?
• External Content Types• External Columns• External Lists• Extensibility and Tooling
4. Limitations of BCS
3. Demonstration
Bonus!
SharePoint Integration
“Interoperability is the ability of a system.. to work with other systems.. without special effort on the part of the customer.”
What the heck is Interoperability?
(IHN-tuhr-AHP-uhr-uh-BIHL-ih-tee)
How?
SharePoint Integration
How do we achieveInteroperability?
2. By making use of a "broker" of services that can convert one system’s interface into another system’s interface "on the fly“.
1. By adhering to published interface standards. Does SharePoint do this?
What about this one?
SPOILER ALERT!
Because Claims is Awesome
Connect with 3rd Party Authentication ProvidersConnecting with a Non Windows Integrated Authentication driven web site.
Delegation with Back-End SystemsShowing data from another server on a SharePoint web page.
SharePoint Integration
Claims UsesConsistent Standards
1. By adhering to published interface standards.
SharePoint Integration
Query a 3rd Party Search Engine Using SharePoint UI
Or Just Federate Queries to Multiple Search Systems…
SharePoint Integration
Index Content from a Range of Content Repositories
What does all of these?
Indexes Databases, Web Services or Custom Repositories
Provides Consistent Access to External Content
Has SharePoint Designer and Visual Studio Plug-ins
B
C
S
_ _ _B C S
SharePoint Integration
Have you heard of OpenSearch?• Standard (Creative Commons) for syndication and
aggregation of search results• Syntax for executing queries• Results returned in RSS/ATOM + extensions• Supported by Microsoft Search Server 2008
Clients: Windows 7, IE, FireFox, Chrome, SharePoint …Providers: Amazon, Flickr, Wikipedia, SharePoint…
1. By adhering to published interface standards.
SharePoint Integration
Content Management Interoperability Services
CMIS specification provides a Web services interface that: Is designed to work over existing repositories enabling
customers to build and leverage applications against multiple repositories—unlocking content they already have
Decouples Web services and content from the content management repository, enabling customers to manage content independently
Provides common Web services and Web 2.0 interfaces to dramatically simplify application development
Is development platform and language agnostic Supports composite application development and mash-up by
the business or IT analyst
A platform that allows you to build against multiple technologies without knowing anything about how all the API’s work. (If you know CMIS.)
Microsoft will be implementing this from both a client and provider perspective.
Not available “in the box”. Available via SharePoint Admin Toolkit
SharePoint Integration
And then there’s RESTAccess to SharePoint Lists and Document Libraries…
• RESTful interface over HTTP • Uses the ADO.NET Data Services interface conventions• Feature rich: retrieve, update, browse data using
just URLs and XML/JSON• Low barrier of entry. If you have an HTTP stack
you can use it.
Visual Studio Integration…• Entirely built on top of the open RESTful interface• No client is required• Visual Studio creates proxies, visualizes schemas,
provides LINQ support etc.
SharePoint Integration
SharePoint has Interoperability
Some might even say it has storage interoperability…But the coolest part of interoperability?
2. By making use of a "broker" of services that can convert one system’s interface into another system’s interface "on the fly“.
What to watch out for…
Remember this?“Interoperability is the ability of a system to work with other systems without special effort on the part of the customer.”
without special effort
SharePoint Integration
BCS in Office Client
Persistence
Store
Data
Cubes
SAP ORACLE SiebelSQL
Custom .NET
assembly
Identity Federation
serviceBCS in SharePoint
BCS MetaData Store
External data
AS Custom
Connector
Client to Backend
Direct Connection
Client DataCache
DB
Connector
WCF /WS
Connector
.NET
Assembly
Connector
SharePoint Client
You could look at this diagram…
SharePoint Integration
External Data
External Content Types
External ListsSharePoint
Workspace w/ InfoPath Forms
Outlook Forms and Task Panes
Office Applications
Search Results
Or this simplified one…
SharePoint Integration
External Data
External Content Types
External ListsSharePoint
Workspace w/ InfoPath Forms
Outlook Forms and Task Panes
Office Applications
Search Results
External Content Types
Describes:• Structure of the external
system (Fields, Methods, Connection)• How this data behaves within
SharePoint and Office
Added to the BCS Service Through:• SharePoint Designer• Visual Studio 2010• Via an Import into the Business Data
Connectivity Service as part of a model
Manage and Re-Use from a Central Location
SharePoint Integration
External Data
External Content Types
External ListsSharePoint
Workspace w/ InfoPath Forms
Outlook Forms and Task Panes
Office Applications
Search Results
External Lists
The external content type is leveraged in a variety of ways…
Such as for Exposing External Data as an External SharePoint List
Full CRUD capability Familiar UI and NavigationSort, Filter, GroupProgrammatic Access via SPList OMProfile Page for Each ItemFormAuto-generated OOBUpsize to InfoPath
Can be Taken “Offline”
SharePoint Integration
External Data
External Content Types
External ListsSharePoint
Workspace w/ InfoPath Forms
Outlook Forms and Task Panes
Office Applications
Search Results
Offline Lists
External Lists also be leveraged as Offline “Lists”
Or Connected to Outlook as Contacts, Tasks, Calendars and Posts
SharePoint Integration
External Data
External Content Types
External ListsSharePoint
Workspace w/ InfoPath Forms
Outlook Forms and Task Panes
Office Applications
Search Results
Office Applications and Search
w/ Code
External Content Types can also be leveraged in…
Many other Office Applications (or Custom Applications)
Or Leveraged to allow for External Data Searching or Filtering
SharePoint Integration
External Data
External Content Types
External ListsSharePoint
Workspace w/ InfoPath Forms
Outlook Forms and Task Panes
Office Applications
Search Results
Bonus! Integration Webparts
w/ Code
Bonus!
Web PartsExternal Data ListExternal Data ItemExternal Data Item BuilderExternal Data Related ListExternal Data Connectivity FilterChart Web Part (New)
Integration Webparts
SharePoint Integration
So what’s different? (Besides the Chart Control?)
Read/Write CapabilityClaims AwareConnect via ADO/SQL, WCF/WS, .NetAssembly and Custom ConnectorsBatch and Bulk Operation Support
BDC is still used for search indexing connectors in 2010 they added blob, incremental crawl and item level security.
They added symmetrical server and client runtimes. Allowing them to connect from client or server directly to external data.
SQL CE database is used to cache external data which allows for “cached mode” behavior on external data basically creating a rich client cache.
Intermediate AdvancedSimple
• Create Reusable Components (UI parts, ECTs, Actions)
Out-of-box• Surface data in
External Lists
• Connect those lists to Outlook, SPW
• External Data Columns
DeveloperPower User
NO CODE
Advanced Developer
CODE
Where things fit.
“NO CODE”
SharePoint Integration
1. Discover your Data Source• Database
• Web services
• .NET type
2. Map Operations to Data Source• Create, read, update, delete, lookup
3. Connect to SharePoint and/or Office • External List
• Contact
• Task
• Appointment
• Post
SharePoint Designer Process
What to watch out for…
Don’t assume the tools will significantly reduce the time it takes
to ‘integrate’. It typically reduces time to ‘interface’.
SharePoint Integration
General BCS Limitations
• No Write support for BLOB• You cannot write back to BLOB fields using BCS
unless you write your own method.• You can access BLOB columns by defining a
StreamAccessor method and presenting the external data via the BCS Data List web part by checking the Display stream fields property.
SharePoint Integration
External List Limitations• Workflows cannot be associated with external lists
• Workaround: You can use the external data columns and manipulate it that way.
• No RSS feed support for external lists• No REST based access for external lists
• http://sharepoint/_vti_bin/ListData.svc does not support external lists• LINQ to SharePoint spmetal.exe does not support external lists• Cannot configure alerts for external lists• Cannot export external list items to Excel (using the Export to Excel
feature), Create Visio Diagram, Open with Access or Open with Project• Versioning cannot be configured on external lists• Version History is not available on external lists• Datasheet view cannot be used in external lists
• XSLT is Supported (So you can basically make your own.)
External Lists
SharePoint Integration
External List Limitations Continued…
• Ratings feature is not supported for external lists• Information policies cannot be configured on external lists• Item-Level permissions are not available for external lists• No item or field level validation• Lookups don’t work on any column but ID• No tagging support.• No attachments.
External Lists
SharePoint Integration
• You cannot create a site column of type ‘External Data Column’• External data columns can be created only as list based
columns and cannot be consumed in site level content types
Bonus! External Column Limitations
Bonus!
What to watch out for…
Some of the many limitations mentioned make sense. Think
carefully before you build a ‘workaround’.
1. SharePoint’s Important Interoperability2. What is the BCS?
External Content TypesExternal ColumnsExternal ListsExtensibility and Tooling
3. Limitations of BCS
1. Interface, Identity, Search and Data Access Platform2. A Set of Powerful Connection Capabilities
Structured Types of External ContentLeveraging External Content with Internal ContentInteract Like SharePoint ListsExtensibility/Tool Range from UI to SPD to VS 2010
3. Good Enough and Better than Most Options
What we talked about…
References What’s New BCS
Business Connectivity Services
A plethora of wonderful people from Microsoft: Rob Lefferts, Rolando Jimenez, Brad Stevenson, and Nazeeruddin Mohammed
Thank You!Thanks to Organizers, Sponsors and You for Making this Possible.
Questions? Ideas? Feedback? Contact me:
Twitter: @rharbridge
Blog: www.rharbridge.com
LinkedIn: www.linkedin.com/in/rharbridge
Email me at: [email protected]
My company: www.Allin.com