shuelzer
13-05-13, 13:46
Hallo zusammen,
ich habe eine Frage zur Übergabe von Pointern an ein SRVPGM.
Folgende Konstellation:
1) Funktion1 aus einem Serviceprogramm liefert einen Pointer zurück, der auf ein 3-stellige Alpha Feld zeigt.
2) Funktion2, welches sich in dem selben Serviceprogramm wie Funktion1 befindet, bekommt den Pointer als Inputparameter.
3) In der Implementierung der Funktion2 soll der Pointer wieder dereferenziert werden und mir den Inhalt des 3-stelligen Feldes liefern.
Schaue ich mir den Inhalt des Inputparameters im Debug in der Funktion2 an steht dort die richtige Adresse. Jedoch wird mir bei der Dereferenzierung nicht der Inhalt des Feldes zurückgegeben, sondern nur Blanks bzw. das Programm sagt "Inhalt nicht verfügbar".
Wenn ich die Dereferenzierung im Programm durchführe, das beide Funktionen aufruft, kann ich den Inhalt ohne Probleme auslesen.
Warum klappt dies nicht bei der Dereferenzierung im SRVPGM? Oder ist das so generell nicht möglich?
Vielen Dank für eure Hilfe!
ich habe eine Frage zur Übergabe von Pointern an ein SRVPGM.
Folgende Konstellation:
1) Funktion1 aus einem Serviceprogramm liefert einen Pointer zurück, der auf ein 3-stellige Alpha Feld zeigt.
2) Funktion2, welches sich in dem selben Serviceprogramm wie Funktion1 befindet, bekommt den Pointer als Inputparameter.
3) In der Implementierung der Funktion2 soll der Pointer wieder dereferenziert werden und mir den Inhalt des 3-stelligen Feldes liefern.
Schaue ich mir den Inhalt des Inputparameters im Debug in der Funktion2 an steht dort die richtige Adresse. Jedoch wird mir bei der Dereferenzierung nicht der Inhalt des Feldes zurückgegeben, sondern nur Blanks bzw. das Programm sagt "Inhalt nicht verfügbar".
Wenn ich die Dereferenzierung im Programm durchführe, das beide Funktionen aufruft, kann ich den Inhalt ohne Probleme auslesen.
Warum klappt dies nicht bei der Dereferenzierung im SRVPGM? Oder ist das so generell nicht möglich?
Vielen Dank für eure Hilfe!