Главная страница
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.014 c
2-1228310738
xLaMer
2008-12-03 16:25
2009.01.18
Изменить Текст Tedit в чужом окне


4-1204111796
POP
2008-02-27 14:29
2009.01.18
Как узнать скорость USB - COM порта?


2-1228633202
@!!ex
2008-12-07 10:00
2009.01.18
Узнать ProcessHandle по HWND окна.


15-1227293774
palva
2008-11-21 21:56
2009.01.18
Интересно, кто нибудь пил сакэ?


15-1226900583
mml
2008-11-17 08:43
2009.01.18
Вопрос к тем, кто читал книгу Агурова "Практика программирования