raport/zapytanie wykorzystania limitu u danego kontrahenta

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

Moderator: mikey

scribe
Posty: 446
Rejestracja: 07 gru 2010, 13:47
Rola: Inny
Wersja: 9.6.1

raport/zapytanie wykorzystania limitu u danego kontrahenta

Post autor: scribe »

Chciałbym raportem uzyskać na szybko informacje jakie dokumenty wchodzą w skład wykorzystanego limitu u danego kontrahenta (FS, WZ, ZS).

Chętnie podczepiłbym to pod kartę kontrahenta - czy ktoś już próbował ugryźć temat - widziałem że na forum jest wątek o zapytani SQL niestety nie potrafię tego ruszyć

http://cdn.3lance.pl/viewtopic.php?f=13 ... imit#p6468
całkowicie zielony

scribe
Posty: 446
Rejestracja: 07 gru 2010, 13:47
Rola: Inny
Wersja: 9.6.1

Re: raport/zapytanie wykorzystania limitu u danego kontrahen

Post autor: scribe »

może ktoś jednak wie chociaż jakie table i czymy łączymy?
całkowicie zielony

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

Re: raport/zapytanie wykorzystania limitu u danego kontrahen

Post autor: wacek »

Gotowiec, podpiąć pod kartę kontrahenta.

Kod: Zaznacz cały

@PAR ?@X|P0|&Pokaż dokumenty Tak/Nie:0 @? PAR@
@PAR ?@EOL PAR@
@PAR ?@ABC('W kwotach uwzględniono:')@? PAR@
@PAR ?@X|P1|&Saldo płatności:1 @? @D( ) PAR@
@PAR ?@X|P2|&Dokumenty bez płatności (WZ,WZE,PZ):0 @? PAR@
@PAR ?@X|P3|&Niezrealizowane zamówienia (ZS,ZZ):0 @? PAR@
@PAR ?@EOL PAR@
@PAR ?@EOL PAR@
@PAR ?@EOL PAR@
@PAR ?@EOL PAR@
@PAR ?@EOL PAR@

DECLARE @KnT_GIDNumer INT
SET @KnT_GIDNumer=(SELECT Knt_GIDNumer FROM CDN.KntKarty WHERE {FiltrSQL})

IF ??P0=0
BEGIN
  SELECT [1]=1
  ,KnT_Akronim AS [Kontrahent]
  ,KnT_MaxLimitWart AS [Limit]
  ,CAST(CDN.SumaWartosciKredytuKontrahenta(DATEDIFF(S,CONVERT(DATETIME,'1990-01-01'),CONVERT(DATETIME,CURRENT_TIMESTAMP)),KnT_GIDNumer,??P2,??P3) AS DECIMAL (28,2)) AS [Limit wykorzystany]
  ,KnT_MaxLimitWart-CAST(CDN.SumaWartosciKredytuKontrahenta(DATEDIFF(S,CONVERT(DATETIME,'1990-01-01'),CONVERT(DATETIME,CURRENT_TIMESTAMP)),KnT_GIDNumer,??P2,??P3) AS DECIMAL (28,2)) AS [Pozostaje]
  FROM CDN.KntKarty
  WHERE KnT_GIDNumer=@KnT_GIDNumer
END

IF ??P0=1
BEGIN
  SELECT [1]=1,DANE.Dokument,DANE.Termin,CAST(DANE.Limit AS VARCHAR) AS [Limit],SUM(DANE.Wykorzystano) AS [Limit wykorzystany],CAST(DANE.Pozostaje AS VARCHAR) AS [Pozostaje]
  FROM
  (
  SELECT
  CDN.NumerDokumentuTRN(TrN_GIDTyp,TrN_SpiTyp,TrN_TrnTyp,TrN_TrnNumer,TrN_TrnRok,TrN_TrnSeria) AS [Dokument]
  ,ISNULL(CONVERT(VARCHAR,DATEADD(D,TrP_Termin,'18001228'),102),'') AS [Termin]
  ,Knt_MaxLimitWart AS [Limit]
  ,Knt_MaxLimitWart-CAST(CDN.SumaWartosciKredytuKontrahenta(DATEDIFF(S,CONVERT(DATETIME,'1990-01-01'),CONVERT(DATETIME,CURRENT_TIMESTAMP)),Knt_GIDNumer,??P2,??P3) AS DECIMAL (28,2)) AS [Pozostaje]
  ,CAST((CASE TrP_Typ WHEN 1 THEN -TrP_Pozostaje ELSE TrP_Pozostaje END *ISNULL((SELECT TOP 1 WaE_KursL/WaE_KursM FROM CDN.WalElem WHERE WaE_Symbol=TrP_Waluta AND WaE_Lp=TrP_NrKursu AND WaE_KursTS<=DATEDIFF(S,CONVERT(DATETIME,'1990-01-01'),CONVERT(DATETIME,CURRENT_TIMESTAMP)) ORDER BY -WaE_KursTS),1)) AS DECIMAL (28,2)) AS [Wykorzystano]
  FROM CDN.TraPlat
  JOIN CDN.TraNag ON TrN_GIDTyp=TrP_GIDTyp AND TrN_GIDNumer=TrP_GIDNumer
  JOIN CDN.KntKarty ON KnT_GIDTyp=TrN_KntTyp AND KnT_GIDNumer=TrN_KntNumer
  WHERE TrP_KntTyp=32 AND TrP_Rozliczona=0
  AND TrP_KntNumer=@KnT_GIDNumer
  UNION ALL
  SELECT
  CDN.NumerDokumentuTRN(TrN_GIDTyp,TrN_SpiTyp,TrN_TrnTyp,TrN_TrnNumer,TrN_TrnRok,TrN_TrnSeria) AS [Dokument]
  ,ISNULL(CONVERT(VARCHAR,DATEADD(D,TrP_Termin,'18001228'),102),'') AS [Termin]
  ,Knt_MaxLimitWart AS [Limit]
  ,Knt_MaxLimitWart-CAST(CDN.SumaWartosciKredytuKontrahenta(DATEDIFF(S,CONVERT(DATETIME,'1990-01-01'),CONVERT(DATETIME,CURRENT_TIMESTAMP)),Knt_GIDNumer,??P2,??P3) AS DECIMAL (28,2)) AS [Pozostaje]
  ,CAST((CASE TrP_Typ WHEN 1 THEN -TrP_Pozostaje ELSE TrP_Pozostaje END *ISNULL((SELECT TOP 1 WaE_KursL/WaE_KursM FROM CDN.WalElem WHERE WaE_Symbol=TrP_Waluta AND WaE_Lp=TrP_NrKursu AND WaE_KursTS<=DATEDIFF(S,CONVERT(DATETIME,'1990-01-01'),CONVERT(DATETIME,CURRENT_TIMESTAMP)) ORDER BY -WaE_KursTS),1)) AS DECIMAL (28,2)) AS [Wykorzystano]
  FROM CDN.TraPlat
  JOIN CDN.TraNag ON TrN_GIDTyp=TrP_GIDTyp AND TrN_GIDNumer=TrP_GIDNumer
  JOIN CDN.KntKarty ON KnT_GIDTyp=TrN_KntTyp AND KnT_GIDNumer=TrN_KntNumer
  WHERE KnT_KnpParam=0 AND KnT_GIDNumer<>KnT_KnpNumer AND KnT_GIDTyp=KnT_KnpTyp
  AND TrP_KntTyp=32 AND TrP_KntNumer=KnT_KnpNumer AND TrP_Rozliczona=0
  AND TrN_KntNumer=@KnT_GIDNumer
  UNION ALL
  SELECT
  CDN.NumerDokumentu(KAZ_GIDTyp,0,0,KRP_Numer,KaZ_Rok,KaZ_Seria,KaZ_KRPLp)+' ('+KaZ_NumerDokumentu+')' AS [Dokument]
  ,'' AS [Termin]
  ,Knt_MaxLimitWart AS [Limit]
  ,0 AS [Pozostaje]
  ,CAST(CASE KaZ_RP WHEN 1 THEN KaZ_Pozostaje*(KaZ_KursL/KaZ_KursM) ELSE -KaZ_Pozostaje*(KaZ_KursL/KaZ_KursM) END AS DECIMAL (28,2)) AS [Wykorzystano]
  FROM CDN.Zapisy
  JOIN CDN.Raporty ON KrP_GIDNumer=KaZ_KRPNumer AND KAZ_KRPTyp=800
  JOIN CDN.KntKarty ON KnT_GIDTyp=KaZ_KntTyp AND KnT_GIDNumer=KaZ_KntNumer
  WHERE KaZ_KntTyp=32 AND KaZ_Rozliczony=0
  AND KaZ_KntNumer=@KnT_GIDNumer
  UNION ALL
  SELECT
  CDN.NumerDokumentuTRN(TrN_GIDTyp,TrN_SpiTyp,TrN_TrnTyp,TrN_TrnNumer,TrN_TrnRok,TrN_TrnSeria) AS [Dokument]
  ,'' AS [Termin]
  ,Knt_MaxLimitWart AS [Limit]
  ,Knt_MaxLimitWart-CAST(CDN.SumaWartosciKredytuKontrahenta(DATEDIFF(S,CONVERT(DATETIME,'1990-01-01'),CONVERT(DATETIME,CURRENT_TIMESTAMP)),Knt_GIDNumer,??P2,??P3) AS DECIMAL (28,2)) AS [Pozostaje]
  ,ISNULL(CASE WHEN TrN_GIDTyp IN (2001,2005,2009,2013) THEN ROUND(TrN_NettoR+TrN_VatR,2) WHEN TrN_GIDTyp IN (1489,1497) THEN ROUND(-TrN_NettoP-TrN_VatP,2) ELSE 0 END,0) AS [Wykorzystano]
  FROM CDN.TraNag
  JOIN CDN.KntKarty ON KnT_GIDTyp=TrN_KntTyp AND KnT_GIDNumer=TrN_KntNumer
  WHERE TrN_KnpTyp=32 AND TrN_Platnosci=0 AND TrN_SpiNumer=0 AND TrN_GIDTyp IN (2001,2009,1489,1497,2005,2013)
  AND TrN_KnpNumer=@KnT_GIDNumer
  AND ??P2=1
  UNION ALL
  SELECT
  CDN.NumerDokumentu(CDN.DokMapTypDokumentu(ZaN_GIDTyp,ZaN_ZamTyp,ZaN_Rodzaj),0,ZaN_ZamTyp,ZaN_ZamNumer,ZaN_ZamRok,ZaN_ZamSeria,ZaN_ZamMiesiac) AS [Dokument]
  ,'' AS [Termin]
  ,Knt_MaxLimitWart AS [Limit]
  ,Knt_MaxLimitWart-CAST(CDN.SumaWartosciKredytuKontrahenta(DATEDIFF(S,CONVERT(DATETIME,'1990-01-01'),CONVERT(DATETIME,CURRENT_TIMESTAMP)),Knt_GIDNumer,??P2,??P3) AS DECIMAL (28,2)) AS [Pozostaje]
  ,ISNULL(CAST((SELECT CASE WHEN ReZ_GIDTyp=2576 THEN 1 ELSE -1 END)*(ReZ_Ilosc-ReZ_IloscMag-ReZ_Zrealizowano-ReZ_IloscImp-ReZ_IloscSAD-ReZ_IloscSSC)*ZaE_CenaUzgodniona*ISNULL((SELECT TOP 1 WaE_KursL/WaE_KursM FROM CDN.WalElem WHERE WaE_Symbol=ZaE_Waluta AND WaE_Lp=ZaE_NrKursu AND WaE_KursTS<=DATEDIFF(S,CONVERT(DATETIME,'1990-01-01'),CONVERT(DATETIME,CURRENT_TIMESTAMP)) ORDER BY -WaE_KursTS),1)*CASE WHEN ZaE_FlagaNB='N' THEN 1+(ZaE_StawkaPod/100.00) ELSE 1 END AS DECIMAL (28,2)),0) AS [Wykorzystano]
  FROM CDN.Rezerwacje
  JOIN CDN.ZamElem ON ZaE_GIDTyp=ReZ_ZrdTyp AND ZaE_GIDNumer=ReZ_ZrdNumer AND ZaE_GIDLp=ReZ_ZrdLp
  JOIN CDN.ZamNag ON ZaN_GIDTyp=ZaE_GIDTyp AND ZaN_GIDNumer=ZaE_GIDNumer
  JOIN CDN.KntKarty ON KnT_GIDTyp=ZaN_KntTyp AND KnT_GIDNumer=ZaN_KntNumer
  WHERE ReZ_KntTyp=32
  AND ReZ_KntNumer=@KnT_GIDNumer
  AND 1=(CASE WHEN KnT_KnpParam=0 THEN 1 ELSE (SELECT CASE WHEN ZaN_KnpNumer=@KnT_GIDNumer AND ZaN_KnpTyp=32 THEN 1 ELSE 0 END) END)
  AND ReZ_ZrdTyp=960 AND ReZ_ZrdNumer>0 AND ReZ_ZrdLp>0
  AND ISNULL(CAST((SELECT CASE WHEN ReZ_GIDTyp=2576 THEN 1 ELSE -1 END)*(ReZ_Ilosc-ReZ_IloscMag-ReZ_Zrealizowano-ReZ_IloscImp-ReZ_IloscSAD-ReZ_IloscSSC)*ZaE_CenaUzgodniona*ISNULL((SELECT TOP 1 WaE_KursL/WaE_KursM FROM CDN.WalElem WHERE WaE_Symbol=ZaE_Waluta AND WaE_Lp=ZaE_NrKursu AND WaE_KursTS<=DATEDIFF(S,CONVERT(DATETIME,'1990-01-01'),CONVERT(DATETIME,CURRENT_TIMESTAMP)) ORDER BY -WaE_KursTS),1)*CASE WHEN ZaE_FlagaNB='N' THEN 1+(ZaE_StawkaPod/100.00) ELSE 1 END AS DECIMAL (28,2)),0)<>0
  AND ??P3=1
  ) AS DANE
  GROUP BY DANE.Dokument,DANE.Termin,DANE.Limit,DANE.Pozostaje
  ORDER BY 3
END
Pozdrawiam,
Robert

select convert(varchar(100),0x637a6173616d69207069737aea2074752067b375706f7479203a29)

scribe
Posty: 446
Rejestracja: 07 gru 2010, 13:47
Rola: Inny
Wersja: 9.6.1

Re: raport/zapytanie wykorzystania limitu u danego kontrahen

Post autor: scribe »

podłączyłem pod wykres na karcie kontrahenta, jednak już przy testowaniu otrzymuje komunikat błędu:
limit.jpg
całkowicie zielony

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

Re: raport/zapytanie wykorzystania limitu u danego kontrahen

Post autor: wacek »

scribe pisze:podłączyłem pod wykres na karcie kontrahenta, jednak już przy testowaniu otrzymuje komunikat błędu:
Od wersji 10.5 do funkcji CDN.SumaWartosciKredytuKontrahenta dodano dodatkowy parametr: @p_UwzglSaldoKntGlownego, ja pisałem raport na wersji 9.8 i na niej działa.
Raport dla wersji od 10.5 w górę:

Kod: Zaznacz cały

@PAR ?@X|P0|&Pokaż dokumenty Tak/Nie:0 @? PAR@
@PAR ?@EOL PAR@
@PAR ?@ABC('W kwotach uwzględniono:')@? PAR@
@PAR ?@X|P1|&Saldo płatności:1 @? @D( ) PAR@
@PAR ?@X|P2|&Dokumenty bez płatności (WZ,WZE,PZ):0 @? PAR@
@PAR ?@X|P3|&Niezrealizowane zamówienia (ZS,ZZ):0 @? PAR@
@PAR ?@EOL PAR@
@PAR ?@EOL PAR@
@PAR ?@EOL PAR@
@PAR ?@EOL PAR@
@PAR ?@EOL PAR@

DECLARE @KnT_GIDNumer INT
SET @KnT_GIDNumer=(SELECT Knt_GIDNumer FROM CDN.KntKarty WHERE {FiltrSQL})

IF ??P0=0
BEGIN
  SELECT [1]=1
  ,KnT_Akronim AS [Kontrahent]
  ,KnT_MaxLimitWart AS [Limit]
  ,CAST(CDN.SumaWartosciKredytuKontrahenta(DATEDIFF(S,CONVERT(DATETIME,'1990-01-01'),CONVERT(DATETIME,CURRENT_TIMESTAMP)),KnT_GIDNumer,??P2,??P3,1) AS DECIMAL (28,2)) AS [Limit wykorzystany]
  ,KnT_MaxLimitWart-CAST(CDN.SumaWartosciKredytuKontrahenta(DATEDIFF(S,CONVERT(DATETIME,'1990-01-01'),CONVERT(DATETIME,CURRENT_TIMESTAMP)),KnT_GIDNumer,??P2,??P3,1) AS DECIMAL (28,2)) AS [Pozostaje]
  FROM CDN.KntKarty
  WHERE KnT_GIDNumer=@KnT_GIDNumer
END

IF ??P0=1
BEGIN
  SELECT [1]=1,DANE.Dokument,DANE.Termin,CAST(DANE.Limit AS VARCHAR) AS [Limit],SUM(DANE.Wykorzystano) AS [Limit wykorzystany],CAST(DANE.Pozostaje AS VARCHAR) AS [Pozostaje]
  FROM
  (
  SELECT
  CDN.NumerDokumentuTRN(TrN_GIDTyp,TrN_SpiTyp,TrN_TrnTyp,TrN_TrnNumer,TrN_TrnRok,TrN_TrnSeria) AS [Dokument]
  ,ISNULL(CONVERT(VARCHAR,DATEADD(D,TrP_Termin,'18001228'),102),'') AS [Termin]
  ,Knt_MaxLimitWart AS [Limit]
  ,Knt_MaxLimitWart-CAST(CDN.SumaWartosciKredytuKontrahenta(DATEDIFF(S,CONVERT(DATETIME,'1990-01-01'),CONVERT(DATETIME,CURRENT_TIMESTAMP)),Knt_GIDNumer,??P2,??P3,1) AS DECIMAL (28,2)) AS [Pozostaje]
  ,CAST((CASE TrP_Typ WHEN 1 THEN -TrP_Pozostaje ELSE TrP_Pozostaje END *ISNULL((SELECT TOP 1 WaE_KursL/WaE_KursM FROM CDN.WalElem WHERE WaE_Symbol=TrP_Waluta AND WaE_Lp=TrP_NrKursu AND WaE_KursTS<=DATEDIFF(S,CONVERT(DATETIME,'1990-01-01'),CONVERT(DATETIME,CURRENT_TIMESTAMP)) ORDER BY -WaE_KursTS),1)) AS DECIMAL (28,2)) AS [Wykorzystano]
  FROM CDN.TraPlat
  JOIN CDN.TraNag ON TrN_GIDTyp=TrP_GIDTyp AND TrN_GIDNumer=TrP_GIDNumer
  JOIN CDN.KntKarty ON KnT_GIDTyp=TrN_KntTyp AND KnT_GIDNumer=TrN_KntNumer
  WHERE TrP_KntTyp=32 AND TrP_Rozliczona=0
  AND TrP_KntNumer=@KnT_GIDNumer
  UNION ALL
  SELECT
  CDN.NumerDokumentuTRN(TrN_GIDTyp,TrN_SpiTyp,TrN_TrnTyp,TrN_TrnNumer,TrN_TrnRok,TrN_TrnSeria) AS [Dokument]
  ,ISNULL(CONVERT(VARCHAR,DATEADD(D,TrP_Termin,'18001228'),102),'') AS [Termin]
  ,Knt_MaxLimitWart AS [Limit]
  ,Knt_MaxLimitWart-CAST(CDN.SumaWartosciKredytuKontrahenta(DATEDIFF(S,CONVERT(DATETIME,'1990-01-01'),CONVERT(DATETIME,CURRENT_TIMESTAMP)),Knt_GIDNumer,??P2,??P3,1) AS DECIMAL (28,2)) AS [Pozostaje]
  ,CAST((CASE TrP_Typ WHEN 1 THEN -TrP_Pozostaje ELSE TrP_Pozostaje END *ISNULL((SELECT TOP 1 WaE_KursL/WaE_KursM FROM CDN.WalElem WHERE WaE_Symbol=TrP_Waluta AND WaE_Lp=TrP_NrKursu AND WaE_KursTS<=DATEDIFF(S,CONVERT(DATETIME,'1990-01-01'),CONVERT(DATETIME,CURRENT_TIMESTAMP)) ORDER BY -WaE_KursTS),1)) AS DECIMAL (28,2)) AS [Wykorzystano]
  FROM CDN.TraPlat
  JOIN CDN.TraNag ON TrN_GIDTyp=TrP_GIDTyp AND TrN_GIDNumer=TrP_GIDNumer
  JOIN CDN.KntKarty ON KnT_GIDTyp=TrN_KntTyp AND KnT_GIDNumer=TrN_KntNumer
  WHERE KnT_KnpParam=0 AND KnT_GIDNumer<>KnT_KnpNumer AND KnT_GIDTyp=KnT_KnpTyp
  AND TrP_KntTyp=32 AND TrP_KntNumer=KnT_KnpNumer AND TrP_Rozliczona=0
  AND TrN_KntNumer=@KnT_GIDNumer
  UNION ALL
  SELECT
  CDN.NumerDokumentu(KAZ_GIDTyp,0,0,KRP_Numer,KaZ_Rok,KaZ_Seria,KaZ_KRPLp)+' ('+KaZ_NumerDokumentu+')' AS [Dokument]
  ,'' AS [Termin]
  ,Knt_MaxLimitWart AS [Limit]
  ,Knt_MaxLimitWart-CAST(CDN.SumaWartosciKredytuKontrahenta(DATEDIFF(S,CONVERT(DATETIME,'1990-01-01'),CONVERT(DATETIME,CURRENT_TIMESTAMP)),Knt_GIDNumer,??P2,??P3,1) AS DECIMAL (28,2)) AS [Pozostaje]
  ,CAST(CASE KaZ_RP WHEN 1 THEN KaZ_Pozostaje*(KaZ_KursL/KaZ_KursM) ELSE -KaZ_Pozostaje*(KaZ_KursL/KaZ_KursM) END AS DECIMAL (28,2)) AS [Wykorzystano]
  FROM CDN.Zapisy
  JOIN CDN.Raporty ON KrP_GIDNumer=KaZ_KRPNumer AND KAZ_KRPTyp=800
  JOIN CDN.KntKarty ON KnT_GIDTyp=KaZ_KntTyp AND KnT_GIDNumer=KaZ_KntNumer
  WHERE KaZ_KntTyp=32 AND KaZ_Rozliczony=0
  AND KaZ_KntNumer=@KnT_GIDNumer
  UNION ALL
  SELECT
  CDN.NumerDokumentuTRN(TrN_GIDTyp,TrN_SpiTyp,TrN_TrnTyp,TrN_TrnNumer,TrN_TrnRok,TrN_TrnSeria) AS [Dokument]
  ,'' AS [Termin]
  ,Knt_MaxLimitWart AS [Limit]
  ,Knt_MaxLimitWart-CAST(CDN.SumaWartosciKredytuKontrahenta(DATEDIFF(S,CONVERT(DATETIME,'1990-01-01'),CONVERT(DATETIME,CURRENT_TIMESTAMP)),Knt_GIDNumer,??P2,??P3,1) AS DECIMAL (28,2)) AS [Pozostaje]
  ,ISNULL(CASE WHEN TrN_GIDTyp IN (2001,2005,2009,2013) THEN ROUND(TrN_NettoR+TrN_VatR,2) WHEN TrN_GIDTyp IN (1489,1497) THEN ROUND(-TrN_NettoP-TrN_VatP,2) ELSE 0 END,0) AS [Wykorzystano]
  FROM CDN.TraNag
  JOIN CDN.KntKarty ON KnT_GIDTyp=TrN_KntTyp AND KnT_GIDNumer=TrN_KntNumer
  WHERE TrN_KnpTyp=32 AND TrN_Platnosci=0 AND TrN_SpiNumer=0 AND TrN_GIDTyp IN (2001,2009,1489,1497,2005,2013)
  AND TrN_KnpNumer=@KnT_GIDNumer
  AND ??P2=1
  UNION ALL
  SELECT
  CDN.NumerDokumentu(CDN.DokMapTypDokumentu(ZaN_GIDTyp,ZaN_ZamTyp,ZaN_Rodzaj),0,ZaN_ZamTyp,ZaN_ZamNumer,ZaN_ZamRok,ZaN_ZamSeria,ZaN_ZamMiesiac) AS [Dokument]
  ,'' AS [Termin]
  ,Knt_MaxLimitWart AS [Limit]
  ,Knt_MaxLimitWart-CAST(CDN.SumaWartosciKredytuKontrahenta(DATEDIFF(S,CONVERT(DATETIME,'1990-01-01'),CONVERT(DATETIME,CURRENT_TIMESTAMP)),Knt_GIDNumer,??P2,??P3,1) AS DECIMAL (28,2)) AS [Pozostaje]
  ,ISNULL(CAST((SELECT CASE WHEN ReZ_GIDTyp=2576 THEN 1 ELSE -1 END)*(ReZ_Ilosc-ReZ_IloscMag-ReZ_Zrealizowano-ReZ_IloscImp-ReZ_IloscSAD-ReZ_IloscSSC)*ZaE_CenaUzgodniona*ISNULL((SELECT TOP 1 WaE_KursL/WaE_KursM FROM CDN.WalElem WHERE WaE_Symbol=ZaE_Waluta AND WaE_Lp=ZaE_NrKursu AND WaE_KursTS<=DATEDIFF(S,CONVERT(DATETIME,'1990-01-01'),CONVERT(DATETIME,CURRENT_TIMESTAMP)) ORDER BY -WaE_KursTS),1)*CASE WHEN ZaE_FlagaNB='N' THEN 1+(ZaE_StawkaPod/100.00) ELSE 1 END AS DECIMAL (28,2)),0) AS [Wykorzystano]
  FROM CDN.Rezerwacje
  JOIN CDN.ZamElem ON ZaE_GIDTyp=ReZ_ZrdTyp AND ZaE_GIDNumer=ReZ_ZrdNumer AND ZaE_GIDLp=ReZ_ZrdLp
  JOIN CDN.ZamNag ON ZaN_GIDTyp=ZaE_GIDTyp AND ZaN_GIDNumer=ZaE_GIDNumer
  JOIN CDN.KntKarty ON KnT_GIDTyp=ZaN_KntTyp AND KnT_GIDNumer=ZaN_KntNumer
  WHERE ReZ_KntTyp=32
  AND ReZ_KntNumer=@KnT_GIDNumer
  AND 1=(CASE WHEN KnT_KnpParam=0 THEN 1 ELSE (SELECT CASE WHEN ZaN_KnpNumer=@KnT_GIDNumer AND ZaN_KnpTyp=32 THEN 1 ELSE 0 END) END)
  AND ReZ_ZrdTyp=960 AND ReZ_ZrdNumer>0 AND ReZ_ZrdLp>0
  AND ISNULL(CAST((SELECT CASE WHEN ReZ_GIDTyp=2576 THEN 1 ELSE -1 END)*(ReZ_Ilosc-ReZ_IloscMag-ReZ_Zrealizowano-ReZ_IloscImp-ReZ_IloscSAD-ReZ_IloscSSC)*ZaE_CenaUzgodniona*ISNULL((SELECT TOP 1 WaE_KursL/WaE_KursM FROM CDN.WalElem WHERE WaE_Symbol=ZaE_Waluta AND WaE_Lp=ZaE_NrKursu AND WaE_KursTS<=DATEDIFF(S,CONVERT(DATETIME,'1990-01-01'),CONVERT(DATETIME,CURRENT_TIMESTAMP)) ORDER BY -WaE_KursTS),1)*CASE WHEN ZaE_FlagaNB='N' THEN 1+(ZaE_StawkaPod/100.00) ELSE 1 END AS DECIMAL (28,2)),0)<>0
  AND ??P3=1
  ) AS DANE
  GROUP BY DANE.Dokument,DANE.Termin,DANE.Limit,DANE.Pozostaje
  ORDER BY 3
END
Ostatnio zmieniony 02 wrz 2013, 08:14 przez wacek, łącznie zmieniany 1 raz.
Pozdrawiam,
Robert

select convert(varchar(100),0x637a6173616d69207069737aea2074752067b375706f7479203a29)

scribe
Posty: 446
Rejestracja: 07 gru 2010, 13:47
Rola: Inny
Wersja: 9.6.1

Re: raport/zapytanie wykorzystania limitu u danego kontrahen

Post autor: scribe »

działa! wielkie dzięki i szacunek z mojej strony! wiedza olbrzymia :)
całkowicie zielony

scribe
Posty: 446
Rejestracja: 07 gru 2010, 13:47
Rola: Inny
Wersja: 9.6.1

Re: raport/zapytanie wykorzystania limitu u danego kontrahen

Post autor: scribe »

czy można przerobić ten wykres tak aby wyświetlał dane z poziomu listy kontrahentów? np wybranej grupy kontrahentów?

przygotowałem wydruk wg zapytania sql ale chciałbym bardziej profesjonalnie - tak jak na wykresie (szczegóły, dokumenty, parametry itp itd) - na tą chwile Pani Krysia jest zadowolona - ja nie :D

Kod: Zaznacz cały

SELECT 
Knt_Akronim as Akronim
, Knt_Nazwa1 as Nazwa_firmy
, KLK_MaxLimitWart as Limit
, KLK_LimitPoTerminie as Limit_Po_terminie
,dateadd (second, KLK_CzasUtworzenia, CONVERT(DATETIME, '1990-1-1',120)) as Data_Limitu
, Knt_LimitTerminowy
, Knt_LimitOkres as Limit_dni_po_terminie
, Cast(CDN.SumaWartosciKredytuKontrahenta(DATEDIFF(s,CONVERT(DATETIME,'1990-01-01'),CONVERT(DATETIME,CURRENT_TIMESTAMP)),Knt_GIDNumer,0,0,0) as decimal(15,2)) AS Limit_wykorzystany
FROM CDN.KntKarty INNER JOIN CDN.KntLimityK on Cdn.KntKarty.Knt_GIDNumer = CDN.KntLimityK.KLK_KntNumer
WHERE Knt_Archiwalny=0 and KLK_MaxLimitWart >0
ORDER BY Knt_Akronim
Załączniki
limity.zip
(94.36 KiB) Pobrany 170 razy
całkowicie zielony

incognito321
Posty: 17
Rejestracja: 16 cze 2021, 09:21
Rola: Administrator CDN XL
Wersja: 2019

Re: raport/zapytanie wykorzystania limitu u danego kontrahenta

Post autor: incognito321 »

Witam,
posiadam wersję XL 2020.2.2 nie mam w bazie CDN.SumaWartosciKredytuKontrahenta czy zostało to czymś zastąpione czy jak to wygląda.
Ostatnio zmieniony 16 cze 2021, 10:03 przez incognito321, łącznie zmieniany 1 raz.

Lilpri
Posty: 127
Rejestracja: 13 maja 2019, 11:04
Rola: Administrator CDN XL

Re: raport/zapytanie wykorzystania limitu u danego kontrahenta

Post autor: Lilpri »

Cały czas jest w bazie (aktualnie mam wersję 2021.0.2), tylko wymaga więcej argumentów niż w przykładzie.

Coś jak poniżej działa.

Kod: Zaznacz cały

SELECT CDN.SumaWartosciKredytuTerminKontrahenta(983699540,0,3238,0,0,1,0,0)

incognito321
Posty: 17
Rejestracja: 16 cze 2021, 09:21
Rola: Administrator CDN XL
Wersja: 2019

Re: raport/zapytanie wykorzystania limitu u danego kontrahenta

Post autor: incognito321 »

Rzeczywiście ale jeżeli zastosuje więcej argumentów po zaimportowaniu raportu wyświetla mi się komunikat
Załączniki
error.png
error.png (12.48 KiB) Przejrzano 2564 razy

ODPOWIEDZ