Kennt Firebird UDF's ?
Ich kann dir leider nur ein kleines Beispiel in
MSSQL Syntax geben. Das bekommst du ja schnell angepasst ..
SQL-Code:
CREATE FUNCTION GetBrutto (
@Vorgangsdatum DATE = NULL,
@Netto NUMERIC = 0,
@ID_STEUERSATZ INT = NULL )
RETURNS NUMERIC
BEGIN
DECLARE @Steuersatz NUMERIC
DECLARE @Brutto NUMERIC
IF @Vorgangsdatum < 2006-01-01
BEGIN
SELECT @Steuersatz = Steuersatz FROM MWST_BIS_2006 WHERE ID = @ID_STEUERSATZ
END
ELSE BEGIN
SELECT @Steuersatz = Steuersatz FROM MWST_AB_2006 WHERE ID = @ID_STEUERSATZ
END
SELECT @BRUTTO = @Netto + (@Netto *@Steuersatz / 100)
RETURN @BRUTTO
END
Aufruf: (korrigiert)
SELECT P.NETTO,GetBrutto(P.Rechnungsdatum, P.Netto, P.ID_Steuersatz) AS [Brutto] FROM Postitionen P