Самоучитель по Delphi 7 для профессионалов



              

Компонент TDecisionCube



Компонент TDecisionCube осуществляет преобразование набора данных, который содержится в компоненте TDecisionQuery, к виду, доступному для отображения визуальными компонентами многомерного представления данных (табл. 30.2). Обычную таблицу набора данных компонент преобразует в многомерный кросстаб. Число размерностей создаваемого кросстаба зависит от числа полей данных набора данных. Значения в ячейках кросстаба зависят от типа агрегатной функции в запросе SQL.

Таблица 30.2. Свойства и методы компонента TDecisionCube

Объявление

Тип

Описание

Свойства

property Active: Boolean;

Pu

Разрешает или запрещает преобразование набора данных в кросстаб

property BinData: Boolean;

Ro

Значение True означает, что хотя бы одна размерность находится в свернутом состоянии (данные не отображаются)

property Capacity: Integer;

Pu

Определяет число байтов, используемых для хранения многомерного массива

property CurrentSuramary: Integer;

Pu

Содержит индекс текущей суммы кросстаба

property DataSet: TDataSet;

Pb

Ссылка на экземпляр набора данных, который отображается в кросстабе

type TCubeDesignState = (dsNoData, dsMetaData, dsDimensionData, dsAHData);

property DesignState: TCubeDesignState;

Pu 

Задает режим отображения данных в кросстабе:

  •  dsNoData — во время разработки данные не видны;
  •  dsMetaData — видны названия размерностей;
  •  dsDimensionData — видны названия размерностей и значения, суммы не видны;
  • dsAHData — видны все данные

property DimensionCount: Integer;

Ro

Возвращает число размерностей

property DimensionMap: TCubeDims;

Pb 

Индексированный список ссылок на объекты параметров размерностей

property DimensionMapCount: Integer;

Pb 

Общее число полей набора данных, включая поля размерностей и сумм

property MaxCells: Integer;

Pb

Задает максимальное число ячеек кросстаба

property MaxDimensions: Integer;

Pb

Задает максимальное число размерностей

property MaxSummaries: Integer;

Pb

Задает максимальное число сумм

property ShowProgressDialog: Boolean;

Pb

При значении True при подготовке кросстаба отображается индикатор

property SummaryCount: Integer;

Ro

Возвращает число активных сумм кросстаба

Методы

function GetDetailSQL (ValueArray : TSmalllntArray; SelectList: string; bActive: Boolean) : string;

Pu

Возвращает текст запроса SQL, который может быть использован для создания набора данных, включающего данные из кросстаба без сумм

function GetSQL(ValueArray: TSrralllntArray; bActive: Boolean): string;

Pu 

Возвращает текст запроса SQL, который может быть использован для создания набора данных, включающего данные из кросстаба без сумм

procedure ShowCubeDialog;

Pu

Вызывает специализированный редактор компонента

procedure Refresh (DimensionMap : TCubeDims; bForce: Boolean) ;

Обновляет список объектов параметров размерностей

Методы-обработчики событий

type TCubeRefreshEvent = procedure (DataCube: TCustomDataStore; DimMap: TCubeDims) of object;

property OnRefresh: TCubeRefreshEvent; property AfterClose: TCubeNotifyEvent;

Pb

Вызывается сразу после закрытия

компонента (Active := False)

property AfterOpen: TCubeNot if yEvent;

Pb

Вызывается сразу после открытия компонента (Active := False)

property BeforeClose: TCubeNotif yEvent ;

Pb

Вызывается перед закрытием компонента (Active := False)

property BeforeOpen: TCubeNotifyEvent;

Pb

Вызывается перед открытием компонента (Active := False)

TErrorAction = (eaFail, eaContinue) ;

TCapacityErrorEvent = procedure (var EAction: TErrorAction) of object;

property OnLowCapacity: TCapacityErrorEvent ;

Pb

Вызывается после того, как занимаемый кросстабом объем памяти превысит заданный предел




Содержание  Назад  Вперед