Поиск:

Ответ в темуСоздание новой темы Создание опроса
> DBGrid и AdoQuery, не изменяется значение в столбце :( 
:(
    Опции темы
napTu3aH
Дата 8.12.2004, 18:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 35
Регистрация: 2.10.2003

Репутация: нет
Всего: 1



При запросе нужно чтобы вместе с полями существующими в БД возвралось еще одно поле, значения которого могли бы редактироваться в BDGrid, но не хранились в БД.
Реально такое сделать ?

Т.е. запрос (MSSQL) имеет вид : 'Select field1, field2, 0 As field3 from table'
После этого выставляю в DBGrid'е у field3 свойство Readonly в false.
Значение изменяется, но при потери фокуса ячейкой в ней восстанавливается 0 (значение которое вернул запрос для этого поля ), а хотелось бы, чтобы оно сохранялось.



Прочитал, что DBGrid не хранит данные, а только отображает.

P.S.
Что за дурацкая привычка сначала постить, а потом читать ? smile


Это сообщение отредактировал(а) napTu3aH - 8.12.2004, 18:25
PM MAIL WWW   Вверх
Medved
Дата 9.12.2004, 09:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 7209
Регистрация: 15.9.2002
Где: Kazakhstan, Astan a

Репутация: 1
Всего: 154



НД, возвращаемый TQuery нельзя редактировать, за исключение некоторых случаев.
Вариантов решения много.
Навскидку - можно копировать НД в память (MemTable из RxLib). Если непонятно, могу объяснить более обстоятельно.


--------------------
http://extreme.sport-express.ru/
...и неважно сколько падал, важно сколько ты вставал...
PM MAIL WWW ICQ Skype GTalk   Вверх
Dimich
Дата 9.12.2004, 09:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 247
Регистрация: 25.8.2004
Где: Брянск

Репутация: 3
Всего: 7



Как вариант решения могу предложить следующий алгоритм (конечно не совсем удочный):
1. Данные, выбранные запросом поместить в массив (динамический)
2. Отображать данные DBGrid'om из массива
3. При изменении ячейки записывать ее если надо в БД и массив

Алгоритм я не проверял, но должен работать
--------------------
Не работает - исправь, работает - не трогай!!!
PM MAIL ICQ Jabber   Вверх
Alex
Дата 9.12.2004, 09:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 4147
Регистрация: 25.3.2002
Где: Москва

Репутация: 17
Всего: 162



napTu3aH, Хотелось бы узнать длящего вообще вы это хотите делать потому как есть подозрение, что вашу задачу можно решить иначе.

Но если уж действительно нужно делать именно так, то можно воспользоваться ADODataSet и поиграться с его событием BeforeEdit.


--------------------
Написать можно все - главное четко представлять, что ты хочешь получить в конце. 
PM Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Базы данных и репортинг"
Vit
Петрович

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


Обязательно указание:

1. Базы данных (Paradox, Oracle и т.п.)

2. Способа доступа (ADO, BDE и т.д.)


  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • Вопросы по SQL и вопросы по базам данных не связанные с Дельфи задавать здесь

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема »


 




[ Время генерации скрипта: 0.0935 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.