PDA

View Full Version : Fehlerhafte Anweisung in SQLRPGLE identifizieren



USDAVIS
20-11-07, 10:22
Hallo *all,

in unserer Anwendung trat bei einem SQLRPGLE (mit CRTSQLRPGI gewandelt) ein Laufzeitfehler auf:

Nachricht: Das Ziel für eine numerische Operation ist zu klein, das Ergebnis aufzunehmen.
Ursache: RPG-Prozedur xxx in Programm xxx/xxx hat bei Anweisung 1599 eine Rechenoperation ausgeführt u.s.w.

Ich habe diese Anweisung im Programm nicht gefunden. 1599 war im Compilerlisting eine Kommentarzeile, im Quelltext gab es diese Zeilennummer gar nicht.

Tatsächlich falsch war die Anweisungsnummer 0597.00 (Quelltext) bzw. 1606 (Compilerlisting).

Frage: Wie komme ich von der im Fehlerfall vom OS/400 angegebenen Anweisungsnummer auf die tatsächlich fehlerhafte Zeile?

Gruss
Ulli



Änderung:
Thema hat sich erledigt. In der Programmquelle sind still und heimlich noch Kommentarzeilen eingefügt worden. Rechnet man die ab, stimmt's wieder.

Pikachu
20-11-07, 11:52
Falls das Programm mit Testhilfeinformationen erstellt wurde, kannst du diese mit STRDBG OPMSRC(*YES) ansehen. Ansonsten benötigst du die Umwandlungsliste, die beim Erstellen des Programms erzeugt wurde, oder den genauen Stand des Quelltextes zum Zeitpunkt der Erstellungen des Programms.

Nachtrag: Bei ILE-Programmen sieht man mit STRDBG die gesuchten Zeilennummern aus der Umwandlungsliste anscheinend leider doch nicht!?