IEaxGrid.DrillRangeResult

Fore Syntax

DrillRangeResult(Range: ITabRange): IEaxDrillRangeResult;

Fore.NET Syntax

DrillRangeResult(Range: ITabRange): Prognoz.Platform.Interop.Express.IEaxDrillRangeResult;

Parameters

Range. The cell range that requires a drilldown.

Description

The DrillRangeResult method returns result of data drilldown for the selected range of table cells.

Comments

If there was no drilldown, the method returns Null.

The range of cells, located in the table header or sidebar, is to be transferred as the Range parameter. Selected range must correspond to one dimension. On executing the method, selection by dimension to which corresponds the range will be changed. The data aggregation is enabled when the dimension is fixed by the Range elements.

Use the IEaxGrid.IsRangeDrillable property to check whether data can be drilled down.

To get drilldown result for specified table cell, use IEaxGrid.DrillCellResult.

Fore Example

Executing this example requires that the repository contains an express report with the EXPRESS_REPORT identifier. The report contains table.

Add links to the Express, Metabase, Tab system assemblies.

Sub UserProc;
Var
    MB: IMetabase;
    Analyzer: IEaxAnalyzer;
    Grid: IEaxGrid;
    Range: ITabRange;
Begin
    // Get repository
    MB := MetabaseClass.Active;
    // Get express report
    Analyzer := MB.ItemById("EXPRESS_REPORT").Edit As IEaxAnalyzer;
    // Get report data table
    Grid := Analyzer.Grid;
    // Get cell range
    Range := Grid.TabSheet.Cells(0012);
    // Drill down, if it is possible
    If Grid.IsRangeDrillable(Range, EaxDrillType.Down) Then
        Grid.DrillRangeResult(Range);
    End If;
    // Save changes
    (Analyzer As IMetabaseObject).Save;
End Sub UserProc;

After executing the example, checking whether data drilldown in the A0:C1 cell range is available is performed. The drilldown is performed if available.

Fore.NET Example

The requirements and result of the Fore.NET Example execution match with those in the Fore Example.

Imports Prognoz.Platform.Interop.Express;
Imports Prognoz.Platform.Interop.Tab;

Public Shared Sub Main(Params: StartParams);
Var
    MB: IMetabase;
    Analyzer: IEaxAnalyzer;
    Grid: IEaxGrid;
    Range: ITabRange;
Begin
    // Get repository
    MB := Params.Metabase;
    // Get express report
    Analyzer := MB.ItemById["EXPRESS_REPORT"].Edit() As IEaxAnalyzer;
    // Get report data table
    Grid := Analyzer.Grid;
    // Get cell range
    Range := Grid.TabSheet.Cells[0012];
    // Drill down, if it is possible
    If Grid.IsRangeDrillable[Range, EaxDrillType.edtDown] Then
        Grid.DrillRangeResult(Range);
    End If;
    // Save changes
    (Analyzer As IMetabaseObject).Save();
End Sub;

See also:

IEaxGrid