Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2005.06.29;
Скачать: [xml.tar.bz2];

Вниз

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 вся ветка

Форум: "Базы";
Текущий архив: 2005.06.29;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.045 c
11-1100529057
<Falcon>
2004-11-15 17:30
2005.06.29
Странное поведение MHFontDialog


8-1109712268
parovoZZ
2005-03-02 00:24
2005.06.29
Частота монитора и OpenGL


3-1116331690
Гость2
2005-05-17 16:08
2005.06.29
Вопрос по SQL-запросу


1-1117695588
Egor
2005-06-02 10:59
2005.06.29
Ассоциировать файл с программой


14-1117626789
dr Tr0jan
2005-06-01 15:53
2005.06.29
Код Киева





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский