Hi,
Zuerst die SP :
SQL-Code:
CREATE PROCEDURE TESTPREISSP8
RETURNS (
ID INTEGER,
NR INTEGER,
BEZ CHAR(30),
PREIS DECIMAL(15,2))
AS
begin
for
select ID, NR, BEZ, PREIS from ART, ERMITTLE_ARTPREIS (ID,5,'01.01.2006')
where (ID <= 111)
into :ID,:NR,:BEZ, :PREIS
do
suspend;
end^
Die liefert eine Datenmmenge zurück, die eben nur durch ID <= 111 eingeschränkt ist. Die innere SP ERMITTLE_ARTPREIS hat einen Rückgabewert PREIS und der steht immer auf 0. Lasse ich die einzeln laufen, dann wird der richtige Wert angezeigt. Allerdings sieht es so aus, daß der Wert Preis auf einem Wert stehenbleibt. Vorhin hat mit anderem WHERE überall als Preis 13,44 drin gestanden. Was ist da falsch ?