Компонет 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