SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF EXISTS (SELECT * FROM sysobjects WHERE name = 'my_ImpDM_Src' AND user_name(uid) = 'CDN') DROP PROCEDURE [CDN].my_ImpDM_Src GO CREATE PROCEDURE [CDN].my_ImpDM_Src ( @SP int, -- 1 - uwzględniać WZ, WZE i ich korekty @ZAK int, -- 1 - uwzględniać PZ, PZI i ich korekty @WEW int, -- 1 - uwzględniać RW, PW i ich korekty @RM int, -- TrN_RokMiesiac @Rok int, -- Rok @Miesiac int -- Miesiąc ) AS SET NOCOUNT ON; declare @TN table(Dokument varchar(255), RokMiesiac int, TrN_GIDTyp int, TrN_GIDNumer int, TrN_Zaksiegowano int, DataDok int) insert into @TN select CDN.NazwaObiektu(TrN_GIDTyp, TrN_GIDNumer, 0, 2) as Dokument, TrN_RokMiesiac as RokMiesiac, TrN_GIDTyp, TrN_GIDNumer, TrN_Zaksiegowano, TrN_Data3 from (select TrN_GIDTyp, TrN_GIDNumer, TrN_RokMiesiac, TrN_Zaksiegowano, TrN_Data3 from CDN.TraNag with (nolock) where TrN_Zaksiegowano > 0 and TrN_RokMiesiac = @RM and ( case when @WEW > 0 then case TrN_GIDTyp when 1616 then 1 when 1624 then 1 when 1617 then 1 when 1625 then 1 else 0 end else 0 end > 0 or case when @ZAK > 0 then case TrN_GIDTyp when 1489 then 1 when 1497 then 1 when 1490 then 1 when 1498 then 1 else 0 end else 0 end > 0 or case when @SP > 0 then case TrN_GIDTyp when 2001 then 1 when 2009 then 1 when 2015 then 1 when 2013 then 1 else 0 end else 0 end > 0)) TTT declare @DZV table(DZK_Opis varchar(200), DZK_Rok int, DZK_Miesiac int, DZK_Dzien int, DZK_DokumentZrodlowy varchar(60), DZK_GIDNumer int, DZK_Dziennik varchar(5), CT_Kwota decimal(21,2), DT_Kwota decimal(21,2), DT_DataCentrali int) insert into @DZV select DZK_Opis, DZK_Rok, DZK_Miesiac, DZK_Dzien, DZK_DokumentZrodlowy, DZK_GIDNumer, DZK_Dziennik, CT_Kwota, DT_Kwota, DT_DataCentrali = (select top(1) DT_DataCentrali from CDN.Dekrety with (nolock) where DT_GIDNumer = DZK_GIDNumer) from CDN.DziennikView with (nolock) where DZK_Rok = @Rok and DZK_Miesiac = @Miesiac SELECT Lp = ROW_NUMBER() OVER(ORDER BY Dokument), Dokument, DZK_Opis, RokMiesiac, DataWyst = CDN.TsToDate(CDN.Data(DZK_Rok, DZK_Miesiac, DZK_Dzien), 0), DataOper = CDN.TsToDate(DataDok, 0), DokZr = DZK_DokumentZrodlowy, Dekret = DZK_GIDNumer, DZK_Dziennik, SumaCT = CT_Kwota, SumaDT = DT_Kwota, DataImportu = CDN.TsToDate(coalesce(DT_DataCentrali, 0), 1) FROM @TN inner join @DZV on substring(DZK_Opis, 1, len(Dokument)) = Dokument order by 1 GO GRANT execute ON CDN.my_ImpDM_Src TO CDNRaport GO