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

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

Дополнительное редактируемое поле в ADODataSet [D5, MSSQL, ADO]


Jony ©   (2002-02-14 13:21:00) 

Как в ADODataSet вставить дополнительное поле, которое можно было бы редакьтровать (допустим, DBEdit)?


Анонимщик   (2002-02-14 20:05:00) [1]

А FieldDefs у ADO разве не ReadOnly? Я тоже как-то пытался, решил, что без извращений не получится.


kig   (2002-02-14 17:34:00) [2]

Попробуйте (с учетом ответов выше) следующее:

Считать клиентским курсором.
Отсоединить набор данных от БД (сбросить коннект в ADODataset в nil)

Возможно в этом случае поле "0 AS myfield" можно будет редактировать.


Johnmen   (2002-02-14 17:02:00) [3]

Конкретно : SELECT ...,0 AS myfield FROM ...
В НД будет поле myfield типа int...
Но вряд ли оно будет редактируемым !

Общий ответ на ...Как в ADODataSet вставить дополнительное поле, которое можно было бы редакьтровать (допустим, DBEdit)? ... - никак...



Fedorenko Igor   (2002-02-14 17:01:00) [4]

Я имел в виду следующую конструкцию:
(например для MS SQL7)
SELECT id, valcode, MyEditField=0 FROM Valuta
Результат:
id valcode MyEditField
----------- ------- -----------
1 SUR 0
2 USD 0
3 EUR 0
4 YE 0
5 NULL 0
6 NLG 0
Вот этот EditField можешь править как тебе удобно.
Т.е. тебе ничто не мешает создавать в получаемых наборах данных
любые поля с любыми типами данных.


Jony   (2002-02-14 16:29:00) [5]

А можно конкретно. Я уже описал, что я делал. Как надо или что не так?


Johnmen   (2002-02-14 16:22:00) [6]

Если хочешь добавить поле Data, то за ним должно скрываться реальное поле Table"а или Query, иначе можешь добавить лишь Calculate или Lookup.
Поэтому проще всего >Fedorenko Igor (14.02.02 13:57)


Jony   (2002-02-14 15:21:00) [7]

Может кто-нибудь объяснит темному что и как делать.
Пытаюсь сделать поле через FieldDefs но после попытки открыть набор или добавить его в редактор полей набора через Add оно исчезает из редактора FieldDefs. А если я его создаю через редактор полей набора (NewField) как тип Data, то либо при попытке закрыть форму создания поля либо при открытии набора ругается, что такого поля в наборе нет.
Повторяю, мне нужно создать поле а наборе, а не в таблице БД.


Fedorenko Igor   (2002-02-14 13:57:00) [8]

Что мешает добавить в запрос дополнительное поле?


Johnmen   (2002-02-14 13:52:00) [9]

(не совсем правильно понимаешь);
см. выше ADODataSet1.FieldDefs , а также ADODataSet1.Fields.Add(...)(не совсем правильно понимаешь)


Jony   (2002-02-14 13:48:00) [10]

Насколько я понимаю, FieldDefs используется для динамического создания таблиц (определения в них полей) в БД. У меня несколько другой интерес. Мне нужно в DisignTime создать в ADODataSet поле, которого нет в таблице БД (в нем нет смысла), но оно мне нужно в программе для выполнения промежуточных расчетов с возможностью редактировать его в гриде или едите.Вычисляемые и, тем более , лукапные поля редактировать нельзя.


Fedorenko Igor   (2002-02-14 13:24:00) [11]

СМ ADODataSet1.FieldDefs ....


Наверх

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