1. What Is a Composite Application?
SharePoint
2010 provides the user with a suite of applications and functionality
to allow them to take more control over how they represent their data.
With the help of Visio Services, Excel and Access Services, and using
SharePoint Designer, it is possible for these users to build no-code
collaborative solutions through browser-based customizations.
Note
With SharePoint composites, you can:
Rapidly create no-code collaborative solutions.
Unlock the value of enterprise data.
Maintain control over end-user solutions.
While Visio, Excel, and Access allow the
user to work on local data and then publish it to SharePoint,
leveraging enterprise data was always a challenge. Microsoft recognized
this and filled this gap with Business Connectivity Services.
2. Introducing Business Connectivity Services
In SharePoint 2007, the Business Data Catalog (BDC)
was introduced to much fanfare. It provided a way to bring enterprise
data from SQL, ORACLE, and other sources directly into SharePoint. This
was the first step in bridging the gap between SharePoint data and
external enterprise data. While it was an important step to take, it
proved to be difficult to work with and limited in functionality. With
SharePoint Server 2010, Microsoft went from a small step to a giant
leap replacing the BDC with Business Connectivity Services (BCS).
With BCS, users can read and write data as easily as
they interact with a standard SharePoint list. The Business Data Web
Parts help expose the external data for building composite
applications. Because the data is fully accessible through SharePoint,
the same data can now be accessed through Outlook, SharePoint
Workspace, as well as the full Office Suite. Other features include the
following:
Expose enterprise data from external sources such as databases, Web services in SharePoint 2010, and Office 2010.
Map Office Type objects and capabilities such as appointments, tasks, and contacts to external data.
Enable
a two-way synchronization between the external data and SharePoint,
allowing the data to be updated as well as consumed in SharePoint.
Provide offline accessibility to the external data using clients such as Outlook or SharePoint Workspace.
While all this gives the user great
functionality flexibility, IT departments need not fret; SharePoint
still allows IT to control who gets to create what and where.
3. BCS Components
The Business Connectivity Services provide many
tools for connecting to and managing how we interact with external
data. While SharePoint Server 2010 license holders get more goodies,
SharePoint Foundation 2010 is certainly not left out in the cold. Figure 1
shows the distribution of components between the Office products.
Before we explore the various components however, we need to understand
the fundamental building block of BCS—the External Content Type.
External Content Types
External data is represented through a new object called an External Content Type. With an External Content Type you get to define the following for the data connection:
External Data Source
Office Item Type
Operations
Fields
Permissions
After
you have defined your External Content Type, you can use this to work
directly within SharePoint lists. In doing so, all the data from the
external source will now be available in what appears to be a standard
SharePoint list when using a SharePoint External List. Using an External Data Column, several of the external data columns can be added to other lists.
As you can see, there are many pieces to the BCS puzzle. Table 1 explains each of the components in more detail.
Table 1. The Many Components of the Business Connectivity Services in SharePoint
Function | Description | SharePoint Foundation 2010 | SharePoint Server 2010 | Office 2010 |
---|
External List | Special list type that interacts directly with an external data source | Y | Y | |
External Data Column | Special data type allows you to add external data to any list | Y | Y | |
Secure Store Service | Handles credential mapping allowing single sign-on functionality | | Y | |
External Data Search | Exposes the external data to SharePoint search for indexing | | Y | |
Rich Client Extensions | Allows Office clients to connect directly to the external data through SharePoint | | Y | |
External Data Web Parts | Several Web Parts that allow you to build composite applications from your external data | | Y | |
Profile Pages | Expose the external data in a single page for a single item | | Y | |
Rich Client Components | Works with the rich client extensions to access external data | | | Y |