dbo.QBM_FSQBufferConfigSaveOrigin
Scalar FunctionSQL_SCALAR_FUNCTIONSandbox DB
Interpretation
- Database function. Usually supports views, validation, or calculated predicates; look at referenced-by entries for callers.
Relations
- No extracted relations.
Typed Edges
- references source dbo.QBM_FCVGUIDToModuleOwner source text reference
- references source dbo.QBM_FCVStringToIndent source text reference
- references source dbo.QBM_FGISessionContext source text reference
- references source dbo.QBM_FSQCVBufferToColumn source text reference
- references source dbo.QBM_FSQCVColumnToBuffer source text reference
- references source dbo.QBM_FSQFunctionCallModuleOwner source text reference
- references source dbo.QBM_FSQIsNullClauseCmp source text reference
- references source dbo.QBM_FSQTableJoin source text reference
Complete Source
1CREATE FUNCTION dbo.QBM_FSQBufferConfigSaveOrigin(2 @TableName varchar(30)3) RETURNS nvarchar(max4)5AS6BEGIN7 DECLARE @erg nvarchar(max) = N ''8 DECLARE @Header nvarchar(max) = CONCAT('9-----------------------------------------------------------------------10-- save to QBMBufferConfig11-----------------------------------------------------------------------12 if exists (select top 1 113 from deleted d14 where '15 ,16 dbo.QBM_FSQFunctionCallModuleOwner(@TableName, 'd'),17 ' <> ''CCC''18 )19 and dbo.QBM_FGISessionContext (''HotfixMode'') = ''''20 begin21')22 DECLARE @Footer nvarchar(max) = CONCAT('23 end -- exists ... ',24 dbo.QBM_FSQFunctionCallModuleOwner(@TableName, 'd'),25 '26-----------------------------------------------------------------------27-- / save to QBMBufferConfig28-----------------------------------------------------------------------29'30 )31 IF EXISTS(32 SELECT TOP 1 133 FROM DialogDatabase db34 WITH(readpast)35 WHERE36 isnull(db.ModuleOwner, '') <> 'CCC' AND db.IsMainDatabase = 1)37 BEGIN38 GOTO endLabel39 END40 SELECT41 @erg = STRING_AGG(convert(nvarchar(max), '42if update(' + x.ColumnName + ')43 begin44 -- something to insert45 if exists (select top 1 146 from deleted d left outer join QBMBufferConfig cf on d.XObjectKey = cf.ObjectKeyOfRow47 and cf.TableName = '''48 + @TableName + '''49 and cf.ColumnName = ''' + x.ColumnName + '''50 where cf.ObjectKeyOfRow is null51 and ' + dbo.QBM_FSQFunctionCallModuleOwner52 (@TableName, 'd') + ' <> ''CCC''53 )54 begin55 insert into QBMBufferConfig(UID_QBMBufferConfig, TableName, ColumnName, ObjectKeyOfRow,56 XDateInserted, XDateUpdated, XUserInserted, XUserUpdated,57 ContentShort, HasContentFull, ContentFull58 )59 select newid(), '''60 + @TableName + ''', ''' + x.ColumnName + ''', d.XObjectKey,61 getutcdate() , getutcdate(), @ActionUser, @ActionUser,62' + dbo.QBM_FCVStringToIndent63 (dbo.QBM_FSQCVColumnToBuffer(@TableName, x.ColumnName, 'd'), 17) + '64 from deleted d join ' + @TableName + ' x on ' + dbo.QBM_FSQTableJoin(@TableName65 , 'd', 'x') + '66 where ' + dbo.QBM_FSQIsNullClauseCmp(@TableName, x.ColumnName, 'd') + ' <> ' + dbo.QBM_FSQIsNullClauseCmp(@TableName,67 x.ColumnName, 'x') + '68 and ' + dbo.QBM_FSQFunctionCallModuleOwner(@TableName, 'd') + ' <> ''CCC''69 and Not exists (select top 1 1 70 from QBMBufferConfig cf 71 where cf.TableName = '''72 + @TableName + '''73 and cf.ColumnName = ''' + x.ColumnName + ''' 74 and cf.ObjectKeyOfRow = d.XObjectKey75 )76 end --exists something to insert7778 -- something to delete79 if exists (select top 1 180 from deleted d join QBMBufferConfig cf on d.XObjectKey = cf.ObjectKeyOfRow81 and cf.TableName = '''82 + @TableName + '''83 and cf.ColumnName = ''' + x.ColumnName + '''84 where ' + dbo.QBM_FSQFunctionCallModuleOwner(@TableName,85 'd') + ' <> ''CCC''86 )87 begin88 89 delete QBMBufferConfig90 from deleted d join ' + @TableName + ' x on ' + dbo.QBM_FSQTableJoin(@TableName91 , 'd', 'x') + '92 join QBMBufferConfig cf on cf.TableName = ''' + @TableName + '''93 and cf.ColumnName = ''' + x.ColumnName + '''94 and cf.ObjectKeyOfRow = x.XObjectKey95 where '96 + dbo.QBM_FSQIsNullClauseCmp(@TableName, x.ColumnName, 'd') + ' <> ' + dbo.QBM_FSQIsNullClauseCmp(@TableName,97 x.ColumnName, 'x') + '98 and ' + dbo.QBM_FSQFunctionCallModuleOwner(@TableName, 'd') + ' <> ''CCC''99 and ' + dbo.QBM_FSQIsNullClauseCmp(@TableName100 , x.ColumnName, 'x') + ' = ' + dbo.QBM_FSQCVBufferToColumn(@TableName, x.ColumnName, 'cf', 1) + '101102 end --exists something to delete103104 end -- if update('105 + x.ColumnName + ')106'),107 N '') within108 GROUP(109 ORDER BY x.columnname)110 FROM(111 SELECT c.ColumnName112 FROM DialogColumn c113 WITH(readpast)114 JOIN DialogTable t115 WITH(readpast)116 ON c.UID_DialogTable = t.UID_DialogTable117 WHERE118 t.TableName = @TableName AND t.TableType IN('B', 'T') AND c.IsCustomConfigurable = 1 AND c.UID_DialogColumn NOT IN('QBM-AED774C5BFDF49A1B553D8E25A8124AF'119 , 'QBM-A947BB77A37B41FFA1E3E8706345EF98', 'QBM-1FCCC6E144B441CD9CA78A91EC520306', 'QBM-03D9D91469004B5FB5589C929EBF58DC',120 'QBM-EC951E8CE23A4EC78BB15B131F499E01') AND dbo.QBM_FCVGUIDToModuleOwner(c.UID_DialogColumn) <> 'CCC'121 UNION122 SELECT cb.ColumnName123 FROM DialogColumn cv124 WITH(readpast)125 JOIN DialogTable v126 WITH(readpast)127 ON cv.UID_DialogTable = v.UID_DialogTable128 JOIN DialogTable b129 WITH(readpast)130 ON v.UID_DialogTableBase = b.UID_DialogTable131 JOIN DialogColumn cb132 WITH(readpast)133 ON b.UID_DialogTable = cb.UID_DialogTable AND cv.UID_BaseColumn = cb.UID_DialogColumn134 WHERE135 b.TableName = @TableName AND b.TableType IN('B') AND v.TableType IN('V') AND cv.IsCustomConfigurable = 1) AS x136 IF @erg > ' '137 BEGIN138 SELECT139 @erg = CONCAT(@Header,140 dbo.QBM_FCVStringToIndent(@erg, 2),141 @Footer)142 END143 endLabel:144 RETURN(@erg)145END
Open raw exported source
1 create function dbo.QBM_FSQBufferConfigSaveOrigin (@TableName varchar(30)) returns nvarchar(max) as begin declare @erg nvarchar(max) = N''2 declare @Header nvarchar(max) = concat('3-----------------------------------------------------------------------4-- save to QBMBufferConfig5-----------------------------------------------------------------------6 if exists (select top 1 17 from deleted d8 where '9 , dbo.QBM_FSQFunctionCallModuleOwner (@TableName, 'd') ,' <> ''CCC''10 )11 and dbo.QBM_FGISessionContext (''HotfixMode'') = ''''12 begin13' ) declare14 @Footer nvarchar(max) = concat('15 end -- exists ... ' , dbo.QBM_FSQFunctionCallModuleOwner (@TableName, 'd') ,'16-----------------------------------------------------------------------17-- / save to QBMBufferConfig18-----------------------------------------------------------------------19'20 ) if exists (select top 1 1 from DialogDatabase db with (readpast) where isnull(db.ModuleOwner, '') <> 'CCC' and db.IsMainDatabase = 1 ) begin goto endLabel21 end select @erg = STRING_AGG( convert(nvarchar(max), '22if update(' + x.ColumnName + ')23 begin24 -- something to insert25 if exists (select top 1 126 from deleted d left outer join QBMBufferConfig cf on d.XObjectKey = cf.ObjectKeyOfRow27 and cf.TableName = '''28 + @TableName + '''29 and cf.ColumnName = ''' + x.ColumnName + '''30 where cf.ObjectKeyOfRow is null31 and ' + dbo.QBM_FSQFunctionCallModuleOwner32 (@TableName, 'd') +' <> ''CCC''33 )34 begin35 insert into QBMBufferConfig(UID_QBMBufferConfig, TableName, ColumnName, ObjectKeyOfRow,36 XDateInserted, XDateUpdated, XUserInserted, XUserUpdated,37 ContentShort, HasContentFull, ContentFull38 )39 select newid(), '''40 + @TableName + ''', ''' + x.ColumnName + ''', d.XObjectKey,41 getutcdate() , getutcdate(), @ActionUser, @ActionUser,42' + dbo.QBM_FCVStringToIndent43( dbo.QBM_FSQCVColumnToBuffer(@TableName , x.ColumnName, 'd'), 17) + '44 from deleted d join ' + @TableName + ' x on ' + dbo.QBM_FSQTableJoin(@TableName45 , 'd', 'x') + '46 where ' + dbo.QBM_FSQIsNullClauseCmp(@TableName , x.ColumnName, 'd') + ' <> ' + dbo.QBM_FSQIsNullClauseCmp(@TableName , x.ColumnName47, 'x') + '48 and ' + dbo.QBM_FSQFunctionCallModuleOwner (@TableName, 'd') +' <> ''CCC''49 and Not exists (select top 1 1 50 from QBMBufferConfig cf 51 where cf.TableName = '''52 + @TableName + '''53 and cf.ColumnName = ''' + x.ColumnName + ''' 54 and cf.ObjectKeyOfRow = d.XObjectKey55 )56 end --exists something to insert5758 -- something to delete59 if exists (select top 1 160 from deleted d join QBMBufferConfig cf on d.XObjectKey = cf.ObjectKeyOfRow61 and cf.TableName = '''62 + @TableName + '''63 and cf.ColumnName = ''' + x.ColumnName + '''64 where ' + dbo.QBM_FSQFunctionCallModuleOwner (@TableName, 'd') +65' <> ''CCC''66 )67 begin68 69 delete QBMBufferConfig70 from deleted d join ' + @TableName + ' x on ' + dbo.QBM_FSQTableJoin(@TableName , 'd',71 'x') + '72 join QBMBufferConfig cf on cf.TableName = ''' + @TableName + '''73 and cf.ColumnName = ''' + x.ColumnName + '''74 and cf.ObjectKeyOfRow = x.XObjectKey75 where '76 + dbo.QBM_FSQIsNullClauseCmp(@TableName , x.ColumnName, 'd') + ' <> ' + dbo.QBM_FSQIsNullClauseCmp(@TableName , x.ColumnName, 'x') + '77 and ' + dbo.QBM_FSQFunctionCallModuleOwner78 (@TableName, 'd') +' <> ''CCC''79 and ' + dbo.QBM_FSQIsNullClauseCmp(@TableName , x.ColumnName, 'x') + ' = ' + dbo.QBM_FSQCVBufferToColumn (@TableName80 , x.ColumnName , 'cf' , 1 ) + '8182 end --exists something to delete8384 end -- if update(' + x.ColumnName + ')85' ) , N'' ) within group(order by 86x.columnname) from ( select c.ColumnName from DialogColumn c with (readpast) join DialogTable t with (readpast) on c.UID_DialogTable = t.UID_DialogTable87 where t.TableName = @TableName and t.TableType in ('B', 'T') and c.IsCustomConfigurable = 1 and c.UID_DialogColumn not in ( 'QBM-AED774C5BFDF49A1B553D8E25A8124AF'88 , 'QBM-A947BB77A37B41FFA1E3E8706345EF98' , 'QBM-1FCCC6E144B441CD9CA78A91EC520306' , 'QBM-03D9D91469004B5FB5589C929EBF58DC' , 'QBM-EC951E8CE23A4EC78BB15B131F499E01'89 ) and dbo.QBM_FCVGUIDToModuleOwner(c.UID_DialogColumn) <> 'CCC' union select cb.ColumnName from DialogColumn cv with (readpast) join DialogTable90 v with (readpast) on cv.UID_DialogTable = v.UID_DialogTable join DialogTable b with (readpast) on v.UID_DialogTableBase = b.UID_DialogTable join DialogColumn91 cb with (readpast) on b.UID_DialogTable = cb.UID_DialogTable and cv.UID_BaseColumn = cb.UID_DialogColumn where b.TableName = @TableName and b.TableType92 in ('B') and v.TableType in ('V') and cv.IsCustomConfigurable = 1 ) as x if @erg > ' ' begin select @erg = concat(@Header , dbo.QBM_FCVStringToIndent(93 @erg , 2) , @Footer ) end endLabel: return(@erg) end 94