Hansa, du solltest vielleicht Namensüberdeckungen vermeiden:
SQL-Code:
CREATE PROCEDURE MWSTWERTSP8 (
iMONAT SMALLINT,
iJAHR SMALLINT,
iMWSTSATZ SMALLINT )
RETURNS (
oMWSTWERT NUMERIC(9,2) )
AS
DECLARE VARIABLE vDATUM DATE;
DECLARE VARIABLE vMWSTWERT NUMERIC(9,2);
BEGIN
vDATUM = CAST('01.'|| iMONAT || '.' || iJAHR AS DATE);
SELECT FIRST 1 mwstwert
FROM mwst8
WHERE (mwstsatz = :iMWSTSATZ) AND (abdatum <= :vDATUM)
ORDER BY abdatum DESC
INTO :vMWSTWERT;
oMWSTWERT = :vMWSTWERT;
SUSPEND;
END
marabu (getippt und nicht getestet)