Back to OIM Explorer

dbo.LDP_RLDPMachineInLDAPGroup

Stored ProcedureSQL_STORED_PROCEDURESandbox DB

Stored Procedure.

Source: sandbox-db sys.sql_modules

Source size: 2.609 characters

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.DPR_FGIProjectionRootRunning source text reference
  • references source dbo.QBM_FGIBitPatternXMarkedForDel source text reference
  • references source dbo.DPR_PSlotResetWhileProj_L source text reference
  • references source dbo.QBM_PDBQCS_CurrentMoveSlot source text reference
  • references source dbo.QBM_PSessionErrorAdd source text reference
  • references source dbo.QBM_PSlotResetWhileJobRun_L source text reference

Complete Source

SQL110 lines
1CREATE PROCEDURE LDP_RLDPMachineInLDAPGroup(2  @SlotNumber int3)4AS5BEGIN6  DECLARE @ObjectKeysToCheck_Projection QBM_YParameterList7  DECLARE @ObjectKeysToCheck_Jobrunning QBM_YParameterList8  DECLARE @MyName nvarchar(64) = object_name(@@procid)9  DECLARE @DBQueueCurrent QBM_YDBQueueCurrent10  DECLARE @resetted int11  DECLARE @QBM_BitPatternXMarkedForDel_Delay int = dbo.QBM_FGIBitPatternXMarkedForDel('|Delay|',12  0)13  DECLARE @SlotNumberSource int14  DECLARE @SlotNumberTarget int15  DECLARE @DBQueueToMove QBM_YDBQCSCurrentToMove16  DECLARE @RowsMoved int17  BEGIN TRY18    INSERT INTO @DBQueueCurrent(UID_DialogDBQueue,19    UID_Parameter,20    UID_SubParameter,21    GenProcID)22    SELECT23      UID_DialogDBQueue,24      UID_Parameter,25      UID_SubParameter,26      GenProcID27    FROM QBMDBQueueCurrent cu28      WITH(readpast)29    WHERE30      cu.SlotNumber = @SlotNumber31    IF @@rowcount = 032    BEGIN33      GOTO EndLabel34    END35    DELETE @DBQueueToMove36    INSERT INTO @DBQueueToMove(UID_DialogDBQueue)37    SELECT cul.UID_DialogDBQueue38    FROM @DBQueueCurrent cul39    LEFT40    OUTER41    JOIN LDPMachine m42      WITH(readpast)43      ON uid_parameter = uid_LDPMachine44    WHERE45      (m.UID_LDPMachine IS NULL OR m.XMarkedForDeletion & @QBM_BitPatternXMarkedForDel_Delay > 0)46    IF @@ROWCOUNT > 047    BEGIN48      SELECT @SlotNumberSource = @SlotNumber49      SELECT @SlotnumberTarget = 050      EXEC @RowsMoved = QBM_PDBQCS_CurrentMoveSlot @DBQueueToMove,51        @SlotNumberSource,52        @SlotnumberTarget53      DELETE @DBQueueCurrent54      FROM @DBQueueCurrent cu55      JOIN @DBQueueToMove mo56        ON cu.UID_DialogDBQueue = mo.UID_DialogDBQueue57    END58    IF 1 = dbo.DPR_FGIProjectionRootRunning('LDPDomain')59    BEGIN60      INSERT INTO @ObjectKeysToCheck_Projection(Parameter1,61      Parameter2)62      SELECT63        cu.UID_Parameter,64        ro.ObjectKeyRoot65      FROM @DBQueueCurrent cu66      JOIN LDPMachine a67        ON a.UID_LDPMachine = cu.UID_Parameter68      JOIN LDP_VElementAndRoot ro69        ON a.XObjectKey = ro.ObjectKeyElement70      WHERE71        ro.ElementTable = 'LDPMachine'72      EXEC @resetted = DPR_PSlotResetWhileProj_L @DBQueueCurrent,73        @ObjectKeysToCheck_Projection,74        @MyName,75        @SlotNumber76      IF @resetted > 077      BEGIN78        DELETE @DBQueueCurrent79        FROM @DBQueueCurrent v80        LEFT81        OUTER82        JOIN QBMDBQueueCurrent cu83          WITH(readpast)84          ON v.UID_DialogDBQueue = cu.UID_DialogDBQueue AND cu.SlotNumber = @SlotNumber85        WHERE86          cu.UID_DialogDBQueue IS NULL87      END88    END89    INSERT INTO @ObjectKeysToCheck_Jobrunning(Parameter1,90    Parameter2)91    SELECT92      cu.UID_Parameter,93      x.XObjectKey94    FROM @DBQueueCurrent cu95    JOIN LDPMachine x96      ON cu.UID_Parameter = x.UID_LDPMachine97    EXEC @resetted = QBM_PSlotResetWhileJobRun_L @DBQueueCurrent,98      @@PROCID,99      @ObjectKeysToCheck_Jobrunning,100      @SlotNumber = @SlotNumber101  END TRY102  BEGIN CATCH103    EXEC QBM_PSessionErrorAdd DEFAULT104    RAISERROR('',105    18,106    1)107      WITH NOWAIT108  END CATCH109  endLabel:110END
Open raw exported source
SQL ยท Raw18 lines
1create   procedure LDP_RLDPMachineInLDAPGroup (@SlotNumber int) AS begin declare @ObjectKeysToCheck_Projection QBM_YParameterList declare @ObjectKeysToCheck_Jobrunning2 QBM_YParameterList declare @MyName nvarchar(64) = object_name(@@procid) declare @DBQueueCurrent QBM_YDBQueueCurrent declare @resetted int declare @QBM_BitPatternXMarkedForDel_Delay3 int = dbo.QBM_FGIBitPatternXMarkedForDel('|Delay|', 0) declare @SlotNumberSource int declare @SlotNumberTarget int declare @DBQueueToMove QBM_YDBQCSCurrentToMove4 declare @RowsMoved int BEGIN TRY insert into @DBQueueCurrent(UID_DialogDBQueue, UID_Parameter, UID_SubParameter, GenProcID) select UID_DialogDBQueue, 5UID_Parameter, UID_SubParameter, GenProcID from QBMDBQueueCurrent cu with (readpast) where cu.SlotNumber = @SlotNumber if @@rowcount = 0 begin goto EndLabel6 end  delete @DBQueueToMove  insert into @DBQueueToMove(UID_DialogDBQueue) select cul.UID_DialogDBQueue from @DBQueueCurrent cul  left outer join LDPMachine7 m with (readpast) on uid_parameter = uid_LDPMachine where (m.UID_LDPMachine is null or m.XMarkedForDeletion & @QBM_BitPatternXMarkedForDel_Delay > 0 )8 if @@ROWCOUNT > 0 begin select @SlotNumberSource = @SlotNumber  select @SlotnumberTarget = 0 exec @RowsMoved = QBM_PDBQCS_CurrentMoveSlot @DBQueueToMove9, @SlotNumberSource, @SlotnumberTarget  delete @DBQueueCurrent from @DBQueueCurrent cu join @DBQueueToMove mo on cu.UID_DialogDBQueue = mo.UID_DialogDBQueue10 end if 1 = dbo.DPR_FGIProjectionRootRunning ('LDPDomain') begin insert into @ObjectKeysToCheck_Projection(Parameter1, Parameter2) select cu.UID_Parameter11, ro.ObjectKeyRoot from @DBQueueCurrent cu join LDPMachine a on a.UID_LDPMachine = cu.UID_Parameter join LDP_VElementAndRoot ro on a.XObjectKey = ro.ObjectKeyElement12  where ro.ElementTable = 'LDPMachine' exec @resetted = DPR_PSlotResetWhileProj_L @DBQueueCurrent, @ObjectKeysToCheck_Projection, @MyName, @SlotNumber 13if @resetted > 0 begin delete  @DBQueueCurrent from @DBQueueCurrent v left outer join QBMDBQueueCurrent cu with (readpast) on v.UID_DialogDBQueue = cu.UID_DialogDBQueue14 and cu.SlotNumber = @SlotNumber where cu.UID_DialogDBQueue is null end end  insert into @ObjectKeysToCheck_Jobrunning(Parameter1, Parameter2) select cu.UID_Parameter15, x.XObjectKey from @DBQueueCurrent cu join LDPMachine x on cu.UID_Parameter = x.UID_LDPMachine exec @resetted = QBM_PSlotResetWhileJobRun_L @DBQueueCurrent16, @@PROCID, @ObjectKeysToCheck_Jobrunning, @SlotNumber = @SlotNumber  END TRY BEGIN CATCH exec QBM_PSessionErrorAdd default RAISERROR ('', 18, 1) WITH 17NOWAIT END CATCH endLabel: end 18