⬆️ ⬇️

SharePoint 2010: Business Connectivity Services

Introduction



In this article I want to talk about one of the most, in my opinion, useful features in SharePoint 2010. It will be about BCS: Business Data Conectivity Services. BCS, in terms of use cases, is a kind of analogue of what was known in MOSS 2007 as BDC (Business Data Catalog). However, in the new version of SharePoint, these services are much older. So what is the conceptual difference:



  1. BDC provides only read-only capabilities.
  2. BCS provides two-way access with deeper integration into SharePoint and Office
  3. BCS provides a mechanism for “external content types,” which allows you to describe the internal relationships of the data source and abstract them behind the user interface (and object model) of SharePoint or Office


So what's all the same good BCS?



BCS is an evolution of Business Data Catalog (BDC) capabilities in SharePoint 2007 that helped improve SharePoint capabilities as a composite application development platform. This solution contains ready-made functionality, services, and tools that improve integration with external data and services. BCS provides the ability to connect SharePoint 2010 and Office 2010 applications to any external system, be it a business application (for example, Microsoft Dynamics, Oracle or Siebel), a Web 2.0 service, or a proprietary application. "

Brad Stevenson, lead development team at Microsoft



Full support for CRUDQ operations for external systems , i.e. SharePoint (hereinafter implicitly paired with Office) can act as a “rich client” for virtually any data source, as well as provide flexible options for integrating your company's systems.

Uniformity of access , i.e. You can only use SharePoint as an entry point for your data.

The simplified connection model includes the possibilities of a declarative description of the connection, which is possible not only by the developer, but also by an IT specialist, in some cases even an experienced user. Two tools come to help these operations: Visual Studio 2010 (which is discussed in more detail later in this article), as well as the free Office SharePoint Designer 2010 tool.

Deep integration here, I mean access to third-party systems to all the capabilities of SharePoint as a platform, be it corporate search, access rights policies, data source administration.

Lifecycle management for BCS applications , i.e. any of your decisions, even if only a small setting, will be available as an application that can be distributed for deployment on the server or client side, and later updated if necessary. These are very useful, frequently used features.



Mechanisms of work of BCS



To understand the mechanisms of work it is necessary to deal with two concepts:

  1. Business Data Connectivity Service
  2. BCS Client Runtime


You can read about their work in short here: http://msdn.microsoft.com/en-us/library/ee559650(office.14) .aspx



Data Sources for BCS



The next important point in talking about BCS is the types of data sources. These may be the following:

  1. Databases (accessible via ADO)
  2. WCF or other web services (For Oracle, SAP and Seibel there are also WCF adapters)
  3. .NET types (i.e., we do our own access to the data, hide it behind the IRepository and enjoy it)
  4. Other sources for which either additional access providers are required, or just a declarative description of access methods. (you can read the details here: http://msdn.microsoft.com/en-us/library/ee554911(office.14 ) .aspx )


Need an example



I think that with theory it is enough, now it is necessary to show how this is done in life (meaning the development life from the Visual Studio window). Working with BCS from Visual Studio 2010 is a bit like working with Entity Framework 4, you can create your own data model and map all the links to your sources.



Using the flexible expansion capabilities of Visual Studio 2010 ( MEF ), many developers have already managed to make their lives easier, as well as for SharePoint development. One of these solutions is called BCS Meta Man (developed by Lighting Tools ).

The essence of this utility is to help generate domain entities and data access services from their sources. In other words, all you have to do is to drag (the elegance is not there) the label from the server explorer and determine the data mapping, how the corresponding POCO objects and data access services for them are generated in your application, and this is certainly very convenient.

A video of working with this utility is available here:

')





The same example of working with this utility can be found at: http://docs.lightningtools.com/display/bcsmetaman/BCS+Meta+Man+-+Getting+Started

Using a .NET assembly as a data source is described here: http://www.lightningtools.com/blog/archive/2009/10/30/bcs-shims-ndash-.net-assembly-as-a-data-source- for.aspx



BCS Resources



BCS Team Channel http://blogs.msdn.com/bcs/

Video on Channel9 http://channel9.msdn.com/learn/courses/SharePoint2010Developer/ServicesArchitecture/

BCS Overview from SPConf 2009 http://www.youtube.com/watch?v=82xzNsG0d5A

Source: https://habr.com/ru/post/79607/



All Articles