protected void ASPxDashboard1_CustomFilterExpression(object sender, CustomFilterExpressionWebEventArgs e) { if (e.DataSourceConnectionName == "nwindConnection" && e.TableName == "Invoices") { e.FilterExpression = new BinaryOperator("CustomerID", "AROUT", BinaryOperatorType.Equal); } }
private void dashboard_CustomFilterExpression(object sender, CustomFilterExpressionWebEventArgs e) { if (CustomFilterExpression != null) { Application.Update(this, () => { CustomFilterExpression(sender, e); }); } }
// Custom data filtering for SqlDataSource private void DashboardConfigurator_CustomFilterExpression(object sender, CustomFilterExpressionWebEventArgs e) { var userName = contextAccessor.HttpContext.Session.GetString("CurrentUser"); if (e.DashboardId == "SQLFilter" && e.QueryName == "Categories") { if (userName == "User") { e.FilterExpression = CriteriaOperator.Parse("StartsWith([CategoryName], ?CategoryNameStartsWith)"); } } }
private static void Default_CustomFilterExpression(object sender, CustomFilterExpressionWebEventArgs e) { try { var dashBoardXML = customStorage.LoadDashboard(e.DashboardId); // Check For Data Source var query = dashBoardXML.Descendants("SqlDataSource").Where(x => x.Attribute("Name").Value == e.DataSourceName); if (query.Any()) { var columns = query.Descendants("Columns"); var tables = query.Descendants("Tables").FirstOrDefault().Elements().Select(x => x.Attributes("Name")); var applicableSites = ((IEnumerable <tbl_Unit>)System.Web.HttpContext.Current.Session[SessionKeys.ApplicableUnits]).Select(x => x.Id); foreach (var table in tables) { if (table.Any()) { var tableName = table.FirstOrDefault().Value; var columnsDetails = columns.FirstOrDefault().Elements().Where(x => x.Attribute("Table").Value == tableName); foreach (var col in columnsDetails) { if (col.Attributes().Where(x => x.Name == "Name").Any()) { if (col.Attribute("Name").Value.Contains("SiteId")) { e.FilterExpression = new InOperator(tableName + ".SiteId", applicableSites); break; } } } } } } } catch { } }