|
#31
|
|||
|
|||
С эти разобрался.
Но вопрос по добавлению возникает Суть вот в чём Товар который указан в возврате не обязательно бракованый и получается что запрос на обновления выглядит так Код:
UPDATE Sklad INNER JOIN Vozvr ON Sklad.LinkTovar=Vozvr.LinkT SET Sklad.kol = Sklad.kol+Vozvr.Kl Where Vozvr.Brak=sklad.brack and Vozvr.IDVozv=:v Но вот с добавлением проблема Код:
insert into Sklad (LinkTovar,kol,brack) select LinkT,kl,brak from Sklad inner join Vozvr on Sklad.LinkTovar=Vozvr.LinkT Where brack<>brak and Vozvr.IDVozv=:v есть товар №1 (4 шт. брак) и №1(2шт. не брак) При добавлении товара №1 (5шт, не брак) на склад он добавляет эту запись и у меня получется №1 (4шт, брак) №1(2шт,не брак) №1 (5шт, не брак) а надо №1 (4шт,брак) №1(7шт,не брак) |
#32
|
||||
|
||||
Конечно получается несколько записей, ведь вы сами добавляете запись, хотя подразумевается, что будет изменятся уже имеющаяся.
Просто убедитесь перед добавлением, что такого товара на складе нет. Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#33
|
||||
|
||||
Есть одно темное место в вашей БД. У вас отсутствует возможность получения среза информации за определенный период.
Ну скажем, надо оценить ситуацию за прошлый месяц, год и т.д. А для этого все операции по движению товара у вас должны быть зафиксированы в журнале операций. Такового у вас я ненаблюдаю. Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#34
|
|||
|
|||
никак не могу разобраться.
Условие я написал выше. Код:
insert into Sklad (linkTovar,kol,Brack) select LinkT, kl, Brak From sklad sk right join Vozvr v on sk.linkTovar=v.LinkT Where Brak=true and LinkTovar is null and Idvozv=:X и при этом если на складе уже есть товар со значением brak=true, тобы товар не добавлялся) спасибо! |