crashfinger
Benutzer
- Beiträge
- 5
Hallo Zusammen,
ich habe folgendes Problem:
Ich möchte aus einer Fuktion, abhängig von einer Variablen, eine bestimmte Funktion aufrufen.
Ungefähr wie in diesem Beispiel:
Nur leider ist der Execute-Operator innerhalb einer Funktion nicht zulässig.
Gibt es alternative Lösungen?
Gruß
Crash
ich habe folgendes Problem:
Ich möchte aus einer Fuktion, abhängig von einer Variablen, eine bestimmte Funktion aufrufen.
Ungefähr wie in diesem Beispiel:
Code:
CREATE FUNCTION f_UserToCostCenter
(
@id varchar(5),
@userType tinyint
)
RETURNS
@Tbl TABLE (
CostCenterID int,
CostCenterDsc nvarchar(50)
)
AS
BEGIN
DECLARE @functionName AS varchar(25) =
CASE
WHEN @userType = 0 THEN 'f_SmToCostCenter'
WHEN @userType = 1 THEN 'f_VsmToCostCenter'
WHEN @userType = 2 THEN 'f_BlToCostCenter'
WHEN @userType = 3 THEN 'f_RvlToCostCenter'
END;
EXECUTE('INSERT INTO @Tbl SELECT * FROM '+ @functionName +'('+ @id +')')
RETURN
END
Nur leider ist der Execute-Operator innerhalb einer Funktion nicht zulässig.
Gibt es alternative Lösungen?
Gruß
Crash