dbo.QBM_PJournalShrink
Stored ProcedureSQL_STORED_PROCEDURESandbox DB
Interpretation
- Database routine. Review parameters, called procedures, DBQueue inserts, and QBM_PJobCreate helper calls before assuming side effects.
Relations
- No extracted relations.
Typed Edges
- references source dbo.QBM_FCVStringToInt source text reference
- references source dbo.QBM_FGIConfigparmValue source text reference
- references source dbo.QBM_FGISessionErrorRethrow source text reference
- references source dbo.QBM_PDeleteBulk source text reference
- references source dbo.QBM_PJournal source text reference
- references source dbo.QBM_PSessionErrorAdd source text reference
Complete Source
1CREATE PROCEDURE QBM_PJournalShrink2AS3BEGIN4 DECLARE @AnzahlTage int5 DECLARE @AnzahlTageT int6 DECLARE @AnzahlTageD int7 DECLARE @AnzahlTageI int8 DECLARE @AnzahlTageW int9 DECLARE @AnzahlTageE int10 DECLARE @BulkCount int11 DECLARE @TotalCount int12 DECLARE @Grenze nvarchar(1000) = ''13 DECLARE @Klausel nvarchar(max)14 DECLARE @AnzahlGeloescht int15 DECLARE @AnzahlTotal int = 016 DECLARE @DebugSwitch int = 017 SET XACT_ABORT OFF18 BEGIN TRY19 SELECT20 @BulkCount = dbo.QBM_FCVStringToInt(dbo.QBM_FGIConfigparmValue('Common\Journal\Delete\BulkCount'),21 200)22 SELECT23 @TotalCount = dbo.QBM_FCVStringToInt(dbo.QBM_FGIConfigparmValue('Common\Journal\Delete\TotalCount'),24 10000)25 SELECT26 @AnzahlTage = dbo.QBM_FCVStringToInt(dbo.QBM_FGIConfigparmValue('Common\Journal\LifeTime'),27 30)28 SELECT29 @AnzahlTageE = abs(dbo.QBM_FCVStringToInt(dbo.QBM_FGIConfigparmValue('Common\Journal\LifeTime\E'),30 @AnzahlTage)) *(-1)31 SELECT32 @AnzahlTageW = abs(dbo.QBM_FCVStringToInt(dbo.QBM_FGIConfigparmValue('Common\Journal\LifeTime\W'),33 @AnzahlTage)) *(-1)34 SELECT35 @AnzahlTageI = abs(dbo.QBM_FCVStringToInt(dbo.QBM_FGIConfigparmValue('Common\Journal\LifeTime\I'),36 @AnzahlTage)) *(-1)37 SELECT38 @AnzahlTageD = abs(dbo.QBM_FCVStringToInt(dbo.QBM_FGIConfigparmValue('Common\Journal\LifeTime\D'),39 3)) *(-1)40 SELECT41 @AnzahlTageT = abs(dbo.QBM_FCVStringToInt(dbo.QBM_FGIConfigparmValue('Common\Journal\LifeTime\T'),42 1)) *(-1)43 SELECT44 @Klausel = CONCAT('( MessageType = ''E'' and messagedate < ''',45 convert(nvarchar(64), dateadd(dd, @AnzahlTageE, GetUTCDate()), 121) + N ''' )',46 char(13),47 char(10),48 'OR ( MessageType = ''W'' and messagedate < ''' + convert(nvarchar(64), dateadd(dd, @AnzahlTageW, GetUTCDate()),49 121) + N ''')',50 char(13),51 char(10),52 'OR ( MessageType = ''I'' and messagedate < ''' + convert(nvarchar(64), dateadd(dd, @AnzahlTageI, GetUTCDate()),53 121) + N ''')',54 char(13),55 char(10),56 'OR ( MessageType = ''D'' and messagedate < ''' + convert(nvarchar(64), dateadd(dd, @AnzahlTageD, GetUTCDate()),57 121) + N ''')',58 char(13),59 char(10),60 'OR ( MessageType = ''T'' and messagedate < ''' + convert(nvarchar(64), dateadd(dd, @AnzahlTageT, GetUTCDate()),61 121) + N ''')')62 IF @DebugSwitch > 063 BEGIN64 print @Klausel65 END66 EXEC @AnzahlGeloescht = QBM_PDeleteBulk 'DialogJournal',67 @Klausel,68 @BulkCount,69 @TotalCount70 SELECT @AnzahlTotal += @AnzahlGeloescht71 END TRY72 BEGIN CATCH73 EXEC QBM_PSessionErrorAdd DEFAULT74 DECLARE @Rethrow varchar(1000) = dbo.QBM_FGISessionErrorRethrow()75 RAISERROR(@Rethrow,76 18,77 1)78 WITH NOWAIT79 END CATCH80 ende:81 RETURN(@AnzahlTotal)82END
Open raw exported source
1 create procedure QBM_PJournalShrink as begin declare @AnzahlTage int declare @AnzahlTageT int declare @AnzahlTageD int declare @AnzahlTageI 2int declare @AnzahlTageW int declare @AnzahlTageE int declare @BulkCount int declare @TotalCount int declare @Grenze nvarchar(1000) = '' declare @Klausel3 nvarchar(max) declare @AnzahlGeloescht int declare @AnzahlTotal int = 0 declare @DebugSwitch int = 0 SET XACT_ABORT OFF BEGIN TRY select @BulkCount = 4dbo.QBM_FCVStringToInt(dbo.QBM_FGIConfigparmValue( 'Common\Journal\Delete\BulkCount'), 200) select @TotalCount = dbo.QBM_FCVStringToInt(dbo.QBM_FGIConfigparmValue5( 'Common\Journal\Delete\TotalCount'), 10000) select @AnzahlTage = dbo.QBM_FCVStringToInt(dbo.QBM_FGIConfigparmValue( 'Common\Journal\LifeTime'), 30) select6 @AnzahlTageE = abs(dbo.QBM_FCVStringToInt(dbo.QBM_FGIConfigparmValue( 'Common\Journal\LifeTime\E'), @AnzahlTage)) * (-1) select @AnzahlTageW = abs(dbo.QBM_FCVStringToInt7(dbo.QBM_FGIConfigparmValue( 'Common\Journal\LifeTime\W'), @AnzahlTage)) * (-1) select @AnzahlTageI = abs(dbo.QBM_FCVStringToInt(dbo.QBM_FGIConfigparmValue8( 'Common\Journal\LifeTime\I'), @AnzahlTage)) * (-1) select @AnzahlTageD = abs(dbo.QBM_FCVStringToInt(dbo.QBM_FGIConfigparmValue( 'Common\Journal\LifeTime\D'9), 3)) * (-1) select @AnzahlTageT = abs(dbo.QBM_FCVStringToInt(dbo.QBM_FGIConfigparmValue( 'Common\Journal\LifeTime\T'), 1)) * (-1) select @Klausel = concat10( '( MessageType = ''E'' and messagedate < ''' , convert(nvarchar(64), dateadd(dd, @AnzahlTageE, GetUTCDate()), 121) + N''' )' , char(13), char(10), 'OR ( MessageType = ''W'' and messagedate < '''11 + convert(nvarchar(64), dateadd(dd, @AnzahlTageW, GetUTCDate()), 121) + N''')' , char(13), char(10), 'OR ( MessageType = ''I'' and messagedate < ''' 12+ convert(nvarchar(64), dateadd(dd, @AnzahlTageI, GetUTCDate()), 121) + N''')' , char(13), char(10), 'OR ( MessageType = ''D'' and messagedate < ''' +13 convert(nvarchar(64), dateadd(dd, @AnzahlTageD, GetUTCDate()), 121) + N''')' , char(13), char(10), 'OR ( MessageType = ''T'' and messagedate < ''' + 14convert(nvarchar(64), dateadd(dd, @AnzahlTageT, GetUTCDate()), 121) + N''')' ) if @DebugSwitch > 0 begin print @Klausel end exec @AnzahlGeloescht = QBM_PDeleteBulk15 'DialogJournal', @Klausel, @BulkCount, @TotalCount select @AnzahlTotal += @AnzahlGeloescht END TRY BEGIN CATCH exec QBM_PSessionErrorAdd default declare16 @Rethrow varchar(1000) = dbo.QBM_FGISessionErrorRethrow() RAISERROR (@Rethrow, 18, 1) WITH NOWAIT END CATCH ende: return (@AnzahlTotal) end 17