コード例 #1
0
 protected void ASPxDashboard1_CustomFilterExpression(object sender, CustomFilterExpressionWebEventArgs e)
 {
     if (e.DataSourceConnectionName == "nwindConnection" && e.TableName == "Invoices")
     {
         e.FilterExpression = new BinaryOperator("CustomerID", "AROUT", BinaryOperatorType.Equal);
     }
 }
コード例 #2
0
 private void dashboard_CustomFilterExpression(object sender, CustomFilterExpressionWebEventArgs e)
 {
     if (CustomFilterExpression != null)
     {
         Application.Update(this, () =>
         {
             CustomFilterExpression(sender, e);
         });
     }
 }
コード例 #3
0
        // 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)");
                }
            }
        }
コード例 #4
0
ファイル: DashboardConfig.cs プロジェクト: j2cute/CMMS
        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
            {
            }
        }