Back to OIM Explorer

dbo.QBM_FGIPrimaryKeyName_F

Scalar FunctionSQL_SCALAR_FUNCTIONSandbox DB

Scalar Function.

Source: sandbox-db sys.sql_modules

Source size: 1.088 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_FGIPrimaryKeyCount source text reference
  • references source dbo.QBM_FGIPrimaryKeyName source text reference

Complete Source

SQL59 lines
1CREATE FUNCTION dbo.QBM_FGIPrimaryKeyName_F(2  @TableName varchar(30),3  @KeyNumber int = 14) RETURNS varchar(305)6AS7BEGIN8  DECLARE @erg varchar(30) = ''9  DECLARE @CountKeys int10  IF @TableName IN(11    SELECT TableName12    FROM QBM_VStartupTables)13  BEGIN14    IF @KeyNumber = 115    BEGIN16      SELECT TOP 1 @erg = Keyname117      FROM QBM_VStartupTables18      WHERE19        TableName = @TableName20      RETURN(@erg)21    END22    IF @KeyNumber = 223    BEGIN24      SELECT TOP 1 @erg = Keyname225      FROM QBM_VStartupTables26      WHERE27        TableName = @TableName28      RETURN(@erg)29    END30  END31  SELECT @CountKeys = dbo.QBM_FGIPrimaryKeyCount(@TableName)32  IF @KeyNumber = 1 AND @CountKeys IN(1,33  2)34  BEGIN35    SELECT TOP 1 @erg = PKName136    FROM DialogTable t37    WHERE38      t.TableName = @TableName39    RETURN(CASE40    WHEN ISNULL(@erg, '') = '' THEN41    dbo.QBM_FGIPrimaryKeyName(@TableName, @Keynumber)42    ELSE @erg43    END)44  END45  IF @KeyNumber = 2 AND @CountKeys IN(2)46  BEGIN47    SELECT TOP 1 @erg = PKName248    FROM DialogTable t49    WHERE50      t.TableName = @TableName51    RETURN(CASE52    WHEN ISNULL(@erg, '') = '' THEN53    dbo.QBM_FGIPrimaryKeyName(@TableName, @Keynumber)54    ELSE @erg55    END)56  END57  endLabel:58  RETURN(@erg)59END
Open raw exported source
SQL ยท Raw9 lines
1      create   function dbo.QBM_FGIPrimaryKeyName_F( @TableName varchar(30), @KeyNumber int = 1 ) returns varchar(30) as begin declare @erg varchar2(30) = '' declare @CountKeys int  if @TableName in (select TableName from QBM_VStartupTables) begin if @KeyNumber = 1 begin select top 1 @erg = Keyname13 from QBM_VStartupTables where TableName = @TableName  return(@erg)  end if @KeyNumber = 2 begin select top 1 @erg = Keyname2 from QBM_VStartupTables where4 TableName = @TableName  return(@erg)  end end select @CountKeys = dbo.QBM_FGIPrimaryKeyCount(@TableName) if @KeyNumber = 1 and @CountKeys in (1,2) begin5 select top 1 @erg = PKName1 from DialogTable t where t.TableName = @TableName  return( case  when ISNULL(@erg, '') = '' then dbo.QBM_FGIPrimaryKeyName6(@TableName, @Keynumber) else @erg end ) end if @KeyNumber = 2 and @CountKeys in (2) begin select top 1 @erg = PKName2 from DialogTable t where t.TableName7 = @TableName  return( case  when ISNULL(@erg, '') = '' then dbo.QBM_FGIPrimaryKeyName(@TableName, @Keynumber) else @erg end ) end endLabel: return (@erg8) end 9