dbo.TSB_TIUNSGroupBInUNSGroupB
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 -> TSB-K-UNSGroupBInUNSGroupB / TSB_ZUNSGroupBInUNSGroupB at line 11
- References QBM_PDBQueueInsert_Bulk
- Trigger parent table: UNSGroupBInUNSGroupB
Typed Edges
- queues DBQueue task TSB_ZUNSGroupBInUNSGroupB at line 11 Bulk DBQueue insert -> TSB-K-UNSGroupBInUNSGroupB / TSB_ZUNSGroupBInUNSGroupB at line 11
- trigger on table UNSGroupBInUNSGroupB Trigger parent table: UNSGroupBInUNSGroupB
- 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
- references source dbo.TSB_TIUNSGroupB source text reference
References
Referenced By
- No direct source references extracted.
Complete Source
1CREATE trigger TSB_TIUNSGroupBInUNSGroupB2 ON UNSGroupBInUNSGroupB FOR3INSERT NOT FOR Replication4AS5BEGIN6 IF EXISTS(7 SELECT TOP 1 18 FROM inserted)9 GOTO start10 RETURN start:11 BEGIN TRY12 IF EXISTS(13 SELECT TOP 1 114 FROM inserted i15 JOIN UNSGroupB g16 ON i.UID_UNSGroupBChild = g.UID_UNSGroupB17 JOIN UNSGroupB u18 ON i.UID_UNSGroupBParent = u.UID_UNSGroupB19 JOIN UNSRootB ru20 ON u.UID_UNSRootB = ru.UID_UNSRootB21 JOIN DPRNameSpace ns22 ON ru.UID_DPRNameSpace = ns.UID_DPRNameSpace23 JOIN UNSRootB rg24 ON g.UID_UNSRootB = rg.UID_UNSRootB25 WHERE26 0 = CASE27 WHEN u.UID_UNSRootB = g.UID_UNSRootB THEN28 129 WHEN ns.IsExtendedInheritance = 0 THEN30 031 WHEN ns.IsExtendedInheritance = 1 AND ns.UID_DPRNameSpace = rg.UID_DPRNameSpace THEN32 133 ELSE 034 END)35 BEGIN36 RAISERROR('#LDS#Assignment is not permitted due to the configuration of related UNSRoots.|',37 18,38 2)39 WITH nowait40 END41 DECLARE @GenProcID varchar(38)42 SELECT @GenProcID = dbo.QBM_FGISessionContext('')43 DECLARE @DBQueueElements_01 QBM_YDBQueueRaw44 INSERT INTO @DBQueueElements_01(object,45 subobject,46 genprocid)47 SELECT48 x.uid,49 NULL,50 @GenProcID51 FROM(52 SELECT uid_UNSGroupBParent AS uid53 FROM inserted54 UNION55 SELECT UID_UNSGroupBChild56 FROM inserted57 UNION58 SELECT co.uid_UNSGroupBParent AS uid59 FROM inserted i60 JOIN UNSGroupBcollection co61 ON i.UID_UNSGroupBChild = co.UID_UNSGroupBChild62 UNION63 SELECT co.uid_UNSGroupBParent64 FROM inserted i65 JOIN UNSGroupBcollection co66 ON i.UID_UNSGroupBParent = co.UID_UNSGroupBChild67 UNION68 SELECT co.UID_UNSGroupBChild69 FROM inserted i70 JOIN UNSGroupBcollection co71 ON i.UID_UNSGroupBChild = co.UID_UNSGroupBParent72 UNION73 SELECT co.UID_UNSGroupBChild74 FROM inserted i75 JOIN UNSGroupBcollection co76 ON i.UID_UNSGroupBParent = co.UID_UNSGroupBParent) AS x77 EXEC QBM_PDBQueueInsert_Bulk 'TSB-K-UNSGroupBInUNSGroupB',78 @DBQueueElements_0179 END TRY80 BEGIN CATCH81 EXEC QBM_PSessionErrorAdd DEFAULT82 RAISERROR('',83 18,84 1)85 WITH NOWAIT86 END CATCH87 ende:88 RETURN89END
Open raw exported source
1 create trigger TSB_TIUNSGroupBInUNSGroupB on UNSGroupBInUNSGroupB for Insert not for Replication as begin if exists (select top2 1 1 from inserted) goto start return start: BEGIN TRY if exists (select top 1 1 from inserted i join UNSGroupB g on i.UID_UNSGroupBChild = g.UID_UNSGroupB3 join UNSGroupB u on i.UID_UNSGroupBParent = u.UID_UNSGroupB join UNSRootB ru on u.UID_UNSRootB = ru.UID_UNSRootB join DPRNameSpace ns on ru.UID_DPRNameSpace4 = ns.UID_DPRNameSpace join UNSRootB rg on g.UID_UNSRootB = rg.UID_UNSRootB where 0 = case when u.UID_UNSRootB = g.UID_UNSRootB then 1 when ns.IsExtendedInheritance5 = 0 then 0 when ns.IsExtendedInheritance = 1 and ns.UID_DPRNameSpace = rg.UID_DPRNameSpace then 1 else 0 end ) begin raiserror ('#LDS#Assignment is not permitted due to the configuration of related UNSRoots.|'6, 18, 2) with nowait end declare @GenProcID varchar(38) select @GenProcID = dbo.QBM_FGISessionContext('') declare @DBQueueElements_01 QBM_YDBQueueRaw 7insert into @DBQueueElements_01 (object, subobject, genprocid) select x.uid, null, @GenProcID from ( select uid_UNSGroupBParent as uid from inserted8 union select UID_UNSGroupBChild from inserted union select co.uid_UNSGroupBParent as uid from inserted i join UNSGroupBcollection co on i.UID_UNSGroupBChild9 = co.UID_UNSGroupBChild union select co.uid_UNSGroupBParent from inserted i join UNSGroupBcollection co on i.UID_UNSGroupBParent = co.UID_UNSGroupBChild10 union select co.UID_UNSGroupBChild from inserted i join UNSGroupBcollection co on i.UID_UNSGroupBChild = co.UID_UNSGroupBParent union select11 co.UID_UNSGroupBChild from inserted i join UNSGroupBcollection co on i.UID_UNSGroupBParent = co.UID_UNSGroupBParent ) as x exec QBM_PDBQueueInsert_Bulk12 'TSB-K-UNSGroupBInUNSGroupB', @DBQueueElements_01 END TRY BEGIN CATCH exec QBM_PSessionErrorAdd default RAISERROR ('', 18, 1) WITH NOWAIT END CATCH13 ende: return end 14