PDA

View Full Version : Verwendung von WRKSPLF, WRKOUTQ in VARPG



Seiten : 1 [2]

BenderD
07-06-10, 13:30
... falls dein Pointer in einer Datenstruktur deklariert ist, datastructures are binary huddle, muss diese zumindest mit Schlüsselwort ALIGN deklariert werden. Es sieht mir aber so aus, als ob da nochmehr schräg ist, die fehlende Environment Variable, fraglich ist auch, ob und wie der Informationsfluss des Pointers ist...

D*B


Ich nochmal,

hatte vergessen mitzuteilen, dass im VARPG bei Verwendung eines Poiters als Parameter schon folgende Meldung kommt
C CALL CallName
RNV7810E Der Parameter SPCPTR darf keinen Zeiger enthalten; die Bestimmung für die Operation CALL wird ignoriert.

Habe dann versucht eine ganz normale 16Byte große Variable zu verwenden und bekam dann den vorhin schon genannten Fehler bei der Ausführung des Programms

Pikachu
07-06-10, 13:42
Wenn das Programm nicht auf der Maschine selbst läuft, ist es vielleicht nicht möglich, mit Zeigern auf Speicherbereiche der Maschine zu arbeiten.

Fuerchau
07-06-10, 13:56
Genau dies ist das Problem.
VARPG generiert eine .exe, die auf Windows läuft. Da kannst du nicht per Pointer direkt mit dem Speicher der AS/400 arbeiten.

Entweder, du schreibst Service-Programme für deine Zugriffe oder verwendest ausschließlich API's, die keine Pointer benötigen.

ubas
07-06-10, 14:52
Das ist auch meine Vermutung, da die Umwandlungsliste des VARPG einen 4stelligen und die Umwandlungsliste des RPG auf der AS/400 einen 16stelligen Pointer bei selber Codierung ausgibt. Werde jetzt API auf der AS nutzen und die Ausgabe in eine Datei bringen und die dann einlesen. Hoffe das die Performence nicht drunter leidet. Sonst leide ich ;)

Pikachu
07-06-10, 15:25
Hol die Daten doch mit QUSRTVUS aus dem Benutzerbereich heraus.