Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Помогите разобраться с суммированием по столбцу [D6, MSSQL]


Muhin-av ©   (2002-06-28 12:09:00) 

Ув. Мастера!!!. Помогите разобраться с суммированием по столбцу. Опишу общую ситуацию:
Есть эл. DBLookupComboBox1(выбор "материала"), он по событию DBLookupComboBox1CloseUp
передаёт в запрос на котором сидит DBGrid "код материала".
ADOQuery1.Close;
ADOQuery1.Parameters.ParamByName("MaterialID").Value:=DBLookupComboBox1.KeyValue;
ADOQuery1.Open;
Запрос у меня собирает информацию с других таблиц, и показывает
движение материала. Т.о. я в списке выбираю интересующий материал и запросом отображаю всё
что с ним тварится.
Проблема такая: После того, как я выбрал материал и в DBGrid увидел все по этому материалу, мне нужно
показать суммарное значение по столбцу(например "кол-во"). Я догадываюся что нужно писать отдельный
запрос для этого, а нет ли стандартной функции, которая бы суммировала значения по указанному столбцу.
Суммирование циклом не совсем устраивает. Буду рад узнать Ваше мнение.


Мухин Алексей   (2002-06-28 15:37:00) [1]

Нашёл компоненту DBSumList, как раз решает мою проблему. Спасибо всем за участие.


Delirium   (2002-06-28 12:26:00) [2]

Хм, не вижу причины искать нестандартные компоненты:
на SQL-е

set nocount on
select ... into #TempTable from ...
select * from #TempTable -- результаты запроса
select Sum(MyKol) as SumMyKol from #TempTable -- сумма
drop table #TempTable -- чтобы не мешала при последующих вызовах

в программе:

ADOQuery1.Open;
// i:integer - просто переменная
// ADOTable1 - компонент для суммы
ADOTable1.RecordSet:=ADOQuery1.NextRecordSet(i);


fnatali   (2002-06-28 12:14:00) [3]

DBGridEh тебе поможет


Наверх

Титульная страница Поиск, карта сайта Написать письмо