dbo.ATT_TUAttestationCase
Database TriggerSQL_TRIGGERSandbox DB
Interpretation
- Database trigger. Treat parent table and enqueue/object-layer calls as the main relation points.
- DBQueue relation detected. Follow the task procedure and referenced-by list for async processing.
Relations
- Bulk DBQueue insert -> ATT-K-AttestationHelper / ATT_ZAttestationHelperFill at line 13
- Bulk DBQueue insert -> ATT-K-AttestationHelper / ATT_ZAttestationHelperFill at line 13
- Bulk DBQueue insert -> ATT-K-AttestationHelper / ATT_ZAttestationHelperFill at line 13
- Bulk DBQueue insert -> ATT-K-AttestationReminder / ATT_ZAttestationReminder at line 13
- Bulk DBQueue insert -> ATT-K-AttestationHelperNewLevel / ATT_ZAttestationHelperFill_NL at line 13
- Bulk DBQueue insert -> ATT-K-AttestationCheckValid / ATT_ZAttestationCheckValid at line 13
- Bulk DBQueue insert -> ATT-K-AttestationHelper / ATT_ZAttestationHelperFill at line 13
- Bulk DBQueue insert -> ATT-K-AttestationCheckValid / ATT_ZAttestationCheckValid at line 13
- Bulk DBQueue insert -> ATT-K-AttestationHelper / ATT_ZAttestationHelperFill at line 19
- Bulk DBQueue insert -> ATT-K-AttestationHelper / ATT_ZAttestationHelperFill at line 19
- Bulk DBQueue insert -> ATT-K-AttestationReminder / ATT_ZAttestationReminder at line 19
- Bulk DBQueue insert -> ATT-K-AttestationHelperNewLevel / ATT_ZAttestationHelperFill_NL at line 19
- Bulk DBQueue insert -> ATT-K-AttestationCheckValid / ATT_ZAttestationCheckValid at line 19
- Bulk DBQueue insert -> ATT-K-AttestationHelper / ATT_ZAttestationHelperFill at line 19
- Bulk DBQueue insert -> ATT-K-AttestationCheckValid / ATT_ZAttestationCheckValid at line 19
- Bulk DBQueue insert -> ATT-K-AttestationHelper / ATT_ZAttestationHelperFill at line 26
- Bulk DBQueue insert -> ATT-K-AttestationReminder / ATT_ZAttestationReminder at line 26
- Bulk DBQueue insert -> ATT-K-AttestationHelperNewLevel / ATT_ZAttestationHelperFill_NL at line 26
- Bulk DBQueue insert -> ATT-K-AttestationCheckValid / ATT_ZAttestationCheckValid at line 26
- Bulk DBQueue insert -> ATT-K-AttestationHelper / ATT_ZAttestationHelperFill at line 26
- Bulk DBQueue insert -> ATT-K-AttestationCheckValid / ATT_ZAttestationCheckValid at line 26
- Bulk DBQueue insert -> ATT-K-AttestationHelperNewLevel / ATT_ZAttestationHelperFill_NL at line 32
- Bulk DBQueue insert -> ATT-K-AttestationCheckValid / ATT_ZAttestationCheckValid at line 32
- Bulk DBQueue insert -> ATT-K-AttestationHelper / ATT_ZAttestationHelperFill at line 32
- Bulk DBQueue insert -> ATT-K-AttestationCheckValid / ATT_ZAttestationCheckValid at line 32
- Bulk DBQueue insert -> ATT-K-AttestationCheckValid / ATT_ZAttestationCheckValid at line 33
- Bulk DBQueue insert -> ATT-K-AttestationHelper / ATT_ZAttestationHelperFill at line 33
- Bulk DBQueue insert -> ATT-K-AttestationCheckValid / ATT_ZAttestationCheckValid at line 33
- Bulk DBQueue insert -> ATT-K-AttestationHelper / ATT_ZAttestationHelperFill at line 35
- Bulk DBQueue insert -> ATT-K-AttestationCheckValid / ATT_ZAttestationCheckValid at line 35
- Bulk DBQueue insert -> ATT-K-AttestationCheckValid / ATT_ZAttestationCheckValid at line 36
- References QBM_PDBQueueInsert_Bulk
- Trigger parent table: AttestationCase
Typed Edges
- queues DBQueue task ATT_ZAttestationHelperFill at line 13 Bulk DBQueue insert -> ATT-K-AttestationHelper / ATT_ZAttestationHelperFill at line 13
- queues DBQueue task ATT_ZAttestationReminder at line 13 Bulk DBQueue insert -> ATT-K-AttestationReminder / ATT_ZAttestationReminder at line 13
- queues DBQueue task ATT_ZAttestationHelperFill_NL at line 13 Bulk DBQueue insert -> ATT-K-AttestationHelperNewLevel / ATT_ZAttestationHelperFill_NL at line 13
- queues DBQueue task ATT_ZAttestationCheckValid at line 13 Bulk DBQueue insert -> ATT-K-AttestationCheckValid / ATT_ZAttestationCheckValid at line 13
- queues DBQueue task ATT_ZAttestationHelperFill at line 19 Bulk DBQueue insert -> ATT-K-AttestationHelper / ATT_ZAttestationHelperFill at line 19
- queues DBQueue task ATT_ZAttestationReminder at line 19 Bulk DBQueue insert -> ATT-K-AttestationReminder / ATT_ZAttestationReminder at line 19
- queues DBQueue task ATT_ZAttestationHelperFill_NL at line 19 Bulk DBQueue insert -> ATT-K-AttestationHelperNewLevel / ATT_ZAttestationHelperFill_NL at line 19
- queues DBQueue task ATT_ZAttestationCheckValid at line 19 Bulk DBQueue insert -> ATT-K-AttestationCheckValid / ATT_ZAttestationCheckValid at line 19
- queues DBQueue task ATT_ZAttestationHelperFill at line 26 Bulk DBQueue insert -> ATT-K-AttestationHelper / ATT_ZAttestationHelperFill at line 26
- queues DBQueue task ATT_ZAttestationReminder at line 26 Bulk DBQueue insert -> ATT-K-AttestationReminder / ATT_ZAttestationReminder at line 26
- queues DBQueue task ATT_ZAttestationHelperFill_NL at line 26 Bulk DBQueue insert -> ATT-K-AttestationHelperNewLevel / ATT_ZAttestationHelperFill_NL at line 26
- queues DBQueue task ATT_ZAttestationCheckValid at line 26 Bulk DBQueue insert -> ATT-K-AttestationCheckValid / ATT_ZAttestationCheckValid at line 26
- queues DBQueue task ATT_ZAttestationHelperFill_NL at line 32 Bulk DBQueue insert -> ATT-K-AttestationHelperNewLevel / ATT_ZAttestationHelperFill_NL at line 32
- queues DBQueue task ATT_ZAttestationCheckValid at line 32 Bulk DBQueue insert -> ATT-K-AttestationCheckValid / ATT_ZAttestationCheckValid at line 32
- queues DBQueue task ATT_ZAttestationHelperFill at line 32 Bulk DBQueue insert -> ATT-K-AttestationHelper / ATT_ZAttestationHelperFill at line 32
- queues DBQueue task ATT_ZAttestationCheckValid at line 33 Bulk DBQueue insert -> ATT-K-AttestationCheckValid / ATT_ZAttestationCheckValid at line 33
- queues DBQueue task ATT_ZAttestationHelperFill at line 33 Bulk DBQueue insert -> ATT-K-AttestationHelper / ATT_ZAttestationHelperFill at line 33
- queues DBQueue task ATT_ZAttestationHelperFill at line 35 Bulk DBQueue insert -> ATT-K-AttestationHelper / ATT_ZAttestationHelperFill at line 35
- queues DBQueue task ATT_ZAttestationCheckValid at line 35 Bulk DBQueue insert -> ATT-K-AttestationCheckValid / ATT_ZAttestationCheckValid at line 35
- queues DBQueue task ATT_ZAttestationCheckValid at line 36 Bulk DBQueue insert -> ATT-K-AttestationCheckValid / ATT_ZAttestationCheckValid at line 36
- trigger on table AttestationCase Trigger parent table: AttestationCase
- references source dbo.QBM_FGIColumnUpdatedOthers source text reference
- references source dbo.QBM_FGISessionContext source text reference
- references source dbo.ATT_PAttestationResetOneLevel source text reference
- references source dbo.QBM_PDBQueueInsert_Bulk source text reference
- references source dbo.QBM_PSessionErrorAdd source text reference
References
- dbo.QBM_FGIColumnUpdatedOthers
- dbo.QBM_FGISessionContext
- dbo.ATT_PAttestationResetOneLevel
- dbo.QBM_PDBQueueInsert_Bulk
- dbo.QBM_PSessionErrorAdd
Referenced By
- No direct source references extracted.
Complete Source
1CREATE trigger ATT_TUAttestationCase2 ON AttestationCase FOR3UPDATE NOT FOR Replication4AS5BEGIN6 DECLARE @uid_AttestationCase varchar(38)7 DECLARE @DecisionLevelNew int8 DECLARE @attBuffer QBM_YCursorBuffer9 DECLARE @ElementCount int10 DECLARE @ElementIndex int11 DECLARE @ElementLast int12 BEGIN TRY13 IF EXISTS(14 SELECT TOP 1 115 FROM inserted)16 GOTO start17 IF EXISTS(18 SELECT TOP 1 119 FROM deleted)20 GOTO start21 RETURN start:22 DECLARE @GenProcID varchar(38)23 SELECT @GenProcID = dbo.QBM_FGISessionContext('')24 IF25 UPDATE(DecisionLevel)26 BEGIN27 IF EXISTS(28 SELECT TOP 1 129 FROM AttestationCase a30 JOIN deleted d31 ON a.UID_AttestationCase = d.UID_AttestationCase AND a.DecisionLevel <> d.DecisionLevel32 JOIN AttestationHelper h33 ON h.UID_AttestationCase = a.UID_AttestationCase AND h.LevelNumber = a.DecisionLevel AND h.UID_PWODecisionRule = 'ATT-PWODecisionRule-EX' AND34 h.ReasonHead > ' ')35 BEGIN36 UPDATE AttestationHelper37 SET ReasonHead = ''38 FROM AttestationHelper h39 JOIN deleted d40 ON h.UID_AttestationCase = d.UID_AttestationCase41 JOIN AttestationCase a42 ON d.UID_AttestationCase = a.UID_AttestationCase AND a.DecisionLevel = h.LevelNumber AND a.DecisionLevel <> d.DecisionLevel AND h.UID_PWODecisionRule43 = 'ATT-PWODecisionRule-EX' AND h.ReasonHead > ' '44 END45 END46 IF47 UPDATE(IsClosed) OR48 UPDATE(UID_QERWorkingMethod)49 BEGIN50 IF EXISTS(51 SELECT TOP 1 152 FROM inserted i53 WHERE54 sign(len(isnull(i.UID_QERWorkingMethod, ''))) ^ i.IsClosed = 0)55 BEGIN56 RAISERROR('#LDS#Invalid combination of IsClosed and QERWorkingMethod.|',57 18,58 1)59 WITH nowait60 END61 END62 IF63 UPDATE(IsUnderConstruction)64 BEGIN65 DECLARE @DBQueueElements_01 QBM_YDBQueueRaw66 INSERT INTO @DBQueueElements_01(object,67 subobject,68 genprocid)69 SELECT70 x.uid,71 NULL,72 @GenProcID73 FROM(74 SELECT c.UID_AttestationCase AS uid75 FROM deleted d76 JOIN AttestationCase c77 ON d.UID_AttestationCase = c.UID_AttestationCase78 WHERE79 d.IsUnderConstruction = 1 AND c.IsUnderConstruction = 0) AS x80 EXEC QBM_PDBQueueInsert_Bulk 'ATT-K-AttestationHelper',81 @DBQueueElements_0182 END83 IF84 UPDATE(IsClosed) OR85 UPDATE(IsGranted) OR86 UPDATE(DecisionLevel)87 BEGIN88 DELETE AttestationHelper89 WHERE90 UID_PWODecisionRule = 'ATT-PWODecisionRule-QP' AND EXISTS(91 SELECT TOP 1 192 FROM inserted i93 WHERE94 i.uid_AttestationCase = AttestationHelper.uid_AttestationCase)95 END96 IF97 UPDATE(isReserved)98 BEGIN99 DELETE AttestationHelper100 WHERE101 UID_PWOdecisionRule = 'ATT-PWODecisionRule-QP' AND EXISTS(102 SELECT TOP 1 1103 FROM deleted d104 JOIN AttestationCase pwo105 ON d.uid_AttestationCase = pwo.uid_AttestationCase AND d.isreserved = 1 AND pwo.isReserved = 0106 WHERE107 pwo.uid_AttestationCase = AttestationHelper.uid_AttestationCase)108 END109 IF110 UPDATE(isclosed)111 BEGIN112 DECLARE @DBQueueElements_02 QBM_YDBQueueRaw113 INSERT INTO @DBQueueElements_02(object,114 subobject,115 genprocid)116 SELECT117 x.uid,118 NULL,119 @GenProcID120 FROM(121 SELECT i.UID_AttestationCase AS uid122 FROM inserted i) AS x123 EXEC QBM_PDBQueueInsert_Bulk 'ATT-K-AttestationHelper',124 @DBQueueElements_02125 END126 IF dbo.QBM_FGIColumnUpdatedOthers('AttestationCase',127 'isclosed',128 columns_updated()) = 1 AND dbo.QBM_FGIColumnUpdatedOthers('AttestationCase',129 'DecisionLevel',130 columns_updated()) = 1 AND NOT131 UPDATE(IsUnderConstruction) AND(132 UPDATE(UID_PersonHead) OR133 UPDATE(ReasonHead) OR134 UPDATE(DateHead))135 BEGIN136 DECLARE @DBQueueElements_03 QBM_YDBQueueRaw137 INSERT INTO @DBQueueElements_03(object,138 subobject,139 genprocid)140 SELECT141 x.uid,142 NULL,143 @GenProcID144 FROM(145 SELECT146 DISTINCT pwo.uid_AttestationCase AS uid147 FROM deleted d148 JOIN AttestationCase pwo149 ON d.uid_AttestationCase = pwo.uid_AttestationCase150 WHERE151 (isnull(d.DateHead, '1899-12-30') <> isnull(pwo.DateHead, '1899-12-30') OR isnull(d.ReasonHead, N '') <> isnull(pwo.ReasonHead,152 N '')) AND(isnull(d.UID_PersonHead, '') <> isnull(pwo.UID_PersonHead, '') OR EXISTS(153 SELECT TOP 1 1154 FROM AttestationHelper h155 WHERE156 h.uid_AttestationCase = pwo.uid_AttestationCase AND h.LevelNumber = pwo.decisionlevel AND(h.UID_PersonAdditional > ' ' OR h.UID_PersonInsteadOf157 > ' ' OR h.Decision = '-')))) AS x158 EXEC QBM_PDBQueueInsert_Bulk 'ATT-K-AttestationHelper',159 @DBQueueElements_03160 EXEC QBM_PDBQueueInsert_Bulk 'ATT-K-AttestationReminder',161 @DBQueueElements_03162 END163 IF164 UPDATE(DecisionLevel)165 BEGIN166 DELETE @attBuffer167 INSERT INTO @attBuffer(UID1,168 Int1)169 SELECT170 pwo.uid_Attestationcase,171 pwo.DecisionLevel172 FROM deleted d173 JOIN Attestationcase pwo174 ON d.uid_Attestationcase = pwo.uid_Attestationcase175 WHERE176 d.DecisionLevel <> pwo.DecisionLevel177 SELECT @ElementCount = @@ROWCOUNT178 SELECT @ElementIndex = @@IDENTITY - @ElementCount +1179 SELECT @ElementLast = @@IDENTITY180 WHILE @ElementIndex <= @ElementLast181 BEGIN182 SELECT183 TOP 1 @uid_AttestationCase = bu.UID1,184 @DecisionLevelNew = bu.Int1185 FROM @attBuffer bu186 WHERE187 bu.ElementIndex = @ElementIndex188 EXEC ATT_PAttestationResetOneLevel @uid_Attestationcase,189 @DecisionLevelNew,190 @GenProcID191 SELECT @ElementIndex += 1192 END193 DECLARE @DBQueueElements_04 QBM_YDBQueueRaw194 INSERT INTO @DBQueueElements_04(object,195 subobject,196 genprocid)197 SELECT198 x.uid,199 NULL,200 @GenProcID201 FROM(202 SELECT bu.UID1 AS uid203 FROM @attBuffer bu) AS x204 EXEC QBM_PDBQueueInsert_Bulk 'ATT-K-AttestationHelperNewLevel',205 @DBQueueElements_04206 EXEC QBM_PDBQueueInsert_Bulk 'ATT-K-AttestationCheckValid',207 @DBQueueElements_04208 DECLARE @DBQueueElements_05 QBM_YDBQueueRaw209 INSERT INTO @DBQueueElements_05(object,210 subobject,211 genprocid)212 SELECT213 x.uid,214 NULL,215 @GenProcID216 FROM(217 SELECT pwo.uid_Attestationcase AS uid218 FROM deleted d219 JOIN Attestationcase pwo220 ON d.uid_Attestationcase = pwo.uid_Attestationcase221 WHERE222 d.DecisionLevel = pwo.DecisionLevel) AS x223 EXEC QBM_PDBQueueInsert_Bulk 'ATT-K-AttestationHelper',224 @DBQueueElements_05225 EXEC QBM_PDBQueueInsert_Bulk 'ATT-K-AttestationCheckValid',226 @DBQueueElements_05227 END228 END TRY229 BEGIN CATCH230 EXEC QBM_PSessionErrorAdd DEFAULT231 RAISERROR('',232 18,233 1)234 WITH NOWAIT235 END CATCH236 ende:237 RETURN238END
Open raw exported source
1create trigger ATT_TUAttestationCase on AttestationCase for UPDATE not for Replication as begin declare @uid_AttestationCase varchar(38) declare2 @DecisionLevelNew int declare @attBuffer QBM_YCursorBuffer declare @ElementCount int declare @ElementIndex int declare @ElementLast int BEGIN TRY if 3exists (select top 1 1 from inserted) goto start if exists (select top 1 1 from deleted) goto start return start: declare @GenProcID varchar(38) select4 @GenProcID = dbo.QBM_FGISessionContext('') if UPDATE (DecisionLevel) begin if exists (select top 1 1 from AttestationCase a join deleted d on a.UID_AttestationCase5 = d.UID_AttestationCase and a.DecisionLevel <> d.DecisionLevel join AttestationHelper h on h.UID_AttestationCase = a.UID_AttestationCase and h.LevelNumber6 = a.DecisionLevel and h.UID_PWODecisionRule = 'ATT-PWODecisionRule-EX' and h.ReasonHead > ' ' ) begin update AttestationHelper set ReasonHead = '' from7 AttestationHelper h join deleted d on h.UID_AttestationCase = d.UID_AttestationCase join AttestationCase a on d.UID_AttestationCase = a.UID_AttestationCase8 and a.DecisionLevel = h.LevelNumber and a.DecisionLevel <> d.DecisionLevel and h.UID_PWODecisionRule = 'ATT-PWODecisionRule-EX' and h.ReasonHead > ' '9 end end if update(IsClosed) or update(UID_QERWorkingMethod) begin if exists (select top 1 1 from inserted i where sign(len(isnull(i.UID_QERWorkingMethod10, ''))) ^ i.IsClosed = 0 ) begin raiserror('#LDS#Invalid combination of IsClosed and QERWorkingMethod.|', 18, 1) with nowait end end if UPDATE(IsUnderConstruction11) begin declare @DBQueueElements_01 QBM_YDBQueueRaw insert into @DBQueueElements_01 (object, subobject, genprocid) select x.uid, null, @GenProcID from 12( select c.UID_AttestationCase as uid from deleted d join AttestationCase c on d.UID_AttestationCase = c.UID_AttestationCase where d.IsUnderConstruction13 = 1 and c.IsUnderConstruction = 0 ) as x exec QBM_PDBQueueInsert_Bulk 'ATT-K-AttestationHelper', @DBQueueElements_01 end if update(IsClosed) or update14(IsGranted) or update(DecisionLevel) begin delete AttestationHelper where UID_PWODecisionRule = 'ATT-PWODecisionRule-QP' and exists (select top 1 1 from15 inserted i where i.uid_AttestationCase = AttestationHelper.uid_AttestationCase) end if update(isReserved) begin delete AttestationHelper where UID_PWOdecisionRule16 = 'ATT-PWODecisionRule-QP' and exists (select top 1 1 from deleted d join AttestationCase pwo on d.uid_AttestationCase = pwo.uid_AttestationCase and d.isreserved17 = 1 and pwo.isReserved = 0 where pwo.uid_AttestationCase = AttestationHelper.uid_AttestationCase ) end if update(isclosed) begin declare @DBQueueElements_0218 QBM_YDBQueueRaw insert into @DBQueueElements_02 (object, subobject, genprocid) select x.uid, null, @GenProcID from (select i.UID_AttestationCase as uid19 from inserted i ) as x exec QBM_PDBQueueInsert_Bulk 'ATT-K-AttestationHelper', @DBQueueElements_02 end if dbo.QBM_FGIColumnUpdatedOthers ('AttestationCase'20, 'isclosed', columns_updated()) = 1 and dbo.QBM_FGIColumnUpdatedOthers ('AttestationCase', 'DecisionLevel', columns_updated()) = 1 and not update(IsUnderConstruction21) and (update(UID_PersonHead) or update(ReasonHead) or update(DateHead) ) begin declare @DBQueueElements_03 QBM_YDBQueueRaw insert into @DBQueueElements_0322 (object, subobject, genprocid) select x.uid, null, @GenProcID from (select distinct pwo.uid_AttestationCase as uid from deleted d join AttestationCase23 pwo on d.uid_AttestationCase = pwo.uid_AttestationCase where (isnull(d.DateHead, '1899-12-30') <> isnull(pwo.DateHead, '1899-12-30') or isnull(d.ReasonHead24, N'') <> isnull(pwo.ReasonHead, N'') ) and ( isnull(d.UID_PersonHead, '') <> isnull(pwo.UID_PersonHead, '') or exists (select top 1 1 from AttestationHelper25 h where h.uid_AttestationCase = pwo.uid_AttestationCase and h.LevelNumber = pwo.decisionlevel and (h.UID_PersonAdditional > ' ' or h.UID_PersonInsteadOf26 > ' ' or h.Decision = '-' ) ) ) ) as x exec QBM_PDBQueueInsert_Bulk 'ATT-K-AttestationHelper', @DBQueueElements_03 exec QBM_PDBQueueInsert_Bulk 'ATT-K-AttestationReminder'27, @DBQueueElements_03 end if update(DecisionLevel) begin delete @attBuffer insert into @attBuffer(UID1 , Int1 ) select pwo.uid_Attestationcase, pwo.DecisionLevel28 from deleted d join Attestationcase pwo on d.uid_Attestationcase = pwo.uid_Attestationcase where d.DecisionLevel <> pwo.DecisionLevel select @ElementCount29 = @@ROWCOUNT select @ElementIndex = @@IDENTITY - @ElementCount +1 select @ElementLast = @@IDENTITY while @ElementIndex <= @ElementLast begin select top30 1 @uid_AttestationCase = bu.UID1 , @DecisionLevelNew = bu.Int1 from @attBuffer bu where bu.ElementIndex = @ElementIndex exec ATT_PAttestationResetOneLevel31 @uid_Attestationcase, @DecisionLevelNew, @GenProcID select @ElementIndex += 1 end declare @DBQueueElements_04 QBM_YDBQueueRaw insert into @DBQueueElements_0432 (object, subobject, genprocid) select x.uid, null, @GenProcID from (select bu.UID1 as uid from @attBuffer bu ) as x exec QBM_PDBQueueInsert_Bulk 'ATT-K-AttestationHelperNewLevel'33, @DBQueueElements_04 exec QBM_PDBQueueInsert_Bulk 'ATT-K-AttestationCheckValid', @DBQueueElements_04 declare @DBQueueElements_05 QBM_YDBQueueRaw insert34 into @DBQueueElements_05 (object, subobject, genprocid) select x.uid, null, @GenProcID from (select pwo.uid_Attestationcase as uid from deleted d join35 Attestationcase pwo on d.uid_Attestationcase = pwo.uid_Attestationcase where d.DecisionLevel = pwo.DecisionLevel ) as x exec QBM_PDBQueueInsert_Bulk 'ATT-K-AttestationHelper'36, @DBQueueElements_05 exec QBM_PDBQueueInsert_Bulk 'ATT-K-AttestationCheckValid', @DBQueueElements_05 end END TRY BEGIN CATCH exec QBM_PSessionErrorAdd37 default RAISERROR ('', 18, 1) WITH NOWAIT END CATCH ende: return end 38