Zapisy na koncie - opis analityczny - szybki raport

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

Moderator: mikey

dave75
Posty: 4
Rejestracja: 22 maja 2018, 14:16
Rola: Użytkownik CDN XL
Wersja: 2016

Zapisy na koncie - opis analityczny - szybki raport

Post autor: dave75 »

Cześć
Napisałem raport pod "wykrzyknikiem" , który ma za zadanie pokazać mi w zapisach na koncie sumy kwot z dekretacji dla opisu analitycznego
W przypadku gdy dekretacja jest rozbita na np dwa konta typu 4 to raport pokazuje mi te dwie pozycje pomimo tego, że wchodzę w zapisy dla danego konta.
Co robię źle? Nakierujcie mnie bo już nie wiem o co chodzi

Kod: Zaznacz cały

SELECT cast(Frm2.FRS_Nazwa as varchar)+'-'+cast(Frm1.FRS_Nazwa as varchar)+'-'+cast(Frm.FRS_Nazwa as varchar),
sum(OWE_Wartosc)


 FROM   CDN.Dekrety Dekrety 
 INNER JOIN CDN.Zrodla Zrodla ON 
  Dekrety.DT_GIDNumer=Zrodla.ZRO_DTNumer AND 
  Dekrety.DT_GIDLp=Zrodla.ZRO_DTLp AND 
  Dekrety.DT_GIDTyp=Zrodla.ZRO_DTTyp
 INNER JOIN CDN.TraNag TraNag ON 
  Zrodla.ZRO_TRNNumer=TraNag.TrN_GIDNumer AND 
  Zrodla.ZRO_TRNTyp=TraNag.TrN_GIDTyp
INNER JOIN CDN.OpisWymNag OpisWymNag ON
TraNag.TrN_GIDNumer=OWN_GIDNumer AND 
  TraNag.TrN_GIDTyp=OWN_GIDTyp 
 INNER JOIN CDN.OpisWymElem OpisWymElem ON 
  TraNag.TrN_GIDNumer=OWE_GIDNumer AND 
  TraNag.TrN_GIDTyp=OWE_GIDTyp
INNER JOIN CDN.OpisWymSElem OpisWymSElem ON 
 OWE_GIDNumer=OWS_GIDNumer and OWE_GIDLp=OWS_GIDLp and OWS_TypWymiaru=1
 INNER JOIN CDN.FrmStruktura Frm ON
OWS_WMRID=Frm.FRS_GIDNumer
INNER JOIN CDN.FrmStruktura Frm1
on Frm1.FRS_GIDNumer=Frm.FRS_GRONumer
INNER JOIN CDN.FrmStruktura Frm2
on Frm2.FRS_GIDNumer=Frm1.FRS_GRONumer

WHERE
{filtrsql} 
group by   cast(Frm2.FRS_Nazwa as varchar)+'-'+cast(Frm1.FRS_Nazwa as varchar)+'-'+cast(Frm.FRS_Nazwa as varchar)
za wszelkie wskazówki z góry dziękuję

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: Zapisy na koncie - opis analityczny - szybki raport

Post autor: STAY_PJE »

Raport uruchamiasz w jakimś kontekście - nie napisałeś w jakim. Zapewne na zapisie księgowym. W tym kontekście do filtra przekazywany jest gidnumer calego dekretu, a nie tylko jednej pozycji. Samo zapytanie SQL wygląda ok.

dave75
Posty: 4
Rejestracja: 22 maja 2018, 14:16
Rola: Użytkownik CDN XL
Wersja: 2016

Re: Zapisy na koncie - opis analityczny - szybki raport

Post autor: dave75 »

Raport uruchamiam dokładnie z księgowości, plan kont, zapisy dla konta. A czy istnieje jakiś sposób aby z konstrukcji "where {filtrsql}" wyciągnąć poszczególne "składowe" filtra i przypisać sobie do zmiennych, które późnej mogę wykorzystać w zapytaniu?

taszek
Posty: 585
Rejestracja: 12 wrz 2012, 13:20
Rola: Administrator CDN XL
Wersja: 2016

Re: Zapisy na koncie - opis analityczny - szybki raport

Post autor: taszek »

Możesz np.:

Kod: Zaznacz cały

DECLARE @f varchar(max);

SET @f = '{filtrsql}'

SELECT @f [Filtr]
Pozdrawiam
Wojtek Cyrklewicz

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: Zapisy na koncie - opis analityczny - szybki raport

Post autor: STAY_PJE »

Tak jak napisał Wojtek, tylko dodatkowo żeby to obsłużyć musisz zbudować raport w oparciu o procedurę skladowaną. Zerknij na naszą stronę światXL, są tam bezpłatne przykłady takich raportów.

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: Zapisy na koncie - opis analityczny - szybki raport

Post autor: STAY_PJE »

Tak jak napisał Wojtek, tylko dodatkowo żeby to obsłużyć musisz zbudować raport w oparciu o procedurę skladowaną. Zerknij na naszą stronę światXL, są tam bezpłatne przykłady takich raportów.

dave75
Posty: 4
Rejestracja: 22 maja 2018, 14:16
Rola: Użytkownik CDN XL
Wersja: 2016

Re: Zapisy na koncie - opis analityczny - szybki raport

Post autor: dave75 »

dziękuję, już przeglądam i biorę się do dzieła :)

pozdrawiam
Dawid

ODPOWIEDZ