|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
04.11.2010, 14:41 | #1 |
Форумчанин
Регистрация: 05.02.2010
Сообщений: 153
|
Среднее арифметическое в DBGrid
на форме db grid (на нем таблица из аксесовской БД через ADOConnection) как среднее арифметическое значений всех полей одной сторки с 3 и до последнего? и так со всеми строками (записями).
Я начинающий web-программист) Не судите строго, плиз! Буду очень стараться!
|
04.11.2010, 15:36 | #2 |
Участник клуба
Регистрация: 07.07.2007
Сообщений: 1,518
|
Навскидку...
Код:
Последний раз редактировалось _SERGEYX_; 05.11.2010 в 14:19. |
04.11.2010, 15:43 | #3 |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
Логичнее внести этот обработчик в событие OnCalcFields...
|
04.11.2010, 17:21 | #4 |
Форумчанин
Регистрация: 05.02.2010
Сообщений: 153
|
а куда этот код поместить?
Извините, но не совсем понял что вы имеете ввиду.. Поподробней расскажите пожалуйста. Что за CalcFields? Я думаю что не рационально закрывать и окрывать ADOQuery для вычисления среднеарифметического каждой записи. Нужно чтобы когда в любой ячейке вносятся изменения сразу менялось и среднее арифметическое в главной ячейке. Подскажите, как решить проблему? 18:14 а что если добавить какойнибудь обработчик в Events у DBGrid на OnUpdateData (это во вкладке DataSet)? нужно просто чтобы он, когда в какойнибудь строчке меняют значение одной из ячеек высчитывал новое значение средне арифметического и записывал его в главную ячейку. подскажите кто-нибудь, как его сделать, этот обработчик? Пожалуйста!!! У нас принято пользоваться кнопочкой "Правка", дабы не плодить посты подряд, друг за другом. Читаем правила. Рекомендую. Помимо общих правил форума есть и дополнения к ним в каждом разделе... Уважайте форумчан, и они ответят вам взаимностью... Модератор
Я начинающий web-программист) Не судите строго, плиз! Буду очень стараться!
Последний раз редактировалось mihali4; 04.11.2010 в 18:31. |
04.11.2010, 18:19 | #5 | |
Участник клуба
Регистрация: 07.07.2007
Сообщений: 1,518
|
Цитата:
FieldKind:= fkCalculated; Т.е. это виртуальное вычисляемое поле. Обрабатывать нужно событие OnCalcFields. Добавлю. Про все это написано в штатном хэлпе, пользоваться которым для некоторых сродни пытке на дыбе. Модератор. Последний раз редактировалось mihali4; 04.11.2010 в 21:08. |
|
05.11.2010, 08:27 | #6 |
Форумчанин
Регистрация: 05.02.2010
Сообщений: 153
|
Я сделал вот так (сделал именно так, потому что просто сидел и логиески размышлял и пришла вот такая идея, а то что было сказанновыше, я , если честно не совсем понял....)
Код:
На мой взгляд все правильно, но часто мнение мое и кампилятора расходятся))) Он говорит что Stack Overflow. Все переменные обявлены в главном var. Почему такая ошибка? Может надо увеличитб stack? до скольки?
Я начинающий web-программист) Не судите строго, плиз! Буду очень стараться!
Последний раз редактировалось Марк Охман; 05.11.2010 в 11:07. |
05.11.2010, 13:25 | #7 |
Участник клуба
Регистрация: 07.07.2007
Сообщений: 1,518
|
Лови пример, как работает калькулируемое поле.
|
05.11.2010, 14:10 | #8 |
Форумчанин
Регистрация: 05.02.2010
Сообщений: 153
|
а где указывается поле в которое скалькулировать??
Я начинающий web-программист) Не судите строго, плиз! Буду очень стараться!
|
05.11.2010, 14:28 | #9 |
Участник клуба
Регистрация: 07.07.2007
Сообщений: 1,518
|
Руками создается.
Правый клик по AdoQuery1 > Fields Editor. Правый клик по редактору > New Field. Name: произвольно Type: float Field Type: Calculated Жмем ОК. |
07.11.2010, 14:00 | #10 |
Форумчанин
Регистрация: 05.02.2010
Сообщений: 153
|
всетаки у меня не получается((( прошу, простите за тупость,но не получатся.
в данном примере показано как калькулировать поля в ADOTable, а у меня ADOQuery(и я не могу это опустить потому что очень большая часть программы на этом стоит: запросы, сортировки и т.д.) Как сделать калькуляцию для ADoQuery? я использовал принцип калькуляции из примера в AdoQuery-->Events-->OnCalcFields. Код:
В ячейках, из которых берется информация для калькуляции, иформация в виде: 100 ТК; 85 РК; 90 ИК; т.е. в столбец с именем ТК заносится среднее арифметическое всех ячеек в которых есть "ТК". Очень прошу, подскажите что нитак.
Я начинающий web-программист) Не судите строго, плиз! Буду очень стараться!
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Среднее арифметическое | Seede1 | Помощь студентам | 4 | 10.10.2010 10:29 |
Среднее арифметическое. | Deutch | Помощь студентам | 3 | 16.12.2009 21:18 |
Среднее арифметическое | Golovastik | Общие вопросы C/C++ | 16 | 18.07.2009 16:47 |
среднее арифметическое | Mashul'ka | Помощь студентам | 1 | 14.05.2009 19:33 |