wartość magazynu na dzień ale po ilości magazynowej

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

Moderator: mikey

Smallsoso
Posty: 131
Rejestracja: 25 wrz 2008, 13:31
Rola: Inny
Wersja: 9.5

Re: wartość magazynu na dzień ale po ilości magazynowej

Post autor: Smallsoso »

Kod: Zaznacz cały

    @PAR ?@R(SELECT 0,'Wszystkie' UNION ALL SELECT Mag_GIDNumer, Mag_Kod FROM cdn.Magazyny)|Magazyn|&Magazyn:REG=  @? PAR@

    SELECT
    1 AS Lp,
    twr_kod as 'koddd',
    twr_nazwa as 'nazwa towaru',
    sum(TwZ_IlSpr) AS 'ilosci w magazynie',
    Twr_Jm as 'JM',

    (convert(decimal(15,2),round((Tpm_IloscMin),2)))as 'ilosc minimalna w mag',
    (convert(decimal(15,2),round((Tpm_IloscMax),2))) as  'ilosc maksymalna w mag',
    sum(TwZ_RzeczywistaNetto) as 'Wartość magazynu netto',
    convert(decimal(15,2),round((c7.twc_wartosc),2)) as 'cena zakupu',
    (convert(decimal(15,1),round((Tpm_IloscMin),1)))* (convert(decimal(15,1),round((c7.twc_wartosc),1))) as 'wartosc minimalna mag',
    (convert(decimal(15,1),round((Tpm_IloscMax),1)))* (convert(decimal(15,1),round((c7.twc_wartosc),1))) as 'wartosc maksymalna mag'

    from cdn.twrkarty
    left join CDN.TwrZasoby on Twr_GIDNumer = TwZ_TwrNumer and twz_magNumer = ??magazyn
    left join CDN.TwrParMag on Twr_GIDNumer=Tpm_TwrNumer and tpm_MagNumer = ??magazyn
    left join cdn.twrceny c7 on twr_gidnumer = c7.twc_twrnumer and c7.twc_twrlp = 7

    WHERE
    twr_kod like '%' + ?@S100|Podaj producenta:'{}'
	and (twz_TwrNumer is not null or tpm_ID is not null)
    GROUP BY twr_kod, twr_nazwa, Twr_Jm, Tpm_IloscMin, Tpm_IloscMax, twc_wartosc
W swoim kodzie zwracałbyś wartość magazynu powieloną przez liczbę magazynów z normatywami dla danego towaru.
Pozdrawiam,
Marcin
---------------------------------------------------------------------------------
Tako rzecze dokumentacja tabel CDN XL 7.1
TwrZasoby TwZ_DataP INTEGER Data przyjęcia towaru na magazyn Potrzebne przy podróżach w czasie.

padding
Posty: 61
Rejestracja: 17 sie 2010, 13:58
Rola: Administrator CDN XL
Wersja: 2019

Re: wartość magazynu na dzień ale po ilości magazynowej

Post autor: padding »

Czyli zwracałoby mi pozycje zerowe tyle razy ile jest magazynów z danym towarem który ma stan zerowy.

Po Twojej modyfikacji zapytanie nie zwraca Tpm_IloscMin, Tpm_IloscMax.

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

Re: wartość magazynu na dzień ale po ilości magazynowej

Post autor: elmiq »

Kod: Zaznacz cały

TwZ_MagNumer = ??magazyn
Automatycznie wymuszasz istnienie wpisu w tabeli z zasobami. Jeżeli takiego nie ma (brak zasobów) to i nie ma wyniku. Musiałbyś kombinować z twz_magnumer is null albo zawężać wybór magazynu poprzez pole w innej linkowanej tabeli i w tabeli twrzasoby dopuszczać null-e.
Mateusz Świerkosz

http://elmiq.blogspot.com/

padding
Posty: 61
Rejestracja: 17 sie 2010, 13:58
Rola: Administrator CDN XL
Wersja: 2019

Re: wartość magazynu na dzień ale po ilości magazynowej

Post autor: padding »

Faktycznie, wziąłem inny większy magazyn, dopuściłem null-e. i wartości Tpm_IloscMin, Tpm_IloscMax się pojawiły.
Dzięki wielkie za naprowadzenie,
Smallsoso dzięki za modyfikację.

Pozdrawiam.

ODPOWIEDZ