There are several ways that a business can go about integrating their external data in SharePoint 2013 and Office 2013. Exploring some of the other solutions gives you an idea of what all you can explore. For example, the use of customized Java script solutions, data connections, and even custom coding are there for the taking. Don’t forget about the various apps either that are available for Office.
These apps make it possible to access external data through the use of Business Connectivity Services APIs or directly. It also allows the process to be one that occurs through the centralized element of the Business Connectivity Services infrastructure. Each of them has a purpose but you will find the use of Business Connectivity Services offers you the most when it comes to advantages on a wide scale.
It is important to understand that Business Connectivity Services is a centralized infrastructure. It supports integrated data solutions. Alone, the infrastructure isn’t aware of any external system or external data. However, with Business Connectivity Services and Office 2013 , clients are able to get the external data, to connect to it, and they can see what is available to be done with it. Such data is referred to as external content type.
This ensures that Business Connectivity Services is able to store and secure the data in a central location. This infrastructure is very similar in both the client and server environments. As a result, the developer is able to create an external content type with very little intervention from administration. The external content can be used with both server solutions and client based solutions.
With the use of the centralized infrastructure in Business Connectivity Services, there is a way to successfully manage authentication for secure transactions within that external system. The developer is able to create an external content type, information relating to the authentication protocol, and the credentials that a user will need. Then Business Connectivity Services is able to pass this information to the right connector and a successful connection will be made.
As a result, users don’t have to provide any additional types of credentials in order to work with external data. The credentials will be stored in the Secure Store Service. They allow access to the external data that has been mapped out for particular users based on the individual credentials or security group they are assigned.
As a result, only one sign on is required by the user. The user needs to know the credentials though that will be required by an external system. These credentials will be stored securely on the Windows client base.
Since the infrastructure for the Business Connectivity Services is built into the SharePoint 2013 , it will benefit from the features including Search. The external data gets defined as a content source. SharePoint 2013 is able to crawl and index it. The search results are viewed first by security measures. As a result, the user is only able to see what they have permission to view.
The server side elements and client side elements of Business Connectivity Services make it a valuable resource. There can be only one of them or both of them as part of the overall solution offered. The components are able to be stacked or they can be independent which is why they are so valuable. The structure of them is very similar due to the use of the same data for configuration.
Server side configuring data is stored externally, in the Business Data Connectivity Metadata Store database. The client side configuring data is stored in a Business Data Connectivity model within the client’s cache. This is a model of the external content type that was imported to XML file. That file is imported into the Office client.
The server and client component stacks can access the same external content sources. They are distinguished from each other though by the interfaces that they use, where the data is defined, and how it is defined within that external connection. The external system for storing and where the services run are also differences between the two.
With Business Connectivity Services, the server side solutions allow users to interact with external data using either a browser or SharePoint site. They can rely on any type of SharePoint site that allows for supporting Apps, External data columns, External lists, and External web parts.
In order for Business Connectivity Services to successfully connect to an external data source, it has to be defined in a way that allows the external content type to be understood. All external content types have to contain name of the external system, type of data source, type of authentication, where it can connect, operations to be performed, and any filters or sorting instructions.
There are six steps in this process:
- The user opens a SharePoint web page containing external data to interact with. If the user does have permissions to access the data, then they can read it. Depending on how the operations are supported and defined in the external content type and level of permission, they may be able to create new records or update the existing records. They may have permission to delete any existing records. With an Enterprise Search website, the user may have permissions to run queries against those records. This data can be external list, external data columns, external web parts, and apps for SharePoint.
- There is a request for the external data created and passed to the BDC server side runtime service. This performs a variety of jobs depending on the request. This is the working element of Business Connectivity Services. It is responsible for handling most of the activities including Taking requests for external data, Making connections and interacting with external data, and Returning data to the user.
- The BDC server side runtime is able to access the DBC metadata store. It retrieves the external content type there. The BDC metadata store is a database that is stored in SQL server. It only offers information about the connections. There is no external data stored here or anywhere else in the SharePoint 2013.
- The BDC server side runtime reads the external content type. This allows it to see how to connect to the external data source. The BDC server side runtime retrieves credentials it obtains from the Secure Store if needed.
- The BDC server side runtime is able to pass the request to the connector. This communicates with the external system.
- The connector is able to establish communication with the external system. It is able to retrieve data as well as to perform any write actions that are currently pending. The external data will be filtered and sorted prior to being returned to the user.
Each of the Business Connectivity Services are configured and driven by the location of the infrastructure as well as the location of the external system that hosts that external data. There are two ways that the Business Connectivity Services infrastructure and external system can relate to each other: All on premises and Cloud Only.
One solution offered is for SharePoint 2013 farm and the external system to offer all on premise. This means that they are being the firewall of the business and that the company also controls the data center of the users that have access to that network. This includes:
- A user is able to go to external lists within a SharePoint site. The external list will create a request for data. This is based on the credentials of the Window’s user.
- The request is sent to the BDC runtime which is in the SharePoint farm.
- The BDC runtime will access the external content type for the list. This allows it to see how to access the external system and to know which of the operations can be performed. This relies either on the credentials of the user or the credentials of the Secure Store. The BDC runtime will pass the request to a connector that is able to handle that request. Most of the time, it will be the SQL connector.
- The SQL connector is able to access the external data source. It will retrieve the data and apply any formatting or filters that have been specified for that external content type. The data is then going to be sent back to the user and they can interact with it.
- The user is able to take the data and use it on a portable computer in Outlook. This is accomplished by accessing the Connect to Outlook feature. This is on the external list for taking the data offline.
- There is a one click installation that runs and installs the necessary BDC model for the client. This enables the BDC client side runtime to directly access the external data.
- Outlook will connect to the external data using the configuration in the BDC model. It will sync it to an Outlook SharePoint external list and format it as a contacts list.
- The user will be able to interact with the contact data and make changes that can be written back to the external data source. This is either done on demand or by waiting up to six hours for an automated sync to occur.
There is the ability for Business Connectivity Services in SharePoint Online to access data from various cloud services. This can include a 3rd party service for through Windows Azure Marketplace Data Market. The use of the Business Connectivity Services web service connector makes it possible. This is a solution that doesn’t offer any customer maintained farms within SharePoint 2013. It also has limited hardware that only consists of cloud based services which is why it is referred to as a cloud only solution
- The user logs into SharePoint Online and opens up an external list that they have the rights to.
- The BDC runtime query and external content type relating to the list in the BDC Metadata Store will learn how to access the external system. It will also identify the operations to perform and which of the credentials to use. The external content type will tell the BDC runtime to retrieve any credentials it needs from the Secure Store.
- BDC runtime will pass the request to the endpoint of the SQL Azure Windows Communication Foundation service.
- SQL Azure service will return the data in the SOAP envelope.
- The external list will be displayed via SharePoint Online in the user’s browser. The user is then able to perform all of the operations that have been configured on that data source as long as they have permissions for them.