Back to OIM Explorer

dbo.QBM_FCVObjectKeyToModuleOwner

Scalar FunctionSQL_SCALAR_FUNCTIONSandbox DB

Scalar Function.

Source: sandbox-db sys.sql_modules

Source size: 1.168 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_FCVGUIDToModuleOwner source text reference
  • references source dbo.QBM_FTString_Split_Ordinal source text reference

Complete Source

SQL47 lines
1CREATE FUNCTION dbo.QBM_FCVObjectKeyToModuleOwner(2  @Objectkey varchar(138)3) RETURNS varchar(34)5AS6BEGIN7  RETURN(8  SELECT CASE9  WHEN z.Mod1 = z.Mod2 THEN10  z.Mod111  WHEN 'CCC' IN(z.Mod1, z.Mod2) THEN12  'CCC'13  WHEN z.c1 > ' ' THEN14  z.Mod215  WHEN z.c2 > ' ' THEN16  z.Mod117  ELSE 'ZZZ'18  END AS ModuleOwner19  FROM(20  SELECT21    y.Mod1, y.Mod2, co1.UID_ModulePredecessor AS c1, co2.UID_ModulePredecessor AS c222  FROM(23  SELECT24    max(dbo.QBM_FCVGUIDToModuleOwner(x.GUIDValue)) AS Mod1, min(dbo.QBM_FCVGUIDToModuleOwner(x.GUIDValue)) AS Mod225  FROM(26  SELECT CASE27  WHEN isnull(s.value, '') = '' THEN28  ''29  ELSE30  LEFT(s.value, len(s.value) -3)31  END AS GUIDValue32  FROM dbo.QBM_FTString_Split_Ordinal(@ObjectKey, '>') s33  WHERE34    s.ordinal IN(5, 7) AND s.value > ' ') AS x) AS y35  LEFT36  OUTER37  JOIN QBMModuleDependCollection co138    WITH(readpast)39    ON co1.UID_ModulePredecessor = CONCAT(y.Mod1, '-ModuleDefinition') AND co1.UID_ModuleFollower = CONCAT(y.Mod2,40  '-ModuleDefinition')41  LEFT42  OUTER43  JOIN QBMModuleDependCollection co244    WITH(readpast)45    ON co2.UID_ModulePredecessor = CONCAT(y.mod2, '-ModuleDefinition') AND co2.UID_ModuleFollower = CONCAT(y.mod1,46  '-ModuleDefinition')) AS z)47END
Open raw exported source
SQL ยท Raw9 lines
1           create   function dbo.QBM_FCVObjectKeyToModuleOwner  (@Objectkey varchar(138)) returns varchar(3)  as begin return( select case when 2z.Mod1 = z.Mod2 then z.Mod1 when 'CCC' in (z.Mod1, z.Mod2) then 'CCC' when z.c1 > ' ' then z.Mod2 when z.c2 > ' ' then z.Mod1 else 'ZZZ' end as ModuleOwner3 from ( select y.Mod1, y.Mod2, co1.UID_ModulePredecessor as c1, co2.UID_ModulePredecessor as c2 from ( select max(dbo.QBM_FCVGUIDToModuleOwner(x.GUIDValue4)) as Mod1, min(dbo.QBM_FCVGUIDToModuleOwner(x.GUIDValue)) as Mod2 from ( select case when isnull(s.value, '') = '' then '' else left(s.value, len(s.value5) -3) end as GUIDValue     from dbo.QBM_FTString_Split_Ordinal(@ObjectKey, '>') s where s.ordinal in ( 5, 7) and s.value > ' ' )as x ) as y left outer 6join QBMModuleDependCollection co1 with (readpast) on co1.UID_ModulePredecessor = concat(y.Mod1 , '-ModuleDefinition') and co1.UID_ModuleFollower = concat7(y.Mod2 , '-ModuleDefinition') left outer join QBMModuleDependCollection co2 with (readpast) on co2.UID_ModulePredecessor = concat(y.mod2 , '-ModuleDefinition'8) and co2.UID_ModuleFollower = concat(y.mod1 , '-ModuleDefinition') ) as z ) end 9