Stimmt, so wie ich gedacht habe funktioniert es nicht.
Habe mal bei mir getestet und die Tabellennamen usw. an das angepasst was ich gerade zur Verfügung hatte.
Dieses funktioniert jetzt:
Code:
SET TERM ^ ;
CREATE OR ALTER PROCEDURE P_PREISNEU
as
declare variable part integer;
declare variable psumme numeric(12,4);
begin
for select art_nr,neupreis from preisaenderungen into :part, :psumme do
begin
update Verkaufsartikel p1
set p1.preis = :psumme,
p1.preis_2 = :psumme / (100 + 19 ) *100
WHERE p1.art_nr = :part;
end
end^
SET TERM ; ^
GRANT SELECT ON PREISAENDERUNGEN TO PROCEDURE P_PREISNEU;
GRANT SELECT,UPDATE ON VERKAUFSARTIKEL TO PROCEDURE P_PREISNEU;
GRANT EXECUTE ON PROCEDURE P_PREISNEU TO SYSDBA;
Denke mal das kann man leicht anpassen.
Ralf