dbo.QBM_FCVStringToXMLMasked
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
- No typed edges extracted for this source.
References
- No direct source references extracted.
Referenced By
Complete Source
1CREATE FUNCTION dbo.QBM_FCVStringToXMLMasked(2 @in nvarchar(max)3) RETURNS nvarchar(max4)5AS6BEGIN7 DECLARE @out nvarchar(max)8 DECLARE @Zeichen nvarchar(max)9 DECLARE @len int10 DECLARE @i int11 DECLARE @CharacterCoding int12 DECLARE @isTableFilled BIT = 013 DECLARE @umsetz TABLE(NumCoding int primary key,14 XMLSnippet nvarchar(100))15 SELECT @len = len(@in)16 SELECT @i = 117 SELECT @out = N ''18 WHILE @i <= @len19 BEGIN20 SELECT21 @zeichen = substring(@in,22 @i,23 1)24 SELECT @CharacterCoding = unicode(@zeichen)25 IF @CharacterCoding BETWEEN 48 AND 57 OR @CharacterCoding BETWEEN 65 AND 90 OR @CharacterCoding BETWEEN 97 AND 12226 BEGIN27 SELECT28 @out = CONCAT(@out,29 @Zeichen)30 END31 ELSE32 BEGIN33 IF @isTableFilled = 034 BEGIN35 INSERT INTO @umsetz(NumCoding,36 XMLSnippet)37 SELECT38 v.NumCoding,39 XMLSnippet40 FROM QBM_VCharacterSpecial v41 SELECT @isTableFilled = 142 END43 SELECT44 @out = CONCAT(@out,45 CASE46 WHEN EXISTS(47 SELECT TOP 1 148 FROM @umsetz u49 WHERE50 u.NumCoding = @CharacterCoding) THEN51 (52 SELECT TOP 1 XMLSnippet53 FROM @umsetz u54 WHERE55 u.NumCoding = @CharacterCoding)56 ELSE @zeichen57 END)58 END59 SELECT @i = @i+160 END61 RETURN(@out)62END
Open raw exported source
1 create function dbo.QBM_FCVStringToXMLMasked (@in nvarchar(max) ) returns nvarchar(max) as begin declare @out nvarchar(max) declare @Zeichen2 nvarchar(max) declare @len int declare @i int declare @CharacterCoding int declare @isTableFilled bit = 0 declare @umsetz table (NumCoding int primary3 key , XMLSnippet nvarchar(100) ) select @len = len(@in) select @i = 1 select @out = N'' while @i <= @len begin select @zeichen = substring(@in, @i, 1)4 select @CharacterCoding = unicode(@zeichen) if @CharacterCoding between 48 and 57 or @CharacterCoding between 65 and 90 or @CharacterCoding between 975 and 122 begin select @out = concat(@out , @Zeichen) end else begin if @isTableFilled = 0 begin insert into @umsetz(NumCoding, XMLSnippet) select v.NumCoding6, XMLSnippet from QBM_VCharacterSpecial v select @isTableFilled = 1 end select @out = concat(@out , case when exists (select top 1 1 from @umsetz u where7 u.NumCoding = @CharacterCoding ) then (select top 1 XMLSnippet from @umsetz u where u.NumCoding = @CharacterCoding ) else @zeichen end ) end select @i8 = @i+1 end return(@out) end 9