SELECT
CONCAT(
CASE
WHEN TrN_GIDTyp = '1616' THEN 'RW'
ELSE 'inne'
END, '-',
TrN_TrNNumer,'/',right(TrN_TrNRok,2),'/',right(TrN_RokMiesiac,2),'/',TrN_TrNSeria) AS 'Numer dokumentu'
,Knt_Akronim as 'Akronim'
,TrE_TwrKod as 'Kod towaru'
FROM CDN.TraNag
LEFT JOIN CDN.TraElem on TrN_GIDNumer = TrE_GIDNumer
LEFT JOIN CDN.KntKarty on Knt_GIDNumer = TrN_KntNumer
WHERE TrN_GIDTyp = '1616'
Numer dokumentu wyciągam trochę inaczej.
Aby wyciągnąć cechy pobranych towarów trzeba zejść do subelementów - tam jest pole gdzie zapisana jest cecha pobranego zasobu.
Ponieważ subelementy mogą się powtarzać (np. towar z tą samą cechą z dwóch zamówień) - do Select dodałem Distinct
SELECT distinct
CDN.NumerDokumentuTRN(TrN_GIDTyp,TrN_SpiTyp,TrN_TrNTyp,TrN_TrNNumer,TrN_TrNRok,TrN_TrNSeria) AS 'Numer dokumentu'
,Knt_Akronim as 'Akronim'
,TrE_TwrKod as 'Kod towaru'
,TrS_Cecha as 'Cecha towaru'
FROM CDN.TraNag
LEFT JOIN CDN.TraElem on TrN_GIDNumer = TrE_GIDNumer
LEFT JOIN CDN.KntKarty on Knt_GIDNumer = TrN_KntNumer
LEFT JOIN CDN.TraSElem on Tre_GIDTyp = TrS_GIDTyp and TrE_GIDNumer = TrS_GIDNumer and TrE_GIDLp = TrS_GIDLp
WHERE TrN_GIDTyp = '1616'
@marceynowa - dzięki za odpowiedź.
U mnie niestety tak nie wygląda, ponieważ kolumna: TrS_Cecha jest u mnie pusta.
Cecha towaru jest nadawana/wpisywana podczas dostawy i musiałbym towar na RW powiązać z dostawą.
SELECT
CONCAT(
CASE
WHEN TrN_GIDTyp = '1616' THEN 'RW'
WHEN TrN_GIDTyp = '1600' THEN 'MM'
WHEN TrN_GIDTyp = '2009' THEN 'WZ'
WHEN TrN_GIDTyp = '2041' THEN 'FS'
ELSE 'inne'
END, '-',
TrN_TrNNumer,'/',right(TrN_TrNRok,2),'/',right(TrN_RokMiesiac,2),'/',TrN_TrNSeria) AS 'Numer_dokumentu'
,Knt_Akronim as 'Kontrahent'
,Dst_Cecha as 'Cecha towaru'
,TrE_TwrKod as 'Kod towaru'
FROM CDN.TraSElem
INNER JOIN CDN.TraElem ON CDN.TraSElem.TrS_GIDNumer = CDN.TraElem.TrE_GIDNumer AND CDN.TraSElem.TrS_GIDLp = CDN.TraElem.TrE_GIDLp
INNER JOIN CDN.TraNag ON CDN.TraElem.TrE_GIDNumer = CDN.TraNag.TrN_GIDNumer
INNER JOIN CDN.Dostawy ON CDN.TraSElem.TrS_DstTyp = CDN.Dostawy.Dst_GIDTyp AND CDN.TraSElem.TrS_DstNumer = CDN.Dostawy.Dst_GIDNumer
LEFT JOIN CDN.KntKarty on Knt_GIDNumer = TrN_KntNumer
WHERE TrN_GIDTyp IN ('1616', '1600', '2009', '2041')