Back to OIM Explorer

dbo.QBM_FSQJoinsForSplittedLookup

Scalar FunctionSQL_SCALAR_FUNCTIONSandbox DB

Scalar Function.

Source: sandbox-db sys.sql_modules

Source size: 1.418 characters

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_FCVStringToList source text reference
  • references source dbo.QBM_FCVFKDollarToRelationMVP source text reference
  • references source dbo.QBM_FCVStringToIndent source text reference
  • references source dbo.QBM_FSQTableJoin source text reference

Complete Source

SQL48 lines
1CREATE FUNCTION dbo.QBM_FSQJoinsForSplittedLookup(2  @UID_DialogTable varchar(38)3) RETURNS nvarchar(max4)5AS6BEGIN7  RETURN(8  SELECT9    convert(nvarchar(max), string_agg(f.zeile, char(13) +char(10)) within10    GROUP(11  ORDER BY f.sortier))12  FROM(13  SELECT14    CONCAT('join ', t.TableName, ' ', CASE t.TableName15    WHEN 'Person' THEN16    'p'17  ELSE 'w0'18  END, ' on ', dbo.QBM_FSQTableJoin(t.TableName, 's', CASE t.TableName19  WHEN 'Person' THEN20  'p'21  ELSE 'w0'22  END)) AS zeile, 0 AS sortier23  FROM DialogTable t24    WITH(readpast)25  WHERE26    t.UID_DialogTable = @UID_DialogTable AND(t.TableName = 'Person' OR(t.SplittedLookupSupport > ' ' AND t.SplittedLookupSupport <> 'no'))27  UNION all28  SELECT dbo.QBM_FCVStringToIndent(CONCAT(CASE r.ParentTable29  WHEN 'Person' THEN30  'left outer join '31  ELSE 'left outer join '32  END, r.ParentTable, ' ', CASE r.ParentTable33  WHEN 'Person' THEN34  'p'35  ELSE 'w' + trim(str(sp.OrderNumber))36  END, ' on ', 'w', trim(str(sp.OrderNumber-1)), '.', r.ChildColumn, ' = ', CASE r.ParentTable37  WHEN 'Person' THEN38  'p'39  ELSE 'w' + trim(str(sp.OrderNumber))40  END, '.', ParentColumn), 5) AS zeile, sp.OrderNumber AS sortier41  FROM DialogTable t42    WITH(readpast) CROSS apply dbo.QBM_FCVStringToList(dbo.QBM_FCVFKDollarToRelationMVP(t.TableName, t.SplittedLookupSupport),43  char(7), 1, 0) sp44  JOIN QBM_VQBMRelation r45    ON sp.ParameterValue = r.UID_QBMRelation46  WHERE47    t.UID_DialogTable = @UID_DialogTable) AS f)48END
Open raw exported source
SQL ยท Raw11 lines
1    create   function dbo.QBM_FSQJoinsForSplittedLookup(@UID_DialogTable varchar(38) ) returns nvarchar(max) as begin return( select convert(nvarchar2(max), string_agg( f.zeile, char(13) +char(10)) within group (order by f.sortier)) from (  select concat('join ' , t.TableName , ' ' , case t.TableName3 when 'Person' then 'p' else 'w0' end , ' on ' , dbo.QBM_FSQTableJoin(t.TableName , 's', case t.TableName when 'Person' then 'p' else 'w0' end ) ) as zeile4 , 0 as sortier from DialogTable t with (readpast) where t.UID_DialogTable = @UID_DialogTable and (t.TableName = 'Person' or (t.SplittedLookupSupport >5 ' ' and t.SplittedLookupSupport <> 'no') ) union all select dbo.QBM_FCVStringToIndent( concat( case r.ParentTable when 'Person' then 'left outer join '6 else 'left outer join '  end , r.ParentTable , ' ', case r.ParentTable when 'Person' then 'p' else 'w' + trim(str(sp.OrderNumber)) end , ' on ', 'w' ,7 trim(str(sp.OrderNumber-1)), '.', r.ChildColumn , ' = ' , case r.ParentTable when 'Person' then 'p' else 'w' + trim(str(sp.OrderNumber)) end, '.' , ParentColumn8 ) , 5) as zeile , sp.OrderNumber as sortier from DialogTable t with (readpast) cross apply dbo.QBM_FCVStringToList(dbo.QBM_FCVFKDollarToRelationMVP(t.TableName9, t.SplittedLookupSupport), char(7), 1, 0 ) sp join QBM_VQBMRelation r on sp.ParameterValue = r.UID_QBMRelation where t.UID_DialogTable = @UID_DialogTable10 ) as f ) end 11