Особенности и улучшения:

  1. Переписан редактор FIBPlus DataSet Repository.
  2. В TpFIBDatabase добавлено свойство FIBDatabase.UseRepositaries. Если установить его равным False, вы можете насильно отключить любую поддержку репозитория во всем приложении.
  3. Свойство useRepositaries переименовано в useRepositories.
  4. Добавлены поля в FIBPlus DataSet Repository:

    UPDATE_TABLE_NAME,
    UPDATE_ONLY_MODIFIED_FIELDS,
    CONDITIONS
  5. Добавлен метод TFIBXSQLDA.AssignValues.
  6. Таймеры для датасетов теперь создаются не безусловно, а только при необходимости.
  7. FIBDatabase.CacheSchemaOptions

    Добавлено свойство ValidateAfterLoad : boolean; Если его отключить, FIBPlus не будет пытаться проверить сохраненную схему метаданных после загрузки.
  8. У TpFIBQuery появилась public read-write свойство PlanClause.
  9. В SQLEditor кнопка SaveSQL перестала проверять синтаксис SQL, если соответствующий флаг выключен.
  10. Модуль SqlTxtRtns полностью переписан.
  11. Изменено поведение UpdateTransaction. Теперь транзакция запускается только при выполнении модифицирующего запроса. Подготовка запроса выполняется в открытых транзакциях.
  12. Теперь TpFIBDatabase.Gen_Id вызывается в первой доступной открытой транзакции, а не создает свою собственную транзакцию.
  13. Улучшена работа с новыми ключевыми словами InterBase.
  14. Свойство AsIn64 добавлено в TFIBBCDField (для всех версий Delphi начиная с Delphi 4).
  15. Свойство, отвечающее за шаг генератора было добавлено в AutoUpdateOptions у TpFIBDataSet.
  16. Некоторые события были переименованы:

    * TpFIBDatabase.Onlogin изменено на BeforeConnect,
    * TpFIBDatabase.OnConnect изменено на AfterConnect.
  17. Поддержка исключений сервера при работе с Foreign Keys, Check Constraints и Unique Constraints добавлена в TpFibErrorHandler. Чтобы активизировать данную особенность, нужно включить соответствующую опцию в свойстве Options у TpFIBErrorHandler и создать следующую таблицу в базе данных:

    CREATE TABLE FIB$ERROR_MESSAGES (
    CONSTRAINT_NAME VARCHAR(67) NOT NULL,
    MESSAGE_STRING VARCHAR(100),
    FIB$VERSION INTEGER,
    CONSTR_TYPE VARCHAR(11) DEFAULT 'UNIQUE' NOT
    NULL
    );

    Создание данной таблицы и работа с ней теперь реализована в редакторе компонента TpFIBDataBase.
  18. В AutoUpdateOptions добавлено два новых свойства:

    a) ParamsToFieldsLinks: TStrings Позволяет задать соответствие между полями датасета и параметрами в форме FieldName=ParamName. Затем это соответствие используется во внутреннем обработчике перед вызовом OnNewRecord. Значение параметра автоматически задается указанному полю.

    b) AutoParamsToFields: boolean Если вы зададите этому свойству значение True, TpFIBDataSet постарается задать свойство ParamsToFieldsLinks самостоятельно, проанализировав текст SelectSQL (только в run-time).
  19. В TpFIBDatabase добавлено свойство DefaultUpdateTransaction. Все TpFIBDataSet, добавленные на форму после задания DefaultUpdateTransaction, будут использовать это значение свойства для того, чтобы задать свойство UpdateTransaction.
  20. У TpFIBTransaction появились методы:

    * SetSavePoint(const Name: string) и
    * RollBackToSavePoint(const Name: string)
    (только для FB 1.5)
  21. У TpFIBDatabase появилось свойство ServerActiveTransactions: TStringList, которое возвращает список идентификаторов активной
    транзакции текущей базы данных на сервере. Этот список возвращает ID список активных на данных момент транзакций. (только для FB 1.5)
  22. Минорные изменения в TFIBSQLMonitor, которые позволяют отслеживать новые операции с SavePoint.

Исправленные ошибки:

  1. При открытии SQL Generator был виден список таблиц из базы, а в ListBoxе написано "Closed". Исправлено.
  2. В редакторе SQL не выделялись цветом названия изменённых запросов. Исправлено.
  3. У датасета в AutoUpdateOptions не добавлялись варианты выбора ключевого поля (KeyFields) BIGINT. Исправлено.
  4. Исправлено множество ошибок в работе репозиториев.
  5. Design-Time редактор Options у TpFIBDataSet не работал, если было выбрано несколько компонент. Исправлено.
  6. Переполнение стека при попытке изменить OrderClause, если до этого был использовано свойство Conditions. Исправлено.
  7. Неправильная работа BatchOutputRawFile, если в запросах существовали VARCHAR поля. Исправлено.
  8. Некоторые исправления в методе FullRefresh. (иногда слетала текущая позиция).
  9. Исправлен слет UpdateTransaction, если у датабэйса был назначен дефолтный UpdateTransaction. Исправлено.
  10. Улучшена работа с макросами, в частности, исправлена ошибка при обработке некоторых SQL с макросами.
  11. Исправлена ошибка работы с блоб-полями в InternalPostRecord, возникавшая в режиме CachedUpdates.
  12. Слетали дефолтовые поля при FullRefresh. Исправлено.
  13. Полностью переписан unit SqlTxtRtns;
  14. Вставка в пустой датасет при использовании отдельной модифицирующей транзакции. Изменения в блоб поле в этом случае не записывались. Исправлено.
  15. Boolean поля в некоторых случаях эмулировались только после переоткрытия Delphi. Исправлено.
  16. Дизайнер полей не поднимался в том случае, если в датасете был записан неправильный SelectSQL. Исправлено.
  17. Исправлены ошибки при работе с RDB$DB_KEY.
  18. Неправильная проверка транзакции при ApplyUpdates. Исправлено.
  19. Ошибка в FIBDatabase.QueryValue, если возвращаемое поле является блобом. Исправлено.
  20. Проблема с нетекстовыми BLOB полями устранена.
  21. Ошибки в функциях макросов. Исправлены.
  22. Ошибки с DDL запросами. Исправлены.
  23. AV в SQL Editor исправлено.
  24. Исправлены ошибки в редакторе свойства Options в TpFIBDataSet.
  25. Ошибки использования RDB$DB_KEY в TpFIBDataSet. Исправлены.
  26. Ошибки, которые появлялись при проверке активных транзакций в ApplyUpdates. Исправлены.
  27. Ошибки в FIBDatabase.QueryValue, если возвращаемое поле BLOB. Исправлены.
  28. Изменения BLOB-полей не сохранялись после вставки записи в пустой датасет в контексте отдельной модифицирующий транзакции. Исправлено.
  29. Ошибка в методе LocateNext. Исправлена.
  30. Ошибка эмуляции Boolean-полей в design-time. Исправлена.
  31. Ошибка, при которой не запускался Field Editor, если в TpFIBDataSet был задан некорректный SelectSQL. Исправлена.
  32. Ошибка работы с запросами вида "Select for update". Исправлена.
  33. Ошибка обработки Cancel после exception во время выполнения запроса INSERT. Исправлена.

Описание для анонса: Что нового в версии 5.0, особенности, улучшения и исправленные ошибки
Специальные цены для ex-USSR (кроме стран ЕС):

235 Euro
1500 руб. для физ. лиц
3600 руб. для юр. лиц

Скидки при покупке нескольких копий!

Навигация



В основном, в своем приложении на основе Firebird+FIBPlus я использую pFIBDataSet, pFIBTransaction, pFIBStoredProc. Это программа типа "Бухгалтерия" и "Документооборот". В день примерно бывает 100-120 проводок, еще есть загрузка отсканированных документов, оформление договоров. В программе "Зарплата" учитывается небольшое количество работников - 30, но все равно запросы тяжелые, расчеты нарастающим итогом.

В общем, FIBPlus классные компоненты, постоянно ими пользуюсь! Жаль только, что нету FIBPlus для MSSQL :-(

>>

Афанасий Кулаковский , ФБ Таатта
Раздел для покупателей
Получение полных версий и обновлений. Перейти в Личный кабинет
Сайт по Delphi: ежедневные ИТ-новости, статьи, документация, компоненты, конкурсы, юмор...