BDC metadata definition file for Microsoft Dynamics CRM 3.0
Sunday, March 04, 2007 10:53 AM
UPDATE: Its now official, "Microsoft Announces New Package to Extend Microsoft Dynamics ERP Solutions to Microsoft Office Users." Thanks to Tom Rizzo for the heads up.
Integrating your CRM application into your portal can definitely add to productivity, efficiency, and it sure looks good.
MOSS uses BDC (Business Data Catalog) to integrate line of business application (CRM in our case), making it available through its search and web parts. (more info on BDC here)
The thing is, writing those long, complicated, exhausting and error-prone, XML definition files for BDC is not fun, to say the least. Especially when dealing with complex data base such as CRM's or when dealing with Guids as primary keys.
So here are tow things that will make your lives a lot more easy.
- Why write nasty XML when you have a nice IDE - BDC Meta manager is a very cool tool by Todd S. Baginski & Nick Swan that helps you author BDC metadata files with nice friendly GUI. The latest version, 184.108.40.206 (currently still in beta), also supports Guid as primary keys, such are in the CRM database.
- Why write anything when you've got it ready - BDS (Business Data Search) is part of the Microsoft Dynamics Snap program, it allows you to quickly search your Microsoft applications through Outlook client, and it uses BDC crawler. So, I figured there must be a BDC definition file for CRM hiding there somewhere. A quick search led me to this 7500 line long file that maps all of the major entities of an OOB CRM database. Joy:).
Here is a link to the file (right click, Save as).
- make sure to change the connection to your server name and database. (lines 27,29)
- for some reason the SQL commands uses the "or" operator instead of "and", which of course causes filtering not to work. so just change "or"s to "and"s when necessary.
- I haven't got a chance to review the entire file, but I have tired using the BDC WP on some entities and it worked fine. If you come up to some more suggestions other than the ones listed here please let me know. Anyway it's a good starting point.