Autor Wątek: Zestawienie ruch towary z kompletu  (Przeczytany 1258 razy)

0 użytkowników i 1 Gość przegląda ten wątek.

Offline Januszek

  • Nowy użytkownik
  • *
  • Wiadomości: 5
  • Reputacja +0/-0
  • Wersja programu: Full
Zestawienie ruch towary z kompletu
« dnia: Październik 23, 2021, 00:03:53 »
Witam
Poniżej wklejam zestawienie gdzie komplet składa się z pewnej grupy produktów. Nie wiem jak podłączyć do tego stan magazynowy przed wystawieniem faktury i po jak i przed zakupem i po.
Dajcie znać co można do tego dołożyć.
PS
poniższe zestawienie zostało zrobione na postawie "podsłuchiwania" zestawiań gotowych i tak metodą prób i błędów powstał ten twór ;)

SELECT
dok_DataWyst AS "Data Dokumentu",
CASE WHEN TW2.tw_Nazwa IS NULL THEN TW1.tw_symbol ELSE TW2.tw_Nazwa  END AS 'Towar akcyzowy',
CASE WHEN TW2.tw_KodTowaru IS NULL THEN TW1.tw_KodTowaru ELSE TW2.tw_KodTowaru  END AS 'CN',
CASE WHEN TW2.tw_Nazwa IS NULL THEN '' ELSE TW1.tw_symbol END AS "Towar nie akcyzowy",
SUM(ob_Ilosc) AS "Ilości Sprzedana",
CASE WHEN kpl_Liczba IS NULL THEN 1 ELSE kpl_Liczba END AS "Ilość w komplecie",
SUM(ob_Ilosc)*CASE WHEN kpl_Liczba IS NULL THEN 1 ELSE kpl_Liczba END AS "Ilość towaru Akcyzowego",
CASE WHEN dok_NrPelnyOryg ='' THEN dok_NrPelny ELSE dok_NrPelnyOryg  END AS 'Numer dokumentu',
kat_Nazwa AS "Rodzaj tranzakcji",
adrh_Nazwa =  adrh_Nazwa

FROM
dok__Dokument 
LEFT JOIN adr_Historia ON ((dok_OdbiorcaAdreshId = adrh_Id  AND dok_Typ IN (10,11,15,16,25,26,27,28,35,36)) OR  (dok_Typ NOT IN (10,11,15,16,25,26,27,28,35,36) AND  (dok_PlatnikAdreshId = adrh_Id  OR  (dok_PlatnikAdreshId is null AND dok_OdbiorcaAdreshId = adrh_Id))))
LEFT JOIN adr__Ewid ON adrh_IdAdresu = adr_Id 
LEFT JOIN vwp_sl_magazyn ON dok_OdbiorcaId = mag_Id 
LEFT JOIN sl_Kategoria ON dok_KatId = kat_Id
INNER JOIN dok_Pozycja ON dok_Pozycja.ob_DokHanId =dok__Dokument .dok_Id
INNER JOIN tw__Towar as TW1 On TW1.tw_Id =dok_Pozycja.ob_TowId
LEFT JOIN tw_Komplet ON tw_Komplet.kpl_IdKomplet  =TW1.tw_id
LEFT JOIN tw__Towar as TW2 ON TW2.tw_id =tw_Komplet .kpl_IdSkladnik

WHERE
dok_Status <> 2
AND (TW2.tw_IdGrupa = 10 OR TW2.tw_Nazwa IS NULL AND TW1.tw_IdGrupa = 10)
AND (( (dok_DataWyst>='20210824')
AND (dok_DataWyst<='20210824') )
AND (dbo.fnMAKE_DOKPARAM(dok_Typ, dok_Podtyp) IN (65536,65538,196608,65537,3735552,3735553,327680,327681,3866624,131072,131075, 131076, 131077,131074,4063232,3670016,3670017,262144,393216,393217,393218,4390912,4390913,3801088,131073,1376256,1376258,1376257,1376259,917504,917505,720896,720897,720898,2359296,655360,655361,655362,2293760,589824,851968,786432,1048576, 1048577,983040)))
AND  dok_Id = ANY
(SELECT DISTINCT
ob_DokHanId as ID
FROM
dok_Pozycja                      
INNER JOIN tw__Towar ON ob_TowId = tw_Id                       
INNER JOIN sl_GrupaTw ON tw_IdGrupa = grt_Id                      
WHERE
grt_Id IN (10)
                     
UNION ALL
SELECT DISTINCT
ob_DokMagId as ID
FROM
dok_Pozycja                      
INNER JOIN tw__Towar ON ob_TowId = tw_Id                       
INNER JOIN sl_GrupaTw ON tw_IdGrupa = grt_Id                      
WHERE grt_Id IN (10) )

GROUP BY
dok_DataWyst,
TW2.tw_Nazwa,
dok_NrPelny,
dok_NrPelnyOryg,
TW2.tw_KodTowaru,
TW1.tw_KodTowaru,
TW2.tw_IdGrupa,
kpl_Liczba,
TW1.tw_symbol,
kat_Nazwa,
Adr_Historia.adrh_Nazwa

Forum Użytkownikow Subiekt GT

Zestawienie ruch towary z kompletu
« dnia: Październik 23, 2021, 00:03:53 »