In this post we will discuss the different features that are available to you within your SharePoint environment. The information I am providing will be based on SharePoint 2013, but unless I specifically state the features are new to SP2013 you can assume they exist in SP 2010 as well.
Although this is the free and most basic version of SharePoint you actually get some great features from BCS. Many environments are more than capable of fully utilizing everything they could possibly need with just the foundation version of SharePoint.
External Content Types
The External Content type is the heart of BCS. 99.9% of everything you do with BCS starts with an External Content Type (ECT). ECTs basically act as the connection between SharePoint and the external data. An ECT maps all the data within the external source that you want to bring into SharePoint. I say that you want because even if you hit a data source with 25+ columns and you want 3, then you only have to bring in 3. The ECT then maps all the connections, and configuration of the data from the external data source to objects within SharePoint. The ECT in the end is really just a content type which contains columns that just happen to get their data from a source outside of your SharePoint farm.
The external list is the most common method that SharePoint uses to surface the data the ECT gathers. It is exactly the same as a normal SharePoint list except its sole purpose is to take the data from an ECT and let you manipulate it. Whether you are just looking at the data or are actually updating, inserting or deleting the data an external list will let you do that.
Authentication via SharePoint Secure Store
This is a truly awesome feature that I think many are thankful is available in SP Foundation. Secure Store is SP’s single sign-on provider. It allows you to impersonate other accounts when accessing other data sources. With Secure Store you can simply define a single account with data access to your external source, map a secure store entry to that account and any user that has access to the external list in SharePoint and access to the secure store entry can now access that data. You won’t have to recreate data connections or worry about authentication problems because the secure store takes care of all that for you. What really makes it easy is you can use the same Active Directory group to grant access to the external list as you do to the secure store entry (cause you are following best practices and only using AD groups right?).
SharePoint Standard Server
SharePoint Server actually gets the biggest upgrade going into SP2013. It doesn’t have the ability to integrate with office clients as that is left to our next version, but it has all tools that you really need to dig into SharePoint BCS. For starters you have all the features found in SharePoint Foundation plus the following:
External List Alerts
This is new in SP2013. A list alert is the ability to have SharePoint notify you when a list item has been modified, inserted and\or deleted. Prior to SP2013 this functionality was limited to internal lists. Now SharePoint allows us to add the same functionality to an external list and we can be notified when data changes either from the SharePoint side or if the external data was modified outside of SharePoint.
App Scoped External Content Types
Also new to SP2013. In SharePoint 2007 and SharePoint 2010 all ECTs had to be defined at the farm level and were available to the entire farm assuming you had access to them. With SP2013 you now have the ability to include ECTs at the App\Add-in level. This means you do not have to have a farm admin (or a BCS Admin) to add the ECT. You also can limit the ECT(s) you are creating to just the App you have created.
Business Data Web Parts
With SharePoint Standard Server you receive a number of out of the box web parts created for you by Microsoft. They are very similar to your standard list web parts (ie List View Web Part) but are specialized to external data. I am not going to list all of them here, but will direct you to another location that has a good explanation of them. You can find that information by clicking here (will direct you to an MS Office site).
Like external list alerts and app ECTs this is a new feature to SP2013. It is a really big deal for SharePoint BCS. In SP2010 other systems could consume data from SharePoint using OData making SharePoint an OData provider. However, SharePoint could not consume data from other sources over OData. This has been updated in SP2013 allowing SharePoint to provide and consume data all over an OData connection.
This is not to be confused with User Profile pages (MySites). A BCS profile page contains all the information of an external item. For example, if you have a BCS connection to an Asset Management System you could list all the assets at a particular location on a profile page. Profile pages are not enabled by default and if not, you will simply get a standard list item view of the data. BCS profile pages get really helpful when you have associations to other external data as it can display the data from that association as well. A BCS association is a link between to external data entities. For example, with a BCS profile page not only could you show all the assets at a location, but you can also show the address of that location as that data is associated. I plan to go more in-depth on this topic in future post.
SharePoint Enterprise Edition
Finally we come to Cadillac of SharePoint platforms. SharePoint Enterprise Edition only adds to features two BCS. One of them goes along with other features of Enterprise Edition (we’ll get to that soon), but the other is what everyone wants and could use.
Tenant-Level External Data Log
With SharePoint Enterprise Edition you can create a tenancy system to allow others to utilize your SharePoint farm for their needs. With BCS you can gather log data from those tenants and surface it for your administration requirements.
Rich Client Integration
This feature can both increase your daily work efficiency and save you a great deal of money. With rich client integration, SharePoint will act as an intermediary between your office applications (Word, Excel, etc) and your external data via ECTs. So what does this really mean? Say you have an invoicing system housed within SAP. If you wanted to create custom invoices for different customers you may need to have SAP client installed and\or have a developer create the invoice templates for you. With rich client integration you can leverage data surfaced to SharePoint from SAP and have it available within your document itself using Office Quick Parts. This means you could create the template all by yourself and use data that is already there within SharePoint.
So this turned out to be quite a large post. If you made it to the end I hope you received all the information you were looking for. In the next entry into this series I am going to dig a bit deeper into authentication methods of BCS and show you how to create an entry in the Secure Store.
Thanks for reading!