SharePoint 2010 Business Connectivity Services

Post on 14-Dec-2014

3.902 views 0 download

Tags:

description

Slides for Aug/Sept 2010 talks on SPS 2010 BCS

Transcript of SharePoint 2010 Business Connectivity Services

Business Connectivity Services for SPS 2010

Lynn LangitMicrosoft – Developer EvangelistBlogs.msdn.com/SoCalDevGal

SPS 2010 and BCS

NEW - Business Connectivity Services

Combine Internal (SharePoint) and External Data (LOB Systems)

Superset of BDC

Communities

Search

Sites

Composites

ContentInsights

What is BCS?

Surfaces External data to Office 2010

Includes no code solutions

Includes Developer Extensibility

What is Business Data Connectivity?

• Data from OUTSIDE of SharePoint• Data which can be DISPLAYED inside of SPS or Office

What is the Architecture of BCS?

Search, Workflow, Web Parts, R/W connections

Offline (uses SQL Compact)

BCS Features by SPS Edition

Types of Solutions

SharePoint Designer

Development ApproachesSP Server(Prod /

Dev)IT Admin

Import & ConfigureWSP/BDC

SI/IT Devs

“Live” connection

SharePoint Designer

Discover & Configure existing back-end integration end-points (no-code)

Connect to existing WCF, ADO.NET or .NET Objects

Author thin or rich client UX for External List or InfoPath Forms

Pro Dev

Produce WSP/ClickOnce Package w/BDC Model

WSP/ ClickOnc

e Package

Create custom back-end integration logic using .NET Assemblies

Author thin or rich client UX as SPS or VSTO projects

Who Does What with BCS?

What is a Custom Content Type?

A reusable schema (strongly typed) from SP DataUsually used as metadata for listsCreated in SharePoint, SP Designer or VS

Editing Content Types in SP Designer

Content Type Modeling in VS 2010

Where can I display custom content?

Inside of SharePointUsually added to ListsOnline and connected

SharePoint WorkspaceUsually added to ListsCan be offline - *requires SharePoint Server

Office - *requires SharePoint ServerWord, Access, moreRequires custom code

Viewing Custom Content Types in SPS

What is an External Custom Content Type?

Custom Content Type sourced from OUTSIDE SPS

data access info (i.e. connection, security, data access permissions, type info) - ENTITIESIncludes information about data access from inside of SPS, Word, etc…- i.e. read or read/write) - BEHAVIORS

Usually used as metadata for lists or columns in SPS

Can also be displayed in Office applications (Outlook, Word…)Can be offline, can be updatable

Created in SharePoint, SP Designer or VS

Connecting to External Data

SharePoint Designer 2010 supports SQL Server databasesWeb and WCF services.NET connectivity assemblies

SharePoint 2010 provides WCF adapters forOracle, SAP and Siebel

Other external systems Edit the model XML (BDC) file in VS 2010

External List Web Part in SPS

Designed to display External ContentNew for SPS 2010Can also display external content as an external column

Adding External Data to Columns

Viewing in SharePoint Workspace

Offline capableInfoPath forms UIRespects SPS view settings (filter/sort/group)Error/conflict resolutionSearch across external data

Viewing in Word 2010Requires SP ServerCreate using Custom VSTO apps in VSUse SPS Client-Side Object Model

Creating External Content Types in SP Designer

Enabling Operations in SP Designer

Challenges with No-Code Solutions

Subset of operations with no way to customize the implementationNo folder supportNo attachment supportNo search security supportNo support for Word or Excel add-ins

Scenarios for Custom Coding

Aggregations of external dataRequiring multiple calls to source to completeRequiring calls to different sources to complete

Complex TransformationsRequiring one or more transformsRequiring dependent (transactional) transforms

Complex Access ChecksRequiring multiple or complex security checksRequiring access mapping (credentials)

Overcoming UI Limitations

Server-Side Object modelStreamAccessor method

BCS in VS 2010

Also called working with .NET Connector Assemblies

SPS BCS Templates in VS 2010

Business Connectivity Services

BDC Designer allows you to develop, debug and deploy BDC Models

uses External System type “.NET Assembly ConnectorCan import and customize models created in SP Designer

Visual designers in VS 2010BDC ExplorerBDC method details

Tool to generate classesSPMetal - here

VS 2010 BDC Designers

VS Entity Associations

BDC Object Model• BDC contains ONLY

Metadata, no external data

• Access to this object model requires SharePoint Server

Data-Only Solutions

Used to set up subscriptionSimilar to “Sync to” optionsFree tool from MSDN Code Gallery

BDC Server Authentication

SharePoint Server

External SystemWeb 2.0Claims Aware

Service

3. Secure StoreService

BDC ServerRuntime

VLWebPart

Application

2. Process Account

1. Logged-on user

CredentialsTicketDelegation Token

CredentialsApplicationDelegatedToken

SAMLToken

Modes:

1. PassThrough (logged-on user)2. RevertToSelf (process account)3. SSO Authentication (Credentials, etc. from Secure Store)

Secure Store ServiceMaps credentials from user to external systems

BCS Security &.NET Connectors

Authentication Type

WCF Connector DB Connector .NET Host Connector

SQL Auth N/A Yes Code-Based

UserName & Password

Yes Yes Code Based

NTLM Pass through

Yes Yes Yes

Claims Token Yes No Code Based

Oauth / LiveID Code Based No Code Based

SPS Designer vs. VS 2010Capability SharePoint Designer 2010 Visual Studio 2010

ConnectionsSQL Server, WCF/Web services, or .NET Framework connectivity assembly.

Any data source through .NET Framework connectivity assembly.

Modeling approach Discover and use. Create and publish.

Target scenariosAuthor simple models w/UX (Outlook, SharePoint Workspace, InfoPath)

Author complex models with custom connectivity logic for aggregation, transformation, and security.

Author external lists Author custom UX via VSTO

Author simple FK-associationsAuthor reusable External Data Parts and Web Parts.

Limitations

Foreign key-less associations, advanced stereotypes (bulk, batch), generic or polymorphic services, and interfaces containing complex (non-flat) parameter structures.

VS External Content Type Designer works only for .NET Framework connectivity–based models.

More Resources

External Content and SP Designerhttp://msdn.microsoft.com/en-us/library/ff728816.aspx

MSDN Channel 9 course on SPS BCShttp://channel9.msdn.com/learn/courses/SharePoint2010Developer/AccessingExternalData/

MSDN Code Samples for Solutionshttp://msdn.microsoft.com/en-us/library/ff621068.aspx