Delphi 3 и создание приложений баз данных


Использование компонента TDecisionSource


Компонент TDecisionSource выполняет в системах представления многомерных данных те же функции, что и компонент TDataSource в системах представления обычных данных, то есть служит "источником данных" для визуальных компонентов (TDecisionGrid, TDecisionGraph). Иными словами, TDecisionSource служит в качестве связующего звена между невизуальными компонентами многомерных данных (TDecosionCube) и визуальными компонентами.

Разместим в форме компонент TDecisionSource с именем DecisionSourcel. Установим в свойство DataSet значение имени компонента TDecisionCube, то есть DecisionCubel.

Свойства и события компонента TDecisionSource описаны ниже. Некоторые из них связаны с компонентами TDecisionPivot и TDecisionGrid, которые будет рассмотрены в следующих разделах.

Свойства

property DecisionCube: TDecisionCube;

содержит имя компонента TDecisionCube.

property SparseCols: boolean;

определяет, показывать или нет столбцы с пустыми значениями.

property SparseRows: boolean;

определяет, показывать или нет строки с пустыми значениями.

События

property OnBeginPivot: TNotifyEvent;

наступает перед изменением данных в кубе при нажатии (отжатии) кнопки, соответствующей измерению куба в компоненте TDecisionPivot, или при раскрытии/свертке данных по измерению в TdecisionGrid TNotifyEvent = procedure(Sender: TObject) of object;

property OnEndPivot: TNotifyEvent;

событие вызывается той же причиной, что и событие OnBeginPivot, однако наступает после изменения данных в кубе, но до отображения этих изменений в связанных с TDecisionSource компонентах. TNotifyEvent = procedure(Sender: TObject) of object;

property OnLayoutChange: TNotifyEvent;

наступает после изменения схемы данных в кубе. Событие наступает после события OnBeginPivot, но перед событием OnEndPivot и только в том случае, когда данные в кубе остаются теми же. При изменении состава измерений, которое сопровождается изменением данных в кубе, наступает событие OnNewDimensions. TNotifyEvent = procedure(Sender: TObject) of object;

property OnNewDimensions: TNotifyEvent;

наступает после изменения данных в кубе.

TNotifyEvent = procedure(Sender: TObject) of object;

property OnStateChange: TNotifyEvent;

наступает после изменения свойств куба (компонент TDecisionCube). TNotifyEvent = procedure(Sender: TObject) of object;

Содержание раздела