Захожу в комнату а там....
28 октября 2012 г.
16 октября 2012 г.
Delphi. Ошибка: Ancestor for 'Component' not found.
Доброго времени суток.
При запуске приложения, и при построении формы, содержащей какой-либо фрейм, может появляться ошибка "Ancestor for 'Component' not found" (где Component - имя компонента).
Эта ошибка появляется если Вы переименовали компонент на фрейме, но в на форме, которая содержит фрейм компонент прописан со старым именем. Нужно просто указать одинаковые имена компонентов в родителе и наследнике.
P.S. Многократно видел в интернете обсуждение аналогичных проблем. Надеюсь кому-то пригодится данный пост.
При запуске приложения, и при построении формы, содержащей какой-либо фрейм, может появляться ошибка "Ancestor for 'Component' not found" (где Component - имя компонента).
Эта ошибка появляется если Вы переименовали компонент на фрейме, но в на форме, которая содержит фрейм компонент прописан со старым именем. Нужно просто указать одинаковые имена компонентов в родителе и наследнике.
P.S. Многократно видел в интернете обсуждение аналогичных проблем. Надеюсь кому-то пригодится данный пост.
9 октября 2012 г.
ZeosLib. Транзакции. Ошибка: invalid operation in non AutoCommit mode
Еще раз Здравствуйте.
Наткнулся на ошибку "invalid operation in non AutoCommit mode" при выполнении ZConnection.StartTransaction.
В zeos-компонентах управление транзакциями производится из объекта класса TZConnection. В этом классе есть свойство AutoCommit:boolean, а так же методы StartTransaction, Commit, Rollback.
Я думал, что когда используется StartTransaction..Commit/Rollback, AutoCommit должен быть FALSE. Ибо если логически подумать, то зачем нам автоматический коммит, если мы управляем транзакциями вручную.
Оказывается немного не так... StartTransaction НЕ будет работать если AutoCommit = false.
Если AutoCommit = true, тогда транзакции фиксируются после каждого корректно завершенного SQL-оператора, а StartTransaction позволяет отменить автоматическое фиксирование и управлять транзакцией вручную. При AutoCommit = false - изменения не будут фиксироваться в базу вообще, следовательно команду StartTransaction вызывать бесполезно.
p.s.
Код метода который генерирует указанное в сабже исключение:
Наткнулся на ошибку "invalid operation in non AutoCommit mode" при выполнении ZConnection.StartTransaction.
В zeos-компонентах управление транзакциями производится из объекта класса TZConnection. В этом классе есть свойство AutoCommit:boolean, а так же методы StartTransaction, Commit, Rollback.
Я думал, что когда используется StartTransaction..Commit/Rollback, AutoCommit должен быть FALSE. Ибо если логически подумать, то зачем нам автоматический коммит, если мы управляем транзакциями вручную.
Оказывается немного не так... StartTransaction НЕ будет работать если AutoCommit = false.
Если AutoCommit = true, тогда транзакции фиксируются после каждого корректно завершенного SQL-оператора, а StartTransaction позволяет отменить автоматическое фиксирование и управлять транзакцией вручную. При AutoCommit = false - изменения не будут фиксироваться в базу вообще, следовательно команду StartTransaction вызывать бесполезно.
p.s.
Код метода который генерирует указанное в сабже исключение:
procedure TZConnection.CheckAutoCommitMode;
begin
if not FAutoCommit and (FExplicitTransactionCounter = 0) then
raise EZDatabaseError.Create(SInvalidOpInNonAutoCommit);
end;
8 октября 2012 г.
PostgreSQL. Склеиваем дату и время в SQL запросе.
Hello World.
Сегодня понадобилось склеить дату и время находящиеся в разных столбцах вместе, и поместить в третий результирующий столбец.
Функций для этой операции я не нашел, поэтому пришлось экспериментировать.
Представим, что есть таблица с полями:
Сегодня понадобилось склеить дату и время находящиеся в разных столбцах вместе, и поместить в третий результирующий столбец.
Функций для этой операции я не нашел, поэтому пришлось экспериментировать.
Представим, что есть таблица с полями:
create table test (
field_date date,
field_time time without time zone,
field_result timestamp without time zone)
Предположим, что первые две колонки таблицы заполненны датами и значениями времени. Далее, чтобы заполнить третий столбец совмещенными значениями даты и времени из двух предидущих столбцов, пишем update:
update test set
field_result = (field_date::date||' '||field_time::time without time zone)::timestamp without time zone
Все, проверяем результат...
3 октября 2012 г.
Delphi XE2. FastReport. Fail с экспортом.
Друзья мои, сразу после того как вы увидите в стандартной поставке Delphi XE2 копмоненты FastReport 4, и бесконечно обрадовавшись начнете ваять на их базе какую-нибудь серьезную подсистему отчетности - загляните по ссылке: http://www.fast-report.com/ru/products/fast-report4-editions-compare.html, и ознакомтесь с ограничениями Вашей версии!
Имеено для XE2 отсутствует экспорт в самые нужные форматы! Я об этом не прочел вовремя... и приплыл. Канешно, временное решение я нашел, но в скором будущем, похоже, стану клиентом FastReport.
Вот так бывает. :)
Имеено для XE2 отсутствует экспорт в самые нужные форматы! Я об этом не прочел вовремя... и приплыл. Канешно, временное решение я нашел, но в скором будущем, похоже, стану клиентом FastReport.
Вот так бывает. :)
2 октября 2012 г.
pgAdmin. Резервное копирование и восстановление базы данных.
Доброго времени суток.
Нашел на компе старое описание пошаговых действий при резервном копировании и восстановлении базы данных. Для чего делал и для кого делал - не помню, но не пропадать же добру, залью сюда. Может кому-то в чем-то пригодится :).
Нашел на компе старое описание пошаговых действий при резервном копировании и восстановлении базы данных. Для чего делал и для кого делал - не помню, но не пропадать же добру, залью сюда. Может кому-то в чем-то пригодится :).
1 октября 2012 г.
Delphi XE2. Установка ZeosLib.
Приветствую Вас в своем блоге.
Сегодня я хотел бы описать процесс установки компонентов Zeos на Delphi XE2.
Первое, что необходимо это конечно сами компоненты. Когда-то я качал их из официального SVN-а. Архив с тех пор сохранился, его можно взять ТУТ, если по каким-либо причинам Вы не можете скачать с SVN.
Итак, компоненты загружены, сложены в отдельную папку, идем далее...
Выбираем "File - Open Project..."
Сегодня я хотел бы описать процесс установки компонентов Zeos на Delphi XE2.
Первое, что необходимо это конечно сами компоненты. Когда-то я качал их из официального SVN-а. Архив с тех пор сохранился, его можно взять ТУТ, если по каким-либо причинам Вы не можете скачать с SVN.
Итак, компоненты загружены, сложены в отдельную папку, идем далее...
Выбираем "File - Open Project..."
Подписаться на:
Сообщения (Atom)
