Skip to main content

Dashboard.ValidateCustomSqlQuery Event

Provides the capability to check the validity of the custom SQL query used to supply the dashboard with data.

Namespace: DevExpress.DashboardCommon

Assembly: DevExpress.Dashboard.v24.2.Core.dll

Declaration

public event ValidateDashboardCustomSqlQueryEventHandler ValidateCustomSqlQuery

Event Data

The ValidateCustomSqlQuery event's data class is ValidateDashboardCustomSqlQueryEventArgs. The following properties provide information specific to this event:

Property Description
ConnectionName Gets the name of the connection to the data source containing a custom SQL query.
ConnectionParameters Gets parameters used to establish a connection to the data source containing a custom SQL query.
CustomSqlQuery Gets the custom SQL query that should be checked.
DataSourceComponentName Gets or sets the component name of the data source for which the event was raised.
DataSourceName Gets or sets the name of the data source for which the event was raised.
ExceptionMessage Gets or sets the exception message returned after custom SQL query validation.
Valid Gets or sets whether the current custom SQL query is valid.

Remarks

The ValidateCustomSqlQuery event is raised each time the custom SQL query, which is used to supply the dashboard with data, needs to be validated. This is true if the DashboardSqlDataSource is used as a dashboard data source and the CustomSqlQuery is used to select data. For instance, the ValidateCustomSqlQuery event is fired for each custom SQL query in the following cases.

  • The dashboard, which is supplied with data using a custom SQL query, is being loaded to the DashboardViewer.
  • Data in the data source is reloaded (for instance, using the DashboardViewer.ReloadData method).

Use the ValidateDashboardCustomSqlQueryEventArgs.ConnectionName/ValidateDashboardCustomSqlQueryEventArgs.ConnectionParameters properties to obtain the details of the connection to the SQL database. The ValidateDashboardCustomSqlQueryEventArgs.DataSourceComponentName event parameter returns the component name of the data source for which the event was raised. Finally, the ValidateDashboardCustomSqlQueryEventArgs.CustomSqlQuery event parameter returns the checked SQL query.

By default, a custom query used to obtain data from the SQL database should contain only SELECT statements. If the custom query contains not only SELECT statements, or the query is specified incorrectly, the ValidateDashboardCustomSqlQueryEventArgs.Valid property is set to false. The ValidateDashboardCustomSqlQueryEventArgs.ExceptionMessage property returns corresponding exception message.

If necessary, you can check the validity of the custom SQL query manually and override the value of the ValidateDashboardCustomSqlQueryEventArgs.Valid flag and corresponding ValidateDashboardCustomSqlQueryEventArgs.ExceptionMessage message.

Important

Note that the default validation is performed if the SqlDataSource.DisableCustomQueryValidation property is set to false.

See Also