Back to OIM Explorer

dbo.QER_TIPerson

Database TriggerSQL_TRIGGERSandbox DB

Database Trigger on Person. HOFireEvent -> HelperHeadPerson.Insert at line 4; HOFireEvent -> HelperHeadPerson.Insert at line 7; HOFireEvent -> HelperHeadPerson.Insert at line 9; HOFireEvent -> HelperHeadPerson.Insert at line 17

Source: sandbox-db sys.sql_modules

Source size: 2.832 characters

Interpretation

  • Database trigger. Treat parent table and enqueue/object-layer calls as the main relation points.
  • Object-layer bridge detected through QBM_PJobCreate helper usage.
  • DBQueue relation detected. Follow the task procedure and referenced-by list for async processing.

Relations

  • HOFireEvent -> HelperHeadPerson.Insert at line 4
  • HOFireEvent -> HelperHeadPerson.Insert at line 7
  • HOFireEvent -> HelperHeadPerson.Insert at line 9
  • HOFireEvent -> HelperHeadPerson.Insert at line 17
  • Bulk DBQueue insert -> QER-K-PersonHasObject / QER_ZPersonHasObject at line 4
  • Bulk DBQueue insert -> QER-K-HelperHeadPerson / QER_ZHelperHeadPerson at line 4
  • Bulk DBQueue insert -> QER-K-AllForOnePerson / QER_ZAllForOnePerson at line 4
  • Bulk DBQueue insert -> QER-K-HelperPersonOrg / QER_ZHelperPersonOrg at line 4
  • Bulk DBQueue insert -> QER-K-HelperHeadPerson / QER_ZHelperHeadPerson at line 7
  • Bulk DBQueue insert -> QER-K-AllForOnePerson / QER_ZAllForOnePerson at line 7
  • Bulk DBQueue insert -> QER-K-HelperPersonOrg / QER_ZHelperPersonOrg at line 7
  • Bulk DBQueue insert -> QER-K-AllForOnePerson / QER_ZAllForOnePerson at line 9
  • Bulk DBQueue insert -> QER-K-HelperPersonOrg / QER_ZHelperPersonOrg at line 9
  • References QBM_PJobCreate*
  • References QBM_PJobCreate_HOFireEvent*
  • References QBM_PDBQueueInsert_Bulk
  • Trigger parent table: Person

Typed Edges

  • fires event HelperHeadPerson.Insert HOFireEvent -> HelperHeadPerson.Insert at line 4
  • queues DBQueue task QER_ZPersonHasObject at line 4 Bulk DBQueue insert -> QER-K-PersonHasObject / QER_ZPersonHasObject at line 4
  • queues DBQueue task QER_ZHelperHeadPerson at line 4 Bulk DBQueue insert -> QER-K-HelperHeadPerson / QER_ZHelperHeadPerson at line 4
  • queues DBQueue task QER_ZAllForOnePerson at line 4 Bulk DBQueue insert -> QER-K-AllForOnePerson / QER_ZAllForOnePerson at line 4
  • queues DBQueue task QER_ZHelperPersonOrg at line 4 Bulk DBQueue insert -> QER-K-HelperPersonOrg / QER_ZHelperPersonOrg at line 4
  • queues DBQueue task QER_ZHelperHeadPerson at line 7 Bulk DBQueue insert -> QER-K-HelperHeadPerson / QER_ZHelperHeadPerson at line 7
  • queues DBQueue task QER_ZAllForOnePerson at line 7 Bulk DBQueue insert -> QER-K-AllForOnePerson / QER_ZAllForOnePerson at line 7
  • queues DBQueue task QER_ZHelperPersonOrg at line 7 Bulk DBQueue insert -> QER-K-HelperPersonOrg / QER_ZHelperPersonOrg at line 7
  • queues DBQueue task QER_ZAllForOnePerson at line 9 Bulk DBQueue insert -> QER-K-AllForOnePerson / QER_ZAllForOnePerson at line 9
  • queues DBQueue task QER_ZHelperPersonOrg at line 9 Bulk DBQueue insert -> QER-K-HelperPersonOrg / QER_ZHelperPersonOrg at line 9
  • trigger on table Person Trigger parent table: Person
  • references source dbo.QBM_FCVElementToObjectKey2 source text reference
  • references source dbo.QBM_FGISessionContext source text reference
  • references source dbo.QBM_PDBQueueInsert_Bulk source text reference
  • references source dbo.QBM_PJobCreate source text reference
  • references source dbo.QBM_PJobCreate_HOFireEvent source text reference
  • references source dbo.QBM_PJobCreate_HOFireEvent_L source text reference
  • references source dbo.QBM_PSessionErrorAdd source text reference

Complete Source

SQL137 lines
1CREATE trigger QER_TIPerson2  ON Person FOR3INSERT NOT FOR Replication4AS5BEGIN6  BEGIN TRY7    IF EXISTS(8      SELECT TOP 1 19      FROM inserted)10    GOTO start11    RETURN start:12    DECLARE @GenProcID varchar(38)13    DECLARE @XUser nvarchar(64)14    SELECT @GenProcID = dbo.QBM_FGISessionContext('')15    SELECT @XUser = dbo.QBM_FGISessionContext('XUser')16    DECLARE @DBQueueElements_01 QBM_YDBQueueRaw17    INSERT INTO @DBQueueElements_01(object,18    subobject,19    genprocid)20    SELECT21      x.uid,22      NULL,23      @GenProcID24    FROM(25    SELECT uid_person AS uid26    FROM inserted) AS x27    EXEC QBM_PDBQueueInsert_Bulk 'QER-K-PersonHasObject',28      @DBQueueElements_0129    DECLARE @DBQueueElements_02 QBM_YDBQueueRaw30    INSERT INTO @DBQueueElements_02(object,31    subobject,32    genprocid)33    SELECT34      x.uid,35      NULL,36      @GenProcID37    FROM(38    SELECT uid_personHead AS uid39    FROM inserted40    WHERE41      uid_personHead > ' '42    UNION43    SELECT us.UID_PersonReceiver AS uid44    FROM inserted i45    JOIN QERUniversalSubstitute us46      ON i.UID_PersonHead = us.UID_PersonSender47    WHERE48      i.UID_PersonHead > ' ' AND us.IsCurrentlyActive = 1 AND us.UseForHeadPerson = 1) AS x49    EXEC QBM_PDBQueueInsert_Bulk 'QER-K-HelperHeadPerson',50      @DBQueueElements_0251    DECLARE @DBQueueElements_03 QBM_YDBQueueRaw52    INSERT INTO @DBQueueElements_03(object,53    subobject,54    genprocid)55    SELECT56      x.uid,57      NULL,58      @GenProcID59    FROM(60    SELECT inserted.uid_person AS uid61    FROM inserted) AS x62    EXEC QBM_PDBQueueInsert_Bulk 'QER-K-AllForOnePerson',63      @DBQueueElements_0364    EXEC QBM_PDBQueueInsert_Bulk 'QER-K-HelperPersonOrg',65      @DBQueueElements_0366    UPDATE Person67    SET PasswordLastSet = getutcdate(),68    XDateUpdated = GETUTCDATE(),69    XUserUpdated = @XUser70    FROM Person p71    JOIN inserted i72      ON p.UID_Person = i.UID_Person73    WHERE74      i.PasswordLastSet IS NULL75    IF EXISTS(76      SELECT TOP 1 177      FROM inserted i78      WHERE79        i.UID_PersonHead > ' ')80    BEGIN81      INSERT INTO HelperHeadPerson(UID_Person,82      UID_PersonHead,83      XOrigin,84      XDateInserted,85      XDateUpdated,86      XUserInserted,87      XUserUpdated,88      XObjectKey)89      SELECT90        i.UID_Person,91        i.UID_PersonHead,92        1,93        GETUTCDATE(),94        GETUTCDATE(),95        @XUser,96        @XUser,97        dbo.QBM_FCVElementToObjectKey2('HelperHeadPerson',98        'UID_Person',99        i.UID_Person,100        'UID_PersonHead',101        i.UID_PersonHead)102      FROM inserted i103      WHERE104        i.UID_PersonHead > ' ' AND NOT EXISTS(105      SELECT TOP 1 1106      FROM HelperHeadPerson e107      WHERE108        e.UID_Person = i.UID_Person AND e.UID_PersonHead = i.UID_PersonHead)109      DECLARE @EntriesToFire QBM_YParameterList110      INSERT INTO @EntriesToFire(Parameter1)111      SELECT112        dbo.QBM_FCVElementToObjectKey2('HelperHeadPerson',113        'UID_Person',114        i.UID_Person,115        'UID_PersonHead',116        i.UID_PersonHead)117      FROM inserted i118      WHERE119        i.UID_PersonHead > ' '120      EXEC QBM_PJobCreate_HOFireEvent_L 'HelperHeadPerson',121        @EntriesToFire,122      'Insert',123        @GenProcID,124        @AdditionalObjectkeysAffected = DEFAULT,125        @isToFreezeOnError = 1126    END127  END TRY128  BEGIN CATCH129    EXEC QBM_PSessionErrorAdd DEFAULT130    RAISERROR('',131    18,132    1)133      WITH NOWAIT134  END CATCH135  ende:136  RETURN137END
Open raw exported source
SQL ยท Raw19 lines
1    create   trigger QER_TIPerson on Person  for Insert not for Replication as begin  BEGIN TRY if exists (select top 1 1 from inserted) goto start2 return start: declare @GenProcID varchar(38) declare @XUser nvarchar(64) select @GenProcID = dbo.QBM_FGISessionContext('') select @XUser = dbo.QBM_FGISessionContext3('XUser') declare @DBQueueElements_01 QBM_YDBQueueRaw insert into @DBQueueElements_01 (object, subobject, genprocid) select x.uid, null, @GenProcID from4 ( select uid_person as uid from inserted  ) as x exec QBM_PDBQueueInsert_Bulk 'QER-K-PersonHasObject', @DBQueueElements_01                     declare5 @DBQueueElements_02 QBM_YDBQueueRaw insert into @DBQueueElements_02 (object, subobject, genprocid) select x.uid, null, @GenProcID from ( select uid_personHead6 as uid from inserted where uid_personHead > ' ' union  select us.UID_PersonReceiver as uid from inserted i join QERUniversalSubstitute us on i.UID_PersonHead7 = us.UID_PersonSender where i.UID_PersonHead > ' ' and us.IsCurrentlyActive = 1 and us.UseForHeadPerson = 1 ) as x exec QBM_PDBQueueInsert_Bulk 'QER-K-HelperHeadPerson'8, @DBQueueElements_02 declare @DBQueueElements_03 QBM_YDBQueueRaw insert into @DBQueueElements_03 (object, subobject, genprocid) select x.uid, null, @GenProcID9 from ( select inserted.uid_person as uid from inserted ) as x exec QBM_PDBQueueInsert_Bulk 'QER-K-AllForOnePerson', @DBQueueElements_03 exec QBM_PDBQueueInsert_Bulk10 'QER-K-HelperPersonOrg', @DBQueueElements_03    update Person set PasswordLastSet = getutcdate()  , XDateUpdated = GETUTCDATE() , XUserUpdated = @XUser11 from Person p join inserted i on p.UID_Person = i.UID_Person where i.PasswordLastSet is null  if exists (select top 1 1 from inserted i where i.UID_PersonHead12 > ' ' ) begin insert into HelperHeadPerson(UID_Person, UID_PersonHead, XOrigin , XDateInserted, XDateUpdated, XUserInserted, XUserUpdated , XObjectKey13 ) select i.UID_Person, i.UID_PersonHead, 1 , GETUTCDATE(), GETUTCDATE(), @XUser, @XUser , dbo.QBM_FCVElementToObjectKey2('HelperHeadPerson', 'UID_Person'14, i.UID_Person, 'UID_PersonHead', i.UID_PersonHead) from inserted i where i.UID_PersonHead > ' ' and not exists (select top 1 1 from HelperHeadPerson e15 where e.UID_Person = i.UID_Person and e.UID_PersonHead = i.UID_PersonHead )  declare @EntriesToFire QBM_YParameterList insert into @EntriesToFire(Parameter116) select dbo.QBM_FCVElementToObjectKey2('HelperHeadPerson', 'UID_Person', i.UID_Person, 'UID_PersonHead', i.UID_PersonHead) from inserted i where i.UID_PersonHead17 > ' ' exec QBM_PJobCreate_HOFireEvent_L 'HelperHeadPerson', @EntriesToFire, 'Insert', @GenProcID , @AdditionalObjectkeysAffected = default , @isToFreezeOnError18 = 1  end END TRY BEGIN CATCH exec QBM_PSessionErrorAdd default RAISERROR ('', 18, 1) WITH NOWAIT END CATCH ende: return end 19