Анализ данных cредствами многомерного куба Decision Cube
Средства анализа данных (OLAP, On Line Analytical Processing) представлены в Delphi на панели Decision Cube (Многомерный куб). Рассмотрим порядок использования компонентов этой панели на примере анализа хода строительства по заказчикам и подрядчикам. 1. 2. Нажмем кнопку SQL Builder для построения запроса (рис. 3.13.2). 3. Перенесем поля Nz, Np, Ns в окно Dimension (измерение куба) и итоговые поля в клетках таблицы: итоги сметных и освоенных сумм (Sum(Ss),Sum(Fs)) и число строек (Count(Ns)) перенесем в окно Summaries. 4. Перейдем на страницу SQL Query и откорректируем текст команды SQL: во фразе Select укажем наименование колонок (без пробелов) «Заказ», «Подряд», «Стройка», «Смета», «Освоено», «Строек» (рис.3.13.3). Нажмем кнопку Edit Query.
Рис. 3.13.1. Выбор данных, включаемых в таблицу анализа
Рис. 3.13.2. Окно построителя запросов
5. 6. Разместим компоненты пользовательского интерфейса 7.
Рис. 3.13.4. Итоговая таблица и диаграмма анализа строительства
Щелчок мышкой по кружку с плюсом или минусом или по кнопкам с наименованиями полей (осей измерений) на объекте DecisionPivot разворачивает или сворачивает соответствующие колонки или столбцы в таблице. Используя контекстное меню кнопок полей (осей измерений), можно перемещать эти поля по осям. Первая кнопка объекта DecisionPivot позволяет выбрать тип итога в ячейках результирующей таблицы.
8. 9. Выполним программу и проверим результат. 3.14. Клиент‑серверные СУБД
Session ‑ компонент организует связь с конкретной базой, учитывая ее особенности. Если таких особенностей нет, то компонент можно не использовать, и будет создан стандартный сеанс под именем Session. Основные свойства AutoSessionName ‑ генерируется уникальное имя сеанса (True). ConfigMode ‑ настройка BDE для поддержки псевдонимов. DatabaseCount ‑ число активный баз данных. SessionName ‑ уникальное имя сеанса для ссылки на компонент сеанса. SQLHourGlass ‑ указатель в виде песочных часов при работе BDE. Основные методы Open/Close ‑ открытие/отключение всех баз и закрытие сеанса. CloseDatabase(Database:TDatabase) ‑ закрытие связи с конкретной базой. GetDatabaseNames(List:TString) ‑ получение списка всех псевдонимов баз. GetTablebaseNames(...) ‑ получение списка названий всех таблиц базы. OpenDatabase(S):TDatabase ‑ открытие базы S или создание временной. Database ‑ компонент обязателен и описывает подключаемую базу данных. Основные свойства
Connected ‑ имеет значение True, если связь с базой установлена. DatabaseName ‑ имя псевдонима или полное имя файла с базой данных. DataSets ‑ массив активных наборов данных. Exclusive ‑ монопольное использование базы (True). InTransaction ‑ имеет значение True, если выполняется транзакция. IsSQLBased ‑ имеет значение True, если используется драйвер SQL Links или ODBC. KeepConnection ‑ имеет значение True, если программа сохраняет связь. Params ‑ параметры подсоединения к псевдониму BDE. Session ‑ ссылка на объект‑сеанс, если он есть и Connected=True. SessionAlias ‑ имеет значение True, если используется псевдоним сеанса. SessionName ‑ название используемого сеанса. ReadOnly ‑ открытие базы только для чтения (True). Temporary ‑ использование временной базы (True). TraceFlags ‑ отслеживание работы над базой утилитой SQL Monitor. TransIsolation ‑ способ работы транзакций данной программы и других приложений: tiDirtyRead (разрешение чтения изменений данных до завершения транзакции), tiDirtyCommitted (разрешение чтения изменений данных после завершения транзакции), tiRepeatableRead (чтение данных, которые гарантированно хранятся в таблице без анализа других транзакций). Основные методы ApplyUpdates(...) ‑ завершение всех транзакций. StartTransaction, Commit, Rollback ‑ начать, завершить, отменить транзакцию (п. 3.8). Execute(S,...) ‑ выполнение команды языка запросов SQL из строки S. ValidateName(S) ‑ процедура генерирует исключение EdatebaseError, если база S уже активна. Обработчик события OnLogin (подключения базы) имеет параметры: Database (псевдоним базы) и LoginParams (строка с параметрами для базы, например, имя пользователя и пароль).
Основные свойства Params ‑ массив типа TParam с параметрами хранимой процедуры. ParamBindMode ‑ передача параметров хранимой процедуре по имени (pbByName) или по порядковому номеру (pbByNumber). ParamCount ‑ число параметров хранимой процедуры. Prepared ‑ имеет значение True, если процедура готова (откомпилирована) для выполнения. StoredProcName ‑ наименование хранимой процедуры на сервере. Основные методы CopyParams(Value:TParams) ‑ копирование параметров хранимой процедуры в список Value.
DescriptionsAvailable: Boolean ‑ возвращает True, если можно получить дополнительную информация о параметрах процедуры. ExecProc ‑ запуск процедуры на выполнение. GetResults - возвращение выходного набора от СУБД Sybase или MSSQL. ParamByName(S):TParam ‑ доступ к параметру под именем S. Prepare ‑ подготавливает хранимую процедуру к выполнению. UnPrepare ‑ отменяет подготовку хранимой процедуры к выполнению. Пример: StoredProc1.Params[0].AsString:=Edit2.Text; //передача параметра из Edit2. StoredProc1.Prepare; //подготовка хранимой процедуры к выполнению. StoredProc1.ExecProc; //выполнение хранимой процедуры. StoredProc1.Getresults; //возвращение результата в параметре Output. Edit2.Text:=StoredProc1.ParamByname('Output').AsString;//вывод результата.
Основные свойства Destination/Source ‑ исходный/выходной набор данных (таблица, запрос). AbortOnKeyViol или AbortOnProblem ‑ имеет значение True, если обработка прерывается из‑за нарушения целостности базы или несоответствия типов полей. ChangedCount ‑ число записей в исходной таблице. CommitCount ‑ число записей в транзакции (для разбиения таблицы). KeyViolCount ‑ число изменяемых записей, нарушающих целостность ключей. Mappings ‑ список строк связей между полями исходной и выходной таблиц вида: поле=поле. Mode ‑ режимы работы метода Execute: batAppend (добавить из исходной в выходную), batUpdate (замена записей в выходной таблице исходными по ключу), batAppendUpdate (режим batUpdate и добавление отсутствующих), batCopy (копирование исходной в выходную), batDeleted (удаление записей из выходной таблицы, совпадающих по ключу с исходными). ProblemCount/MoveCount ‑ число не/скопированных записей. RecordCount ‑ ограничение на максимальное число копируемых записей. Transliterate ‑ вызов драйвера перекодировки символов. Метод Execute осуществляет копирование. UpdateSQL ‑ обновление набора данных (запроса), не предназначенного для изменения. Компонент связывается с объектом Query или StoredProc через свойство UpdateObject этих объектов. Затем задаются команды SQL для автоматического выполнения после формирования набора.
Основные свойства DataSet, DeleteSQL, InsertSQL, ModifySQL ‑ набор данных; команда SQL на удаление; добавление или обновления записей. Query - ссылка на объект Query, который описывает работу команды SQL. Основные методы Apply(UpdateKind: TUpdateKind) ‑ задание параметров для команды SQL и ее исполнение. ExecSQL(UpdateKind: TUpdateKind) ‑ выполнение команды SQL. SetParams(UpdateKind: TUpdateKind) ‑установка параметров команды SQL.
Кэширование обновления позволяет хранить изменения в локальном буфере на клиентской машине и отправлять их в базу данных на сервере базы методом ApplyUpdates, что экономит время, но задерживает внесение текущих изменений в базу. Режим кэширования устанавливается свойством CachedUpdates компонентов Table, Query, StoredProc. Этот процесс отслеживается событиями OnUpdateRecord и OnUpdateError.
Воспользуйтесь поиском по сайту: ![]() ©2015 - 2025 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|