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

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

Нужно добавить в DBGrid поле не содержащееся в Recordset [D7, MSSQL]


Страницы:   1 2

Йурий ©   (2003-09-16 12:12:00) 

Такая проблема, мне нужно добавить поле в DBGrid не связанное с конкретным полем reordset, вычесляемое не подойдет...
Скажем, после открытия ADOQuery я вычисляю значения для этого поля один раз и они(значения) существуют до следующего открытия, а не как в вычисляемом поле вычесляются при каждой отрисовке данных...
На это поле нужно накладывать фильтры, сортировать на клиенте, с вычисляемыми это не проходит...
Спасибо!


Nikolay M.   (2003-09-16 13:10:00) [21]

А что вообще за задача?
Может дело простым вспомогательным массивом в памяти обойдется?


Йурий   (2003-09-16 13:07:00) [22]

И еще, при изметнении, он попытается отправить все это на сервер... Т.е. сохранить...


Sandman25   (2003-09-16 13:07:00) [23]

Кстати, а Вы Edit не забыли вызвать?


Sandman25   (2003-09-16 13:05:00) [24]

Жаль. Сейчас я попробую воспроизвести Вашу ситуацию...
Правда, в TQuery.


Йурий   (2003-09-16 12:56:00) [25]

Попробывал, ругается DataSet not in edit or insert mode!
ADOQuery1.CanModify:=True; поставить не дает?


Sandman25   (2003-09-16 12:40:00) [26]

select *, cast ("" as char(20)) my_field
from table

AfterOpen пробежаться по DataSet и изменить значение my_field


Йурий   (2003-09-16 12:35:00) [27]

Чото непонятно...
Число записей я всегда узнать могу по ADOQuery.RecordCount, а как поле-то создать чтоб оно было только на клиенте?!?!


Alex_ring   (2003-09-16 12:25:00) [28]

Попробуй создать пустую Query
WITH WorkQuery do
begin
close;
sql.clear;
sql.add("select count(*),MAX(ID) AS M");
sql.add("from table1");
open;
end;
Table1.FieldByName(ID).AsInteger:=WorkQuery.fieldByName("M").AsInteger +1;

Вот пример где с помощью Query можно получить количество записей в таблице и присвоить значение новому полю


Йурий   (2003-09-16 12:23:00) [29]

Точнее, добавить не в DBGrid, а в ADOQuery...


Страницы:   1 2

Наверх

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