Tuesday, 15 January 2008

CRM 4.0, fetchXML and Lookup fields

This is my first blog posting so I'm a bit excited. I hope you all bear with me.

Those of you out there dealing with Microsoft Dynamics CRM 3.0 are probably aware of Ronald Lemmen's wonderful post about using fetchXML and the additionalparams property to apply filters to lookup fields. If not, click here.

While this is indeed a most wonderful and amazing thing you can do with CRM 3.0, it does not work in CRM 4.0 (Titan). Many of you may already know this after a short search through Google. What I'd like to provide here is a slightly better explanation that the standard "It just doesn't work" complaint. Getting to the reason why it does not work took me about 3 days of searching through Google using different keywords and hoping for a magical answer (there is no magical answer btw).

As I stated earlier, you can no longer use the fetchXML parameter with the additionalparams property (or the AddParam method) in lookup fields. It is just not supported anymore in CRM 4.0. I have found 2 seperate reasons for this so far.

The first reason I came across stated that the fetchXML property in lookup fields was a feature introduced in CRM 1.2 and was supported in CRM 3.0 due to Microsoft's policy to provide backwards compatibility. However, as the fetchXML property was not officially supported with CRM 3.0 and was not part of the SDK, they were in no way obligated to keep it functional in CRM 4.0 as their backwards compatibility policy only requires them to support one version back. This was interesting to learn.

The second reason I found, and a much more interesting one at that, states the following. With the move to a multi-tenant architecture (the ability of a single CRM server to house multiple organizations), the dev's faced a problem with the say fetchXML was implemented in lookup fields. I do not know the exact extent of the problem but it had something to do with security and users being able to view stuff they weren't supposed to be able to. What was stated is that this may return to CRM 4.0 at a later date. Perhaps as part of an update rollup package.
I'm rooting for that!

I'm afraid I can't currently find the exact posts I found this information in but if I come across them, I'll stick a link up for you guys.

I hope this has been helpful to you (depite not providing a solution).

1 comment:

Anonymous said...

Lior, Congratulations on your new blog.