Witam,
Potrzebuje zestawienia, które przepisze ostatnią cenę zakupu do ceny detalicznej sprzedaży. Niestety dziewczyny wpisały w nowej bazie danych do magazynu ponad 3 tys. towarów i zamiast użyć kalkulacji cen do zdefiniowania cen sprzedaży, to wpisały ceny sprzedaży jako cenę zakupu na dokumencie przyjęcia do magazynu.
Wiem że muszę zacząć od
update tw_Cena set tc_CenaNetto1=
ale co dalej...
może da się jakoś wykorzystać wcześniejsze zapytania, które zwracają ostatnią cenę zakupu?
Wyrzeźbiłem coś takiego:
update tw_Cena set tc_CenaNetto1=(select t2.ob_CenaNetto
from tw__Towar t0
join dbo.tw_Cena t1 on t1.tc_IdTowar = t0.tw_Id
join dbo.dok_Pozycja t2 on t2.ob_TowId = t0.tw_Id
join dbo.dok__Dokument t3 on t3.dok_Id = t2.ob_DokHanId and t3.dok_Typ = 1
join (select max(t2.ob_Id)[ob_id],t2.ob_towid [ob_towid] from dbo.dok_Pozycja t2 join dbo.dok__Dokument t3 on t3.dok_Id = t2.ob_DokHanId and t3.dok_Typ = 1 group by t2.ob_towid) t4 on t4.ob_id = t2.ob_Id
left join dbo.vwKlienci t5 on t5.kh_id = t0.tw_IdProducenta
)
ale to nie działa, bo drugi Select zwraca mi wiele rekordów, jak to zapętlić?