Компонет TpsCachedUpdates
Скачать компонент в редакции DELPHI 5
Скачать компонент в редакции DELPHI 6
Требования:
DELPHI 6 (Для DELPHI 5 изменения и исправления не поддерживаются).
Для работы компонента необходима установленная библиотека RxLib.
Проверен с MS SQL Server7.
Модули:
Модуль компонента Un_TpsCachedUpdates
Модуль редактора компонента Un_TpsCachedUpdatesEditor
Описание компонента:
Компонент предназначен для сохранения в базе данных кэшированных изменений
в наборах данных или для их отмены при организации доступа к данным через BDE.
К одному компоненту можно подключить до 10 компонентов доступа к данным (TQuery,
TStoredProc,TTable).
При использовании данного компонента не происходит блокировок, т.к. не создаются
дополнительные соединения с сервером (Часто при сохранении кеша BDE создает
дополнительные соединения для изменения данных, что может привести к взаимной блокировке
итих соединений).В случае успешного сохранения данных на диске в директории программы
создается файл LastSQL.txt, в котором содержится текст выполненого запроса. В случае
ошибки на диске в директории программы создается файл, содержащий текст запроса и содержание
ошибки (имя файла формируется из имени компонента и времени выполнения).
Компонет можно применять и при использовании TClientDataSet. Но в этом случае не
отслеживается ошибка сохранения данных (т.е. TClientDataSet будет в любом случае считать
сохранение успешным.).
Описание свойств компонента:
- DatabaseName
Название базы данных.
- CanDeleteOnly,CanModifyOnly
Количество записей,которое может быть удалено/изменено одной операцией удаления/
изменения.
Контролируется,если включена соответствующая опция для конкретного набора данных
(CheckDelete,CheckUpdate).
- DataSet1,...,DataSet10
Наборы данных, производные от TQuery,TStoredProc,TTable.
У них свойство CachedUpdates должно быть установлено в True и должно быть задано
свойство UpdateSQL;
- Transaction
Соответствует свойству Transaction компонента TSQLScript из библиотеки RxLib.
Означает, выполняются подзапросы в рамках одной транзакции или нет.
Описание методов компонента
- procedure ApplyUpdates(FirstSQLs,LastSQLs:array of TStrings;ToScript:TSQLScript=nil)
Передает все изменения в базу данных.
FirstSQLs - SQL-команды,которые будут выполнены перед запросами на изменение данных.
LastSQLs - SQL-команды,которые будут выполнены после запросов на изменение данных.
Если указан параметр ToScript, то сгенерированные запросы будут добавлены в этот
скрипт без выполнения (Это может понадобится при использовании TClientDataSetов,
которые посылают изменения в компонент, из которого брали данные).
- procedure CancelUpdates
Отменяет все изменения в заданных наборах данных.
- function UpdatesPending(Index:Integer=-1):Boolean
Возвращает True, если есть измененные данные. Если задан Index, то проверяется набор
данных,соответствующий этому индексу.Если нет - то все заданные наборы данных.
- procedure GetLastSQL(var SQL:TStrings)
Помещает в SQL последний сгенерированный запрос на обновление данных.
Описание событий компонента
- OnDelete
Происходит до генерации запроса на удаление записи из набора данных.
- OnInsert
Происходит до генерации запроса на добавление записи в набор данных.
- OnUpdate
Происходит до генерации запроса на изменение записи в наборе данных.
- OnBeforApply
Происходит перед сохранением данных.
- OnAfterApply
Происходит после сохранения данных.
- OnBeforCancel
Происходит перед отменой изменений в данных.
- OnAfterCancel
Происходит после отмены изменений в данных.
Комментарии и замечания сюда
или в гостевую книгу
Сайт управляется системой
uCoz