Integrating Data For Business Connectvity Services In SharePoint 2013

Microsoft Business Connectivity Services solutions don’t have any form that is predefined; making is very different from other SharePoint 2013 features. Since you don’t know what they look like or what they do beforehand, you won’t know for sure how users are going to be able to interact with them or even how to secure them.

Every Business Connectivity Service solution is a customize solution. Therefore, you will have to use SharePoint Designer 2013 or Visual Studio 2013 as you develop your solution. This is how you will define the external data source. There is no one size fits all configuration or template that you will be able to rely on. You will be designing and implementing what you need so that it best serves the integrated external data of both SharePoint 2013 and Office 2013.

You will be able to develop a design for your Business Connectivity Services solution, but first you have to understand the needs of the business. The goal is to drive your solution towards an environment that it will be successful within. There are five questions you need to answer before you can design a great Business Connectivity Services solution. By collecting such information and sharing it with key stakeholders for approval, everyone will have the same vision in mind for the solution to achieve.

The first thing you need to look at with planning your Business Connectivity Services solution is where the external data is going be stored. You will need to look at three different perspectives:

Understanding the external data source in regards to the network that you create and users that will be accessing it is important. Draw a diagram of these components so that you can see where they fall for your particular network. You will be able to see if they are inside of the internal network and your firewall. You may discover that the infrastructure of the Business Connectivity Services though is an external data source. It could be separated by a boundary network or firewall that is on separate networks.

There are some basic rules that you need to use as a guide for your design:

  • For an external data source, the infrastructure of Business Connectivity Services needs to be solution for a corporate controlled network. To accomplish this, you need to implement on premises solution.
  • For an infrastructure of the Business Connectivity Services that are corporate controlled, you will need to deploy the all on premise solution. This is true even if the external data source is located outside of your own network. The Business Connectivity Services will have to communicate with that external data source. This will be accomplished through the firewall so make sure you plan well for such traffic.
  • Should you use Business Connectivity Services in SharePoint Online, the external data source is the cloud. You will then be implemented the cloud only solution.

Identify where the users will gain access to the Business Connectivity services solution. Make sure you will be able to consider the communications for the data between the Business Connectivity Services solution and the client. They should be encrypted for security. Make sure the browser and Office clients are able to fully support the functions that the solution is to provide.

An external system is going to host the external data. This could be in a SQL server database which is very popular. The connector of that external content type is going to connect to the data in a variety of ways based on what that external system happens to be. Should you be connecting to Exchange Server 2013, you will need to have a .NET connector.

Find out who has the daily administrative responsibility for the external data source. This is a group that you will need to be working with so that you can set up the right connectivity resource for that external data source. That individual will be able to help you discover how the data is to be made available for external use as well as how it is secured.

They can help you to create the necessary credentials to use that external system that is being created. They can also help you to see the big picture in terms of how it will impact your Business Connectivity Services solution.

With Business Connectivity Services solutions, you will be able to connect with an external data source. This is accomplished through one of the following:

  • .NET Assemblies
  • OData
  • SQL Server
  • Windows Communication Foundation Service

It is very important to know how the data will surface for external use. This is going to affect the development tools that you use for creating that external content type. In the following table, you will see those tools that you want to use based on a given external data source.

All of the authentication for communications between Business Connectivity Services and the external system is done internally. This means that Business Connectivity Service is going to offer the external system the information it needs to authenticate the request. Then it will be able to authorize access to data in the external system. Through Business Connectivity Services, there is support for many other types of authentication to be completed.

You will have to know what type of authentication mechanism the external system requires in order to complete your Business Connectivity Services solution design. It has to be designed in a manner that will represent the authentication information to the external system requirements. There are three authentication models that Business Connectivity Services is able to support:

This type of authentication requires credentials to be passed from Business Connectivity Services to the external system. These credentials are a combination of a username and some type of password. There are several ways this can be authenticated, but the most common involves the credentials of the user logging in to be passed through the mapping credentials so that they can be recognized.

The SQL Server database stores External content types, External system definitions, and Model definitions.

You will need to use a development environment to create Business Connectivity Services solution. It should be separate from your production environment though. You can use it to grant higher level permissions to certain users than you would in the production environment. If connecting to OData sources is part of the Business Connectivity Services solution, you must have Visual Studio 2012 or XML editor included.

The external data has to be accessible through the following:

  1. Apps for SharePoint or Office
  2. Business data web parts
  3. External data columns
  4. External lists

Users that can access the app for SharePoint and Office are able to access all of the external data. Working with site administrators you can plan the permissions that will be involved with the external data in your solution.


Business Connectivity Services In 2013 and Other Solutions

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:

  1. 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.
  2. 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.
  3. 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.
  4. 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.
  5. The BDC server side runtime is able to pass the request to the connector. This communicates with the external system.
  6. 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:

  1. 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.
  2. The request is sent to the BDC runtime which is in the SharePoint farm.
  3. 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.
  4. 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.
  5. 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.
  6. 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.
  7. 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.
  8. 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

  1. The user logs into SharePoint Online and opens up an external list that they have the rights to.
  2. 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.
  3.  BDC runtime will pass the request to the endpoint of the SQL Azure Windows Communication Foundation service.
  4. SQL Azure service will return the data in the SOAP envelope.
  5. 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.

Business Connectivity Services In SharePoint 2013

Business Connectivity Services is an infrastructure in SharePoint 2013  that is centralized. It supports data solutions that are integrated. This enables the use of both SharePoint 2013 and Office 2013 clients for the interface with various forms of data. This external data can be in a database for example that is accessed with out of the box Business Connectivity Services.

It can also be in reference to data that is accessed through a web service or published in OData. Business Connectivity Services is able to accomplish this through out of the box customized connectors. These connectors allow the communication to be bridged between SharePoint 2013 and an external system that is hosting that external data.

There are several options found in SharePoint 2013 for access to external data. The most popular method though is to have it presented from an external list. This looks and feels just like the regular SharePoint lists. However, they are only going to display the external data. In order to successfully integrate that with other data in a library or a list, you will need to use an external data column.

The external data column offers information that you can use to create and add to a SharePoint list. This is the same as the process for adding Date, Group, Person and Time.

The difference though is that it displays external data only. With the use of SharePoint 2013  and Business Data Web Parts, it is possible to successfully interact with external data and apps. Once the external data is available, there are different operations that can be performed with that data.

 They include Create, Delete, Query, Read, and Update.

What can be used depends on the operations that have been enabled. Changes can be made in SharePoint 2013 or Office 2013  so that they can be automated and synchronized to the external data source. SharePoint Search can assist you with locating external data.

Every company faces unique challenges and different forms of data that is accessed. That data is also used for different purposes. While some of the data stems from SharePoint 2013, a large amount of it doesn’t. In many regards, a business may not have control over some of the data that is in a file and in databases. There is also the need to secure some files such as sensitive information about employee records. Other data will be more freely accessible by all in the business and even 3rd parties.

The use of Business Connectivity Services should be set up to give the business the control it needs in various areas of data. At the same time, they should be able to use the data to successfully accomplish the overall goals of the business. The data that a business uses may be both structured and unstructured. The ability to make both types accessible through customized interfaces is done in house. It does involve some level of overhead and development as well as ongoing maintenance.

 The use of Business Connectivity Services allows a company to easily integrate external data to SharePoint 2013 and Office 2013. The type of solution you are looking for will help you to decide how to control the data and how to update it in the external system. You can also set it up to work both online and offline. This allows work to be shared within SharePoint 2013  and Office 2013 .