select
CDN.KntGrupaPelnaNazwa(K1.KGD_GIDNumer) as Kontrahent_GrupaPelnaNazwa
from cdn.tranag
LEFT OUTER JOIN (CDN.KntKarty KntKarty left outer join cdn.KntGrupyDom K0
ON (Knt_GidTyp=K0.KGD_GidTyp and Knt_GidNumer=K0.KGD_GidNumer) left outer join cdn.KntGrupyDom K1
ON (K0.KGD_GrOTyp=K1.Kgd_GidTyp And K0.KGD_GrONumer=K1.Kgd_GidNumer))
ON (TraNag.TrN_KntTyp = KntKarty.Knt_GIDTyp
AND TraNag.Trn_KntNumer = KntKarty.Knt_GIDNumer )
ale z wyciągnieciem grupy do jakiej należy płatnik mam już problem, jakieś pomysły?
select [1]=1
, cdn.numerdokumentutrn(trn_gidtyp,trn_spityp,trn_trntyp,trn_trnnumer,trn_trnrok,trn_trnseria) 'Numer'
, cdn.kntgrupapelnanazwa(kgg.kgd_gidnumer) 'Grupa klient'
, cdn.kntgrupapelnanazwa(kggp.kgd_gidnumer) 'Grupa płatnik'
, k.knt_akronim 'Klient'
, p.knt_akronim 'Płatnik'
from cdn.kntkarty k
left join cdn.kntkarty p on k.knt_knpnumer=p.knt_gidnumer
left join cdn.kntgrupydom kg on k.knt_gidtyp=kg.kgd_gidtyp and k.knt_gidnumer=kg.kgd_gidnumer
join cdn.kntgrupydom kgg on kg.kgd_grotyp=kgg.kgd_gidtyp and kg.kgd_gronumer=kgg.kgd_gidnumer
left join cdn.kntgrupydom kgp on p.knt_gidtyp=kgp.kgd_gidtyp and p.knt_gidnumer=kgp.kgd_gidnumer
join cdn.kntgrupydom kggp on kgp.kgd_grotyp=kggp.kgd_gidtyp and kgp.kgd_gronumer=kggp.kgd_gidnumer
join cdn.tranag on trn_knttyp=k.knt_gidtyp and trn_kntnumer=k.knt_gidnumer
join cdn.traelem on tre_gidtyp=trn_gidtyp and tre_gidnumer=trn_gidnumer
join cdn.twrkarty on twr_gidnumer=tre_twrnumer
where k.knt_gidnumer<>k.knt_knpnumer and trn_gidtyp=2034
select
CDN.KntGrupaPelnaNazwa(K1.KGD_GIDNumer) as Kontrahent_GrupaPelnaNazwa,
CDN.KntGrupaPelnaNazwa(P.KGD_GrONumer) as Kontrahent_Platnik_GrupaPelnaNazwa,
CDN.KntGrupaPelnaNazwa(D.KGD_GrONumer) as Kontrahent_Docelowy_GrupaPelnaNazwa
from cdn.tranag
LEFT OUTER JOIN (CDN.KntKarty KntKarty left outer join cdn.KntGrupyDom K0
ON (Knt_GidTyp=K0.KGD_GidTyp and Knt_GidNumer=K0.KGD_GidNumer) left outer join cdn.KntGrupyDom K1
ON (K0.KGD_GrOTyp=K1.Kgd_GidTyp And K0.KGD_GrONumer=K1.Kgd_GidNumer))
ON (TraNag.TrN_KntTyp = KntKarty.Knt_GIDTyp
AND TraNag.Trn_KntNumer = KntKarty.Knt_GIDNumer )
LEFT OUTER JOIN CDN.KntGrupyDom P ON KntKarty.Knt_KnpNumer=P.KGD_GidNumer and kntkarty.knt_gidtyp=P.kgd_gidtyp
LEFT OUTER JOIN CDN.KntGrupyDom D ON tranag.Trn_KnDNumer=D.KGD_GidNumer and kntkarty.knt_gidtyp=d.kgd_gidtyp
to jest tylko wycinek raportu który robiłem, cały raport jest bardziej złożony. Dokładnie jest to zrobione jako widok na sql a sam raport podłączony do excela poprzez źródło odbc jako tabele ptrzestawne