/// <summary> /// Validates this object. /// </summary> /// <returns>A List containing an <see cref="Error"/> item for each validation error.</returns> public override List <Error> GetValidationErrors() { var consolidatedList = new List <Error>(); if (SearchGroupId == 0) { consolidatedList.Add(new Error { Message = "A folder must be selected for this Analytic." }); } var entityErrors = Identity.GetAllValidationErrors(); consolidatedList.AddRange(entityErrors); entityErrors = FilterGroups.GetAllValidationErrors(); consolidatedList.AddRange(entityErrors); entityErrors = PriceListGroups.GetAllValidationErrors(); consolidatedList.AddRange(entityErrors); entityErrors = ValueDrivers.GetAllValidationErrors(); consolidatedList.AddRange(entityErrors); return(consolidatedList); }
/// <summary> /// Sets RunResults to true for the Selected value driver and clears it for all other value drivers. /// Explanation: this is a convenience method to support views that may "expect" this behavior, /// i.e., running only one value driver at a time. /// </summary> public void SetRunResultsSelectedDriverOnly() { if (SelectedValueDriver != null) { //Set RunResults for the selected driver. SelectedValueDriver.RunResults = true; //Clear RunResults for the remaining drivers. var unselectedDrivers = ValueDrivers.Where(item => item != SelectedValueDriver); foreach (AnalyticValueDriver driver in unselectedDrivers) { driver.RunResults = false; } } }