![]() |
|
|
![]()
|
|
| vino |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 51 Регистрация: 14.2.2008 Репутация: нет Всего: нет |
ЗДРАВСТВУЙТЕ!
Мне надо просуммировать по определенному столбцу(11) в DBGridEh и высветить в конце эту сумму в этом же столбце. Я написал
Завершается аварийно.Не могу понять в чем дело. |
|||
|
||||
| Данкинг |
|
|||
![]() Yersinia pestis ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 8302 Регистрация: 7.11.2006 Где: მოსკოვი Репутация: 11 Всего: 130 |
А запросом нельзя?
-------------------- There's nothing left but silent epitaphs. |
|||
|
||||
| vino |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 51 Регистрация: 14.2.2008 Репутация: нет Всего: нет |
У меня и так по ADOQuery в DBGridEh все отображается запросом (строк 3000).Но я хочу в конце этого грида в последней строке (она кремового цвета) отобразить в начале строки в нулевом столбце слово "Итого: " и в последнем столбце (11-й по счету ) сумму жирнім цветом.
|
|||
|
||||
| korian |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 651 Регистрация: 8.3.2008 Где: Украина, Харьков Репутация: 3 Всего: 17 |
имху тока так
есть таблица (я плохо знаю SQL, поэтому псевдкод) MyTable { int id; int IsSum; string name; int data; } insert into MyTable (id, IsSum, name) values (0, 1, ""); перед показом update MyTable set data = (select SUM(data) from MyTable where IsSum != 1) where IsSum == 1; вывод select name, data from MyTable order by IsSum, name |
|||
|
||||
| vino |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 51 Регистрация: 14.2.2008 Репутация: нет Всего: нет |
На то он и DBGridEh,чтобы пользоваться возможностью с помощью свойств DBGridEh (Footer)
суммировать в итоговой строке значения определенных полей. |
|||
|
||||
| korian |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 651 Регистрация: 8.3.2008 Где: Украина, Харьков Репутация: 3 Всего: 17 |
так имху, если остальные настройки сделаны верно покрайней мере
DBGridEh1->FooterRowCount=1; надо делать раньше чем обращение к футеру Это сообщение отредактировал(а) korian - 26.3.2008, 15:41 |
||||
|
|||||
| vino |
|
||||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 51 Регистрация: 14.2.2008 Репутация: нет Всего: нет |
Я вместо строки
нарисала
Проходит без ошибок,но кроме "итого" ничего в подсвеченной строке не формирует. Не вываливается,как прежде. А строку
Я поставила раньше, ничего не тпоменялось. Я в событии ADOAfterOpen() формирую названия столбцов,их размерность и после этого перехожу к формированию итоговой строки.Потом откріваю запрос.И опять на это событие переходит . |
||||||
|
|||||||
| korian |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 651 Регистрация: 8.3.2008 Где: Украина, Харьков Репутация: 3 Всего: 17 |
необходимо указывать какое поле надо суммировать, если все делается на лету, то и это надо делать
|
|||
|
||||
| vino |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 51 Регистрация: 14.2.2008 Репутация: нет Всего: нет |
Как предложили,вілетает с ошибкой,что поле не найдено (по которомусуммирование).А оно есть.
Заменила в предпоследней строке на
Без ошибок,но не суммтрует.Пусто. ? |
|||
|
||||
| korian |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 651 Регистрация: 8.3.2008 Где: Украина, Харьков Репутация: 3 Всего: 17 |
если поле не найдено, значит так оно и есть...
может оно case sensitivity или еще что, экперементируйте с названием поля имху... впишите правильное название название там должно быть такое же как в таблице в базе поидее, или такое же как в select запросе. может надо писать вместе с таблицей... я хз кароче самый простой вариант настроить в ручную с помощью Object inspectora и посмотреть какое должно быть значение. Это сообщение отредактировал(а) korian - 26.3.2008, 18:20 |
|||
|
||||
| vino |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 51 Регистрация: 14.2.2008 Репутация: нет Всего: нет |
Любое поле не проходит.Все они есть.Без этой строки все проходит,отбражаются все данные из запроса.Дело не в этом.Но я не знаю в чем.
Именно на этой строке
Что такое fvtSum?Может что-то прописать в Свойствах (propertis) надо ? |
|||
|
||||
| korian |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 651 Регистрация: 8.3.2008 Где: Украина, Харьков Репутация: 3 Всего: 17 |
DBGridEh1->Columns->Items[11]->Footer->ValueType = fvtSum; - это означает, что данная ячейка содержит в себе сумму
DBGridEh1->Columns->Items[11]->Footer->FieldName = "имя поля"; //суммирует оно ячейки поля под названием <имя поля> короче я с DBGridEh1 не работал, и устанавливать его влом. скачал его и говорю то, что написано в справке по нему... добавить футер статически можно? т.е. в настройках DBGridEh1 параметр FooterRowCount поставить равным 1 потом перейти к футеру и указать в 11 ячейке ValueType=fvtSum и FieldName (имху там будет предоставлен выбор, какое имя туда можно записать, если DataSet тоже подключен статически) Добавлено через 12 минут и 55 секунд если ничего не получится, тогда установлю DBGridEh1 и расскажу по порядку... Это сообщение отредактировал(а) korian - 27.3.2008, 10:19 |
|||
|
||||
| vino |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 51 Регистрация: 14.2.2008 Репутация: нет Всего: нет |
Спасибо.Язык неважно знаю.
В настройках DBGridEh1 параметр FooterRowCount поставила равным 1.Больше ничего нет. В футере и указать в 11 ячейке ValueType=fvtSum и FieldName не нашла где.Ситуация не изменилась. |
|||
|
||||
| korian |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 651 Регистрация: 8.3.2008 Где: Украина, Харьков Репутация: 3 Всего: 17 |
рисунок прилагается.
устанавливаем в DBGridEh1, FooterRowCount=1 устанавливаем ValueType в lvtSum (это на рисунке обозначено цифрой "1") устанавливаем FieldName (на рисунке цифра "2"), там должно быть такое же значение как и в FieldName обозначенный цифрой "3", если вы хотите, чтобы суммирование происходило по этому столбцу. Присоединённый файл ( Кол-во скачиваний: 60 )
2.JPG 43,74 Kb |
|||
|
||||
| korian |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 651 Регистрация: 8.3.2008 Где: Украина, Харьков Репутация: 3 Всего: 17 |
во =) терь знаю как кодом записать...
Это сообщение отредактировал(а) korian - 27.3.2008, 13:59 |
|||
|
||||
![]()
|
| Правила форума "С++ Builder" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C++ Builder | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |