Powerful Google developer tools for immediate impact! (2023-24 C)
SharePoint 2010 BCS
1. www.orbitone.com
Raas van Gaverestraat 83
B-9000 GENT, BELGIUM
E-mail info@orbitone.com
Website www.orbitone.com
Tel. +32 9 330 15 00
VAT BE 456.457.353
Bank 442-7059001-50 (KBC)
H. De Smedt, J. De Clercq, V. Bardadym
14 July, 2010
SharePoint 2010 Business Connectivity Services-
Possibilities and Limitations
2. 14 July, 2010
SharePoint 2010 Business Data Connectivity - Possibilities and Limitations
Summary
Overview of BCS
BCS Architecture
Getting started
No-Code BCS Solutions and Limitations
Overcome No-Code Limitations
Test Cases
Questions & Answers
3. What is BCS, previously BDC
Business Connectivity Services (BCS) is the way to bring your
external data to SharePoint sites.
SharePoint 2007 had a similar facility, Business Data Catalog
(BDC), which made external data available within its site.
14 July, 2010
SharePoint 2010 Business Data Connectivity - Possibilities and Limitations
4. What's new in SP 2010 BCS:
Read-write.
More connectivity options.
Design and customization tools.
Rich Client integration.
Work online or offline.
Application Lifecycle.
14 July, 2010
SharePoint 2010 Business Data Connectivity - Possibilities and Limitations
5. Where we (are going to) use BCS / BDC @ Orbit
One
Education International – Membership Dues (SP 2007, BDC to
CRM)
Orbit One Intranet – FogBugz
Lucerna school, Students’ Follow-Up – Data from Informat
InSites Consulting – Navision (projects, clients,...)
Amonis – Panoramix (internal ERP)
14 July, 2010
SharePoint 2010 Business Data Connectivity - Possibilities and Limitations
6. What editions of 2010 is it in, and what are the
differences
Foundation
Business Connectivity Services
Standard
Business Connectivity Services Profile Page
Enterprise
Business Data Integration with the Office Client
Business Data Web Parts
In 2007 BDC was only in Enterprise Edition
http://sharepoint.microsoft.com/en-us/buy/Pages/Editions-
Comparison.aspx
14 July, 2010
SharePoint 2010 Business Data Connectivity - Possibilities and Limitations
7. 14 July, 2010
SharePoint 2010 Business Data Connectivity - Possibilities and Limitations
Summary
Overview of BCS
BCS Architecture
Getting started
No-Code BCS Solutions and Limitations
Overcome No-Code Limitations
Test Cases
Questions & Answers
8. 14 July, 2010
SharePoint 2010 Business Data Connectivity - Possibilities and Limitations
BCS Architecture
SQL WCF .NET Assembly Custom
Connectors
Business Data Connectivity
Office Integration
Office 2010 Client
Business Data Connectivity
SharePoint Site
SharePoint Server 2010
9. 14 July, 2010
SharePoint 2010 Business Data Connectivity - Possibilities and Limitations
Solution Types
Client
Server
Basic Advanced
SharePoint Designer
SharePoint Workspace Declarative Solutions
Microsoft Outlook VSTO Solutions
.NET Assembly
Connector
Microsoft Word
Custom Web Parts
10. Connections
SQL (FogBugz)
WCF (Lucerna)
.Net
When to choose? What are limitations of each?
We make a site with three different connections
Connections are prepared in advance
14 July, 2010
SharePoint 2010 Business Data Connectivity - Possibilities and Limitations
11. 14 July, 2010
SharePoint 2010 Business Data Connectivity - Possibilities and Limitations
Summary
Overview of BCS
BCS Architecture
Getting started
No-Code BCS Solutions and Limitations
Overcome No-Code Limitations
Test Cases
Questions & Answers
12. Prerequisites
Permissions
External data source (example: WCF)
Who makes BCS?
Information worker (“no-code”)
Developer (code)
14 July, 2010
SharePoint 2010 Business Data Connectivity - Possibilities and Limitations
13. How to make a list in BCS
14 July, 2010
SharePoint 2010 Business Data Connectivity - Possibilities and Limitations
14. How to make a list in BCS
14 July, 2010
SharePoint 2010 Business Data Connectivity - Possibilities and Limitations
15. Set user permission to BCS
14 July, 2010
SharePoint 2010 Business Data Connectivity - Possibilities and Limitations
16. How to make a list in BCS
14 July, 2010
SharePoint 2010 Business Data Connectivity - Possibilities and Limitations
17. 14 July, 2010
SharePoint 2010 Business Data Connectivity - Possibilities and Limitations
Summary
Overview of BCS
BCS Architecture
Getting started
No-Code BCS Solutions and Limitations
Overcome No-Code Limitations
Test Cases
Questions & Answers
18. What can you do with BCS
Search:
Crawling of the external database (indexing)
Show in SharePoint search results
Drill down / filter using facets
External list
List with bcs property
Webparts
14 July, 2010
SharePoint 2010 Business Data Connectivity - Possibilities and Limitations
19. Demo
External document management system (DMS):
Quick Walktrough
SharePoint 2010 Business Data Connectivity - Possibilities and Limitations
14 July, 2010
20. 14 July, 2010
SharePoint 2010 Business Data Connectivity - Possibilities and Limitations
External DMS: Data
Excel Documents: Generated with points of students
Hierarchy: Documents organized by year
Search support: into these documents
21. 14 July, 2010
SharePoint 2010 Business Data Connectivity - Possibilities and Limitations
External Content Type List
Start SharePoint Designer
Create External List
22. 14 July, 2010
SharePoint 2010 Business Data Connectivity - Possibilities and Limitations
External DMS: Result
http://hdesmedt-deskt/sites/HansPoint/default.aspx
23. 14 July, 2010
SharePoint 2010 Business Data Connectivity - Possibilities and Limitations
Challenges with No-Code Solutions
Subset of operations with no way to customize the
implementation
No folder support
No attachment support
No search security support
No support for Word or Excel add-ins
24. 14 July, 2010
SharePoint 2010 Business Data Connectivity - Possibilities and Limitations
Subset of operations with no way to customize
the implementation
XML file
Declarative
Connector LobSystem Type: Dot Net Assembly
25. 14 July, 2010
SharePoint 2010 Business Data Connectivity - Possibilities and Limitations
Subset of operations with no way to customize
the implementation
Out-of-the-box webpart knows what Io.Stream is!
Operations SPD doesn’t have
26. 14 July, 2010
SharePoint 2010 Business Data Connectivity - Possibilities and Limitations
Intermezzo
SharePoint Development
Binding to sharepoint?
If you have Custom Database
Use SharePoint WebParts to show it via Declaritive XML
Write BCS app against that
•No Binding
•No Guiding
BCS is the way to bring applications to SharePoint
27. 14 July, 2010
SharePoint 2010 Business Data Connectivity - Possibilities and Limitations
Challenges with No-Code Solutions
Subset of operations with no way to customize the
implementation
No folder support
No attachment support
No search security support
No support for Word or Excel add-ins
28. 14 July, 2010
SharePoint 2010 Business Data Connectivity - Possibilities and Limitations
Overcoming UI Limitations
Visual
Webpart:
GridView
Use BCS to call
the external
system
Retrieve items for
the current folder
from DB
29. 14 July, 2010
SharePoint 2010 Business Data Connectivity - Possibilities and Limitations
Challenges with No-Code Solutions
Subset of operations with no way to customize the
implementation
No folder support
No attachment support
No search security support
No support for Word or Excel add-ins
30. 14 July, 2010
SharePoint 2010 Business Data Connectivity - Possibilities and Limitations
No search security support
What happens:
• ReadAllItems
• 1 root finder method – builds index
• ShowInSearchUI
31. 14 July, 2010
SharePoint 2010 Business Data Connectivity - Possibilities and Limitations
No search security support
Security
• Secure Store Service
• Maps windows id to your identities (GetDmsUserName)
• Single sign on service
• Individual / Group maps
32. 14 July, 2010
SharePoint 2010 Business Data Connectivity - Possibilities and Limitations
No search security support
Customizations
Url
Author
…
33. 14 July, 2010
SharePoint 2010 Business Data Connectivity - Possibilities and Limitations
Challenges with No-Code Solutions
Subset of operations with no way to customize the
implementation
No folder support
No attachment support
No search security support
No support for Word or Excel add-ins
34. 14 July, 2010
SharePoint 2010 Business Data Connectivity - Possibilities and Limitations
No support for Word or Excel add-ins
Overview of your documents
99% Word Add-in
Same Code as WebPart
Same as sync with Outlook
35. 14 July, 2010
SharePoint 2010 Business Data Connectivity - Possibilities and Limitations
Summary
No-Code BCS Solutions are great for a quick start
Lots of support for operations, associations, search, sync
Can’t control the implementation
Has some limitations around folders, attachments
Overcoming No-Code Limitations
.NET Assembly Connectors
Custom Web Parts
Search Security
Data-Only Solutions
Custom VSTO Solutions
36. What are the limitations?
SharePoint 2010 Business Data Connectivity - Possibilities and Limitations
14 July, 2010
37. BCS External List Limitations
Be careful!
Workflows cannot be configured on External Lists
Cannot create Information Management Policies
No versioning or history
No Inline Editing or Datasheet View out of the box
No ratings
No "No-Code" ability to Export to Excel, Create Visio Diagram, Open with
Access or Open with Project
No REST access through ListData.svc to External Lists
No RSS Feeds
No Item Level Permissions
No item or field level validation
http://www.sharepointanalysthq.com/2010/07/bcs-external-list-limitations/
14 July, 2010
SharePoint 2010 Business Data Connectivity - Possibilities and Limitations
38. Can we do it with BCS list?
Define columns to display?
Yes
Sort?
Yes
Filter?
Yes
Group?
Yes
Calculate?
No
14 July, 2010
SharePoint 2010 Business Data Connectivity - Possibilities and Limitations
39. Can we do it with BCS item picker?
Search in item picker – how does it work?
Can be chosen during configuration
Search complete value (Filter Type = Comparison)
Search beginning of the value
Search any substring (Filter Type = Wildcard)
What fields are searched in item picker?
Can be defined in come from SQL
Not from WCF
Can we use cascade filtering in item picker?
(e.g. Campus = Brussels, then Class = 2MW)
No
Can we set sorting order in item picker?
No
Can we filter the list in item picker?
Yes
Can we select columns in item picker?
Yes
14 July, 2010
SharePoint 2010 Business Data Connectivity - Possibilities and Limitations
40. Can we make content types and columns with BCS?
Can we create a lookup column on a BCS list?
Yes, but with limitations
No addintional fields to show (not handy with people’s list if we only
choose family name)
With certain paramaters the column values are not shown in list views.
Can we create a lookup column with multiple values on a BCS list?
No
Can we create a content type with lookup columns on BCS lists?
Yes
14 July, 2010
SharePoint 2010 Business Data Connectivity - Possibilities and Limitations
41. How can we show BCS data?
Content query web part on a BCS list
No
Content query web part on a list with BCS lookup columns
Yes
Data view web part on a BCS list
Limited to functionality of list view web part
Calendar view on BCS data
No
Pictures
Only if represented as Image type in the database
14 July, 2010
SharePoint 2010 Business Data Connectivity - Possibilities and Limitations
42. Can we search in BCS?
Yes
Refining search
Edit XML in web part
on search result page.
14 July, 2010
SharePoint 2010 Business Data Connectivity - Possibilities and Limitations
43. How static / dynamic are BCS data?
Can we keep some BCS data static in documents, so that the
next year the class does not change in the documents for the
current year?
If the data are always dynamic, can we assign the current value
to the document as default ?
Mel: no
What happens in documents on SharePoint sites if in the data
source we have a deleted record?
Mel: has to be an error after refreshing
14 July, 2010
SharePoint 2010 Business Data Connectivity - Possibilities and Limitations
44. Alternatives
BDC
Third party solutions
Sync from external sources to SharePoint lists
Custom solutions
Code
ASCX web part connected to external source
External links in Excel & Access
14 July, 2010
SharePoint 2010 Business Data Connectivity - Possibilities and Limitations
46. Third party solution – Layer 2
http://www.layer2.de/en/community/FAQs/BDLC/Pages/Feature-comparision-sharepoint-external-list.aspx
Feature SharePoint 2010 External List SharePoint BDLC List
Integrate external data from various sources into SharePoint
A complete SharePoint list with all list features is implemented
OOB almost any type of data source is supported (.NET Type / WCF Service / SQL Server) (more info)
Full SharePoint 2007 / WSS 3.0 support (SharePoint Foundation 2010 supported)
No additional tools, modelling or programming are required to create a
list
(SharePoint Designer has to be installed
and used)
Connection can be established in just some minutes (more info)
OOB full search capabilities (not for SharePoint Foundation?)
OOB web part connectivity (not for SharePoint Foundation?)
Full Offline capabilities (2010 only)
(with SharePoint 2010 only, SharePoint
2007 for V2.0 and certain list types only)
OOB-support for the SharePoint Client Object Model
OOB-support for REST-services
OOB-support for making associations to other SharePoint lists
Event-triggering
Alerts will be fired on data change
Email notification on data change
RSS notification on data change
Workflows can start business actions on data change
Datagrid editing supported
Lookups can display any column (ID Only)
Support for joins as data source
Support for common SharePoint list types, e.g. contacts, tasks, events
etc.
Original data source is not queried every time the list is displayed with
performance side effects
(some kind of cache seems to
be implemented)
OOB there is no row limit
(it seems to be a row limit of 2000
preconfigured, more info)
Data source can be updated (if primary key available) (for a few data sources only) (if supported by data source)
14 July, 2010
SharePoint 2010 Business Data Connectivity - Possibilities and Limitations
Viktor
Read-write. You can create, read, update and delete external data from SharePoint and Office applications.
More connectivity options. In addition to database and web services, connect to WCF services or plug your own code into a .Net assembly connector to handle transformation or aggregation of data. Full support for Claims-enabled services as well as Secure Store Service (formerly SSO) to map user credentials.
Design and customization tools. Huge investments in SharePoint Designer 2010 and Visual Studio 2010 to allow creation and customization of code-less and code-based solutions. Composite solutions can be collaboratively built by a team with each member using the tool(s) of their choice. Build applications faster and easier.
Rich Client integration. Expose data as a native SharePoint list and then connect it to SharePoint Workspace or Outlook. Customize InfoPath forms to add business logic surfaced consistently in SharePoint and SharePoint Workspace. Customize Outlook to provide views, forms, ribbon buttons or show contextual data in a taskpane – all without writing code!
Work online or offline. External data is cached in a SQL CE database installed with Office 2010. When connectivity is lost, the cache automatically goes into offline mode. When connectivity is restored, BCS can synchronize data changes directly to the external system.
Application Lifecycle. Deploy composite SharePoint solutions to Office 2010 machines, and enable users to check for updates to those solutions.
Viktor
Viktor
Hans
Hans
SQL
WCF
In VS
.Net Assembly connector: Written for perticular instance: for your perticular exchange server, quarcks -> creater IT staff
Custom Connector: big C: Written for any type system, for any exchange server -> 3the partys to give access to their product
BDC -> nameing convention from 2007 B D Catalog
-> set of compontent to do thing
-> Runtime: API
-> MetaData: Store Declarative XML, Describese external system, and how we gone access it
-> Get Data into sharepoint
-> First run into External List
-> Culomns and suplement profiles, Lists,
IMPORTANT : Symetry
BDC Client Runtime; Client Side Cache (metadata store, take things offline)
->Use it
-> use it in outlook vb
-> or Custom solutions
VSTO Package
When you take External List offline when you sync to outlook
->Creation of VSTO click once package
-> server to client
When you take data offline -> always direct one.
-> you dont need sharepoint anymore
Hans
You can create in BCS
Basic (no code) Server solution: SP Designer
Why is Excel on the list?
-> Already in db
Left: No Code Solutions
Jan
Jan
Jan
Jan
Jan
Jan
Viktor
Hans
Hans
Hans
Key Mile stone!
Looks just the same…
Document – Folder / Excel – Year
No Code solutions -> For easy solutions
-> No blob
In BussinesLine -> no access to edit
Hans
Hans
BCS
Subset of operations with no way to customize the implementation
-> Stream
-> Blob in db
->
How do we take control of this?
Have to understand the undelying XML
System.Io.Stream
Hans
ASP.net problem children
Hans
BCS
Subset of operations with no way to customize the implementation
-> Stream
-> Blob in db
->
Hans
Hans
BCS
Subset of operations with no way to customize the implementation
-> Stream
-> Blob in db
->
Hans
2 ways search security
BinarySecurityDescriptorAccessor
Does its Trimming at crawl time
Checks security
Is check index, it knows it already
efficient
Access Checker
Not always possible, with different usernames and passwords
Query time trim
Get results out of index
Can scott see this…,….
Slow
Tak Care, limit to 200, narrow query
No-code solution knows already how to search
Hans
Hans
Hans
BinarySecurityDescriptorAccessor
-> implementing
-> Crawltime
Access Checker
->Slow
->QueryTime