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

динамическое создание вычисляемого поля AdoQuery   Найти похожие ветки 

 
Arinyshka   (2008-12-01 14:52) [0]

connectionString прописывается динамически во время выполнения - поэтому не могу просто добавить поле в Query статически.
нужно в run-time добавить к датасету QrUni:TAdoQuery 2 calculated поля.
qrUni.Fields.Add(); ?? Не могу сообразить как это сделать :(


 
Arinyshka   (2008-12-01 15:01) [1]

уже сообразила, что поле добавить могу и статически... но все равно хочется в run time


 
Сергей М. ©   (2008-12-01 15:05) [2]


> как это сделать


Надо как минимум:

- создать соответствующий типу поля объект-наслединк класса TField (TIntegerField, TStringField e.t.c),

- установить его св-во FieldKind = fkCalculated

- передать этот объект параметром в метод MyDataSet.Fields.Add


 
Arinyshka   (2008-12-01 15:26) [3]

то есть примерно так:


qrUni: TAdoQuery;
****
var
MyField: TStringField;

begin

MyField.Create;
MyField.FieldKind = fkCalculated;
qrUni.Fields.Add (MyField);



и потом спокойно обрабатывать его в событии OnCalc?

Просто я попыталась быстренько таки прописать поле статически в qrUni... И в результате прожка кричит. что не находит других полей - тех, которые просто передавались из БД


 
Поросенок Винни-Пух ©   (2008-12-01 15:29) [4]

все намногее не так.


 
Сергей М. ©   (2008-12-01 15:31) [5]


> прожка кричит. что не находит других полей


И не найдет - ты же их собственноручно выкинула, добавив вычисл.поле.
Надо было явно добавить все поля , с которыми работает "кричащая прожка", и в конец списка добавить свое выч.поле


 
Arinyshka   (2008-12-01 16:00) [6]


> Надо было явно добавить все поля , с которыми работает "кричащая
> прожка", и в конец списка добавить свое выч.поле

Собственно, так и сделала... Это я более-менее быстро сообразила :) Но все-таки хочется понять, можно ли было к существующему датасету добавить вычисляемые поля динамически?


 
Сергей М. ©   (2008-12-01 16:05) [7]


> можно ли было к существующему датасету добавить вычисляемые
> поля динамически?
>


Сказано ведь уже - можно.



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

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



Память: 0.46 MB
Время: 0.007 c
2-1228399322
LLiriKK
2008-12-04 17:02
2009.01.18
Проблема с Word


4-1204486757
Mixali4
2008-03-02 22:39
2009.01.18
Время выполнения процесса


2-1228158315
Костя
2008-12-01 22:05
2009.01.18
Мониторинг сетевых подключений.


2-1228400690
istok2
2008-12-04 17:24
2009.01.18
изучить почему не удаляется файл...


15-1227101960
Mozart
2008-11-19 16:39
2009.01.18
Русский перевод фильмов bbc зло?




   Наверх