Witam,
zmodyfikowałem sobie pewne zestawienie do swoich potrzeb i wysypałem się przy kolumnie STAN.
W jaki sposób mogę dodać tą kolumnę aby odpowiadała wybranemu w filtrze magazynowi?
Pytanie nr 2. Czy stan minimalny jest rozbity na poszczególne magazyny czy odnosi siętylko do Magazynu Głównego ?
SELECT Nazwa = CASE WHEN tw_Nazwa = '' THEN '(Brak nazwy towaru)'
ELSE CASE WHEN tw_Nazwa IS NULL THEN '(Usługa jednorazowa)'
ELSE tw_Nazwa
END
END,
tw_Symbol [Symbol],
grt_Nazwa [Grupa],
MAX (st.st_Stan) [Stan],
MAX(st.st_StanMin) [Stan Min],
SUM(ob_IloscMag * ob_Znak) [Ilość],
SUM(ob_WartNetto * ob_Znak) [Netto],
SUM(ob_WartBrutto * ob_Znak) [Brutto],
'cena kartotekowa' = c.tc_CenaNetto0,
SUM(c.tc_CenaNetto0 * ob_IloscMag) [suma n.kart],
'cena ost. dostawy' = isnull(o.ost_cena,0),
SUM(o.ost_cena*ob_IloscMag) [suma ost. dost]
FROM vwZstSprzWgKhnt zst
LEFT JOIN dbo.tw__Towar t ON zst.ob_TowId = t.tw_Id
LEFT JOIN dbo.tw_Cena c on (t.tw_Id = c.tc_IdTowar)
LEFT JOIN sl_GrupaTw g ON t.tw_IdGrupa =g. grt_Id
LEFT JOIN tw_stan st ON zst.ob_TowId = st.st_towid
left join
(
select
mr_TowId,
mr_data,
mw_data,
ost_cena
from
(
select
mr_TowId,
mr_data,
mr_id,
mw_data,
ost_cena = isnull(b.mw_Cena,0),
rn = row_number() over (partition by mr_TowId order by mr_data desc, mr_id desc, mw_data desc)
from dbo.dok_magruch a
join dbo.dok_magwart b
on (a.mr_SeriaId = b.mw_SeriaId)
where (a.mr_Id = a.mr_seriaId)
) x
where (rn = 1)
) o on (t.tw_Id = o.mr_TowId)
WHERE dok_Status<>2
AND dok_DataWyst BETWEEN {DR:Data wystawienia:POPRZEDNI_MIESIAC}
AND ((dbo.fnMAKE_DOKPARAM(dok_Typ, dok_Podtyp) IN ({CHL:Dowolny#-1#Faktura VAT sprzedaży#131072#Faktura VAT detaliczna#131073#Faktura VAT zaliczkowa#131075#Faktura VAT zbiorcza#131074#Rachunek sprzedaży#262144#Korekta faktury VAT sprzedaży#393216#Korakta faktury VAT do nieistniejącego#393217#Paragon#1376256#Paragon imienny#1376258#Paragon fiskalny#1376257#Paragon odebrany z kasy#1376259#Zwrot ze sprzadaży detalicznej#917504#Zwrot do nieistniejącego#917505:Typ dokumentu:131072,1376256,1376257,1376258,1376259:Paragony}) ) OR (-1 IN ({CHL:Dowolny#-1#Faktura VAT sprzedaży#131072#Faktura VAT detaliczna#131073#Faktura VAT zaliczkowa#131075#Faktura VAT zbiorcza#131074#Rachunek sprzedaży#262144#Korekta faktury VAT sprzedaży#393216#Korakta faktury VAT do nieistniejącego#393217#Paragon#1376256#Paragon imienny#1376258#Paragon fiskalny#1376257#Paragon odebrany z kasy#1376259#Zwrot ze sprzadaży detalicznej#917504#Zwrot do nieistniejącego#917505:Typ dokumentu:131072,1376256,1376257,1376258,1376259:Paragony}) ))
AND dok_MagId IN ({CHL_DB:SELECT -1 AS mag_Id,'(dowolny)' As mag_Nazwa UNION SELECT mag_Id,mag_Nazwa FROM sl_Magazyn:magazyn:-1:(dowolny)})
AND ob_TowRodzaj & 15 > 0
AND ob_Ilosc<>0
GROUP BY ob_TowRodzaj, tw_Nazwa, tw_Symbol, grt_Nazwa, tw_JednMiary, tc_CenaNetto0, tc_CenaBrutto0,o.ost_cena