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

Не получается отобразить в DBGrid результат выполнения   Найти похожие ветки 

← →
Larisa   (2002-10-15 21:33) [0]

запроса с группировкой - поля отображаются, а совокупные характеристики - нет.

Заранее создаю DBGrid с нужным количеством полей, в приложении выполняется запрос вида:

"Select Name, sum(Weight) as Summa from Kont Group by Name",
a затем присваиваю значение св-ву FieldName:

DBGrid.Column[1].FieldName:="Summa";
Подскажите, пожалуйста, как справиться с проблемой.


← →
MsGuns ©   (2002-10-15 22:22) [1]

Что значит "Совокупные характеристики" ? Второе поле с суммой ?
Если так, то при динамическом привязывании TDBGrid.DataSource к НОВОМУ НД, надо или переформировывать коллекцию колонок (что более правильно) или вообще не трогать Columns.

Пример

Form1.Grid1.DataSource := nil; // Отвязать грид от текущего НД
Form1.Query1.SQL.Clear;
Form1.Query1.SQL.Add("SELECT Name, SUM(Weight) as Summa");
Form1.Query1.SQL.Add(" FROM Kont");
Form1.Query1.SQL.Add(" GROUP BY Name");
try
Form1.Query1.Prepare;
Form1.Open;
Except
ShowMessage("Не могу обратиться к таблице <Kont> !");
exit;
end;
with Form1.Query1.Fields do
begin
[0].DisplayLabel := "Наименование";
[1].DisplayLabel := "Сумма";
[1].DisplayFormat := "0.00##";
end;
Form1.Grid1.Columns.RebuildColumns; // Очистить коллекцию колонок
Form1.Grid1.DataSource := Form1.Query1;
Form1.Grid1.Columns.RebuildColumns; // Иниц-ть новую коллекцию
with Form1.Grid1.Columns do
begin
[0].Title.Alignment := taCenter;
[0].Width := 120;
[1].Title.Alignment := taCenter;
[1].Width := 48;
end;



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

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



Память: 0.45 MB
Время: 0.016 c
1-11315
Сатир
2002-10-22 21:05
2002.11.04
IDE Delphi


3-11057
Roma111
2002-10-14 12:25
2002.11.04
Ошибка БД - Indexes


1-11158
VaS
2002-10-23 21:06
2002.11.04
string в record


1-11220
Le!
2002-10-25 09:03
2002.11.04
Размер окна!


1-11256
I_S_
2002-10-23 06:59
2002.11.04
DBGridEh, раскраска строк.




   Наверх