Hey All,
Greetings..
While working on a project of CRM 2011 i came across a scenario where i needed to build a custom lookup on run time dynamically. After go-ogling for many hours could find a simple method in CRM 2011 as compared in CRM 4.0.
Here is a function below
Create a new library resource file and add the following function and save it.
function SetCustomLookup()
{
//get the
current account
var requiredlookupfilter
= Xrm.Page.getAttribute("Lookupid for which you need filtering").getValue();
var requiredlookupfilterid =
requiredlookupfilter[0].id;
var requiredlookupfiltername =
requiredlookupfilter[0].name;
//any guid you can generate one if required online Please click the
below link
var viewId = "{131da142-5b91-4c6f-986b-0b70a3a3a35b}";
var entityName = "Look up Entity
name";
var viewDisplayName = "Active Users
for " + requiredlookupfiltername;
//build fetchxml
– better to generate it from Advanced Find
var fetchXml = "<fetch
version='1.0' output-format='xml-platform' mapping='logical'
distinct='false'>" +
"<entity
name='Look up Entity name'>" +
"<attribute
name='Look up Entity required column field 1' />" +
"<attribute
name=' Look up Entity required column field 2' />" +
"<attribute
name=' Look up Entity required column field 3' />" +
"<order
attribute=' Look up Entity required column field 1' descending='false'
/>" +
"<filter
type='and'>" +
"<condition
attribute=' Look up Entity required column condition 1' operator='eq'
value='" + requiredlookupfilterid + "'
/>" +
"<condition
attribute='statuscode' operator='eq' value='1' />" +
"</filter>" +
"</entity>" +
"</fetch>";
//build grid
layout
var layoutXml = "<grid
name='resultset' " +
"object='1'
" +
"jump=' Look
up Entity id' " +
"select='1'
" +
"icon='1'
" +
"preview='1'>" +
"<row
name='result' " +
"id=' Look
up Entity column field 1'>" +
"<cell
name=' Look up Entity column field 2' " +
"width='300'
/>" +
"<cell
name=' Look up Entity required column field 3 " +
"width='100'
/>" +
"disableSorting='1'
/>" +
"</row>" +
"</grid>";
//add new view view
Xrm.Page.getControl("Lookup
Control id ").addCustomView(viewId, entityName, viewDisplayName, fetchXml,
layoutXml, true);
}
Regards
Sandeep Patil