Kolumna "Wartość netto" na liście zamówień sprzedaży ZS
Moderator: mikey
Kolumna "Wartość netto" na liście zamówień sprzedaży ZS
Witam, potrzebuję dodać kolumnę "Wartość netto" na liście zamówień sprzedaży ZS aby w tej kolumnie wyła wartość netto danego zamówienia w PLN.
-
- Posty: 381
- Rejestracja: 19 lip 2012, 13:05
- Rola: Administrator CDN XL
- Wersja: 8.0
- Lokalizacja: Poznań, Września, Konin
- Kontakt:
Re: Kolumna "Wartość netto" na liście zamówień sprzedaży ZS
Hej,
W nagłówku zamówienia nie ma wartości total dokumentu, musisz zsumować wartości z pozycji.
Jeśli masz dużą i słabo wydajną bazę, to dodając taką kolumnę możesz skutecznie zabijać odświeżanie listy zamówień
W nagłówku zamówienia nie ma wartości total dokumentu, musisz zsumować wartości z pozycji.
Jeśli masz dużą i słabo wydajną bazę, to dodając taką kolumnę możesz skutecznie zabijać odświeżanie listy zamówień
- viesiek1
- Posty: 416
- Rejestracja: 03 maja 2011, 18:40
- Rola: Administrator CDN XL
- Wersja: 2023
- Lokalizacja: Bielsko-Biała
- Kontakt:
Re: Kolumna "Wartość netto" na liście zamówień sprzedaży ZS
Spróbuj tak:
Kod: Zaznacz cały
SELECT
CAST(CASE WHEN SUM(ISNULL(ZaN_KursM, 0)) != 0 THEN SUM(ZaE_WartoscPoRabacie * ZaN_KursL / ZaN_KursM) ELSE 0 END AS DECIMAL(18, 2))
AS '#XLFORMAT#50R@n18.2@|*~Wartość netto PLN~#/XLFORMAT#',
-1 AS '#XLFORMAT##/XLFORMAT#',
-1 AS '#XLFORMAT##/XLFORMAT#',
-1 AS '#XLFORMAT##/XLFORMAT#',
-1 AS '#XLFORMAT##/XLFORMAT#'
-- CAST(CASE WHEN SUM(ISNULL(ZaN_KursM, 0)) != 0 THEN SUM(ZaE_WartoscPoRabacie * ZaN_KursL / ZaN_KursM) ELSE 0 END AS DECIMAL(18, 2)) AS 'Wartość netto PLN'
-- CASE WHEN SUM(ISNULL(ZaN_KursM, 0)) != 0 THEN REPLACE(REPLACE(CONVERT(VARCHAR, CAST(ISNULL(SUM(ZaE_WartoscPoRabacie * ZaN_KursL / ZaN_KursM), 0) AS MONEY), 1), ',', ' '), '.', ',') ELSE '' END AS 'Wartość netto PLN'
FROM CDN.ZamNag
LEFT JOIN CDN.ZamElem ON ZaN_GIDNumer = ZaE_GIDNumer AND ZaN_GIDTyp = ZaE_GIDTyp
WHERE {filtrSQL} AND ISNULL(ZaN_KursM, 0) != 0
Wiesław Świergała
tel: +48 33 829 54 50
e-mail: wieslaw.swiergala@hydro.com.pl
http://www.hydro.com.pl
tel: +48 33 829 54 50
e-mail: wieslaw.swiergala@hydro.com.pl
http://www.hydro.com.pl
Re: Kolumna "Wartość netto" na liście zamówień sprzedaży ZS
Moim zdaniem tak jest źle Wieśku, bo zamówienia są naliczane od netto, bądź brutto i w zależności od tej flagi w Zae_WartoscPoRabacie masz wartość netto bądź brutto, co trzeba uwzględnić. Analogicznie można zrobić podzapytanie do ZamVat i z tego miejsca w zależności od flagi wyciągać ZaV_Netto, bądź ZaV_Brutto - ZaV_Vat.
Pozdrawiam,
Mateusz
Pozdrawiam,
Mateusz
Re: Kolumna "Wartość netto" na liście zamówień sprzedaży ZS
Dzięki, to mi wystarczy.viesiek1 pisze: ↑13 maja 2020, 11:22Spróbuj tak:
Kod: Zaznacz cały
SELECT CAST(CASE WHEN SUM(ISNULL(ZaN_KursM, 0)) != 0 THEN SUM(ZaE_WartoscPoRabacie * ZaN_KursL / ZaN_KursM) ELSE 0 END AS DECIMAL(18, 2)) AS '#XLFORMAT#50R@n18.2@|*~Wartość netto PLN~#/XLFORMAT#', -1 AS '#XLFORMAT##/XLFORMAT#', -1 AS '#XLFORMAT##/XLFORMAT#', -1 AS '#XLFORMAT##/XLFORMAT#', -1 AS '#XLFORMAT##/XLFORMAT#' -- CAST(CASE WHEN SUM(ISNULL(ZaN_KursM, 0)) != 0 THEN SUM(ZaE_WartoscPoRabacie * ZaN_KursL / ZaN_KursM) ELSE 0 END AS DECIMAL(18, 2)) AS 'Wartość netto PLN' -- CASE WHEN SUM(ISNULL(ZaN_KursM, 0)) != 0 THEN REPLACE(REPLACE(CONVERT(VARCHAR, CAST(ISNULL(SUM(ZaE_WartoscPoRabacie * ZaN_KursL / ZaN_KursM), 0) AS MONEY), 1), ',', ' '), '.', ',') ELSE '' END AS 'Wartość netto PLN' FROM CDN.ZamNag LEFT JOIN CDN.ZamElem ON ZaN_GIDNumer = ZaE_GIDNumer AND ZaN_GIDTyp = ZaE_GIDTyp WHERE {filtrSQL} AND ISNULL(ZaN_KursM, 0) != 0
Pozdrawiam.
- viesiek1
- Posty: 416
- Rejestracja: 03 maja 2011, 18:40
- Rola: Administrator CDN XL
- Wersja: 2023
- Lokalizacja: Bielsko-Biała
- Kontakt:
Re: Kolumna "Wartość netto" na liście zamówień sprzedaży ZS
Masz rację Mateusz. Z tymże my nie mam żadnego wpisu w CDN.ZamNag gdzie ZaN_FlagaNB <> 'N'. Także dla nas to jest prawidłowe zapytanie. Ale jeśli ktoś ma, to oczywiście musi zmienić.elmiq pisze: ↑13 maja 2020, 11:41Moim zdaniem tak jest źle Wieśku, bo zamówienia są naliczane od netto, bądź brutto i w zależności od tej flagi w Zae_WartoscPoRabacie masz wartość netto bądź brutto, co trzeba uwzględnić. Analogicznie można zrobić podzapytanie do ZamVat i z tego miejsca w zależności od flagi wyciągać ZaV_Netto, bądź ZaV_Brutto - ZaV_Vat.
Pozdrawiam,
Mateusz
Tak z ciekawości. Kiedy wystawiamy OS lub ZS od brutto? Jak z niego będzie paragon? U nas wystawiamy od netto, bo nie wiadomo, czy będzie PAR czy FS.
Są inne przypadki?
Wiesław Świergała
tel: +48 33 829 54 50
e-mail: wieslaw.swiergala@hydro.com.pl
http://www.hydro.com.pl
tel: +48 33 829 54 50
e-mail: wieslaw.swiergala@hydro.com.pl
http://www.hydro.com.pl
- viesiek1
- Posty: 416
- Rejestracja: 03 maja 2011, 18:40
- Rola: Administrator CDN XL
- Wersja: 2023
- Lokalizacja: Bielsko-Biała
- Kontakt:
Re: Kolumna "Wartość netto" na liście zamówień sprzedaży ZS
Czyli, wg tego co pisał Mateusz, prawidłowo powinno być tak:
Kod: Zaznacz cały
SELECT
CASE
WHEN ZaN_FlagaNB = 'N' THEN CAST(CASE WHEN SUM(ISNULL(ZaV_KursM, 0)) != 0 THEN SUM(ZaV_Netto * ZaV_KursL / ZaV_KursM) ELSE 0 END AS DECIMAL(18, 2))
ELSE CAST(CASE WHEN SUM(ISNULL(ZaV_KursM, 0)) != 0 THEN SUM(ISNULL(ZaV_Brutto, 0) - ISNULL(ZaV_Vat, 0) * ZaV_KursL / ZaV_KursM) ELSE 0 END AS DECIMAL(18, 2))
END
AS '#XLFORMAT#50R@n18.2@|*~Wartość netto PLN~#/XLFORMAT#',
-1 AS '#XLFORMAT##/XLFORMAT#',
-1 AS '#XLFORMAT##/XLFORMAT#',
-1 AS '#XLFORMAT##/XLFORMAT#',
-1 AS '#XLFORMAT##/XLFORMAT#'
FROM CDN.ZamNag
LEFT JOIN CDN.ZamVat ON ZaN_GIDNumer = ZaV_GIDNumer AND ZaN_GIDTyp = ZaV_GIDTyp
WHERE
{filtrSQL
AND ISNULL(ZaV_KursM, 0) != 0
GROUP BY ZaN_FlagaNB
Wiesław Świergała
tel: +48 33 829 54 50
e-mail: wieslaw.swiergala@hydro.com.pl
http://www.hydro.com.pl
tel: +48 33 829 54 50
e-mail: wieslaw.swiergala@hydro.com.pl
http://www.hydro.com.pl
-
- Posty: 934
- Rejestracja: 12 sty 2009, 12:03
- Rola: Administrator CDN XL
- Wersja: 2016
- Lokalizacja: Kraków
Re: Kolumna "Wartość netto" na liście zamówień sprzedaży ZS
Tak dla potomnych :
Netto czy brutto ja wyciągam z elementów:
Kod: Zaznacz cały
select ZaE_FlagaNB from CDN.ZamElem