Filter a lookup view
Posted on 2009-07-02
I have a form with two lookup fields:
The first one is called 'workinggroupid'. The second one is called 'alternateid'. I would like to filter the 'alternateid' lookup by the selected 'workingroupid'.
I've added the following code in the lookupsingle.aspx file:
protected override void OnLoad( EventArgs e )
crmGrid.PreRender += new EventHandler( crmgrid_PreRender );
void crmgrid_PreRender( object sender , EventArgs e )
// As we don't want to break any other lookups, ensure that we use workaround only if
// search parameter set to fetch xml.
if (crmGrid.Parameters["search"] != null && crmGrid.Parameters["search"].StartsWith("<fetch"))
// searchvalue needs to be removed as it's typically set to a wildcard '*'
// Icing on a cake - ensure that user cannot create new contact outside of the account
// and then select it.
this._showNewButton = false;
and in the OnLoad script I've added the following code:
var field = crmForm.all.new_workinggroupid;
if(crmForm.ObjectId == null)
// Disable lookup for new account record as there can be no contacts
field.Disabled = true;
// Ensure that search box is not visible in a lookup dialog
field.lookupbrowse = 1;
// Pass fetch xml through search value parameter
"<fetch mapping='logical'><entity name='MemberOf'>"
+ "<filter><condition attribute='new_workinggroupid' operator='eq' value='"
+ "' /></filter></entity></fetch>");
And.... does not work. Any idea????
Thanks in advance