setChartDataSource(report: PP.Exp.EaxAnalyzer, metadata: EaxInteractiveMode, callback);
report. Express report that includes the chart for which the user sets data source.
metadata. Object that stores settings.
callback. Callback function.
The setChartDataSource method sets a data source for express report chart.
Executing the example requires that the HTML page contains the ExpressBox component named expressBox (see Example of Creating the ExpressBox Component), and a chart must be loaded in express report working area. Set a chart data source that will depend on selection in the table:
// Get service for working with express report var eaxMdService = expressBox.getService(); // Get express report document var eaxAnalyzer = expressBox.getSource(); // Determine metadata var metadata = expressBox.getRibbonView().getChartCategory().getChartDataSourceState(); // Use table selection metadata.useGridSelection = true; // Determine callback function arguments var args = new PP.Mb.Ui.PropertyChangedEventArgs({ PropertyName: PP.Exp.Ui.ControlType.DataSources, Metadata: metadata, TypeUpdateData: [PP.Exp.Ui.ViewTypeUpdate.Chart] }); // Determine callback function var onPanelChanged = function (n, t) { var chartView = expressBox.getDataView().getChartView(); t.Args ? (chartView.DataChanged.fire(chartView, t.Args), t.Args.fireCallback(n, t)) : chartView.DataChanged.fire(chartView, t); t.Args && t.Args.getPropertyName() == PP.Exp.Ui.ControlType.DataSources && chartView.refreshAll(); console.log("Express report chart data source is set."); }; // Set express report chart data source eaxMdService.setChartDataSource(eaxAnalyzer, metadata, PP.Delegate(onPanelChanged, eaxMdService, args));
Executing the example sets for express report chart a data source that depends on table selection, and outputs an appropriate message to the browser console.
Select rows corresponding to 2001 and 2002 years in the express report table:
After executing the example the express report chart shows only data for selected years: 2001 and 2002:
See also: