Ich habe das jetzt mal ausprobiert, wenn ich das ganze in dem
SQL Editor ausprobiere bekomme ich einen Wert zurück, wenn ich jedoch das ganze in meiner SP ablaufen lasse, bekomme ich den Wert NULL zurück.
Hier ist mal das wichtige der SP, vielleicht liegt der Fehler ja ganz wo anders.
Delphi-Quellcode:
CREATE PROCEDURE PROCINSERTMAND (
SID INTEGER,
SAID INTEGER,
SANREDEID INTEGER,
SVORNAME VARCHAR (20),
SNAME VARCHAR (20))
RETURNS (
FMID INTEGER)
AS
declare variable iCount Integer;
declare variable NewMID integer;
BEGIN
for
Select Count( * ) From DBMandanten WHERE ID = :sID
into :iCount
Do
if (iCount = 1) then
Begin
UPDATE DBMANDANTEN
SET
ANREDEID = :sANREDEID,
VORNAME = :sVORNAME,
NAME = :sNAME,
WHERE
(ID = :sID);
end
else
begin
Insert Into dbmandanten (ANREDEID, VORNAME, NAME)
Values (:sANREDEID, :sVORNAME, :sNAME);
end
Select gen_id(dbmandanten_id_gen,0) From RDB$Database
into :fMID;
Insert Into dbdmand (AID, MID) Values (:sAID, :fMID);
END