· 6 years ago · Jan 10, 2020, 08:50 AM
1
2--------------------------------------------------------------------------------------------
3--- STORED PROCEDURE
4--- P_T_Zadania_GetDataByFilter
5---
6--- Procedura pobier dane zadań
7--- Created by: Adrian
8--- Modified by: ws -- dołożenie zwracanej wartości flgWydrukAuto, która decyduje o widoczności w Rejestrze zadań przycisku WydrukAuto
9--------------------------------------------------------------------------------------------
10
11if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[P_T_Zadania_GetDataByFilter]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
12drop procedure [dbo].[P_T_Zadania_GetDataByFilter]
13GO
14print 'Creating stored procedure P_T_Zadania_GetDataByFilter';
15GO
16CREATE PROCEDURE [dbo].P_T_Zadania_GetDataByFilter
17(
18 @flgRodzaj tinyint, -- rodzaj zadania
19 -- 0 - wszystkie zadania z rejestru
20 -- 1 - zadania z rejestru spraw, w nich są sady a więc i bierze pod uwagę 2
21 -- 2 - posiedzenia sądów
22 -- 3 - z CRM
23 -- 4 - historia kontaktów
24 @StronaId bigint,
25 @Strona_Nazwa varchar(1000)='', --wyszukiwanie po nazwie strony przypisanej do zadania
26 @KeyId bigint = NULL, -- id do jakiego zadania są dowiązane, lub null jesli wszystkie zadania
27 @flgWykonano tinyint = NULL, -- określa czy zadanie jest wykonane czy nie
28 @FirmID bigint,
29 @UserIds varchar(255) = NULL, -- id użytkowników, których zadania będą oglądane oddzielone od siebie znakiami ';'
30 @DataOd datetime = NULL, -- data od
31 @DataDo datetime = NULL, -- data do
32 @UczestnicyPostID bigint = 0, -- id uczestnika postepowania z którym związany jest wpis
33 @Nazwa varchar(255),
34 @CzynnoscIds varchar(max), -- lista identyfikatorów czynności
35 @ZlecajacyId bigint,
36 @cUserId bigint,
37 @AutoInc bigint = 0
38)
39--WITH ENCRYPTION
40
41AS BEGIN
42 SET NOCOUNT ON;
43
44
45 DECLARE @CzynnosciTab TABLE (Id bigint) -- tabela tymczasowa z identyfikatorami czynności
46
47 -- Wypełnienie tymaczoswej tabeli identyfikatorami czynności.
48 IF (@CzynnoscIds IS NOT NULL)
49 BEGIN
50 INSERT @CzynnosciTab SELECT Value FROM dbo.Split(@CzynnoscIds, ';')
51 END
52 ELSE
53 BEGIN
54 INSERT @CzynnosciTab SELECT 0;
55 END
56
57 --------------------------------------------------------------------------
58 -- Variables
59 DECLARE @Wyniki TABLE (
60 [Id] [bigint] , [flgDeleted] [tinyint], [FirmID] [bigint], [flgRodzaj] [tinyint], [DataOd] [datetime], [DataDo] [datetime],
61 [flgWykonano] [tinyint], [Nazwa] [nvarchar](500), [Opis] [nvarchar](max), [Uwagi] [nvarchar](max), [CzasTrwania] [int],
62 [CzynnoscID] [bigint], [flgWlaczStopienWykonania] [tinyint], [StopienWykonania] [tinyint], ROWGUID [uniqueidentifier],
63 [cDataMod] [datetime], [cDataUtw] [datetime], [cUserMod] [bigint], [cUserUtw] [bigint], [DataWykonania] [datetime],
64 cUserModNazwa varchar(100), cUserUtwNazwa varchar(100), [UczestnicyPostID] [bigint], CzynnoscNazwa varchar(1000),
65 UczestnicyPostNazwa varchar(1000), [KeyId] [bigint], WarningInfo int, [OpisWykCzynnosci] [nvarchar](max), [flgWidoczneDlaKlienta] [bit],
66 UczestnicyPostTyp [tinyint], StrPrzecId bigint, StrPrzeciwna varchar(1000), StrPrzeciwnaUwagi varchar(max),
67 ZlecenieKlientId bigint, ZlecenieKlient varchar(1000), ZlecenieKlientUwagi varchar(max), flgWydrukWezwania bit, WydrukWezwaniaID bigint,
68 NrZlecenia varchar(100), OznaczenieSprawy varchar(750), SymbolWlasnyZlecenia varchar(100), NrZlecOznSpr varchar(1000), [KategoriaZadID] [bigint],
69 KategoriaZadKolor varchar(1000), [RezultatDictId] [int], Rezultat varchar(max),
70 cCzasRealizacji int, CzasFakturowany int, CzasPremiowany int,
71 Chosen bit, Zlecajacy varchar(500),
72 flgWydrukAuto tinyint, RozliczeniePrzychodId bigint, ObslugaPrawnaId bigint, RozliczenieKosztId bigint, RejestrRozliczenNagId bigint,
73 DokFinansoweId bigint, DokFinansoweNumer varchar(100), flgCzesciowoNieRozlicz bit default 0, flgCzyJestZalacznik bit default 0,
74 cOpisWykCzynnosci varchar(max), przypisaniDoZadaniaNazwy varchar(max), flgRealizacjaWRozliczeniu bit, SaldoZlec decimal(10,2),UczestnikUsuniety bigint)
75
76 DECLARE @DataAktualizacji datetime = DATEADD(day, -1, GETDATE())
77 DECLARE @ZadOstrzegNDniPrzedKoniec int
78 DECLARE @flgWydrukAuto tinyint = 0;
79
80 IF (@Strona_Nazwa = '') SELECT @Strona_Nazwa = NULL;
81 ELSE
82 SET @Strona_Nazwa = [dbo].CleanUpVarcharSearchExt(lower(@Strona_Nazwa));
83
84 IF (@StronaId = 0) SELECT @StronaId = NULL
85
86 IF (@Nazwa is NULL) SELECT @Nazwa = ''
87 IF (@ZlecajacyId is NULL) SELECT @ZlecajacyId = 0;
88 IF (@KeyId is NULL) SELECT @KeyId = 0;
89 IF (@AutoInc IS NULL) SELECT @AutoInc = 0;
90
91 -- IDki kancelarii, do których należy zalogowany użytkownik.
92 DECLARE @KancelarieZalogowanego TABLE (Id bigint)
93 INSERT @KancelarieZalogowanego (Id)
94 SELECT kp.KancelariaID FROM T_KancelariePracownicy kp WITH(NOLOCK) WHERE kp.PracownikID = @cUserId AND kp.flgDeleted = 0 AND kp.FirmID = @FirmID
95 --------------------------------------------------------------------------
96 -- Steps to be executes
97
98 DECLARE @PrzypisaniDoZad TABLE (Id bigint)
99
100 -- jesli nie ma przekazanych pracowników
101 -- to załaduj wszystkich z danej kancelarii
102 IF (@UserIds = '' OR @UserIds = '0' OR @UserIds = '0;') SELECT @UserIds = NULL;
103
104 if (isnull(@UserIds,'') = '')
105 BEGIN
106 INSERT @PrzypisaniDoZad (Id)
107 select distinct k.PracownikID from T_KancelariePracownicy k with (nolock)
108 inner join USERS u with (nolock) on u.Id=k.PracownikID
109 inner join T_KancelariePracownicy kk with (nolock) on kk.KancelariaID=k.KancelariaID and kk.flgDeleted=0
110 where kk.FirmID = @FirmID and kk.PracownikID = @cUserId and k.flgDeleted=0 and u.flgDeleted=0 and u.flgRodzaj=0
111 END
112 ELSE
113 BEGIN
114 INSERT @PrzypisaniDoZad
115 SELECT Value FROM dbo.Split(@UserIds, ';')
116 END
117
118
119
120 --IF (@UserIds IS NOT NULL)
121 -- INSERT @PrzypisaniDoZad SELECT Value FROM dbo.Split(@UserIds, ';')
122
123 SELECT @ZadOstrzegNDniPrzedKoniec = CAST (s.[Value] AS integer )
124 FROM [SETTINGS] s with(nolock)
125 WHERE
126 s.[FirmID] = @FirmID AND
127 LOWER(s.[Name]) = 'zadostrzegndniprzedkoniec';
128
129 -- Domyślnie jeśli nie określono nie ostrzegaj
130 SET @ZadOstrzegNDniPrzedKoniec = ISNULL(@ZadOstrzegNDniPrzedKoniec, 0);
131
132 -- Optymalizacja dla dużych baz
133 --Declare @minID bigint,@maxId bigint;
134 --select @minID = min(z.Id),@maxId = max(Id) from t_zadania z
135 --where
136
137
138 -- (z.[DataOd] BETWEEN @DataOd AND @DataDo) OR (z.[DataDo] BETWEEN @DataOd AND @DataDo) OR
139 -- (@DataOd BETWEEN z.[DataOd] AND z.[DataDo]) OR (@DataDo BETWEEN z.[DataOd] AND z.[DataDo]) OR
140 -- (@DataOd IS NULL AND @DataDo IS NULL ) OR
141 -- (
142 -- ((z.[DataDo] < GETDATE() OR z.[DataOd] < GETDATE()) AND @flgRodzaj = 1 AND z.[flgWykonano] = 0 )
143 -- )
144
145
146 --dane ładowane do tabeli pośredniej ponieważ później będziemy na jej podstawie decydować
147 --o widoczności przycisku AutoWydruk na Rejetrze zadań oraz ikonek w kolumnie Info na gridzie
148 insert into @Wyniki
149 SELECT distinct
150 z.[Id]
151 ,z.[flgDeleted]
152 ,z.[FirmID]
153 ,z.[flgRodzaj]
154 ,z.[DataOd]
155 ,z.[DataDo]
156 ,z.[flgWykonano]
157 --,case when z.flgRodzaj=2 then z.Opis else z.Nazwa end as Nazwa -- dla spraw sądowych pokauzjemy opis ponieważ mamy tam wszytskei dane dotyczace rozparawy
158 ,z.Nazwa
159 ,z.[Opis]
160 ,z.[Uwagi]
161 ,z.[CzasTrwania]
162 ,z.[CzynnoscID]
163 ,z.[flgWlaczStopienWykonania]
164 ,z.[StopienWykonania]
165 ,z.[ROWGUID]
166 ,z.[cDataMod]
167 ,z.[cDataUtw]
168 ,z.[cUserMod]
169 ,z.[cUserUtw]
170 ,z.[DataWykonania]
171 ,ISNULL(um.[Login],'Brak danych') as cUserModNazwa
172 ,ISNULL(uu.[Login],'Brak danych') as cUserUtwNazwa
173 ,z.[UczestnicyPostID]
174 ,ISNULL(CAST(CASE WHEN z.flgRodzaj=2 THEN dbo.F_GetDictValue(z.CzynnoscID) ELSE ISNULL(dbo.F_GetDictValue(z.CzynnoscID), '') END +
175 CASE WHEN z.flgRodzaj=2 THEN ' ('+ CONVERT(varchar(16),z.DataOd,120)+')' ELSE '' END as varchar(max)), '')
176 AS CzynnoscNazwa
177 ,ISNULL(case when up.flgDeleted = 1 then up.[Nazwa] + ' Uczestnik usunięty' else up.[Nazwa] end, '') as UczestnicyPostNazwa
178 ,z.[KeyId]
179 ,CASE WHEN
180 DATEDIFF (minute, z.[DataDo], getdate() ) >= 0 then -- zadanie jest po terminie
181 2
182 ELSE
183 -- spradz czy włączono ostrzeganie o przedawnieniu
184 CASE WHEN @ZadOstrzegNDniPrzedKoniec > 0 THEN
185 -- włączone ostrzeganie
186 CASE WHEN
187 DATEDIFF (day, getdate(), z.[DataDo] ) <= @ZadOstrzegNDniPrzedKoniec then
188 1
189 ELSE
190 0
191 END
192 ELSE
193 0
194 END
195 END as WarningInfo -- 0 - ok nie pokazuj nic
196 -- 1 - ostrzeganie przed koncem zad
197 -- 2 - zadanie po terminie
198 ,z.[cOpisWykCzynnosci] as OpisWykCzynnosci
199 ,CAST(z.[flgWidoczneDlaKlienta] as bit) as flgWidoczneDlaKlienta
200 ,ISNULL(up.[flgTyp],0) as UczestnicyPostTyp
201 ,ups.Id as StrPrzecId
202 ,
203 CASE
204 WHEN ups.Id is null or ups.Id = 0 then ''
205 WHEN ups.flgFirma = 1 and (ups.Id != 0 or ups.Id is not null) then isnull(ups.Nazwa, '')
206 WHEN ups.flgFirma = 1 and (ups.Id = 0 or ups.Id is null) then ''
207 WHEN ups.flgFirma = 0 and ups.Id!= 0 and ((ups.Imie is null or ups.Imie = '') or (ups.Nazwisko is null or ups.Nazwisko = '')) then isnull(ups.Nazwa, '')
208 WHEN ups.flgFirma = 0 and ups.Id != 0 and ((ups.Imie is not null and ups.Imie <> '') and (ups.Nazwisko is not null and ups.Nazwisko <>'')) then ups.Imie + ' ' + ups.Nazwisko
209 END as StrPrzeciwna
210
211 ,ups.Uwagi as StrPrzeciwnaUwagi
212 ,upk.Id as ZlecenieKlientId
213
214 ,
215 CASE
216 WHEN upk.Id is null or upk.Id = 0 then ''
217 WHEN upk.flgFirma = 1 and (upk.Id != 0 or upk.Id is not null) then isnull(upk.Nazwa, '')
218 WHEN upk.flgFirma = 1 and (upk.Id = 0 or upk.Id is null) then ''
219 WHEN upk.flgFirma = 0 and upk.Id!= 0 and ((upk.Imie is null or upk.Imie = '') or (upk.Nazwisko is null or upk.Nazwisko = '')) then isnull(upk.Nazwa, '')
220 WHEN upk.flgFirma = 0 and upk.Id != 0 and ((upk.Imie is not null and upk.Imie <> '') and (upk.Nazwisko is not null and upk.Nazwisko <>'')) then upk.Imie + ' ' + upk.Nazwisko
221 END as ZlecenieKlient
222
223 ,upk.Uwagi as ZlecenieKlientUwagi
224 ,ISNULL(zdz.flgWydrukWezwania,0) as flgWydrukWezwania
225 ,ISNULL(zdz.WydrukWezwaniaID, 0) as WydrukWezwaniaID
226 ,ISNULL(rs.NumerRepertorium,'') as NrZlecenia
227 ,ISNULL(rs.OznaczenieSprawy,'') as OznaczenieSprawy
228 ,ISNULL(rs.SymbolWlasny,'') as SymbolWlasnyZlecenia
229 ,CASE
230 WHEN ISNULL(rs.NumerRepertorium,'') = '' THEN ISNULL(rs.OznaczenieSprawy,'')
231 WHEN ISNULL(rs.OznaczenieSprawy,'') = '' THEN ISNULL(rs.NumerRepertorium,'')
232 ELSE ISNULL(rs.NumerRepertorium,'') +' / '+ISNULL(rs.OznaczenieSprawy,'')
233 END as NrZlecOznSpr
234 ,z.KategoriaZadID
235 ,ISNULL(katZad.ColorValue,'') as KategoriaZadKolor,
236 z.RezultatDictId,
237 dbo.F_GetDictValue(z.RezultatDictId) as Rezultat,
238 z.cCzasRealizacji,
239 z.cCzasFakturowany as CzasFakturowany,
240 z.cCzasPremiowany as CzasPremiowany,
241 cast(case when ts.Id IS NULL then 0 ELSE 1 END as bit) as Chosen,
242 z.Zlecajacy,
243 0,0,0,0,0, 0, '', 0, 0,
244 cOpisWykCzynnosci,
245 ISNULL(RTRIM(
246 (
247 select CAST(usr.Imie + ' ' + usr.Nazwisko AS VARCHAR(MAX)) + '; ' FROM T_ZadaniaUzytkownicy zu with (nolock)
248 JOIN USERS usr with (nolock) ON zu.UserID = usr.Id and usr.flgDeleted = 0
249 WHERE zu.flgDeleted = 0 and zu.ZadanieID = z.Id
250 FOR XML PATH ('')
251 )
252 ),''),
253 0,
254 ISNULL(zag.Saldo, 0),
255 up.flgDeleted
256 FROM [T_Zadania] z with (NOLOCK)
257 LEFT JOIN T_ZadaniaUzytkownicy tzu with (NOLOCK) on z.Id = tzu.ZadanieID and tzu.flgDeleted=0
258 LEFT JOIN T_ZadaniaDaneZlecen zdz with (NOLOCK) ON zdz.ZadanieID = z.Id AND zdz.flgDeleted = 0
259 LEFT JOIN T_UczestnicyPost up with (NOLOCK) ON z.UczestnicyPostID = up.Id
260 LEFT JOIN USERS um with (NOLOCK) ON um.Id = z.[cUserMod]
261 LEFT JOIN USERS uu with (NOLOCK) ON uu.Id = z.[cUserUtw]
262 LEFT JOIN T_RejestrSpraw rs with (NOLOCK) ON rs.Id = z.KeyId AND z.flgRodzaj IN (1, 2, 4) AND rs.flgDeleted = 0
263 LEFT JOIN T_Zlecenia_Agreg zag with (nolock) ON rs.Id = zag.ZlecenieID AND zag.flgDeleted = 0
264 LEFT JOIN T_RejestrSprawUczestnicy rsu with (NOLOCK) ON rsu.RejestrSprawID = rs.Id AND rsu.flgDeleted = 0 AND rsu.TypUczestnika = 4 --4 Pracownik
265 LEFT JOIN T_UczestnicyPost ups with (NOLOCK) ON ups.Id = rs.StrPrzecID
266 LEFT JOIN T_UczestnicyPost upk with (NOLOCK) ON upk.Id = z.UczestnicyPostID
267 LEFT JOIN DICT katZad with (NOLOCK) ON z.KategoriaZadID = katZad.Id AND katZad.flgDeleted = 0
268 LEFT JOIN @CzynnosciTab cz ON @CzynnoscIds IS NOT NULL
269 LEFT JOIN TEMP_Selection ts with(nolock) on ts.SelectedID = z.Id and ts.AutoInc = @AutoInc
270 -- LEFT JOIN @PrzypisaniDoZad przyp ON przyp.Id = tzu.UserID
271 WHERE
272 z.id >17284178--between @minID and @maxId and
273 and
274 (z.[flgDeleted] = 0) AND
275 (z.FirmID = @FirmID) AND
276 (z.KeyId = @KeyId OR @KeyId = 0) AND --Klucz glowny
277 (z.Nazwa = '' OR z.Nazwa like '%'+@Nazwa+'%') AND
278 (z.cUserUtw = @ZlecajacyId OR @ZlecajacyId = 0) AND
279 (cz.Id IS NULL OR cz.Id = z.CzynnoscID) AND
280 (up.Id = @UczestnicyPostID OR @UczestnicyPostID = 0) AND
281 (z.flgWykonano = @flgWykonano OR @flgWykonano IS NULL)
282
283 AND
284 -- Jeśli @flgRodzaj='5-historia z crm', to wyświetlamy również '3-zadania z crm'
285 -- Jeśli nie podano rodzaju to wyświetlamy wszystkie.
286 ((@flgRodzaj = 5 AND z.flgRodzaj IN (3, 5)) OR (z.flgRodzaj = @flgRodzaj OR @flgRodzaj = 0))
287 -- zalogowany user należy do kancelarii powiązanej z klientem z zadania
288 AND (z.UczestnicyPostID = 0 OR EXISTS (SELECT 1 FROM @KancelarieZalogowanego WHERE Id = upk.KancelariaId))
289 -- istnieje przynajmniej 1 user na zadaniu, który należy do przynajmniej 1 z kancelarii zalogowanego
290 AND EXISTS (SELECT 1 FROM T_KancelariePracownicy WITH(NOLOCK) WHERE PracownikID = tzu.UserID AND flgDeleted = 0 AND KancelariaID IN (SELECT Id FROM @KancelarieZalogowanego))
291 --AND
292 -- (
293 -- EXISTS(SELECT kp.Id FROM T_KancelariePracownicy kp with(nolock)
294 -- WHERE kp.flgDeleted = 0 AND kp.FirmID = @FirmID AND
295 -- (
296 -- ((kp.PracownikID = @cUserId AND kp.KancelariaID = rs.KancelariaId) OR rs.KancelariaId = 0)
297 -- OR
298 -- ((kp.PracownikID = @cUserId AND kp.KancelariaID = up.KancelariaId) OR up.KancelariaId = 0)
299 -- OR
300 -- ((kp.PracownikID = @cUserId AND kp.KancelariaID = upk.KancelariaId) OR upk.KancelariaId = 0))
301 -- OR z.UczestnicyPostID = 0
302 -- )
303 -- )
304 AND
305 (EXISTS (SELECT Id FROM @PrzypisaniDoZad pdz WHERE pdz.Id = tzu.UserID ) OR @UserIds IS NULL) AND
306 (
307 (z.[DataOd] BETWEEN @DataOd AND @DataDo) OR (z.[DataDo] BETWEEN @DataOd AND @DataDo) OR
308 (@DataOd BETWEEN z.[DataOd] AND z.[DataDo]) OR (@DataDo BETWEEN z.[DataOd] AND z.[DataDo]) OR
309 (@DataOd IS NULL AND @DataDo IS NULL ) OR
310 (
311 ((z.[DataDo] < GETDATE() OR z.[DataOd] < GETDATE()) AND @flgRodzaj = 1 AND z.[flgWykonano] = 0 )
312 )
313 )
314 AND
315 (
316 @StronaId IS NULL OR upk.Id = @StronaId
317 OR
318 ups.Id = @StronaId
319 )
320 AND
321 (
322 @Strona_Nazwa is null or upk._NazwaSzukaj like '%'+@Strona_Nazwa+'%' or ups._NazwaSzukaj like '%'+@Strona_Nazwa+'%'
323 )
324 --ORDER BY z.[DataDo] DESC
325
326
327 ---- Na rejestrze zadań decyduje o widoczności AutoWydruku
328 --if exists(select top 1 Id from @Wyniki where flgWykonano=0 and WydrukWezwaniaID>0 and flgWydrukWezwania>0 )
329 -- set @flgWydrukAuto = 1
330 -- else set @flgWydrukAuto = 0
331
332
333 --update w
334 -- set w.flgWydrukAuto = @flgWydrukAuto,
335 -- w.RejestrRozliczenNagId = isnull(rrn.Id, 0),
336 -- w.DokFinansoweId = isnull(df.Id, 0),
337 -- w.DokFinansoweNumer = isnull(df.Numer, ''),
338 -- w.RozliczeniePrzychodId = isnull(zr.RozliczeniePrzychodId, 0),
339 -- w.ObslugaPrawnaId = isnull(zr.ObslugaPrawnaId, 0),
340 -- w.RozliczenieKosztId = isnull(zr.RozliczenieKosztId, 0),
341 -- w.flgCzyJestZalacznik =
342 -- case when exists (select top 1 f.GroupID from Files f with(nolock) join FileAttachments fa with(nolock) ON f.GroupID=fa.Id
343 -- where fa.TypeID=w.Id and fa.flgType=2 and f.flgDeleted=0 and fa.flgDeleted=0) then 1 else 0 end
344 -- from @Wyniki w
345 -- left join T_ZadaniaRealizacje zr with(nolock) on w.Id = zr.ZadanieId and zr.flgDeleted = 0
346 -- left join T_ObslugaPrawna op with(nolock) on op.Id = zr.ObslugaPrawnaId and op.flgDeleted = 0
347 -- left join T_RozliczeniePrzychody rp with(nolock) on rp.Id = isnull(nullif(zr.RozliczeniePrzychodId, 0), op.RejestrRozliczenId) and rp.flgDeleted = 0
348 -- left join T_RejestrRozliczenLin rrl with(nolock) on rrl.RozliczeniePrzychodId = rp.Id and rrl.flgDeleted = 0
349 -- left join T_RejestrRozliczenNag rrn with(nolock) on rrn.Id = rrl.NagId and rrn.flgDeleted = 0
350 -- left join T_DokFinansowe df with(nolock) on df.Id = rrn.FakturaId and df.flgDeleted = 0
351 -- -- bierzemy ostatnie rozliczenie
352 -- where not exists (select rrl2.Id from T_RejestrRozliczenLin rrl2 with(nolock)
353 -- where rrl2.RozliczeniePrzychodId = rp.Id and rrl2.flgDeleted = 0 and rrl2.NagId > rrl.NagId)
354
355
356
357 --update w
358 -- set w.flgCzesciowoNieRozlicz = 1
359 -- from @Wyniki w
360 -- inner join T_ZadaniaRealizacje zr on w.Id = zr.ZadanieId and zr.flgDeleted = 0
361 -- where zr.ObslugaPrawnaId = 0 and zr.RozliczeniePrzychodId = 0 and w.flgWykonano = 1 and zr.CzasFakturowany > 0
362
363 --update w
364 -- set w.flgRealizacjaWRozliczeniu = 1
365 -- from @Wyniki w
366 -- WHERE EXISTS (SELECT 1 FROM T_ZadaniaRealizacje zr with(nolock) where w.Id = zr.ZadanieId and zr.flgDeleted = 0
367 -- and (zr.ObslugaPrawnaId > 0 or zr.RozliczeniePrzychodId > 0))
368
369
370
371 select * from @Wyniki
372END;
373go
374--- koniec P_T_Zadania_GetDataByFilter
375
376
377
378
379--exec [dbo].[P_T_Zadania_GetDataByFilter] @flgRodzaj=0,@StronaId=0,@Strona_Nazwa='',@KeyId=0,@flgWykonano=NULL,@FirmID=2,@UserIds='24',@DataOd='2020-01-09 00:00:00',@DataDo='2020-01-09 23:59:59',@UczestnicyPostID=0,@Nazwa='',@CzynnoscIds=NULL,@ZlecajacyId=0,@cUserId=24,@AutoInc=0