StaticListLookUpSettings Class
Provides the look-up editor settings for dashboard parameters that are not bound to a data source.
Namespace: DevExpress.DashboardCommon
Assembly: DevExpress.Dashboard.v21.2.Core.dll
NuGet Package: DevExpress.Dashboard.Core
Declaration
Remarks
Use the DashboardParameter.LookUpSettings property to specify the look-up editor settings of the parameter.
Examples
The following example demonstrates how to create a new dashboard parameter and pass it to a calculated field’s expression.
In this example, the dashboard connects to the Northwind database and selects data from the ‘SalesPerson’ table. A new calculated field evaluated at a summary level returns ‘true’ or ‘false’ depending on whether on not the average discount exceeds the selected parameter value.
using DevExpress.DashboardCommon;
using DevExpress.XtraEditors;
namespace Dashboard_ParametersAndCalculatedFields
{
public partial class Form1 : XtraForm {
public Form1() {
InitializeComponent();
Dashboard dashboard = new Dashboard();
dashboard.LoadFromXml(@"..\..\Data\Dashboard.xml");
DashboardSqlDataSource dataSource = (DashboardSqlDataSource)dashboard.DataSources[0];
GridDashboardItem grid = (GridDashboardItem)dashboard.Items[0];
// Create a new dashboard parameter.
StaticListLookUpSettings settings = new StaticListLookUpSettings();
settings.Values = new string[] { "0.01", "0.05", "0.1" };
DashboardParameter discountValue = new DashboardParameter("discountValue",
typeof(double), 0.05, "Select discount:", true, settings);
dashboard.Parameters.Add(discountValue);
// Create a new calculated field and pass the created dashboard parameter
// to a calculated field expression.
CalculatedField isGreater = new CalculatedField();
isGreater.DataMember = "SalesPerson";
isGreater.Name = "IsGreater";
isGreater.Expression = "ToStr(Iif(Avg([Discount]) >= [Parameters.discountValue], 'TRUE', 'FALSE'))";
dataSource.CalculatedFields.Add(isGreater);
grid.Columns.Add(new GridMeasureColumn(new Measure("IsGreater")));
dashboardViewer1.Dashboard = dashboard;
}
}
}
The following example demonstrates how to create a new dashboard parameter and pass it to a custom SQL query.
In this example, the dashboard parameter is passed to the custom SQL query parameter’s expression. This allows you to dynamically change the query passed to the server.
using DevExpress.DashboardCommon;
using DevExpress.XtraEditors;
using DevExpress.DataAccess;
using DevExpress.DataAccess.Sql;
namespace Dashboard_ParametersAndCustomSQL {
public partial class Form1 : XtraForm {
public Form1() {
InitializeComponent();
Dashboard dashboard = new Dashboard();
dashboard.LoadFromXml(@"..\..\Data\Dashboard.xml");
// Creates a new dashboard parameter.
StaticListLookUpSettings staticSettings = new StaticListLookUpSettings();
staticSettings.Values = new string[] { "1994", "1995", "1996" };
DashboardParameter yearParameter = new DashboardParameter("yearParameter",
typeof(string), "1995", "Select year:", true, staticSettings);
dashboard.Parameters.Add(yearParameter);
DashboardSqlDataSource dataSource = (DashboardSqlDataSource)dashboard.DataSources[0];
CustomSqlQuery salesPersonQuery = (CustomSqlQuery)dataSource.Queries[0];
salesPersonQuery.Parameters.Add(new QueryParameter("startDate", typeof(Expression),
new Expression("[Parameters.yearParameter] + '/01/01'")));
salesPersonQuery.Parameters.Add(new QueryParameter("endDate", typeof(Expression),
new Expression("[Parameters.yearParameter] + '/12/31'")));
salesPersonQuery.Sql =
"select * from SalesPerson where OrderDate between @startDate and @endDate";
dashboardViewer1.Dashboard = dashboard;
}
}
}