Erst beim fetch! Ich frage danach den SQLCOD ab.
[IMG]file:///C:/DOKUME%7E1/U0900J%7E1.ACT/LOKALE%7E1/Temp/moz-screenshot-6.jpg[/IMG]
C+ FETCH NEXT FROM STATUS116 INTO :PARM01>>
C/END-EXEC>>
C*>>
C* Dateiverarbeitungsschleife>>
C DOW SQLCOD=*ZEROS>>
C
... dann würde ich sagen, die Ziel-Felder stimmen nicht mit der Auswahl überein!
Entweder hast Du Dich bei den Ausgabe-Feldern vertan (z.B. Komma vergessen) oder Du erhälst NULL-Werte und prüfst diese nicht mit Indikator-Variablen ab.
Übrigens SELECT * ist fast nie die beste Lösung, da viel zu viel unnötiger Schrott übernommen wird.
Und auf SQLCOD = 0 sollte man auch nicht prüfen, da seit Release V5R2 unter bestimmten Situationen Warnungen ausgegeben werden (SQLCOD 1 - 99), die Daten werden jedoch korrekt übernommen. Besser ist auf SQLCOD = 100 OR SQLCOD < 0 abzufragen.
Überprüfe mal Deine PARM01 struktur, die passt anscheinend nicht, gegebenfalls noch eine Anzeiger Variable (Array 5I 0 mit anzahl Ergebnisfelder) hinzufügen
C+ FETCH NEXT FROM STATUS116 INTO :PARM01 :AnzArray
*EDIT***
Wobei es an der Null geschichte nicht liegen kann, da sonst eine Meldung kommt "Anzeiger Variable erforderlich". Hatte ich nämlich auch schon des Öffteren.
Bookmarks