Back to OIM Explorer

dbo.QBM_PDatabasePrepareCheck2

Stored ProcedureSQL_STORED_PROCEDURESandbox DB

Stored Procedure.

Source: sandbox-db sys.sql_modules

Source size: 5.048 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.QBM_FCVElementToObjectKey1 source text reference
  • references source dbo.QBM_FCVGUIDToModuleOwner source text reference
  • references source dbo.QBM_FGIDBOwner source text reference
  • references source dbo.QBM_FGIModuleExists source text reference
  • references source dbo.QBM_FGISessionErrorRethrow source text reference
  • references source dbo.QBM_P195C5572460EC8DDA27B3A3_1 source text reference
  • references source dbo.QBM_PDatabasePrepare source text reference
  • references source dbo.QBM_PDatabasePrepareCheck1 source text reference
  • references source dbo.QBM_PSessionErrorAdd source text reference

Complete Source

SQL214 lines
1CREATE PROCEDURE QBM_PDatabasePrepareCheck22AS3BEGIN4  DECLARE @xdate datetime = getutcdate()5  DECLARE @XUser nvarchar(64) = object_name(@@procid)6  DECLARE @DefaultPassword varchar(64)7  DECLARE @defaultSalt varchar(5)8  DECLARE @ObjectKeyOfRow varchar(138) = '<Key><T>DialogConfigParm</T><P>QBM-c88cc1888e12462e84acaee7dd94931d</P></Key>'9  DECLARE @TableName varchar(30) = 'DialogConfigParm'10  DECLARE @ColumnName varchar(30) = 'Enabled'11  DECLARE @ActionUser varchar(30) = 'dbmig'12  SET XACT_ABORT OFF13  BEGIN TRY14    SET nocount15      ON16    EXEC QBM_PDatabasePrepareCheck117    UPDATE dialogcolumn18    SET IsMultiValued = c.IsMultiValued,19    XDateUpdated = @Xdate,20    XUserUpdated = @XUser21    FROM dialogcolumn22    JOIN dialogcolumn c23      ON dialogcolumn.uid_basecolumn = c.uid_dialogcolumn24    JOIN dialogtable t25      WITH(readpast)26      ON t.UID_DialogTable = c.UID_DialogTable27    WHERE28      t.tabletype IN('T',29    'B',30    'M') AND DialogColumn.IsMultiValued <> c.IsMultiValued31    UPDATE dialogcolumn32    SET IsMultiValued = ba.IsMultiValued,33    XDateUpdated = @Xdate,34    XUserUpdated = @XUser35    FROM dialogcolumn36    JOIN Dialogcolumn ba37      ON ba.UID_DialogColumnUnionView = dialogcolumn.uid_dialogcolumn38    WHERE39      dialogcolumn.IsMultiValued <> ba.IsMultiValued40    UPDATE dialogcolumn41    SET isalternatepkmember = 0,42    XDateUpdated = @Xdate,43    XUserUpdated = @XUser44    FROM dialogcolumn c45    JOIN dialogtable t46      WITH(readpast)47      ON c.UID_DialogTable = t.UID_DialogTable48    WHERE49      c.isalternatepkmember = 1 AND c.SchemaDataType = 'varchar' AND c.SchemaDatalen = 38 AND NOT EXISTS(50    SELECT TOP 1 151    FROM QBMRelation cr52    WHERE53      c.uid_dialogcolumn = cr.uid_childcolumn) AND t.isTransportdisabled = 054    UPDATE dialogcolumn55    SET istoignoreonexport = 0,56    XDateUpdated = @Xdate,57    XUserUpdated = @XUser58    WHERE59      isAlternatepkMember = 1 AND istoignoreonexport = 160    IF dbo.QBM_FGIDBOwner() <> 'CCC'61    BEGIN62      UPDATE DialogColumn63      SET IsToIgnoreOnExport = 1,64      IsToIgnoreOnImport = 1,65      XDateUpdated = @Xdate,66      XUserUpdated = @XUser67      FROM DialogColumn c68      JOIN DialogTable t69        WITH(readpast)70        ON c.UID_DialogTable = t.UID_DialogTable71      WHERE72        dbo.QBM_FCVGUIDToModuleOwner(c.UID_DialogColumn) = 'MDK' AND(IsToIgnoreOnExport = 0 OR IsToIgnoreOnImport = 0)73    END74    SELECT @DefaultPassword = 'UnableForDialogLogin'75    SELECT @defaultSalt = '65721' merge INTO DialogUser AS t using(76    VALUES('QBM-9A0DB20E74F348ABA56BED38EAA9ADF6', 'sa', 1, 0)) AS s(UID_DialogUser,77    username,78    IsServiceAccount,79    IsReadOnly)80      ON t.UID_DialogUser = s.UID_DialogUser WHEN matched THEN81    UPDATE82    SET t.IsReadOnly = s.IsReadOnly,83    t.password = @DefaultPassword,84    t.salt = @defaultSalt,85    t.username = s.Username,86    t.IsServiceAccount = s.IsServiceAccount,87    t.XdateUpdated = @xdate,88    t.XUserUpdated = @XUser WHEN NOT matched BY target AND dbo.QBM_FGIModuleExists(89    LEFT(s.UID_DialogUser, 3)) = 1 THEN90    INSERT(UID_DialogUser,91    username,92    password,93    salt,94    IsReadOnly,95    XObjectKey,96    XUserInserted,97    XUserUpdated,98    XDateInserted,99    XDateUpdated,100    IsServiceAccount)101    VALUES(s.UID_DialogUser,102    s.Username,103    @DefaultPassword,104    @defaultSalt,105    s.IsReadOnly,106    dbo.QBM_FCVElementToObjectKey1('dialoguser', 'uid_dialogUser', s.UID_DialogUser),107    @XUser,108    @XUser,109    @xdate,110    @xdate,111    s.IsServiceAccount);112    DELETE QBMDBQueueTask113    FROM QBMDBQueueTask de114    LEFT115    OUTER116    JOIN QBMModuleDef m117      ON118    LEFT(de.UID_Task,119    3) = m.ModuleName120    WHERE121      m.UID_ModuleDef IS NULL122    DELETE QBMDBQueueTaskDepend123    FROM QBMDBQueueTaskDepend de124    LEFT125    OUTER126    JOIN QBMModuleDef m127      ON128    LEFT(de.UID_TaskPredecessor,129    3) = m.ModuleName130    WHERE131      m.UID_ModuleDef IS NULL132    DELETE QBMDBQueueTaskDepend133    FROM QBMDBQueueTaskDepend de134    LEFT135    OUTER136    JOIN QBMModuleDef m137      ON138    LEFT(de.UID_TaskFollower,139    3) = m.ModuleName140    WHERE141      m.UID_ModuleDef IS NULL142    IF dbo.QBM_FGIDBOwner() = 'CCC' AND EXISTS(143      SELECT TOP 1 1144      FROM sys.tables t145      WITH(readpast)146    JOIN sys.columns c147      WITH(readpast)148      ON t.object_id = c.object_id149    WHERE150      t.name = 'DialogDatabase' AND c.name = 'InitialMigrationRunning')151    BEGIN152      UPDATE DialogConfigParm153      SET Enabled = 1,154      XDateUpdated = @Xdate,155      XUserUpdated = @XUser156      WHERE157        FullPath = 'Common\Autoupdate' AND Enabled = 0158    END159    IF dbo.QBM_FGIDBOwner() = 'CCC'160    BEGIN161      IF EXISTS(162        SELECT TOP 1 1163        FROM QBMBufferConfig cf164        WHERE165          cf.ObjectKeyOfRow = @ObjectKeyOfRow AND cf.TableName = @TableName AND cf.ColumnName = @ColumnName)166      BEGIN167        UPDATE QBMBufferConfig168        SET ContentShort = '0',169        XDateUpdated = @Xdate,170        XUserUpdated = @XUser171        FROM QBMBufferConfig cf172        WHERE173          cf.ObjectKeyOfRow = @ObjectKeyOfRow AND cf.TableName = @TableName AND cf.ColumnName = @ColumnName174      END175      ELSE176      BEGIN177        INSERT INTO QBMBufferConfig(UID_QBMBufferConfig,178        TableName,179        ColumnName,180        ObjectKeyOfRow,181        XDateInserted,182        XDateUpdated,183        XUserInserted,184        XUserUpdated,185        ContentShort,186        HasContentFull,187        ContentFull)188        SELECT189          newid(),190          @TableName,191          @ColumnName,192          @ObjectKeyOfRow,193          getutcdate(),194          getutcdate(),195          @ActionUser,196          @ActionUser,197          '0',198          0,199          NULL200      END201    END202    EXEC QBM_P195C5572460EC8DDA27B3A3_1203  END TRY204  BEGIN CATCH205    EXEC QBM_PSessionErrorAdd DEFAULT206    DECLARE @Rethrow varchar(1000) = dbo.QBM_FGISessionErrorRethrow()207    RAISERROR(@Rethrow,208    18,209    1)210      WITH NOWAIT211  END CATCH212  ende:213  RETURN214END
Open raw exported source
SQL ยท Raw33 lines
1  create   procedure QBM_PDatabasePrepareCheck2 as begin   declare @xdate datetime = getutcdate() declare @XUser nvarchar(64) = object_name(@@procid2)   declare @DefaultPassword varchar(64) declare @defaultSalt varchar(5) declare @ObjectKeyOfRow varchar(138) = '<Key><T>DialogConfigParm</T><P>QBM-c88cc1888e12462e84acaee7dd94931d</P></Key>'3 declare @TableName varchar(30) = 'DialogConfigParm' declare @ColumnName varchar(30) = 'Enabled' declare @ActionUser varchar(30) = 'dbmig' SET XACT_ABORT4 OFF BEGIN TRY set nocount on exec QBM_PDatabasePrepareCheck1    update dialogcolumn set IsMultiValued = c.IsMultiValued  , XDateUpdated = @Xdate , XUserUpdated5 = @XUser from dialogcolumn join dialogcolumn c on dialogcolumn.uid_basecolumn = c.uid_dialogcolumn  join dialogtable t with (readpast) on t.UID_DialogTable6 = c.UID_DialogTable where t.tabletype in ('T', 'B', 'M') and DialogColumn.IsMultiValued <> c.IsMultiValued update dialogcolumn set IsMultiValued = ba.IsMultiValued7  , XDateUpdated = @Xdate , XUserUpdated = @XUser from dialogcolumn join Dialogcolumn ba on ba.UID_DialogColumnUnionView = dialogcolumn.uid_dialogcolumn8  where dialogcolumn.IsMultiValued <> ba.IsMultiValued    update dialogcolumn set isalternatepkmember = 0  , XDateUpdated = @Xdate , XUserUpdated = @XUser9  from dialogcolumn c join dialogtable t with (readpast) on c.UID_DialogTable = t.UID_DialogTable where c.isalternatepkmember = 1 and c.SchemaDataType 10= 'varchar' and c.SchemaDatalen = 38  and not exists (select top 1 1 from QBMRelation cr where c.uid_dialogcolumn = cr.uid_childcolumn ) and t.isTransportdisabled11 = 0  update dialogcolumn set istoignoreonexport = 0  , XDateUpdated = @Xdate , XUserUpdated = @XUser where isAlternatepkMember = 1 and istoignoreonexport12 = 1 if dbo.QBM_FGIDBOwner() <> 'CCC' begin update DialogColumn set IsToIgnoreOnExport = 1 , IsToIgnoreOnImport = 1  , XDateUpdated = @Xdate , XUserUpdated13 = @XUser  from DialogColumn c join DialogTable t with (readpast) on c.UID_DialogTable = t.UID_DialogTable  where dbo.QBM_FCVGUIDToModuleOwner( c.UID_DialogColumn14 ) = 'MDK' and (IsToIgnoreOnExport = 0 or IsToIgnoreOnImport = 0 ) end  select @DefaultPassword = 'UnableForDialogLogin' select @defaultSalt = '65721' 15merge into DialogUser as t using ( values ('QBM-9A0DB20E74F348ABA56BED38EAA9ADF6', 'sa' , 1, 0)  ) as s (UID_DialogUser , username , IsServiceAccount ,16 IsReadOnly ) on t.UID_DialogUser = s.UID_DialogUser when matched then update set t.IsReadOnly = s.IsReadOnly , t.password = @DefaultPassword , t.salt 17= @defaultSalt , t.username = s.Username , t.IsServiceAccount = s.IsServiceAccount , t.XdateUpdated = @xdate , t.XUserUpdated = @XUser when not matched18 by target  and dbo.QBM_FGIModuleExists(left(s.UID_DialogUser, 3)) = 1 then insert ( UID_DialogUser, username, password, salt, IsReadOnly , XObjectKey 19, XUserInserted, XUserUpdated, XDateInserted, XDateUpdated , IsServiceAccount ) values (s.UID_DialogUser, s.Username, @DefaultPassword, @defaultSalt, s.IsReadOnly20 , dbo.QBM_FCVElementToObjectKey1('dialoguser', 'uid_dialogUser', s.UID_DialogUser) , @XUser, @XUser, @xdate, @xdate , s.IsServiceAccount ) ;    delete21 QBMDBQueueTask  from QBMDBQueueTask de left outer join QBMModuleDef m on LEFT(de.UID_Task , 3) = m.ModuleName where m.UID_ModuleDef is null delete QBMDBQueueTaskDepend22  from QBMDBQueueTaskDepend de left outer join QBMModuleDef m on LEFT(de.UID_TaskPredecessor , 3) = m.ModuleName where m.UID_ModuleDef is null delete QBMDBQueueTaskDepend23  from QBMDBQueueTaskDepend de left outer join QBMModuleDef m on LEFT(de.UID_TaskFollower , 3) = m.ModuleName where m.UID_ModuleDef is null    if dbo.QBM_FGIDBOwner24() = 'CCC' and exists  (select top 1 1 from sys.tables t with (readpast) join sys.columns c with (readpast) on t.object_id = c.object_id where t.name =25 'DialogDatabase' and c.name = 'InitialMigrationRunning' ) begin update DialogConfigParm set Enabled = 1  , XDateUpdated = @Xdate , XUserUpdated = @XUser26 where FullPath = 'Common\Autoupdate' and Enabled = 0 end  if dbo.QBM_FGIDBOwner() = 'CCC' begin if exists (select top 1 1 from QBMBufferConfig cf where27 cf.ObjectKeyOfRow = @ObjectKeyOfRow and cf.TableName = @TableName and cf.ColumnName = @ColumnName ) begin update QBMBufferConfig set ContentShort = '0'28  , XDateUpdated = @Xdate , XUserUpdated = @XUser from QBMBufferConfig cf where cf.ObjectKeyOfRow = @ObjectKeyOfRow and cf.TableName = @TableName and cf.ColumnName29 = @ColumnName end else begin insert into QBMBufferConfig(UID_QBMBufferConfig, TableName, ColumnName, ObjectKeyOfRow, XDateInserted, XDateUpdated, XUserInserted30, XUserUpdated, ContentShort, HasContentFull, ContentFull ) select newid(), @TableName , @ColumnName, @ObjectKeyOfRow , getutcdate() , getutcdate(), @ActionUser31, @ActionUser , '0', 0, null end end  exec QBM_P195C5572460EC8DDA27B3A3_1 END TRY BEGIN CATCH exec QBM_PSessionErrorAdd default declare @Rethrow varchar32(1000) = dbo.QBM_FGISessionErrorRethrow() RAISERROR (@Rethrow, 18, 1) WITH NOWAIT END CATCH ende: return end 33