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

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

Итоговые строки в таблице. [D6, IB6.x]


Страницы:   1 2

_zerg ©   (2003-06-21 11:15:00) 

Здравствуйте!

Подскажите пожалуйста, как можно организовать следующее:
имеется таблица
Наименование1 ... ... Сумма1
Наименование2 ... ... Сумма2
Наименование3 ... ... Сумма3
...

так вот, некоторые из сумм должны складываться из других, т.е., напр., Сумма2 = Сумма3 + Сумма1
т.е. как бы вычисляемая строка, а не поле

Может кто-то видел статьи на эту тему?

Спасибо!


интересующийся   (2003-06-24 13:13:00) [1]

_zerg
>а пересчёт? в тригере или как?

запрос с группировкой


_zerg   (2003-06-24 12:48:00) [2]

интересующийся
>по твоей задаче, вроде надо еще две таблицы создать
>в первой - "группы сумм"
>во второй - связь между суммами и "группами сумм"

а пересчёт? в тригере или как?


_zerg   (2003-06-24 12:46:00) [3]

да мне особо-то и не ДБ грид нужен, мне нужно чтобы эти строки в таблице хранились и пересчитывались при изменениях тех, от которых они зависят.


интересующийся   (2003-06-24 11:47:00) [4]

это лучше, чем вычисляемые поля
всегда можно будет изменить принадлежность суммы
той или иной "группе сумм"
(надо же придумать такое - группа сумм)


интересующийся   (2003-06-24 11:43:00) [5]

_zerg
> Подскажите пожалуйста, как можно организовать следующее:
>имеется таблица
>Наименование1 ... ... Сумма1
>Наименование2 ... ... Сумма2
>Наименование3 ... ... Сумма3

по твоей задаче, вроде надо еще две таблицы создать
в первой - "группы сумм"
во второй - связь между суммами и "группами сумм"


Anatoly Podgoretsky   (2003-06-24 10:50:00) [6]

XanderMan © (21.06.03 11:51)
Так не получается, а получается, что всегда расчетное.

В одних случаях Сумма1 = Сумма1, в других Сумма2 = Сумма3 + Сумма1


Danilka   (2003-06-24 10:49:00) [7]

_zerg (24.06.03 10:45)
для этого, думаю, тебе нужен не ДБГрид, а обычный грид, есть, гриды которые понимают формулы в ячейках, поищи на торри.нет.


_zerg   (2003-06-24 10:45:00) [8]

ну примерно бланк, тут специфический дневник ден. средств.
но суть прим. таже.
стр. кот. суммируются, редактировать не нужно, они должны автоматически пересчитываться!

на счёт плохой структуры, возможно, но я ж просил подсказать, если кто имеет какие-то мысли.


интересующийся   (2003-06-24 09:40:00) [9]

есть компонент grida от devexpress
там можно промежуточные итоги показывать и др.
называется expressquantumgrid
ищи...


Danilka   (2003-06-24 09:39:00) [10]

хех, видимо, хочется бланк бух.баланса в ДБГрид загнать..

или нет? обьясни задачу по-человечески, а не загадками


ЮЮ   (2003-06-24 09:06:00) [11]

Объединить результаты нескольких запросов, возвращающих итоги разной глубины детализации. Првда это возможно при нормальной структуре данных. А судя по

"cложение должно идти так, что задаются идентификаторы складываемых строк в др. таблице (1233+342-222=3243+111-9999), правдо я ещё не определился как их хранить, вот поэтому и спрашиваю как можно решить такую задачу!"

вряд ли у тебя выйдет :-(



ЮЮ   (2003-06-24 08:51:00) [12]

И где они так ходят? Во всех Report-ах это обычно заложено. Или ты хочешь всё это в DBGride, да ещё с возможностью редактировать?


_zerg   (2003-06-24 08:46:00) [13]

идут строки с суммами и в конце идёт итог. строка
далее идут снова строки и снова итог. стр.
затем итог по всем итогам. стр.


Sandman25   (2003-06-23 10:32:00) [14]

Если сумма уже записана в таблицу, то зачем ее еще раз рассчитывать?


Соловьев   (2003-06-23 10:22:00) [15]


> 1233+342-222=3243+111-9999

а где тут сумма?


Zacho   (2003-06-23 10:19:00) [16]

Самое простое - перейти на FB 1.5 в котором есть EXECUTE STATEMENT, иначе придется это делать на клиенте.


Rol   (2003-06-23 07:50:00) [17]

Таблица правил сложения:
RULE_ID - это понятно
RULE_VALUE - а здесь - правило, например: ID1+ID2+...+IDn, где IDi - ID из таблицы с суммами.
Плюс хранимая процедура. Решение, безусловно, далеко не оптимальное, но это первое, что пришло в голову.


_zerg   (2003-06-23 07:39:00) [18]

я не слинял, просто в инет выхода нет!
сложение должно идти так, что задаются идентификаторы складываемых строк в др. таблице (1233+342-222=3243+111-9999), правдо я ещё не определился как их хранить, вот поэтому и спрашиваю как можно решить такую задачу!


MsGuns   (2003-06-21 13:32:00) [19]

Коварный зерг задал вопрос и слинял ;)))
Следующий _protoss ?


Семен Сорокин   (2003-06-21 11:53:00) [20]

2_zerg
Может стоит пересмотреть структуру базы данных.


Страницы:   1 2

Наверх

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