dbo.LDP_TULDAPAccount
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 -> LDP-K-PersonHasObject / LDP_ZPersonHasObject at line 5
- Bulk DBQueue insert -> LDP-K-LDAPAccountInLDAPGroup / LDP_ZAccountInLDAPGroup at line 5
- Bulk DBQueue insert -> LDP-K-LDAPAccountInLDAPGroup / LDP_ZAccountInLDAPGroup at line 12
- References QBM_PDBQueueInsert_Bulk
- Trigger parent table: LDAPAccount
Typed Edges
- queues DBQueue task LDP_ZPersonHasObject at line 5 Bulk DBQueue insert -> LDP-K-PersonHasObject / LDP_ZPersonHasObject at line 5
- queues DBQueue task LDP_ZAccountInLDAPGroup at line 5 Bulk DBQueue insert -> LDP-K-LDAPAccountInLDAPGroup / LDP_ZAccountInLDAPGroup at line 5
- queues DBQueue task LDP_ZAccountInLDAPGroup at line 12 Bulk DBQueue insert -> LDP-K-LDAPAccountInLDAPGroup / LDP_ZAccountInLDAPGroup at line 12
- trigger on table LDAPAccount Trigger parent table: LDAPAccount
- references source dbo.QBM_FGIBitPatternXMarkedForDel source text reference
- references source dbo.QBM_FGISessionContext source text reference
- references source dbo.QBM_PDBQueueInsert_Bulk source text reference
- references source dbo.QBM_PSessionErrorAdd source text reference
Complete Source
1CREATE trigger LDP_TULDAPAccount2 ON LDAPAccount FOR3UPDATE NOT FOR Replication4AS5BEGIN6 DECLARE @QBM_BitPatternXMarkedForDel_OutStanding int = dbo.QBM_FGIBitPatternXMarkedForDel('|OutStanding|',7 0)8 BEGIN TRY9 IF EXISTS(10 SELECT TOP 1 111 FROM inserted)12 GOTO start13 IF EXISTS(14 SELECT TOP 1 115 FROM deleted)16 GOTO start17 RETURN start:18 DECLARE @GenProcID varchar(38)19 SELECT @GenProcID = dbo.QBM_FGISessionContext('')20 IF21 UPDATE(uid_person)22 BEGIN23 DECLARE @DBQueueElements_01 QBM_YDBQueueRaw24 INSERT INTO @DBQueueElements_01(object,25 subobject,26 genprocid)27 SELECT28 x.uid,29 NULL,30 @GenProcID31 FROM(32 SELECT uid_person AS uid33 FROM inserted34 WHERE35 uid_person > ' '36 UNION37 SELECT uid_person AS uid38 FROM deleted39 WHERE40 uid_person > ' ') AS x41 EXEC QBM_PDBQueueInsert_Bulk 'LDP-K-PersonHasObject',42 @DBQueueElements_0143 END44 IF45 UPDATE(uid_person) OR46 UPDATE(IsGroupAccount) OR47 UPDATE(uid_LDAPContainer) OR48 UPDATE(UID_TSBBehavior) OR49 UPDATE(MatchPatternForMembership) OR50 UPDATE(AccountDisabled) OR51 UPDATE(XMarkedForDeletion)52 BEGIN53 DECLARE @DBQueueElements_03 QBM_YDBQueueRaw54 INSERT INTO @DBQueueElements_03(object,55 subobject,56 genprocid)57 SELECT58 x.uid,59 NULL,60 @GenProcID61 FROM(62 SELECT a.UID_LDAPAccount AS uid63 FROM LDAPAccount a64 JOIN deleted d65 ON a.UID_LDAPAccount = d.UID_LDAPAccount66 WHERE67 isnull(d.UID_Person, '') <> isnull(a.UID_Person, '') OR isnull(d.IsGroupAccount, 0) <> isnull(a.IsGroupAccount,68 0) OR isnull(d.uid_LDAPContainer, '') <> isnull(a.uid_LDAPContainer, '') OR isnull(d.UID_TSBBehavior,69 '') <> isnull(a.UID_TSBBehavior, '') OR isnull(d.MatchPatternForMembership, 0) <> isnull(a.MatchPatternForMembership,70 0) OR isnull(d.AccountDisabled, 0) <> isnull(a.AccountDisabled, 0) OR(d.XMarkedForDeletion ^ a.XMarkedForDeletion) & @QBM_BitPatternXMarkedForDel_OutStanding71 > 0) AS x72 EXEC QBM_PDBQueueInsert_Bulk 'LDP-K-LDAPAccountInLDAPGroup',73 @DBQueueElements_0374 END75 END TRY76 BEGIN CATCH77 EXEC QBM_PSessionErrorAdd DEFAULT78 RAISERROR('',79 18,80 1)81 WITH NOWAIT82 END CATCH83 ende:84 RETURN85END
Open raw exported source
1create trigger LDP_TULDAPAccount on LDAPAccount for Update not for Replication as begin declare @QBM_BitPatternXMarkedForDel_OutStanding int2 = dbo.QBM_FGIBitPatternXMarkedForDel('|OutStanding|', 0) BEGIN TRY if exists (select top 1 1 from inserted) goto start if exists (select top 1 1 from3 deleted) goto start return start: declare @GenProcID varchar(38) select @GenProcID = dbo.QBM_FGISessionContext('') if update(uid_person) begin declare4 @DBQueueElements_01 QBM_YDBQueueRaw insert into @DBQueueElements_01 (object, subobject, genprocid) select x.uid, null, @GenProcID from ( select uid_person5 as uid from inserted where uid_person > ' ' union select uid_person as uid from deleted where uid_person > ' ' ) as x exec QBM_PDBQueueInsert_Bulk 'LDP-K-PersonHasObject'6, @DBQueueElements_01 end if update(uid_person) or update(IsGroupAccount) or update(uid_LDAPContainer) or update(UID_TSBBehavior) or update(MatchPatternForMembership7) or update(AccountDisabled) or update(XMarkedForDeletion) begin declare @DBQueueElements_03 QBM_YDBQueueRaw insert into @DBQueueElements_03 (object, 8subobject, genprocid) select x.uid, null, @GenProcID from (select a.UID_LDAPAccount as uid from LDAPAccount a join deleted d on a.UID_LDAPAccount = d.UID_LDAPAccount9 where isnull(d.UID_Person,'') <> isnull(a.UID_Person,'') or isnull(d.IsGroupAccount,0) <> isnull(a.IsGroupAccount,0) or isnull(d.uid_LDAPContainer,''10) <> isnull(a.uid_LDAPContainer,'') or isnull(d.UID_TSBBehavior,'') <> isnull(a.UID_TSBBehavior,'') or isnull(d.MatchPatternForMembership,0) <> isnull(a.MatchPatternForMembership11,0) or isnull(d.AccountDisabled,0) <> isnull(a.AccountDisabled,0) or (d.XMarkedForDeletion ^ a.XMarkedForDeletion ) & @QBM_BitPatternXMarkedForDel_OutStanding12 > 0 ) as x exec QBM_PDBQueueInsert_Bulk 'LDP-K-LDAPAccountInLDAPGroup', @DBQueueElements_03 end END TRY BEGIN CATCH exec QBM_PSessionErrorAdd default 13RAISERROR ('', 18, 1) WITH NOWAIT END CATCH ende: return end 14