IEaxDataAreaPivotSlice.Pivot

Синтаксис Fore

Pivot: IPivot;

Синтаксис Fore.NET

Pivot: Prognoz.Platform.Interop.Pivot.IPivot;

Описание

Свойство Pivot возвращает объект для работы с основой для построения таблицы с данными.

Пример Fore

Для выполнения примера в репозитории предполагается наличие:

Оба отчета построены на одном источнике данных. В экспресс-отчете каким-либо образом изменен стиль оформления таблицы.

Добавьте ссылки на системные сборки: Dimensions, Express, Metabase, Pivot, Report.

Sub UserProc;
Var
    MB: IMetabase;
    Report: IPrxReport;
    DataArea: IEaxDataArea;
    RepGrid, EaxGrid: IEaxGrid;
    PivSlice, Slice: IEaxDataAreaPivotSlice;
    Pivot: IPivot;
    CombSel: IDimSelection;
    Express: IEaxAnalyzer;
Begin
    // Получим репозиторий
    MB := MetabaseClass.Active;
    // Получим аналитическую область данных регламентного отчета
    Report := MB.ItemById("REPORT").Edit As IPrxReport;
    DataArea := Report.DataArea;
    // Получим представление данных - таблицу
    RepGrid := DataArea.Views.Item(0As IEaxGrid;
    // Получим основу для построения среза аналитической области данных
    PivSlice := DataArea.Slices.Item(0As IEaxDataAreaPivotSlice;
    // Выведем в окно консоли количество измерений
    Pivot := PivSlice.Pivot;
    Debug.WriteLine("Количество измерений = " + Pivot.DimCount.ToString);
    // Выведем в окно консоли отметку измерений метрик
    CombSel := PivSlice.CombinedIndicatorSelection;
    Debug.WriteLine("Элементы отметки измерения метрик = " + CombSel.ToString(""", "False));
    // Получим экспресс-отчет
    Express := MB.ItemById("EXPRESS").Bind As IEaxAnalyzer;
    // Получим основу для построения среза
    Slice := Express.DataArea.Slices.Item(0As IEaxDataAreaPivotSlice;
    // Получим таблицу экспресс-отчета
    EaxGrid := Express.Grid;
    // Применим срез и представление данных
    PivSlice.Apply(Slice, EaxPivotSliceApplyOptions.Default_);
    RepGrid.Apply(EaxGrid, EaxGridApplyOptions.Default_);
    (Report As IMetabaseObject).Save;
End Sub UserProc;

При выполнении примера в окно консоли будет выведено количество измерений в срезе, элементы отметки измерения метрик. В аналитическую область данных регламентного отчета будут импортированы настройки из экспресс-отчета.

Пример Fore.NET

Необходимые требования и результат выполнения примера Fore.NET совпадают с Fore.

Public Shared Sub Main(Params: StartParams);
Var
    MB: IMetabase;
    Report: IPrxReport;
    DataArea: IEaxDataArea;
    RepGrid, EaxGrid: EaxGrid;
    PivSlice, Slice: IEaxDataAreaPivotSlice;
    Pivot: IPivot;
    CombSel: IDimSelection;
    Express: IEaxAnalyzer;
Begin
    // Получим репозиторий
    MB := Params.Metabase;
    // Получим аналитическую область данных регламентного отчета
    Report := MB.ItemById["REPORT"].Edit() As IPrxReport;
    DataArea := Report.DataArea;
    // Получим представление данных - таблицу
    RepGrid := DataArea.Views.Item[0As EaxGrid;
    // Получим основу для построения среза аналитической области данных
    PivSlice := DataArea.Slices.Item[0As IEaxDataAreaPivotSlice;
    // Выведем в окно консоли количество измерений
    Pivot := PivSlice.Pivot;
    System.Diagnostics.Debug.WriteLine("Количество измерений = " + Pivot.DimCount.ToString());
    // Выведем в окно консоли отметку измерений метрик
    CombSel := PivSlice.CombinedIndicatorSelection;
    System.Diagnostics.Debug.WriteLine("Элементы отметки измерения метрик = " + CombSel.ToString(""", "False));
    // Получим экспресс-отчет
    Express := MB.ItemById["EXPRESS"].Bind() As IEaxAnalyzer;
    // Получим основу для построения среза
    Slice := Express.DataArea.Slices.Item[0As IEaxDataAreaPivotSlice;
    // Получим таблицу экспресс-отчета
    EaxGrid := Express.Grid;
    // Применим срез и представление данных
    PivSlice.Apply(Slice, EaxPivotSliceApplyOptions.epsaoDefault);
    RepGrid.Apply(EaxGrid, EaxGridApplyOptions.egaoDefault);
    (Report As IMetabaseObject).Save();
End Sub;

См. также:

IEaxDataAreaPivotSlice