Strona 1 z 1

SQL Kwerenda TraPlat

: 20 cze 2011, 17:59
autor: farbex
Witam.

Mam taką kwerendę:

Kod: Zaznacz cały

SELECT
CDN.TypyDok.TyD_Nazwa,
CDN.TraNag.TrN_GIDNumer,
CDN.TraNag.TrN_SpiNumer,
CDN.TraNag.TrN_GIDTyp,
CDN.TraNag.TrN_TrNNumer,
CDN.TraNag.TrN_TrNSeria,
CDN.TraNag.TrN_Data2,
CDN.TraNag.TrN_MagZNumer,
CDN.TraPlat.TrP_FormaNazwa,
CDN.TraPlat.TrP_Kwota,
CDN.Magazyny.MaG_Kod
FROM CDN.TraNag
JOIN CDN.TypyDok ON CDN.TraNag.Trn_GIDTyp=CDN.TypyDok.TyD_GIDTyp
JOIN CDN.Magazyny ON CDN.TraNag.TrN_MagZNumer=CDN.Magazyny.MaG_GIDNumer
LEFT JOIN CDn.TraPlat ON CDN.TraNag.TrN_GIDNumer=CDN.TraPlat.TrP_GIDNumer
WHERE  CDN.TraNag.TrN_MagZNumer=2
AND CDN.TraNag.TrN_Data2=76866
AND CDN.TraNag.TrN_GIDTyp IN (2034, 2042, 2001, 2009)
ORDER BY CDN.TypyDok.TyD_Nazwa DESC
Niestety niektóre dokumenty to spinacze i przy nich pojawiają się wartości null w kolumnie CDN.TraPlat.TrP_Kwota. Jak uniknąć takiej sytuacji (tzn. żeby dla spinaczy też wyświetlała się wartość z TraPlat)?
Z góry dziękuję za pomoc.

Pozdrawiam.

Re: SQL Kwerenda TraPlat

: 21 cze 2011, 14:14
autor: S0Cool
...
LEFT JOIN CDN.TraPlat ON TRN_GIDNumer=TRP_SpiNumer
...

Re: SQL Kwerenda TraPlat

: 21 cze 2011, 14:29
autor: farbex
S0Cool pisze:...
LEFT JOIN CDN.TraPlat ON TRN_GIDNumer=TRP_SpiNumer
...
Niestety po zmianie warunku łączenia na podany występuje jeszcze więcej wartości NULL niż poprzednio. :(

Re: SQL Kwerenda TraPlat

: 05 lip 2011, 09:02
autor: xilo
Dokumenty WZ (2001) i WZK (2009) pojawią się z wartością NULL, bo do nich nie ma płatności.
Jeżeli chcesz analizować wszystkie dokumenty wg traplat, to musisz wziąć pod uwagę (S)FS.

Ale nie lepiej odwołać się po prostu do wartości z TraElem? Co chcesz osiągnąć tym zapytaniem?

Re: SQL Kwerenda TraPlat

: 05 lip 2011, 12:18
autor: elmiq
Gdzie w

Kod: Zaznacz cały

IN (2034, 2042, 2001, 2009)
masz spinacz ?
Jest tutaj tylko PA,PAK,WZ,WZK i tak jak napisał xilo zapewne chodzi Ci o to, że nie masz płatności do samego dokumentu WZ, a jest ona dopiero podpięta do (S)FS który powstał na bazie WZ-tek. Przewertuj forum, zapytania powiązane ze spinaczami były dziesiątki razy, podpowiem tylko, że potrzebujesz podwójnie uwzględnić TraNag w zapytaniu, oraz wykorzystać pola TrN_GIDNumer, oraz TrN_SpiNumer (+ typ).

Re: SQL Kwerenda TraPlat

: 05 lip 2011, 21:59
autor: wacek
Oraz:
farbex pisze:JOIN CDN.Magazyny ON CDN.TraNag.TrN_MagZNumer=CDN.Magazyny.MaG_GIDNumer
w spinaczach chyba nie ma magazynu w tranagu.

Po za tym już dostałeś odpowiedź na podobny temat w tym wątku:
http://cdn.3lance.pl/viewtopic.php?f=13 ... 8705#p8705