powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Группировка с суммами Union, Update, dbgrid или stringgrid
5 сообщений из 5, страница 1 из 1
Группировка с суммами Union, Update, dbgrid или stringgrid
    #32771447
oldik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем, Привет!!!
Из таблицы сделать выборку с суммами, это сделал
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
Type  ID   Driver   Route   Summa   Paid(LOGICAL)
------------------------------------------------
0        1     ###    ###      ###      0
0        6     ###    ###      ###      0
0        5     ###    ###      ###      0
1        0     Итого                 ###
0        4     ###    ###      ###      0
0        2     ###    ###      ###      0
0        3     ###    ###      ###      0
1        0     Итого                 ###
Пока эти данные вывожу в DbGrid так
select 0 as type, ID, driver, route, summa, paid
from tbltrucks
where paid = "False"
union
select 1 as type, " ", driver, " ", sum(summa), " "
from Reestr, tbltrucks
where paid = "False"
Group by driver
Order by 3,1
Как сделать, чтобы изменяя поле Paid запись оставалась на месте (выведена на экран), а поле Summa записи Итого уменьшалась или увеличивалась на число в поле Summa текущей записи ???
Запрос Update
update tbltrucks
set
paid = :paid
where
ID = :OLD_ID
Но в любом случае даже при изменении записи Итого вручную, ругается Update т.к. насколько я понимаю у неё или нет ID или ноль, как к ней добраться
Может нужно изменить Update?
...
Рейтинг: 0 / 0
Группировка с суммами Union, Update, dbgrid или stringgrid
    #32771554
oldik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Люди, никто не поможет?
Я уверен, что есть такая проблемма.
Боюсь я не так все делаю и не туда забрел.
...
Рейтинг: 0 / 0
Группировка с суммами Union, Update, dbgrid или stringgrid
    #32771975
Matt Juntunen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Под FireBird делал такие вещи через хранимые процедуры, которые "варили" хитрый набор данных + стандартные обработчики отрисовки в DbGrid по значениям служебных полей (например 10 - заголовок, 20 - тело, 30 - итого).
----------------------------------
Access Denied. FireBird recomended.
...
Рейтинг: 0 / 0
Группировка с суммами Union, Update, dbgrid или stringgrid
    #32771995
Фотография StalkerS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
необходимо снова переоткрыть запрос.
Изменив в dbgrid'e поле paid, оно измениться и в базе, однако сумма конечно останется старой - dbgrid не может
отследить такие изменения. Переоткрывай запрос, и все будет ок.

А поле Итого и вообще править вручную нельзя, т.к. такой строки в таблице нет. Что-бы не вылетала ошибка - сделай
этот столбец readonly.
А еще лучше вообще не давать пользователям редактировать dbgrid напрямую - ничего хорошего из этого не получиться.
Я обычно в таких случаях делаю еще одну форму, которая появляется на экране при двойном щелчке на строке, в которой
что-то надо изменить. Эта форма содержит данные этой строки, юзеры что-то там меняют - выполняется запрос update
к базе, после чего переоткрывается запрос для dbgrid.
...
Рейтинг: 0 / 0
Группировка с суммами Union, Update, dbgrid или stringgrid
    #32772088
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Это действительно не туда.

oldik.
На каком сервере Вы работаете?
Этот топик нужно перенести. Куда?
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Группировка с суммами Union, Update, dbgrid или stringgrid
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]