Anmelden

View Full Version : MCH3601 - Zeiger für angegebene Position nicht gesetzt



RLU
29-01-08, 12:26
Die Fehlermeldung "Zeiger für angegebene Position nicht gesetzt" bekomme ich bei einer Write-Anweisung in RPG IV. In diesem Programm gibt es 2 Write-Anweisungen (jeweils in einer eigenen Schleife) für die selbe Datei. Mit dem 1. Write werden 25 Sätze problemlos geschrieben, beim 2. Write stürzt das Programm mit der oben genannten Fehlermeldung ab. Die Datei wird dazwischen nicht geschlossen und auch sonst nichts daran geändert.
Alle Felder sind beim 2. Write mit gültigen Werten versorgt. (Die Werte können im Debugger angeschaut werden.) Die Datei hat einen Unique Key, der natürlich auch mit eindeutigen Werten versorgt ist. Es gibt auch eine logische Datei dazu (Key nicht unique), die aber in diesem Programm nicht angesprochen wird. Die Datei liegt in QTEMP, kann also auch nicht von einem anderen Job manipuliert werden.
Der 1. Wert ist schon seit Jahren in diesem Programm und funktioniert immer, den 2. Write hab ich gestern eingebaut.
Das RPG-Programm wird von einem CL-Programm aufgerufen, wobei alle Parameter richtig übergeben werden.

Auch meine beiden Programmierer-Kollegen können keine Ursache für die blöde Fehlermeldung finden. Hat irgendjemand da draußen in der großen, weiten Welt vielleicht eine Erklärung dafür, warum ich (bzw. mein Programm) diese Fehlermeldung bekomme?

MfG
Roland

Fuerchau
29-01-08, 12:49
Prüfe noch mal, ob die Write-Anweisungen tatsächlich identisch sind.

Prüfe vor dem Write per DSPJOB (Systemanfrage 2) ob die Datei tatsächlich noch geöffnet ist.

Pikachu
29-01-08, 14:06
Welche Änderungen wurden außer diesem zweiten WRITE noch vorgenommen? Vielleicht trifft ja eine dieser möglichen Ursachen (http://www-1.ibm.com/support/docview.wss?uid=nas21af30ff35e8e2e4c862563bc003f05 53) zu?