My requirement is to filter our lookup value when my picklist value change.
//call funtion on onload function OnLoad() { filterLookup(); } // call function on picklist onchange function filterLookup() { //get defaul view id var defaultViewId = Xrm.Page.getControl("pms_timesheetperiod").getDefaultView(); // Get the selected Account Id in the [accountFieldName] indicated control var fiscalYear = Xrm.Page.getAttribute("pms_fiscalyear").getValue(); if (fiscalYear != null) { // use randomly generated GUID Id for our new view var viewId = "{1DFB2B35-B07C-44D1-868D-258DEEAB88E2}"; var entityName = "pms_timesheetperiod"; // give the custom view a name var viewDisplayName = "Active time sheet periods for " + fiscalYear + ""; // find all contacts where [Parent Customer] = [Account indicated by AccountId] // AND where [Statecode] = Active var fetchXml = "<fetch version='1.0' output-format='xml-platform' mapping='logical' distinct='false'>" + "<entity name='pms_timesheetperiod'>" + "<attribute name='pms_fiscalyear' />" + "<attribute name='pms_name' />" + "<filter type='and'>" + "<condition attribute='pms_fiscalyear' operator='eq' value='" + fiscalYear + "' />" + "</filter>" + "</entity>" + "</fetch>"; // build Grid Layout var layoutXml = "<grid name='resultset' " + "object='1' " + "jump='pms_timesheetperiodid' " + "select='1' " + "icon='1' " + "preview='1'>" + "<row name='result' " + "id='pms_timesheetperiodid'>" + "<cell name='pms_fiscalyear' " + "width='200' />" + "<cell name='pms_name' " + "width='250' />" + "</row>" + "</grid>"; // add the Custom View to the indicated [lookupFieldName] Control Xrm.Page.getControl("pms_timesheetperiod").addCustomView(viewId, entityName, viewDisplayName, fetchXml, layoutXml, true); } else { // set default view id Xrm.Page.getControl("pms_timesheetperiod").setDefaultView(defaultViewId); }
No comments:
Post a Comment