Потеря полей в TDataModule у компонента TFIBDataSet

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Ответить
cav
новенький
Сообщения: 28
Зарегистрирован: 16.11.2006 07:56:03
Откуда: Кемерово

Потеря полей в TDataModule у компонента TFIBDataSet

Сообщение cav »

Lazarus v 0.9.23 beta SVN: 11366 с FPC 2.1.5. FIBL 050823
В Режиме EditFields у компонента TFIBDataSet создаетм поля как символьные так и числовые. добавление и компиляция проходит успешно
но стоит закрыть и открыть Лазаря от пишет следующее:

Код: Выделить всё

TJITNonFormComponents:TDM
Class "TFIBStringField" not found

т.е. что пишет понятно :) но вот почему ?
Если добавить эти поля повторно откомпилировать и попробовать находясь в DataModule что ли бо сделать еще то Лазарь вешается.
Аватара пользователя
alexs
долгожитель
Сообщения: 4066
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь
Контактная информация:

Сообщение alexs »

это баг лазаря
все наследники TField, объявленные не в модуле DB не сохраняются (вернее повторно не загружаются) в Lazarus-е
поэтому с полями работаем как в старые добрые времена

FIBDataSet1.FieldByName('имя_твоего_поля').As_ЧегоНужно
cav
новенький
Сообщения: 28
Зарегистрирован: 16.11.2006 07:56:03
Откуда: Кемерово

Сообщение cav »

Вот зараза.
это то да. но вот форматный вывод поля в гриде в таком случае как сделать...... Сори... можно просто попривычке как Delphi сделать пытался :)
Аватара пользователя
alexs
долгожитель
Сообщения: 4066
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь
Контактная информация:

Сообщение alexs »

ну я обычно глобально если мне нужно устнавливаю формат (обычно на дату)
у так
в обработчике afterOpen

FIBDataSet1.FieldByName('имя_твоего_поля').displayFormat:='#,##0.00'
Ответить