Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Вычисляемые поля в DBGridEh [D6]


sergeyy ©   (2003-03-06 12:13:00) 

Можно ли редактировать вычисляемые поля в DBGridEh?


sergeyy   (2003-03-06 12:55:00) [1]

2 passm
Не, мне не лень.

В общем всё получилось. Я сделал FieldKind = fkInternalCalc и всё заработало. Потом просто отлавливаю у этого поля OnChange и там делаю своё грязное дело. Вобще речь шла о ClentDataSet...


BlackTiger   (2003-03-06 12:47:00) [2]

Старо как мир...

Самое смешное, что в хэлпе (по CLX, но не по VCL) написано "редактировать можно, но изменения не сохраняются физически и будут потеряны при закрытии датасета". Сам ходил по этим граблям, пока не вчитался в хэлп.

Все делают только через "table-in-memory".


passm   (2003-03-06 12:42:00) [3]

sergeyy © (06.03.03 12:32)> Проведи эксперимент, если не лень.
Допустим "FIELD1" вычисляемое. И напиши:
DataSet.Edit;
DataSet.FieldByName("FIELD1").AsInteger:= 1;
DataSet.Post;
Если прокатит, можешь продолжать поиски Grid"а.


zacho   (2003-03-06 12:38:00) [4]

Не видел wwDBGrid, поэтому любопытно - а что он с этими полями после редактирования делает-то ? Куда данные из них пихает ?


sergeyy   (2003-03-06 12:32:00) [5]

вот в Гриде от InfoPower (wwDBGrid) такая возможность есть. Ставишь там EditCalculated = true и после этого можно делать с вычисляемыми полями что хочешь. Только тяжёл этот грид весьма...


zacho   (2003-03-06 12:25:00) [6]

DBGridEh здесь не причем. Как и любой db-aware контрол он только работает с данными, находящимися в соответствующем DataSet"е. А вычисляемые поля редактировать нельзя, по крайней мере мне такой способ неизвестен. Но сделать что-то типа "редактируемых вычисляемых полей" можно, а как - зависит от конкретной задачи. Например, можно сделать запрос типа SELECT bla-bla, ..., CAST(0 AS INTEGER) AS MY_CALC_FIELD и делать потом с этим полем все что угодно


passm   (2003-03-06 12:21:00) [7]

sergeyy © (06.03.03 12:13)> Grid не имеет к этому отношения. Вопрос в возможности редактировать вычисляемые поля вообще.


Наверх

Титульная страница Поиск, карта сайта Написать письмо