• Like

SharePoint Integration and Interoperability - SharePoint Saturday Philly

  • 1,173 views
Uploaded on

 

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
1,173
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
25
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide
  • My dedication to you before I begin. By the end of this you will have gained 3 things. It might be new knowledge, it might be a new method but you MUST gain 3 things by the end. If you don’t my first challenge to you is to stalk me, hunt me down and make sure you get 3 things from me. Because I owe you 3 things! This is meant to help you. 
  • Please encourage folks to visit the sponsors in the lobby. Everyone should have a sponsor bingo card. If they get initials from each sponsor they can be entered in our drawings to win great prizes, including Kindles, and a Surface RT.
  • This is the local Philly SharePoint user group. We cover a range of topics for all audiences.
  • This is a local group that is just getting started as an adjunct to the user group. As the slide says, it is a support and social group for independent and remote workers in the Philly area. More information is available on the website.
  • OData supportSharePoint 2013 introduces support for OData Business Data Connectivity (BDC) connections. This is in addition to data connections for WCF, SQL Server, and .NET assemblies. The Open Data Protocol (OData) is a web protocol that is used to query and update data. OData applies web technologies such as HTTP, Atom Publishing Protocol (AtomPub), and JavaScript Object Notation (JSON) to provide access to information from a variety of applications, services, and stores. For more information about OData, see Introducing OData: Data Access for the Web, the cloud, mobile devices, and more in the MSDN Library. For years, SharePoint has been an OData provider, which means a SharePoint list can be consumed by using OData. In SharePoint 2013, you can now connect to an external data source by using OData. For examples of OData providers and for more information about OData support, see “Connecting to Open Data (OData) Data Sources” in What’s new in Business Connectivity Services for developers in the MSDN Library. For more information on using OData in BCS in SharePoint 2013, see Using OData sources with Business Connectivity Services in SharePoint 2013 in the MSDN Library. Business Connectivity Services supports Anonymous, Basic, Windows, and Custom authentication to OData services when it is used with the Secure Store Service. If you want to apply permissions at more discrete levels, use OData connections. OData connections provide an easier way to create BDC models that work for both SharePoint 2013 and Office 2013 client applications. In SharePoint 2013, you can connect external lists that are surfaced through OData to Office 2013 clients and you can work with the data when you are offline. When the Office 2013 client reconnects, it performs bidirectional synchronization with the OData source. Automatic generation of BDC models for OData data sourcesBefore SharePoint 2013 or SharePoint Online can be used as an interface to external data, they must understand what kind of data source it is, how to talk to it, and what kind of authentication the external system expects. These items — and also which tables to read, which items from those tables are of interest, and which operations to perform on them — are all described to Business Connectivity Services in a BDC model. In SharePoint 2013, you must use Visual Studio 2010 to create BDC models for OData data sources. To make the BDC model creation process smoother, Visual Studio 2010 will be able to connect to the OData endpoint through Business Connectivity Services and read the OData source. Visual Studio 2010 will then automatically generate the BDC model based on the available metadata. The BDC model can then be either imported into the Business Data Catalog as a farm-scoped external content type, or be included in an app for SharePoint. Farm-scoped external content types can be used in external data lists, business data Web Parts, or business data in lists anywhere across the SharePoint farm. The BDC model will not contain any filters because it is not possible to know what these would be beforehand. By default, Visual Studio 2010 will generate all the Business Connectivity Services operations for all the OData operations (Get, Put, Post, and Delete). 7 Event listenerSharePoint 2013 provides an event listener. The event listener includes an event subscriber on the SharePoint 2013 side. The subscriber receives notifications from the event publisher (on the external system side) on changes to the data and then initiates predefined actions when changes occur. This enables SharePoint users and custom code to receive notifications of events that occur in the external system. The users and custom code need to explicitly subscribe to events on entities for which they want to receive a notification. The external system can use any of the supported connections (OData, SQL, or WCF) for transactions with the external system. However, to support eventing, the external system must implement interfaces that allow users to subscribe to events and it must send the notifications back as ATOM feeds or JSON objects to the SharePoint 2013 endpoint. Subscriptions enable event receivers on external listsSharePoint 2013 supports a pull model for getting data from an external system and it introduces a subscription model. In this version, developers can create BDC models that subscribe to published events from an event publisher in the external system. The developers can target a particular entity in the external system, such as the Customer entity, and receive notifications about events that are published on that entity. This enables developers to write custom code for external lists that trigger SharePoint events when data is changed. SharePoint users can also subscribe to alerts on external lists that are associated with a BDC model in which a developer has defined a subscription. For example, you can create a custom event on an external list that sends an email message to an employee when a customer account is assigned to that employee in the external system. You can do this by subscribing to a particular event (or alert) on a particular view of an external list. Note that users can subscribe to an event the same way that they did in SharePoint Server 2010. For information about how to subscribe to an alert, see Create an alert or subscribe to an RSS Feed on Office.com. For more information, see “Receiving Events from External Systems” in What’s new in Business Connectivity Services for developers in the MSDN Library. Support for apps for SharePointSharePoint 2013 introduces apps for SharePoint. By using apps for SharePoint, you can add functionality to a SharePoint site by using the self-contained app for SharePoint. When installed, apps for SharePoint do not make any changes to the underlying code on the computer that is running SharePoint Server. Therefore, each app for SharePoint is isolated from the rest of the system. Because apps for SharePoint contain all the resources that they need to function, they are very safe to use and also can be uninstalled cleanly. This article focuses on Business Connectivity Services support for apps for SharePoint. Business Connectivity Services supports apps for SharePoint in two ways. First, BDC models can be scoped to apps for SharePoint. Second, connection information is defined and stored separately from the app-scoped BDC model in BDC connections. About SharePoint app-scoped external content types and connectionsIn SharePoint 2013, developers of apps for SharePoint can package BDC models in an app for SharePoint. The Business Connectivity Services runtime then creates external content types that are scoped to the app for SharePoint. This limits use of the external content type to the app for SharePoint. 8 Connection properties can be specified in two ways, either in the BDC model that is contained in the app for SharePoint or in a Business Connectivity Services connection settings object that is created and stored in the Secure Store. Otherwise, if you connect to a data source that requires authentication, the connection must be defined separately in the Business Connectivity Services layer by a developer. Also, an OData connection must be used to connect the app for SharePoint to the external data source. By defining the connections separately from the BDC models that are packaged within the app for SharePoint, administrators can more easily manage connections to external systems. A Business Connectivity Services connection settings object is a combination of the following:  A name for the connection.  The endpoint URL of the data source.  A declaration of the credential type and authentication method that will be used to authenticate with the endpoint URL of the data source. You must use a credential type and authentication method that is supported by the external data source. For example, you can declare that the connection will use the credentials of the user that is logged in or a different set. Certificate details can be included also. When an administrator installs an app for SharePoint that needs to access a data feed through Business Connectivity Services, the app for SharePoint must use a BDC connection. During installation, the administrator must grant permission to the app for SharePoint to use the appropriate BDC connection. Note that external content types created from an app-scoped BDC model are scoped to only the app for SharePoint that contains the model. However, multiple apps for SharePoint — each of which contains an app-scoped BDC model — can all point to the same Business Connectivity Services connection settings object. In this way, connection settings can be reused across different apps for SharePoint. For more information about what’s new for developers forapp-scoped external content types and how to create a connection, see “App-Scoped External Content Types” in What’s new in Business Connectivity Services for developers in the MSDN Library. For a developer overview of apps for SharePoint, see App-scoped external content types in SharePoint 2013 External list enhancementsSharePoint 2013 includes enhancements to external lists that bring them to functional parity with other SharePoint lists. Performance improvements in external listsSharePoint 2013 introduces a number of improvements for external lists. These improvements reduce the load on the database servers in the SharePoint farm and increase the speed of list rendering. Performance is enhanced by having the external system do paging, filtering, and sorting of the external list data before it is sent to SharePoint. Limiting records returned by the external systemWhen a limit filter is defined for a BDC model, users can specify the number of records in the list that they want displayed per page. 9 Data source filteringUsers can use a drop-down list on a column in an external list to filter queries. Developers can prepare Collaborative Application Markup Language (CAML) queries or calls to the SPList object model to filter a list. In SharePoint 2013, if a data source filter is defined in the BDC model, the filtering occurs on the external system before it is passed to SharePoint. Sorting external listsIn SharePoint 2013, the user’s request to sort an external list is sent to the external system. The external system sorts the data, and then sends it to the external list. To do this, the solution developer adds a sort filter to the BDC model for each column in the external list that the developer wants users to be able to sort. Sorting is applied on the entire dataset in the external system, instead of just the first set of data retrieved. The result is an accurately sorted list that is displayed to the user. For more information about paging, filtering, and sorting external lists, see “Enhanced Filtering, Sorting and paging for external lists” in What’s new in Business Connectivity Services for developers in the MSDN Library. Export external lists to ExcelIn SharePoint 2013, you can export an external list to Excel 2010 or to Excel 2013. This works much like exporting SharePoint native lists to Excel in SharePoint Server 2010. However, there are some differences in how you control what gets exported and how you work with the exported data. By default, exporting external lists is enabled. However, an administrator can disable this. When you export an external list to Excel, you basically get the list as it is displayed in the browser. You get only the data that is present in the selected view and the rows and columns in Excel will have the same sorting and filtering applied as the external list. The column names in the exported data will have the same language settings as the external list and the exported data is subject to any filters that are on the external system. The process of exporting data creates a one-way (external list to Excel) link between the external list and the Excel version of the list. The Excel version can be refreshed at any time to reflect the current state of the source external list. This means that any changes users might have made to the Excel version are overwritten. Changes that are made in the Excel version are never pushed back up to the source external list. Business Connectivity Services in SharePoint Online enhancementsAll Office 365 for enterprises subscriptions include SharePoint Online. This version of SharePoint Online introduces Business Connectivity Services to the Office 365 users. By using this version, you will be able to bring external data into SharePoint Online from cloud-based data sources and from data sources that are behind your company’s firewall in a hybrid scenario. Microsoft Business Connectivity Services can consume data sources that are exposed as WCF services, SQL Azure data services, OData endpoints, and web services. 10 REST (CSOM) object model for Microsoft Business Connectivity Services for web and mobile app developersIn SharePoint 2013, Business Connectivity Services exposes the Representational State Transfer (REST) APIs for web and mobile app developers to use. These APIs provide a standard interface to the developers. Business Connectivity Services Client Runtime supports side-by-side Office 2010 and Office 2013 installationsBusiness Connectivity Services Client Runtime now supports side-by-side installation of Office 2010 and Office 2013 on the same client computer. For example, if Outlook 2010 and Lync 2013 are installed on the same client computer, by default both versions of Business Connectivity Services Client Runtime are also installed. This new feature enables Office 2010 and Office 2013 to continue to work without causing conflicts or failures when Microsoft Business Connectivity Services Client Runtime is used. OData Windows PowerShell cmdletsSharePoint 2013 includes the following six new Windows PowerShell cmdlets specifically for OData.  Get-SPODataConnectionSettingReads a Business Connectivity Services connection of a BDC service application and returns the Business Connectivity Services connection object.  Get-SPODataConnectionSettingMetadataReturns Business Connectivity Services connection metadata properties.  New-SPODataConnectionSettingCreates a new Business Data Connectivity connection.  Remove-SPODataConnectionSettingDeletes the Business Connectivity Services connection object together with its metadata object.  Set-SPODataConnectionSettingCan be used to edit the properties of an existing Business Connectivity Services connection.  Set-SPODataConnectionSettingMetadataCan be used to edit metadata properties of an existing Business Connectivity Services connection.
  • A lot of this can seem daunting and I know one of the hardest things is figuring out how to do some of the things I have shown today. If you are interested in further training or assistance please let me know. Based on the number of people who are interested and the areas of interest we can schedule further training sessions to help everyone better use the SharePoint portal.It's our commitment to you that we will continue to hear your feedback and identify the issues. I encourage you to give us feedback during the coming months, and we will continue to deliver more and more functionality, more and more guidance to help you be successful with your application of SharePoint.Thank You for Reading/Listening

Transcript

  • 1. SharePoint 2010 (and a little 2013)Integration and Interoperability:What you Need to Know Presented By: Richard Harbridge #SPSPhilly @RHarbridge#SPSPhilly @RHarbridge
  • 2. Thanks To Our Sponsors!#SPSPhilly @RHarbridge
  • 3. SharePoint User Group • SharePoint • End Users • Administrators • Architects • Developers • IT Pros • Meetings: 2nd Tuesday of the month, Microsoft Malvern, 5:30-8 pm WEB: www.TriStateSharePoint.org EMAIL: info@TriStateSharePoint.org TWITTER: @tristateSP#SPSPhilly @RHarbridge
  • 4. SharePoint Network Are you an independent consultant or remote worker who deals with SharePoint, Office or Office365? Do you sometimes feel cut off from the rest of the SharePoint world? Do you need help with technical or business issues, or just want the chance to socialize with others? If so, then the SharePoint Network might be for you! www.SharePointNetwork.org#SPSPhilly @RHarbridge
  • 5. Who am I? Boston Washington
  • 6. Our Goal Today… From Here To Here
  • 7. What we will be talking about…1. Business Data Challenges2. SharePoint’s Important Interoperability3. What is the BCS? • External Content Types • External Columns • External Lists • Extensibility and Tooling4. Demonstration5. Limitations of BCS and SharePoint 2013 Bonus!
  • 8. Business Data Challenges
  • 9. Business Data in an Enterprise IT High Integration Costs (Custom) High Overhead (Maintenance, Security) Customers Suppliers Quality Operations Financial Redundant Data and Processes! High Dissatisfaction Users High Training Costs#SPSPhilly @RHarbridge
  • 10. Challenges with Business Data Challenge IT End User Higher Overhead for IT to Service User Requests   Multiple Places to Search   Multiple Places to Administer and Maintain   Multiple Places to Manage Content   Multiple Places to Secure Information   High Data Integration Costs (Often 100% Custom and One Offs)   Silos/Islands of Data Lead to Redundant Data or Processes   Multiple Interfaces; Dissatisfaction and Higher Training Costs   Higher Operational and Compliance Risk  Direct Impact  Indirect Impact #SPSPhilly @RHarbridge
  • 11. The Outcome There are challenges that disparate anddisconnected business data systems cause.
  • 12. What to watch out for… Technology No system, product or applicationcan completely solve business data challenges. Process People
  • 13. SharePoint’s Important Interoperability
  • 14. What the heck is Interoperability? (IHN-tuhr-AHP-uhr-uh-BIHL-ih-tee) “Interoperability is the ability of a system.. to work with other systems.. without special effort on the part of the customer.” How?#SPSPhilly @RHarbridge
  • 15. How do we achieve Interoperability? 1. By adhering to published interface standards. Does SharePoint do this? SPOILER ALERT! that 2. By making use of a "broker" of services can convert one system’s interface into another system’s interface "on the fly". What about this one?#SPSPhilly @RHarbridge
  • 16. SharePoint Interoperability#SPSPhilly @RHarbridge
  • 17. Is it a UI Platform?#SPSPhilly @RHarbridge
  • 18. Why would we use SharePoint as a User Interface Platform?#SPSPhilly @RHarbridge
  • 19. Consistent User Experience Across Browsers Well.. Almost.#SPSPhilly @RHarbridge
  • 20. 1. By adhering to published interface standards. It’s a UI Platform#SPSPhilly @RHarbridge
  • 21. A UI Platform Bonus? Bonus!#SPSPhilly @RHarbridge
  • 22. Leverage Office and SharePoint Interface Familiarity#SPSPhilly @RHarbridge
  • 23. Is it an Identity Platform?#SPSPhilly @RHarbridge
  • 24. Why would we use SharePoint as an Identity Platform?#SPSPhilly @RHarbridge
  • 25. Because Claims is Awesome Connect with 3rd Party Authentication Providers Connecting with a Non Windows Integrated Authentication driven web site. Delegation with Back-End Systems Showing data from another server on a SharePoint web page.#SPSPhilly @RHarbridge
  • 26. 1. By adhering to published interface standards. Claims Uses Consistent Standards#SPSPhilly @RHarbridge *Doesn’t actually support SAML Protocol (SAMLP)
  • 27. It’s an Identity Platform#SPSPhilly @RHarbridge
  • 28. Is it a Search Platform?#SPSPhilly @RHarbridge
  • 29. Why would we use SharePoint as a Search Platform?#SPSPhilly @RHarbridge
  • 30. Query a 3rd Party Search Engine Using SharePoint UI Federate Queries to Multiple Search Systems…#SPSPhilly @RHarbridge
  • 31. Index Content from a Range of What does all of these? Content Repositories ___ BCS B Indexes Databases, Web Services or Custom Repositories C Provides Consistent Access to External Content S Has SharePoint Designer and Visual Studio Plug-ins#SPSPhilly @RHarbridge
  • 32. A Search Platform Bonus! Bonus!#SPSPhilly @RHarbridge
  • 33. 1. By adhering to published interface standards. 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…#SPSPhilly @RHarbridge
  • 34. It is a Search Platform#SPSPhilly @RHarbridge
  • 35. Is it a Data Access Platform?#SPSPhilly @RHarbridge
  • 36. SharePoint Does a Great Job of Accessing SharePoint Content!#SPSPhilly @RHarbridge
  • 37. What about External Systems and Content? ___ BCS#SPSPhilly @RHarbridge
  • 38. A Data Access Platform Bonus! Bonus! x2#SPSPhilly @RHarbridge
  • 39. Content Management Interoperability Services  CMIS specification provides a Web services A platform that allows you to interface that:  Is designed to work over existing repositories enabling build customers tomultiple against build and leverage applications against multiple repositories—unlocking content they already have technologies without knowing the content  Decouples Web services and content been Microsoft has from anything about how all thecustomersfrom both a management repository, enabling API’s to manage implementing this content independently work.Provides common Web servicesprovider perspective.  (If you know CMIS.) client and and Web 2.0 interfaces to dramatically simplify application development Not available “in the box”.  Is development platform and language agnostic  Supports composite application development and mash-up by Available via or IT analyst the business SharePoint Admin Toolkit#SPSPhilly @RHarbridge
  • 40. And then there’s REST Access 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.#SPSPhilly @RHarbridge
  • 41. 2. By making use of a "broker" of services that can convert one system’sInteroperability SharePoint has interface into another system’s interface "on the fly".Some might even say it has storage interoperabilityor that OData is a standard… But the coolest part of interoperability? #SPSPhilly @RHarbridge
  • 42. The Outcome SharePoint is a growing Interoperable UI, Identity,Search, and Data Access Platform.
  • 43. What to watch out for… Remember this?“Interoperability is the ability of a system to without special effortwork with other systems without special efforton the part of the customer.”
  • 44. What is the BCS?
  • 45. You could look at this diagram… BCS in Office Client SharePoint Client BCS in SharePoint Identity Federation service BCS Meta Client Data Data Store Cache DB WCF /WS .NET AS Custom Connector Connector Assembly Connector Connector Client to Backend Direct Connection External data Persistence Custom .NET Data Store assembly Cubes SQL SAP ORACLE Siebel#SPSPhilly @RHarbridge
  • 46. Or this simplified one… External Data External Content Types SharePoint Outlook Forms OfficeExternal Lists Workspace w/ Search Results and Task Panes Applications InfoPath Forms#SPSPhilly @RHarbridge
  • 47. External Content TypesDescribes: External Data Added to the BCS Service Through:• Structure of the external • SharePoint Designer system (Fields, Methods, Connection) • Visual Studio 2010• How this data behaves within • Via an Import into the Business Data SharePoint and Office Connectivity Service as part of a model External Content Types SharePoint and Re-Use from a Central Location Manage Outlook Forms Office External Lists Workspace w/ Search Results and Task Panes Applications InfoPath Forms #SPSPhilly @RHarbridge
  • 48. External Lists External Data The external content type is leveraged in a variety of ways… ExternalSuch as for Exposing External Data Content Typesas an External SharePoint List Full CRUD capability SharePoint Familiar UI and Navigation Outlook Forms OfficeExternal Lists Workspace w/ Search Results Sort, Filter, Task Panes InfoPath Forms and Group Applications Programmatic Access via SPList OM Profile Page for Each Item Form Auto-generated OOB Upsize to InfoPath Can be Taken “Offline”#SPSPhilly @RHarbridge
  • 49. Offline Lists External DataExternal Lists also be leveraged as Offline “Lists” External Content Types SharePoint Outlook Forms OfficeExternal Lists Workspace w/ Search Results and Task Panes Applications InfoPath Forms Or Connected to Outlook as Contacts, Tasks, Calendars and Posts#SPSPhilly @RHarbridge
  • 50. Office Applications and Search External DataExternal Content Types can also be leveraged in… External Or Leveraged to allow for Content Types External Data Searching or Filtering SharePoint Outlook Forms OfficeExternal Lists Workspace w/ Search Results and Task Panes Applications InfoPath Forms Many other Office Applications (or Custom Applications) w/ Code#SPSPhilly @RHarbridge
  • 51. Bonus! Integration Webparts Bonus! Web Parts External Data External Data List Integration External Data Item Webparts External Data Item Builder External Data Related List External External Data Connectivity Filter Content Types Chart Web Part (New) SharePoint Outlook Forms OfficeExternal Lists Workspace w/ Search Results and Task Panes Applications InfoPath Forms w/ Code#SPSPhilly @RHarbridge
  • 52. Didn’t those webparts work with the BDC?#SPSPhilly @RHarbridge
  • 53. So what’s different? (Besides the Chart Control?) Read/Write Capability Claims Aware Connect via ADO/SQL, WCF/WS, .Net is still used for search indexing BDC Assembly and Custom Connectors connectors in 2010 they added Batch and Bulk Operation Support 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.#SPSPhilly @RHarbridge
  • 54. How do I actually build it out?#SPSPhilly @RHarbridge
  • 55. Where things fit. Out-of-box • Surface data in External Lists • Connect those lists to • Create Reusable Outlook, SPW Components (UI parts, • External Data Columns ECTs, Actions) Simple Intermediate Advanced NO CODE “NO CODE” CODE#SPSPhilly @RHarbridge Power User Developer Advanced Developer
  • 56. SharePoint Designer Process 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#SPSPhilly @RHarbridge
  • 57. Visual Studio Process w/ Code#SPSPhilly @RHarbridge
  • 58. Suggested Life Cycle#SPSPhilly @RHarbridge
  • 59. The Outcome The BCS has a bunch of new capabilitiesbundled with some old enhanced BDC ones.
  • 60. What to watch out for…Selecting the right tool is important. Practice makes perfect.
  • 61. That’s a lot of information!#SPSPhilly @RHarbridge
  • 62. Demo!
  • 63. The Outcome You saw how the BCS can be leveraged inSharePoint Designer and in the SharePoint UI.
  • 64. What to watch out for… Don’t assume the tools willsignificantly reduce the time it takes to ‘integrate’. It typically reduces time to ‘interface’.
  • 65. What are BCSLimitations?
  • 66. 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.#SPSPhilly @RHarbridge
  • 67. External Lists 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.)#SPSPhilly @RHarbridge
  • 68. External List External Lists 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 (without InfoPath) • Lookups don’t work on any column but ID • No attachments.#SPSPhilly @RHarbridge
  • 69. Bonus! External Column Bonus! Limitations • 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#SPSPhilly @RHarbridge
  • 70. Some Data Types Not Supported • No support for structs that are not simple types. (Do not use non-primitive structs.) • No nested collections (array of arrays etc) • No support for multi dimension arrays • BDC only works with .Net 3.5 - No dynamic programming in .Net 4 • No support for ICollection or IEnumerable interfaces to represent collections in data structures (ICollection<T>, IEnumerable<T>, IList<T>…) http://msdn.microsoft.com/en-us/library/ff621599.aspx#SPSPhilly @RHarbridge
  • 71. The Outcome You now know more about thelimitations of BCS and will make fewer assumptions.
  • 72. What to watch out for…Some of the many limitationsmentioned make sense. Think carefully before you build a ‘workaround’.
  • 73. What aboutSharePoint 2013?
  • 74. SharePoint 2013 Main BCS Differences There are basically five things you need to know: 1. oData connector now available through Visual Studio OOTB (WCF, SQL, .Net Assembly Remain). 2. Remote Event Receiver capability – think of this as more of a simple framework for remote event subscription. 3. App-Scoped – Instead of only Farm level external content types developers can now build isolated app scenarios. 4. External List Enhancements – Performance improvements, limit per page, filtering, sorting, and export to excel. 5. More client object model support! (Office 365)#SPSPhilly @RHarbridge
  • 75. The OutcomeSharePoint 2013 BCS isn’t really different. Just more flexible and capable.
  • 76. What to watch out for… SharePoint 2013 introduces manynew concepts/methods that you will need to learn (app-scoped, client object model focus etc.)
  • 77. What we talked about…1. Business Data Challenges Technology Challenges The Challenges Aren’t All2. SharePoint’s Important Interoperability Platform Interface, Identity, Search and Data Access3. What of the BCS? Connection Capabilities A Set is Powerful Structured Types of External Content External Content Types Leveraging External External Columns Content with Internal Content Interact Lists External Like SharePoint Lists Extensibility/Tool Range Extensibility and Tooling from UI to SPD to VS 20104. Limitations of and Better than Most Options Good Enough BCS
  • 78. Thank YouOrganizers, Sponsors and You for Making this Possible.Questions? Ideas? Feedback? Contact me: Twitter: @RHarbridge Blog: http://www.RHarbridge.com Email: Richard@RHarbridge.com Resources:700+ SharePoint IA Slides at.. PracticalIntranet.com130+ SharePoint Standards at.. SPStandards.com15 Pages of Important Questions at.. SharePointDiagnostics.com