Konta Księgowe

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

Moderator: mikey

alek12
Posty: 91
Rejestracja: 23 paź 2012, 20:09
Rola: Użytkownik CDN XL
Wersja: 8.0

Konta Księgowe

Post autor: alek12 »

Witam mam mały problem, ponieważ nie wiem w jaki sposób są wiązane konta księgowe z nagłówkiem dokumentu . Krótko mówiąc chcę od konta księgowego dostać się do nagłówka dokumentu. Z góry dziękuje za pomoc . Rozumiem że KONTA -> DEKRETY -> DZIENNIKELEM - > ??


Chyba już udało mi się odszukać :

KONTA -> DEKRETY -> DZIENNIKELEM - > Predekrety ->TRANAG

Było blisko tylko predekrety pochodzące np z RW pola PDT:DELNumer , PDT:DELLP mają ustawione na 0


ROZWIĄZANIE :

Kod: Zaznacz cały

select * from cdn.TraNag
join CDN.Predekrety on TrN_GIDTyp=PDT_GIDTyp and TrN_GIDNumer=PDT_GIDNumer
join CDN.Zrodla on PDT_GIDTyp=ZRO_TRNTyp and PDT_GIDNumer=ZRO_TRNNumer
join CDN.Dekrety on ZRO_DTNumer=DT_GIDNumer and ZRO_DTLp=DT_GIDLp and ZRO_DTLp=PDT_GIDLp
join CDN.DziennikElem on DT_GIDNumer=DEL_GIDNumer AND DT_GIDLp=DEL_GIDLp

Awatar użytkownika
STAY_PJE
Posty: 646
Rejestracja: 24 wrz 2009, 12:08
Rola: Konsultant CDN XL
Lokalizacja: Warszawa i od Helu do Wawelu
Kontakt:

Re: Konta Księgowe

Post autor: STAY_PJE »

Konto księgowe nie jest powiązane z dokumentem. Dopiero dekret, który jest na tym koncie może być powiązany z dokumentem. Powiązanie jest następujące:
CDN.Konta -> CDN.Dekrety -> CDN.Zrodla -> (dokument źródłowy).
Dokumentem źródłowym mogą być być m.in: TraNag, MemNag, Zapisy-Raporty, PikNag, KompNag, BilansOtwarciaNag, SadNag, ImpNag, UpoNag, SrtHistNag.

alek12
Posty: 91
Rejestracja: 23 paź 2012, 20:09
Rola: Użytkownik CDN XL
Wersja: 8.0

Re: Konta Księgowe

Post autor: alek12 »

Męczę już od kilku dni zapytanie które pokaże mi wszystkie konta księgowe na stopniu 4 które mają saldo nie zerowe :

Kod: Zaznacz cały

SELECT     CDN.Dziennik.DZK_GIDTyp, CDN.Konta.KKS_Konto, CAST(CDN.TraNag.TrN_TrNNumer AS VARCHAR) 
                      + '/' + CDN.TraNag.TrN_TrNSeria + '/' + CAST(CDN.TraNag.TrN_TrNRok AS VARCHAR) AS RW, CDN.TSToDate(CDN.Dziennik.DZK_TS, 1) AS Expr2, 
                      CDN.Dziennik.DZK_Opis, CDN.Dziennik.DZK_GIDNumer, CDN.Dziennik.DZK_Dziennik, CDN.Dekrety.DT_Kwota, CDN.Dziennik.DZK_Prosty
FROM         CDN.Konta INNER JOIN
                      CDN.Dekrety ON CDN.Konta.KKS_GIDNumer = CDN.Dekrety.DT_KKSNumer INNER JOIN
                      CDN.Dziennik ON CDN.Dziennik.DZK_GIDNumer = CDN.Dekrety.DT_GIDNumer LEFT OUTER JOIN
                      CDN.Zrodla ON CDN.Zrodla.ZRO_DTNumer = CDN.Dekrety.DT_GIDNumer AND CDN.Zrodla.ZRO_DTLp = CDN.Dekrety.DT_GIDLp LEFT OUTER JOIN
                      CDN.Predekrety ON CDN.Predekrety.PDT_GIDTyp = CDN.Zrodla.ZRO_TRNTyp AND CDN.Predekrety.PDT_GIDNumer = CDN.Zrodla.ZRO_TRNNumer LEFT OUTER JOIN
                      CDN.TraNag ON CDN.TraNag.TrN_GIDTyp = CDN.Predekrety.PDT_GIDTyp AND CDN.TraNag.TrN_GIDNumer = CDN.Predekrety.PDT_GIDNumer
WHERE     (CDN.Konta.KKS_Konto LIKE '501-11-el-0126-70%') AND (CDN.Konta.KKS_GIDNumer NOT IN
                          (SELECT     KKL_KKSNumer
                            FROM          CDN.KontaLinki
                            WHERE      (KKL_SynNumer = CDN.Konta.KKS_GIDNumer) AND (KKL_KKSNumer <> KKL_SynNumer))) AND (CDN.Konta.KKS_Poziom = 4) AND 
                      (CDN.TSToDate(CDN.Dziennik.DZK_TS, 1) >= '2012-01-01') AND (CDN.TSToDate(CDN.Dziennik.DZK_TS, 1) <= '2012-12-31')
GROUP BY CDN.Dziennik.DZK_GIDNumer, CDN.Dziennik.DZK_GIDTyp, CDN.Konta.KKS_Konto, CDN.TraNag.TrN_TrNNumer, CDN.TraNag.TrN_TrNRok, 
                      CDN.TraNag.TrN_TrNSeria, CDN.Dziennik.DZK_TS, CDN.Dziennik.DZK_Opis, CDN.Dziennik.DZK_Dziennik, CDN.Dziennik.DZK_SumaDT, CDN.Dziennik.DZK_SumaCT, 
                      CDN.Dekrety.DT_Kwota, CDN.Dziennik.DZK_Prosty

Zapytanie powyżej wypisuje mi wszystko fajnie tylko nie wiem jak dodać do tego aby patrzył czy dane konto ma saldo niezerowe.

Awatar użytkownika
STAY_PJE
Posty: 646
Rejestracja: 24 wrz 2009, 12:08
Rola: Konsultant CDN XL
Lokalizacja: Warszawa i od Helu do Wawelu
Kontakt:

Re: Konta Księgowe

Post autor: STAY_PJE »

alek12 pisze:Zapytanie powyżej wypisuje mi wszystko fajnie tylko nie wiem jak dodać do tego aby patrzył czy dane konto ma saldo niezerowe.
Sprawdzając podzapytaniem obroty na tym koncie we wskazanym okresie:

Kod: Zaznacz cały

(select PS=sum(case dt_dc when 1 then dt_kwota else -dt_kwota end) from cdn.dekrety where dt_rok=.... group by dt_konto having sum(case dt_dc when 1 then dt_kwota else -dt_kwota end)<>0)

alek12
Posty: 91
Rejestracja: 23 paź 2012, 20:09
Rola: Użytkownik CDN XL
Wersja: 8.0

Re: Konta Księgowe

Post autor: alek12 »

Super ! dzięki a powiedz mi w jaki sposób najprostszy dojść z konta księgowego do zlecenia

Awatar użytkownika
STAY_PJE
Posty: 646
Rejestracja: 24 wrz 2009, 12:08
Rola: Konsultant CDN XL
Lokalizacja: Warszawa i od Helu do Wawelu
Kontakt:

Re: Konta Księgowe

Post autor: STAY_PJE »

alek12 pisze:Super ! dzięki a powiedz mi w jaki sposób najprostszy dojść z konta księgowego do zlecenia
Dekret (cdn.dekrety) dotyczący jakiegoś konta księgowego (dt_konto) wskazuje za pośrednictwem tabeli (cdn.zrodla) na dokument źródłowy, w tym przypadku zlecenie produkcyjne lub zlecenie kompletacji. Dokumenty źródłowe mogą występować w różnych tabelach. Przykładowo zlecenie kompletacji to cdn.ZlcNag.

ODPOWIEDZ