Hallo,
andere Vermutungen:
1. Wo sind die Referenz-Felder definiert?
In einer Datei, die in den F-Bestimmungen angegeben wurde? Wenn ja ist die Datei zum Compilierungszeitpunkt in der Bibliotheksliste vorhanden?
In einer (verschachtelten) Copy-Strecke? (aus solche Felder kann der SQL-PreCompiler u.U. nicht zugreifen.
2. Vielleicht stört sich der Precompiler daran, dass die gleichen ##-Variablen einmal als Ausgabe-Felder (into ...) und zum anderen in der Where-Anweisung verwendet werden.
Ich würde die Variablen nicht als Ausgabe-Variablen verwenden, das die Werte ja bereits gesetzt sind und durch die Where-Anweisung nur erneut ausgegeben werden.Dadurch wird das ganze SQL-Statement auch wesentlich kürzer, d.h. Group By und Order By entfallen.
PHP-Code:
c/exec sql
C+ select sum(daliwt) into :daliwt
C+ from lired
C+ where dafbtr = :##drbtr
C+ and dakddb = :##drkdnr
C+ and dargnr = :##drrgnr
C+ and dakanr <> 'NEUDISPO'
C/end exec
Übrigens: Unter Release V5R4 können die gleichen Variablen mit der gleichen Definition problemlos in diversen Sub-Prozeduren definiert werden. (Vor Release V5R3 wurde eine Mehrfach-Definition der gleichen Variablen nicht geprüft. Unter Release V5R3 wurde ein Compilierungs-Fehler mit Level 30 ausgegeben. Ab 6.1. können Variablen vom PreCompiler den Prozeduren zugeordnet werden.)
Birgitta
Bookmarks