To get the filtered lookup functionality in CRM 2011 we can make use of the
addCustomView Method of Xrm.Page.ui control.
Something similar to this
Here we have a custom entity name Case which has 1-n relationship with Contact Entity.
Now we want to show only those contact records in lookup which are associated with a particular case record.
We can add the code to the onload of the Entity.
// View ID --> Generate and Assign a new guid. var viewId = "{C0F1DD64-1BF3-450D-BCDE-DF4732DE1606}"; // Set the entity name var entityName = "contact"; // Give a meaningful name to the custom view var viewDisplayName = "Case Member View"; // Create the Advanced find query and download the fetch xml var fetchXml = "<fetch version='1.0' output-format='xml-platform' mapping='logical' distinct='false'>" + "<entity name='contact'>" + "<attribute name='fullname' />" + " <attribute name='contactid' />" + "<order attribute='fullname' descending='false' />" + "<filter type='and'>" + "<condition attribute='new_caseid' operator='eq' uiname='new case' uitype='new_case' value="+caseID+"/>" + "</filter>" + "</entity>" + "</fetch>"; // specify the layout for the results and which field to display var layoutXml = "<grid name='resultset' " + "object='1' " + "jump='name' " + "select='1' " + "icon='1' " + "preview='1'>" + "<row name='result' " + "id='contactid'>" + "<cell name='fullname' " + "width='100' />" + "</row>" + "</grid>"; // specify the schemaname of the lookup control var lookupControl = Xrm.Page.ui.controls.get('new_clientid'); // set the parameters lookupControl.addCustomView(viewId, entityName, viewDisplayName, fetchXml, layoutXml, true);
I tried this for existing Product field in Invoice Product but it is not working…. Please give me a solution.
LikeLiked by 1 person
What’s up to every body, it’s my first pay a visit of this
webpage; this weblog consists of awesome and actually excellent information in support of
visitors.
LikeLike
thanks, but I want to ask is this code run in a custom entities or in the bilt in entities only???
LikeLike
It will work on custom entities as well.
LikeLike
I tried the code mentioned above & it does work.However, it does not seem to be sorting (ordering) the records in the lookup control.Do you also recognize this behaviour ?
LikeLike
Very Good and Easy to follow,
But how did you get the GUID??. I have different views i need to create custom filters for but they cant all be using the same GUID??
cheers
LikeLike
Hi Tay,
Generate a new guid. We just use advanced find page to get the fetch xml query.
I hope it helps.
LikeLike
Very useful.
Do you know why It is not run with standard product lookup in order product ?
Have you a workaround ?
Thanks
Massimo
LikeLike
Do you also know what the lookupbrowse equivalent in CRM 2011 is?
TIA
LikeLike
I am a CRM developer and I found your information very useful. Thanks a lot for your time to post such useful blogs.
Keep Writing Best of Luck .
LikeLike
Thanks Deepak for your appreciation 🙂
LikeLike
Hey Nishant, Thanks for great info…
Can you please tell me, How i can write lookupbrowse in CRM 2011
Below code is in CRM 4.0… i need same in crm 2011..
var field = Xrm.Page.getAttribute(“attributename”).getValue();
field.lookupbrowse = 1;
LikeLike