Kolumna "Wartość netto" na liście zamówień sprzedaży ZS

Zapytania SQL, widoki, Crystal, definicje filtrów, szybkich raportów, wydruków, API, Hydra, .NET

Moderator: mikey

VoYecK
Posty: 135
Rejestracja: 26 paź 2016, 14:11
Rola: Użytkownik CDN XL
Wersja: 2023
Kontakt:

Kolumna "Wartość netto" na liście zamówień sprzedaży ZS

Post autor: VoYecK »

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.

Swiety_M
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

Post autor: Swiety_M »

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ń ;)
Marek Michałowski
www.tecado.pl
ERP/WMS/SFA
POZNAŃ - WRZEŚNIA

Awatar użytkownika
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

Post autor: viesiek1 »

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

elmiq
Posty: 1025
Rejestracja: 23 sie 2010, 10:04
Rola: Administrator CDN XL
Lokalizacja: Warszawa

Re: Kolumna "Wartość netto" na liście zamówień sprzedaży ZS

Post autor: elmiq »

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
Mateusz Świerkosz

http://elmiq.blogspot.com/

VoYecK
Posty: 135
Rejestracja: 26 paź 2016, 14:11
Rola: Użytkownik CDN XL
Wersja: 2023
Kontakt:

Re: Kolumna "Wartość netto" na liście zamówień sprzedaży ZS

Post autor: VoYecK »

viesiek1 pisze:
13 maja 2020, 11:22
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
Dzięki, to mi wystarczy.
Pozdrawiam.

Awatar użytkownika
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

Post autor: viesiek1 »

elmiq pisze:
13 maja 2020, 11:41
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
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ć.

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

Awatar użytkownika
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

Post autor: viesiek1 »

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

Yuber
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

Post autor: Yuber »

Tak dla potomnych ;) :
viesiek1 pisze:
13 maja 2020, 12:20
[...]
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.[...]
Netto czy brutto ja wyciągam z elementów:

Kod: Zaznacz cały

select ZaE_FlagaNB from CDN.ZamElem

ODPOWIEDZ