Showing posts with label Business Data Catalog. Show all posts
Showing posts with label Business Data Catalog. Show all posts

05 April, 2012

What is the Business Data Catalog (BDC)?




The Business Data Catalog (BDC) is a new innovative framework created by the Office team to provide MOSS sites with integration into line-of-business (LOB) systems such as those created by SAP, Seibel, and PeopleSoft. The BDC additionally provides the means to integrate data directly from database systems such as SQL Server and Oracle. The BDC is included with the Enterprise Edition of MOSS.


While SharePoint Portal Server 2003 (SPS) has made it possible to integrate portal sites with LOB systems, it has required you to write custom code to manage connections and retrieve the data you need to display. Furthermore, the code required changes significantly as you switch between back-end systems from vendors such as SAP and PeopleSoft. The BDC, on the other hand, has been designed to enable you to integrate data from LOB systems without requiring you to write custom code for managing connections and retrieving data.
The design of the BDC is based on metadata that describes the location and format of data within LOB systems in terms of entities and methods. The BDC also provides a standardized method execution engine capable of reading this metadata and retrieving read-only data from LOB systems which is then returned to MOSS in a standard format.
The connectivity between the BDC and traditional LOB systems is achieved using standard Web services. The metadata required defines BDC methods for executing Web service operations. The connectivity between the BDC and database systems is achieved using ADO.NET providers. In this case, the metadata required defines BDC methods for executing SQL statements and/or stored procedures.


The first step in using the BDC is to author an XML file containing the metadata to connect to a back-end system. When you author metadata for the BDC, you define the data you want to retrieve in terms of entities. For example, you might define a customer as one entity and an invoice as another entity. The BDC metadata format also lets you define associations between entities in scenarios when there is a one-to-many relationship such as one that might exist between customers and invoices.


The definition of a BDC entity contains identifiers, properties, and methods. The methods define how the BDC interacts with entry points exposed by the back-end system. For a back-end system accessible through Web services, methods define the names of the Web service operations and the parameters required to call them. For a back-end system that is a database such as SQL Server or Oracle, methods define the names of stored procedure and SQL statements.


Entities can also define actions. A BDC action is used to dynamically parse together the URL behind a hyperlink that allows a user to navigate from a page in an Office SharePoint Server 2007 portal site to another location. For example, an action defined on a BDC customer entity could be written to redirect users to a Web page in an SAP application that supports updates to customer information. Actions were designed to support scenarios where the BDC is used to display read-only data and to bootstrap the user into another application when updating or some other type of external operation is required.


Once you have authored or acquired the XML file with the required BDC metadata for a back-end system, you must import it into the BDC within the scope of a particular SSP to create what is known as a BDC application. You can accomplish this importing process using the SSP administrative Web pages. You can alternatively import an XML file with BDC metadata using custom code written against the BDC administrative object model.


Once you have imported the required metadata to create a BDC application, there are several out-of-the-box techniques to leverage and display its data within a portal site. Office SharePoint Server 2007 ships with a set of Business Web Parts that can be quickly added to pages to query and display BDC data. You can also add new columns to lists and document libraries based on an entity defined in a BDC application. A user editing a column based on a BDC entity is automatically presented with a user interface making it possible to query the back-end system.


The BDC has been designed to integrate with the Office SharePoint Server 2007 Search Service. For example, a back-end system and its entities can be defined as a content source so that the Office SharePoint Server 2007 indexing service will crawl through its data and build indexes for the Office SharePoint Server 2007 search engine. This becomes a powerful feature because it allows users to discover data from back-end systems about things like customers and invoices when running standard search queries through both Office SharePoint Server 2007 portal sites and standard Windows SharePoint Services 3.0 sites.


The BDC provides convenient features to map data from a BDC entity to properties in a user profile and to synchronize this data at periodic intervals. For example, if your company has an SAP system that contains employee data you like to include in user profiles, such as phone numbers or social security numbers, you can configure this type of data importing without writing any custom code.


Finally, BDC entities can also be accessed programmatically using custom code written against the BDC object model. This makes it possible to write custom Web Parts as well as other server-side components and services that run their own BDC queries. One nice aspect of writing code to query BDC entities is that you don’t have to worry about managing connections or whether you are accessing the back-end system through Web services or ADO.NET. All those details are abstracted away by BDC metadata and the BDC execution engine.

Business Data Catalog

   The BDC is essentially a catalog of business applications that are of interest to SharePoint Server 2007 users, and it bridges the gap between the portal and business applications by bringing in key data from various applications to SharePoint sites, lists, search, and user profiles. The BDC is the key infrastructural component around which most of the other business data features of SharePoint Server 2007 are built. Administrators can register business applications in the BDC, after which the data in the application is immediately available to SharePoint through the business data features described below. A key requirement for each registered business application is an XML-based metadata model that describes the application programming interfaces (API) of the application or the schema of the database that maps to business objects (e.g. customer) and properties (e.g. name) that a SharePoint user can understand. These metadata models can be easily created by DBAs or database developers.

SharePoint Server 2007 ships with four out-of-the-box Business Data Web Parts: Business Data List, Business Data Items, Business Data Related List, and Business Data Actions. These Web Parts rely on the Business Data Catalog, and their main purpose is to display business data in a portal application without the need for any programming. Moreover, these Web Parts are generic and can show any type of data (entity) registered in the Business Data Catalog.
These Web Parts support Web Part Connections, which enable Master-Detail types of data display – again, without any programming. For example, you can display customers and their details using the BusinessDataList and BusinessDataItems Web Parts.

Web Part
Description
Business Data List
Web Part
Displays a list of entity instances from a business application registered in the Business Data Catalog. For example, you can use a Business Data List Web Part to display all the customers or orders from the AdventureWorksDW database.
Business Data Items
Web Part
Displays the details of an entity instance from a business application. For example, you can use a Business Data Items Web Part to display the details of a particular customer or order from the AdventureWorksDW database.
Business Data Related List
Web Part
Displays a list of related entity instances from a business application. For example, you can use a Business Data Related List Web Part to display all the orders for a particular customer from the AdventureWorksDW database.
Business Data Actions
Web Part
Displays a list of actions associated with an entity as defined in the Business Data Catalog. For example, you can use a Business Data Actions Web Part to display all the actions that portal users can perform on the Customer entity. Some examples of these actions are to send e-mail to a customer or edit the address of a customer.


Business Data in Lists
Windows SharePoint Services V3 provides custom field types. SharePoint Server 2007 leverages this feature to provide a new field type called Business Data that is available to all lists in SharePoint Server 2007. The Business Data field type enables users to add data from business applications registered in the Business Data Catalog to any SharePoint list. For example, in your RFP (Request for Proposal) Document Library, you can add a Business Data column to the document properties that specifies the customer who issued the RFP. This enables users to view the customer’s details and perform actions associated with them from within the Document Library.

Business Data Actions
You can define actions for each entity in the Business Data Catalog. Some examples of actions for a customer entity are to send e-mail to a customer or to edit the address of a customer. Business Data Catalog implements actions as links that allow you to navigate to a URL directly from the page where the entity or Business Data column is displayed. For example, these links can open Web pages, display the native graphical user interfaces (GUI) of line-of-business applications, and launch Microsoft® Office InfoPath® forms.

Business Application Search
By leveraging the Business Data Catalog, the Search Center feature of SharePoint Server 2007 can gather and index data from all of the registered business applications and provide full-text searching. For example, after you register the AdventureWorksDW sample database from SQL Server 2005 in the Business Data Catalog, the Search Center feature can crawl the database and return customer data in search results. In addition, the Search Center feature’s extensibility enables you to create customized search experiences. For example, you can create a Customers tab in the Search Center where users can search strictly for customers in the AdventureWorksDW database.