![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
locup+calculated поле .. как сделать? [D5, MySQL]
M@X © (2002-06-21 10:55:00)Доброго время суток уважаемые мастера.
Помогите с небольшой проблемкой:
Есть 2 таблицы
Pruduct - каталог товаров (с идентификатором ID)
Register - движения товаров (ID товара, количество)
Каким образом в таблице (или в григе) добавить вычисляемое Lockup поле, которое будет суммировать количество ID товара из таблицы Register?
ЗЫ: В Product создал поле ost
FieldKind = fKLockup
LockupDataSet = Register
LockupKeyFields = ID
LockupResultField = Kol
*Показывает последнюю строку из Register
Lusha (2002-06-21 13:48:00) [1]>M@X © (21.06.02 13:31)
Вы бы для приличия хоть перечитывали то, что пишете...
Смысл проводимых действий - в григе товаров (Prodict) показывать остаток товара(Register>SUM(KOL)ofPriductId).
И сразу после этого...
Это есть движения товара, они отражаются и используются в григе проводок. Если я сделаю where или sum(), то в григе проводок будут только остатки, чего мне не надо.
Вот это просто СУПЕР...
Я именно хотел ввести Lockup Count поле, чтобы суммировать KOL из Register,
и далее...
а не делать просто Lockup полес выбором из отдельной таблицы с запросом sum() (как сейчас у меня сделано)
P.S. Не знаю как остальные, а я ни фига не понял... :(
M@X (2002-06-21 13:31:00) [2]Подробнее описываю:
Смысл проводимых действий - в григе товаров (Prodict) показывать остаток товара (Register>SUM(KOL)ofPriductId).
Мешает то, что в Register строки:
ID KOL
1 1
2 1
1 -1
1 -2
5 10
Это есть движения товара, они отражаются и используются в григе проводок. Если я сделаю where или sum(), то в григе проводок будут только остатки, чего мне не надо.
Я именно хотел ввести Lockup Count поле, чтобы суммировать KOL из Register, а не делать просто Lockup поле с выбором из отдельной таблицы с запросом sum() (как сейчас у меня сделано)
Lusha (2002-06-21 12:36:00) [3]>M@X © (21.06.02 12:17)
А кто мешает добавить к запросам условие WHERE и выбирать только остатки... Я что то проблемы не улавливаю... =(
fnatali (2002-06-21 12:30:00) [4]Опиши поподробнее смысл производимых действий. Из твоих объяснений я поняла, что ты для определённого товара выбираешь остаток. Чудно как-то. Или я не так поняла?
M@X (2002-06-21 12:17:00) [5]Естественно можно,
но нельзя!
Само собой разумеется, что можно поступить таким образом, как указаны в запросах.
В первом случае (fnatali ©): Выбираются только те позиции, у которых есть движения вRegister
Во втором случае (Lusha ©): Выбираются только суммированые значенияKol
Оба варианта не подходят.
В Register у меня не только остатки, но и движения, которые используются.
Самый простой выход - еще одна таблица с остатками, но хотелось бы поиметь уже имеющуюсяRegister
Lusha (2002-06-21 11:05:00) [6]Используйте Query в качестве набора данных Register с запросом вида...
SELECT ID, SUM(KOL) as KOL
FROM REGISTER
GROUP BY ID
fnatali (2002-06-21 11:04:00) [7]Не очень понятно,зачем нужно выбирать количество в LookUp поле.
Просуммировать количество можно запросом:
select p.id,sum(r.kol) from product p, register r where p.id=r.id group by p.id