grupa płatnika i grupa kontrahenta docelowego

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

Moderator: mikey

Awatar użytkownika
wojtek
Posty: 359
Rejestracja: 14 gru 2007, 12:23
Rola: Administrator CDN XL
Wersja: 9.8
Lokalizacja: pomorskie

grupa płatnika i grupa kontrahenta docelowego

Post autor: wojtek »

Witam

Jak w temacie, jak wyciągnąć grupę do jakiej należy płatnik oraz kontrahent docelowy
Z grupą kontrahenta głównego nie ma problemu

Kod: Zaznacz cały

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?

pozdrawiam
wojtek
Awatar użytkownika
wacek
Posty: 714
Rejestracja: 27 paź 2008, 18:04
Rola: Administrator CDN XL
Lokalizacja: Łódzkie

Re: grupa płatnika i grupa kontrahenta docelowego

Post autor: wacek »

Przykład:

Kod: Zaznacz cał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
Pozdrawiam,
Robert

select convert(varchar(100),0x637a6173616d69207069737aea2074752067b375706f7479203a29)
Awatar użytkownika
wojtek
Posty: 359
Rejestracja: 14 gru 2007, 12:23
Rola: Administrator CDN XL
Wersja: 9.8
Lokalizacja: pomorskie

Re: grupa płatnika i grupa kontrahenta docelowego

Post autor: wojtek »

dzięki za sugestię, prakowało mi w joinie złączenia po _gidtyp
w ostateczności zrobiłem tak

Kod: Zaznacz cały

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
pozdrawiam
novell1
Posty: 58
Rejestracja: 30 wrz 2008, 08:47
Rola: Inny
Wersja: 9.7

Re: grupa płatnika i grupa kontrahenta docelowego

Post autor: novell1 »

czy to podłączyć jako wykres cz gdzie ? Proszę o wytłumaczenie.
Awatar użytkownika
wojtek
Posty: 359
Rejestracja: 14 gru 2007, 12:23
Rola: Administrator CDN XL
Wersja: 9.8
Lokalizacja: pomorskie

Re: grupa płatnika i grupa kontrahenta docelowego

Post autor: wojtek »

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

pozdrawiam
ODPOWIEDZ