Aptillon is born!
August 24, 2010
Speaking at the Fall 2010 SharePoint Connections Conference
October 21, 2010

SharePoint Business Connectivity Services FAQ

This FAQ is a collection of answers to questions submitted by my blog readers.  Check back often as it will grow over time.

Q: I’m using the BDC to connect to a MySQL database.  I’ve connected successfully, and generated a nice little dataview to display some basic information.  Unfortunately, the MySQL database is storing dates as regular strings, instead of datetimes.  Of course, I want to sort, filter, and perform calculations on those dates, so this is problematic for me.  So, my question is: since I can’t update the database schema and convert the dates to true datetimes, there, is there a way to convert them “on-the-fly” when I pull them into SharePoint?

A: You can convert data types between an external system and the BDC with the use of a .NET assembly connector.  This would work for the scenario you describe.

Q: Is there a way to test BCS Models, ECTs, and ECT methods without creating external lists?

A: Yes, there is!  Go get BCS Tester Man.

Q: Can BCS connect to an Oracle database?

A: Yes, it can.  See this article for more information.

http://msdn.microsoft.com/en-us/library/ff464424.aspx

Q: How can I represent BCS data in a calendar view?

A: You have a few options.

1. Use Outlook to display the data by connecting it to the External Content Type.

2. Create your own custom web part and replace the XLV Web Part that comes with the view associated with your external list connected to the External Content Type.

3. Purchase a third party web part which is designed to do this.

Q: Can I reuse the existing calendar view on a list view web part to display BCS data?

A: No, the calendar view is not an XLV Web Part and hence it doe snot use XSLT.  If you try to connect the out of the box calendar view to external lists it will not work and furthermore it is not a supported scenario.

Q: If you have a server farm with several WFEs and Application Servers where do .NET Assembly Connectors and custom connectors execute?

A: Data access code for any BCS connector, always executes on the WFEs.

Q: If you are sharing the VCS service as a cross-farm service where do you install .NET Assembly Connectors and Custom Connectors?

A: You install the connectors to the BCS service.  The connector assemblies are stored in the database and pulled by whichever farm needs to use them.  At runtime they are executed on the farm which consumes the BCS service.

Q: Where do connectors execute for search crawls and BCS based search query pluggable security trimmers?

A: The connectors execute in one of two places.  Either in the search crawler daemon process or in the search query service app pool.

Q: How does BCS metadata get populate don client machines?

A: In a declarative solution, upgrades are manually initiated from the client machines.

In Outlook the Sync Now button does two things.  It syncs data and does a check for metadata updates in the same step.

In SharePoint Workspace one menu item syncs data while another checks for metadata updates.

In a custom solution, you can take advantage of automatic updates which the ClickOnce deployment framework provides.

In a simple solution the packages are generated on the server.  For declarative or custom solutions the packages must be manually generated.

Q: How do I deploy a BCS Model to SharePoint?

A: See this article we created in the SharePoint 2010 Patterns and Practices Guidance.