![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Дополнительное редактируемое поле в 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 ....