Business Data Catalog in MOSS 2007 Share Point 2010

SharePoint 2007 introduced the Business Data Catalog, which existed as a tool to allow line-of-business data to be surfaced within SharePoint web sites. Using a collection of specially designed web parts, it was easy to integrate business data with other content created and managed by SharePoint. For example, a connection could be made to a customer relationship management (CRM) system to allow customer contact details to be retrieved and displayed within an intranet site.

With the release of SharePoint 2010, things have moved on considerably. The biggest shortfall with Business Data Catalog was its inability to update data. Information imported using Business Data Catalog was read-only—meaning users had to go back to the source system if they wanted to make changes. Of course, this makes sense if you consider that the aim of Business Data Catalog was to allow the incorporation of business data within SharePoint-managed content. However, having to go back to the source system to make changes is an anathema in the age of the mash-up.

SharePoint 2010 introduces Business Connectivity Services (BCS), which can be used to amalgamate business data with SharePoint-managed content. BCS can also be used as an abstraction layer for practically any data source. It’s now easy to create mash-up applications with full read and write access to all business systems using a single data access platform.

Components of BCS
Business Connectivity Services is the generic name for a set of services and components that enable connectivity between disparate business systems. Several key components are involved in the delivery of BCS, which is included as a component of Microsoft Office 2010, providing universal data access for Office client applications.

External Content Types
Content types are a core part of the SharePoint data structure, as you’ve already seen in previous chapters. External content types, as the name suggests, extend the content type metaphor to content stored in other systems and accessed via BCS. Although external content types share a lot of common functionality with standard content types, there are a few important differences. First, external content types are created and managed by BCS. It’s not possible to add columns or make changes to columns in an external content type without redefining the underlying BCS model. Second, external content types can’t be used in ordinary lists or attached to ordinary lists in the same way that standard content types can. You can create external lists that look and behave in much the same way as a regular list, but those lists are bound to a single external content type only.

TIPIn the MSDN documentation for BCS, you’ll often find references both to entities and external content types. To save any confusion, both are effectively the same thing. An external content type is created by defining an entity using BCS. Strictly speaking, an entity is the definition of a particular item of data using Business Data Connectivity metadata, whereas an external content type is a SharePoint implementation of that representation.

External Lists
As mentioned, external content types can’t be used in regular lists. SharePoint 2010 introduces a new type of list, known as the external list, that provides full read/write functionality for external data. Each external list is bound to a single external content type and allows the user to create, read, update, and delete data in the external system in much the same way as a regular list does for SharePoint-managed data. Of course, the actual capabilities of the list are dependent on the BCS configuration for the data source. For example, if the underlying model doesn’t support deletion, then delete functionality will be unavailable in the external list.

External Data Column
The external data column is an enhancement of the Business Data List column in SharePoint 2007. It’s basically a lookup column that can be included in any SharePoint list, where it will allow the user to select items from an external data source. For example, in a list containing employee reviews, if a company’s HR system is linked via BCS, an external column can be added to the list that allows employee details to be attached to review data. The external data column allows one record to be selected, but any number of fields from that record can be included. So in our example, we could bring through employee name, payroll number, and contact telephone all by selecting the employee from a searchable list.

External Data Search
Included in the SharePoint Server 2010 product is External Data Search, a service that allows data linked using BCS to be indexed and returned in search results in the same way as SharePoint managed data. External Data Search gives an organization the ability to search and index all business data regardless of the source, as long as an appropriate BCS model can be defined.

Secure Store Service
The Secure Store Service replaces the Single Sign On Service that was included with MOSS 2007. Because BCS allows connectivity with a number of different systems, one of the problems that can arise is the maintenance of multiple sets of credentials for each user. It’s quite common for each line-of-business application to require users to authenticate, often using different credentials each time. Secure Store Service resolves this problem by securely storing credentials for each line-of-business application and mapping those credentials to a particular SharePoint login. So, for example, Joe Bloggs is automatically logged into SharePoint using his username domainjbloggs. However, when he accesses the company’s enterprise resource planning (ERP) system, he has to log in with the username bloggs-j and a different password. By using the Secure Store Service, when he needs to access business data via BCS in SharePoint, his credentials for the ERP system are automatically retrieved and used transparently by BCS.

Profile Pages
In MOSS 2007, the main mechanism for viewing business data in SharePoint was the profile page. Profile pages were automatically generated from a set of specially designed web parts to provide full details of the business data in question as well as any related items. In SharePoint Server 2010, this functionality is still present and offers a quick and easy way to present a read-only view of business data.

External Data Web Parts
As mentioned, SharePoint Server 2010 includes the functionality to generate profile pages for BCS entities automatically. This functionality is provided by the following web parts, which can be connected together to provide a comprehensive view of a particular entity and any related entities:

  • External Data List The External Data List web part (formerly known as the Business Data List web part) is used to display a read-only list of data relating to a particular external content type.
  • External Data Item This web part (formerly known as the Business Data Details web part) is used to display the details of a single item of a particular External Content Type. This web part is particularly useful since it uses Extensible Stylesheet Language Transformations (XSLT) to transform the data, allowing a great deal of flexibility in terms of how the data is presented.
  • External Data Item Builder This web part (formerly known as the Business Data Item Builder web part) is used to retrieve a particular item based on parameters passed via the query string. This web part is then connected to other web parts, such as the External Data Item, to display the data to the user.
  • External Data Related List This web part (formerly known as the Business Data Association web part) can be used to retrieve a list of items automatically from a related External Content Type. Again, by connecting this web part to others such as the External Data List, associated data is automatically retrieved based on the item selected in the External Data List web part.
  • External Data Connectivity Filter While the External Data Item Builder web part is used to identify an item based on parameters from the query string, the External Data Connectivity Filter (formerly known as the Business Data Filter web part) can be used to capture criteria on the page. This web part can then be connected to other web parts to display associated data.

Rich Client Integration
One of the major features of BCS is its ability to present a common platform for accessing business data. By using this model, SharePoint Server 2010 provides the facility to surface business data in rich client applications such as Microsoft Outlook. For example, a list of employees located in an HR system can be accessed via BCS in an external list. However, with rich client integration, the external list can also be accessed as a contacts list in Microsoft Outlook. In a similar fashion to external lists, full read/write functionality is also available in the client application. It’s possible to update a contact record in Outlook and have it automatically cascaded through to the HR system. Furthermore, all clients connected to the data via Outlook will see the effects of the update through an automatic synchronization process.

Rich Client Components
As well as the features present in SharePoint 2010, Office 2010 applications also include additional functionality to use BCS data, including the following:

  • External data parts Controls that display items or lists of items retrieved from BCS in a client application.
  • Actions When creating BCS models, custom actions can be associated with each external content type. These actions are carried through to rich client applications and appear in the ribbon, allowing for seamless integration with the BCS system from the client application. For example, the BCS model may define a Submit Order action that creates and submits an order based on a particular entity. The order can then be created using a rich client application and submitted using a custom action, all without any specific coding requirements on the rich client side.

Business Data Connectivity Service
The Business Data Connectivity (BDC) service is the successor to the Business Data Catalog service in MOSS 2007. The name was changed because “Catalog” suggests a read-only collection of business data, whereas the new BDC service provides full read/write capability. BDC provides the engine for BCS by creating and managing metadata describing possible interactions with the source data systems as well as providing an extensible connector framework.

Connector Framework By default, BDC provides connectivity to a number of different systems:

  • Databases By making use of ADO.NET, the BDC provides access to any database for which ADO.NET drivers exist. Since the ADO.NET provider model is extensible, it’s possible to create ADO.NET drivers for practically any database system.
  • Windows Communication Foundation (WCF) endpoints WCF provides a framework for accessing web services. By using WCF endpoints, the BDC is able to communicate with external data systems via appropriately designed web services.
  • NET Connectivity Assemblies Even though using ADO.NET and WCF provides the flexibility to talk to the vast majority of data systems, sometimes neither of these methods is appropriate. For systems such as these, using .NET Connectivity Assemblies is the answer. Since the assemblies are written in managed code, they can perform whatever actions are required to access the source system.

NOTE:At the time of writing, SharePoint Designer supports the creation of SQL Server connections only. It is possible to create a connection for other ADO.NET data providers, but manual generation of the BDC metadata will be required. Some third-party tools offer a much higher degree of customization of BDC metadata, such as BCS Meta Man from Lightning Tools.

Clearly, these three options cover virtually every imaginable scenario; however, just in case a hitherto unimagined scenario crops up in the future, BDC also provides a pluggable connector framework that lets developers plug in a new connector for systems of different types. The three connectors described here are examples of out-of-the-box connectors.

TIP:Although BDC provides a connector for WCF endpoints, unless the web service meets very specific requirements, it can’t be configured using the WCF Connection wizard. Having tried to configure several well-known web services via the wizard, found it to be practically impossible. The WCF connector is best used to communicate with custom-designed WCF or Simple Object Access Protocol (SOAP) services. For any other web service, a .NET Connectivity Assembly will provide the configuration flexibility required.

All rights reserved © 2018 Wisdom IT Services India Pvt. Ltd Protection Status

Share Point 2010 Topics