Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2009.01.18;
Скачать: 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 вся ветка

Текущий архив: 2009.01.18;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.01 c
2-1228698109
S
2008-12-08 04:01
2009.01.18
IBEvents в DLL


15-1225760423
borisich
2008-11-04 04:00
2009.01.18
А меня дочка родилась !!!!!!!!!!!


15-1227498126
Slider007
2008-11-24 06:42
2009.01.18
С днем рождения ! 24 ноября 2008 понедельник


2-1228146799
Petr
2008-12-01 18:53
2009.01.18
procedure TForm1.Writing(Text: string);


6-1197449836
AnatV
2007-12-12 11:57
2009.01.18
Как это называется?