Topic: Помощь. Итог по Grid в Footer

Добрый день!
По SQL запросу формируется grid, возможно ли вывести сумму по одному столбцу с отображением внизу таблицы?
(Во вложении по кнопке Отчет 2-ая вкладка)

Post's attachments

Attachment icon Сработки ТСО.rar 4.49 kb, 487 downloads since 2014-12-09 

Re: Помощь. Итог по Grid в Footer

Приветствую,


В случае формирования результата с помощью SQL, вывести сумму внизу компонента TableGrid придется скриптами, что более трудоемко.


Я дополнил ваш пример, где тоже самое сделал без SQL запроса, используя кнопку с действием "Поиск"
но пришлось добавить одно вычисляемое поле. Проект приложил к сообщению.

Post's attachments

Attachment icon Сработки ТСО2.zip 6.29 kb, 514 downloads since 2014-12-09 

Dmitry.

Re: Помощь. Итог по Grid в Footer

Большое спасибо!
Если есть где посмотреть, как подобное реализовано скриптом, с радостью ознакомлюсь.

Re: Помощь. Итог по Grid в Footer

так добавьте просто Edit отдельно от грида куда поместите результат суммы из sql запроса

Re: Помощь. Итог по Grid в Footer

только я не совсем понял какие поля в Вашем проекте должны суммироваться

Re: Помощь. Итог по Grid в Footer

теперь понял но отчетность лучше делать через редактор отчетов - там намного проще это делать.

Re: Помощь. Итог по Grid в Footer

Спасибо за рекомендации.
Хотелось все таки разобраться, как это сделать скриптом.

Re: Помощь. Итог по Grid в Footer

zibodan
Скачайте пожалуйста данный пример
http://myvisualdatabase.com/forum/misc. … download=1

Dmitry.

Re: Помощь. Итог по Grid в Footer

Да, спасибо. Я смотрел уже этот пример.

Вот что сделал в итоге:

procedure frRep_RepTab2_OnChange (Sender: string);
var
   i,c,q: integer;
begin
     q := 0;
     c := frRep.RepTab2.RowCount-1;
     for i := 0 to c do
     q := q + StrToInt(frRep.RepTab2.Cells[1,i]);
     frRep.RepTab2.Columns[1].Footer.Caption := IntToStr(q);
end;

begin
     frRep.RepTab2.Options := frRep.RepTab2.Options + goFooter;
end.

Считать считает, но Footer не отображается:

http://i68.fastpic.ru/big/2014/1210/95/372494ba5d5d9a464b9a561230bc1b95.png

не пойму почему?

Re: Помощь. Итог по Grid в Footer

Вставил ваш код в ваш проект, работает.
Возможно вы не правильно создали событие OnChange?
как создавать события, можно посмотреть здесь
http://myvisualdatabase.com/help_ru/scr … rview.html



также приложил ваш проект

Post's attachments

Attachment icon Сработки ТСО3.zip 7.35 kb, 509 downloads since 2014-12-10 

Dmitry.

11 (edited by zibodan 2014-12-10 11:44:19)

Re: Помощь. Итог по Grid в Footer

Скачал приложенный проект (№3) запустил, не отображает Footer и всё.
Вот "шальная" мысль посетила меня, не в версии ли дело. У меня 1.44

... да, так и есть на 1,47 все работает, и похоже только в этой версии.

Вывел результат в Label.

Спасибо.

Re: Помощь. Итог по Grid в Footer

Научите, пож-ста, как выводить результаты каких-либо расчетов или полей в Label.

Re: Помощь. Итог по Grid в Footer

zoomix wrote:

Научите, пож-ста, как выводить результаты каких-либо расчетов или полей в Label.

Сделал для вас пример:

Post's attachments

Attachment icon Calculate on the Form.zip 4.05 kb, 870 downloads since 2015-02-20 

Dmitry.

Re: Помощь. Итог по Grid в Footer

Спасибо, Дмитрий!

Re: Помощь. Итог по Grid в Footer

По ошибке сделал этот проект в бета версии 1.50, он не откроется в более поздней версии, пожалуйста скачайте данный пример снова, перезалил.

Dmitry.

Re: Помощь. Итог по Grid в Footer

я видимо где-то, чего-то недопонял. Когда zibodan написал "результат" вывел в Label", то я понял то так, что  Label - это компонет MVDB, который используется для вывода текста на формах и решил, что здорово, если их еще можно использовать в качестве вывода каких-то результатов расчетов. В последнем примере Дмитрия никакие Labels для вывода результатов не используются,. Что тогда имел ввиду zibodan, когда говорил про Labels, в которые он выводил результат расчетов? Может, просто перепутал названия?

Re: Помощь. Итог по Grid в Footer

zoomix
Вы про пример Calculated Footer.zip ?


Результат можно вывести и через Label,
Например вместо этого

Form1.GridAbonent.Columns[3].Footer.Caption := IntToStr(q); // result

написать

Form1.Label1.Caption := IntToStr(q); 
Dmitry.

Re: Помощь. Итог по Grid в Footer

Спасибо, попробую