Вниз
Скачать: CL | DM;

Как бы поймать   Найти похожие ветки 

 
BlackTiger   (2003-01-06 15:47) [0]

Ситуация следующая.

Есть ADOQuery и грид с ним. Заношу SQL-текст и открываю.
Никаких предопределенных полей нет, тк я их не знаю на тот момент.
Проблема в том, что мне необходимо добавить несколько Calculated-полей. Как бы поймать момент, когда определяется структура результата, чтобы туда вставить мои поля (те фиксированные поля/колонки результата уже определились, но данные еще не начали читаться).

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

З.Ы.: В какой момент вообще можно "влезать" со "своим уставом" в датасет?


 
asmith   (2003-01-06 19:12) [1]

Возможно в обработчике события WillChangeRecordset


 
sniknik ©   (2003-01-06 23:35) [2]

а в SQL-текст добавить нужные поля с вычислениями? MSSQL позволяет довольно много операций можно даже определить вычисляемое поле в самой таблице. (места не занимает но поле с результатом есть)


 
BlackTiger   (2003-01-07 12:13) [3]

Поля сразу в SQL - это решение "в лоб", а я занимаюсь "извращениями". В идеале я бы хотел получить "виртуальные" колонки, которые существуют ТОЛЬКО В ГРИДЕ, или иметь возможность добавлять калк.-поля в датасет "НА ЛЕТУ" без закрытия датасета.

Хотя проблему я решил простым сохранением списка полей в файл. Всё равно пользователь сохраняет/загружает "плоды своей деятельности" из файла.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.014 c
14-87032
McSimm
2003-01-08 11:16
2003.01.27
Начните день с хорошего настроения :-)


14-87125
^Sanya
2003-01-09 09:03
2003.01.27
Как ник сменить?????


4-87229
plaha999
2002-12-10 01:46
2003.01.27
Ошибка при обращении к свойствам TMessage


6-86991
mc_Antoha
2002-11-28 21:16
2003.01.27
Работа с ini файлом по локальной сети


7-87167
wandp
2002-11-16 01:48
2003.01.27
Помогите с мышкой




   Наверх