Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.01.30;
Скачать: CL | DM;

Вниз

Общая сумма в DBGrid колонке   Найти похожие ветки 

 
dron-s ©   (2004-12-21 20:26) [0]

Мастера, помогите решить вопрос: как сосчитать общую сумму одной колонки в DBGrid"е?


 
sniknik ©   (2004-12-21 21:11) [1]

она тебе не нужна (ничего не отражает).
ну скажи зачем тебе сумма из 20 видимых строк из пары сотен всего имеющихся (к примеру).


 
dron-s ©   (2004-12-21 21:28) [2]

У меня такая ситуация, у меня идёт подсчёт за каждую позицию(вместе с процентами, налогами и т.д), а в конце мне надо состичать общую сумму всего товара. Как это сделать?


 
PEAKTOP ©   (2004-12-22 00:22) [3]

Не мучаться, а поставить DBGridEh Димы Большакова.

http://ehlib.com/rus/


 
dron-s ©   (2004-12-22 18:45) [4]


> Не мучаться, а поставить DBGridEh Димы Большакова.
>
> http://ehlib.com/rus/


И что измениться, что он начнёт сам считать?


 
Zacho ©   (2004-12-22 19:45) [5]

dron-s ©   (22.12.04 18:45) [4]

А посмотреть ? TDBGridEh действительно такое может "сам", без написания какого-либо кода. И ещё много чего может.

Ну если ты принципмально не хочешь сторонних компонент, то считай суммы запросом SELECT MAX(..) .. или в цикле по набору данных.


 
dron-s ©   (2004-12-22 21:22) [6]

Как он начинает считать, какие опции надо включить чтобы он начал считать?


 
Skyle ©   (2004-12-22 21:38) [7]

> dron-s ©   (22.12.04 21:22) [6]
Не ленись и возьми обычный TDBgrid для отображения.
Просто скажи своему DataSet"у например в OnCalcFields, чтобы он всё пересчитал....


 
Zacho ©   (2004-12-22 21:58) [8]

dron-s ©   (22.12.04 21:22) [6]

В комплекте EhLib есть примеры. Посмотри, там это есть. И в хелпе тоже есть.
Обрати внимание на всё, связанное с footer и SumList

> Просто скажи своему DataSet"у например в OnCalcFields,
> чтобы он всё пересчитал....

Что-то я не понял, как OnCalcFields поможет для расчёта суммы по всем записям DataSet"а :)
Имхо ему нужно именно что-то типа футера. Или просто эту сумму выводить в какой-нибудь лейбл или статусбар и т.п.


 
dron-s ©   (2004-12-22 22:15) [9]

Просто отображать общуюю сумму лейбл


 
dron-s ©   (2004-12-22 22:34) [10]


> Просто скажи своему DataSet"у например в OnCalcFields, чтобы
> он всё пересчитал....


Как ему это сказать!!


 
Kabaev Sergey ©   (2004-12-24 10:31) [11]

Можно использовать в качестве DataSet компонент TClientDataSet. У него есть агрегаты - есть возможность считать любые итоговые поля. А потом показывать значения в TLabel, как советовали.
Но это громоздкий вариант. Если нет запрета на использование сторонних компонент, то действительно проще взять TDBGridEh


 
msguns ©   (2004-12-24 12:22) [12]

И все-таки не могу объяснить упорное "а где мне взять такую сетку ?" ничем иным, как банальной ленью.
Вот имеем запрос на отображение некоего датасета, назовем это "основой запрос" (ОЗ). Требуется по некоторым колонкам получить сумму (или кол-во, т.е. некий агрегат).
ОЗ состоит из нескольких частей: SELECT, WHERE (JOIN) и ORDER BY

Построим второй запрос, который заменяет SELECT ОЗ на перечень агрегатов: SUM(<Field1>),COUNT(<Field2>),MAX(<Field2>),..
Выполнение этого запроса засовываем в процу, которую "дергаем", например, по событию AfterOpen основного запроса. В этой же проце присваиваем значения соответствующим объектам отображения агрегатов..
Ну ведь абсолютно ничего сложного ! Ну разве если основной запрос не статический..



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

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

Наверх




Память: 0.5 MB
Время: 0.047 c
1-1105970941
Nad89
2005-01-17 17:09
2005.01.30
Поченму не читает из фала типа TStrings


9-1098309720
OranZevjii
2004-10-21 02:02
2005.01.30
Ресурсы, формат JA2 map.dat


1-1105971175
hgd
2005-01-17 17:12
2005.01.30
Вшитие в exe файлы раных форматов


1-1105616282
Jupiter
2005-01-13 14:38
2005.01.30
Вопросы по Dll


1-1105818577
lipskiy
2005-01-15 22:49
2005.01.30
Почему TWebBrowser не реагирует на флаги?