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

OnCalcFields как выполнить только для текущей записи?   Найти похожие ветки 

← →
Manfred8   (2005-05-16 16:47) [0]

Опытным путем выяснил что OnCalcFields  выполняется для всех записей находящихся в гриде,не в датасете а именно в гриде..

Задача - управлять значением калькулейт поля типа boolen.

Выбираю какое значение ему присвоить вызываю Locate на запись чье поле меняю,далее происходит переход к  OnCalcFields который выполняется столько раз сколько записей в гриде*2.. в обработчике выполняются довольно ресурсоемкие операции и потому хотелось бы сократить время затрачиваемое на их выполнение..
Собственноо вопрос как ограничить кол-во вызовов OnCalcFields,как сделать чтобы вызвался только для текущей записи?


← →
Polevi ©   (2005-05-16 16:52) [1]

в "гриде" OnGetText выполняется
OnCalcFields - для датасета


← →
Manfred8   (2005-05-16 16:59) [2]

я в курсе ,но если прикрепить к датасету грид то получаем то о чем было написано


← →
Ega23 ©   (2005-05-16 17:04) [3]

Собственноо вопрос как ограничить кол-во вызовов OnCalcFields,как сделать чтобы вызвался только для текущей записи?

В выборку поле добавить?


← →
Johnmen ©   (2005-05-16 17:05) [4]

OnCalcFields вызывается только тогда, когда есть явное или неявное обращение в вычисляемому полю. Напр.для отрисовки в гриде.
Поэтому DisableControls EnableControls.


← →
Manfred8   (2005-05-16 17:06) [5]

To Ega23 Недопонял :)  ?


← →
Manfred8   (2005-05-16 17:10) [6]

Удалено модератором
Примечание: следи за языком.


← →
Johnmen ©   (2005-05-16 17:15) [7]

>Manfred8   (16.05.05 17:10) [6]

Ну да. Идет неявное обращение к записям...
Проверяй в ОнКалкФилде ControlsDisabled


← →
Ega23 ©   (2005-05-16 18:25) [8]

To Ega23 Недопонял :)  ?

Задача - управлять значением калькулейт поля типа boolen.

На уровне выборки и управляй. Зачем делать Calculate для Calculated поля???


← →
Prohodil Mimo ©   (2005-05-17 11:17) [9]

А AutoCalcFields:=False не поможет?


← →
msguns ©   (2005-05-17 11:42) [10]

1. Убрать OnCalcFields
2. Создать доп.колонку, в которую не назначать поле НД
3. Для текущей записи считать и рисовать в доп.колонке подсчитанное значение в событии грида OnDrawColumnCell



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

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



Память: 0.47 MB
Время: 0.026 c
14-1117812100
тихий вовочка
2005-06-03 19:21
2005.06.29
Новости VCL - 404я


1-1117635667
Aleksandr.
2005-06-01 18:21
2005.06.29
Есть какие-то готовые технологии для градиента цветов?


1-1117948037
Петр
2005-06-05 09:07
2005.06.29
Протоколирование работы программы(трассировка)


14-1116820938
Alex Konshin
2005-05-23 08:02
2005.06.29
ICQ клиент


9-1111275692
Green_Templar
2005-03-20 02:41
2005.06.29
TDXImageList




   Наверх