05 kwietnia 2022

[SQL] Wyliczanie marży na podstawie dokumentów

 Wylicznaie marży z dokumentów:




SELECT 

      TrN_GIDTyp                                       AS Seria

  ,tre_twrkod

    , SUM(TrE_Ilosc)                                     AS Ilosc

    , SUM(TrE_KsiegowaNetto)                             AS Wart_Netto

    , SUM(TrE_KsiegowaNetto) - SUM(TrE_KosztRzeczywisty) AS Zysk_netto

    , SUM(TrE_KosztRzeczywisty)                          AS Koszt_netto 

, ((SUM(TrE_KsiegowaNetto) - SUM(TrE_KosztRzeczywisty) )/SUM(TrE_KsiegowaNetto) )*100 as Marza

FROM CDN.TraNag 

    LEFT JOIN CDN.TraElem ON TrE_GIDTyp = TrN_GIDTyp AND TrE_GIDNumer = TrN_GIDNumer 

Where 

    ( 

        (TrN_GIDTyp IN (2003)) OR 

        TrN_GIDTyp IN (2034, 2042) OR 

        ( TrN_GIDTyp IN (2033, 2041) AND TrN_SPITyp IN (2033, 2041)) OR

        ( TrN_GIDTyp IN (2037, 2045) AND TrN_SPITyp IN (2037, 2045)) OR 

        ( TrN_GIDTyp IN (2001, 2009, 2005, 2013) AND TrN_SPITyp <> 0 )

    )

   -- AND TrN_DataMag BETWEEN DateDiff(DD, '18001228', '2014-05-01 00:00:00') AND DateDiff(DD, '18001228', '2014-05-06 23:59:59')



 --  and 1 in (TrN_MagZNumer,TrN_MagDNumer) 

 GROUP BY 

    TrN_GIDTyp,

tre_twrkod

HAVING SUM(TrE_KsiegowaNetto) <> 0 OR SUM(TrE_KosztRzeczywisty) <> 0