PDA

View Full Version : RPG Parameterübergabe von RPG an übergeordnetes CL



Seiten : [1] 2

TheDevil
12-02-15, 09:17
Hallo *world,

ich stehe hier gerade irgendwie auf einem Schlauch :-)

CL

PGM
DCL Fehler Char(1)
Call RPGPROGRAMM parameter Fehler
If Feld = "x" then do was auch immer

Zum Verständnis. Ich definiere im CL das Feld Fehler und setze es auf Blank. Nun läuft das RPG um z. b. den Artikelstamm und findet z.b. irgendwelche Fehler / nicht gepflegte Daten etc... . Im RPG habe ich das Feld ja mit *Entry übernommen. Möchte dann innerhalb des RPG das Feld z. B. mit X befüllen und dann im CL abbprüfen ob Feld Fehler = "x" ist ...

Dachte immer so was geht doch ... aber irgendwie glaube ich das geht gar nicht oder ?

Gruß,
Ralf

Fuerchau
12-02-15, 09:23
Ich stehe bei der Beschreibung schon auf dem Schlauch, denn dies geht sozusagen sein Urzeiten der Programmierung so.
Aber ohne den nötigen Code zu kennen, kann ich mir darauf auch keinen Reim machen.

AG1965_2
12-02-15, 09:25
Doch, das geht. Wenn's bei Dir nicht geht, hast Du irgendwas falsch gemacht.
Das Irgendwas anhand Deines Pseudo-Codes zu erraten, ist sinnlos.

TheDevil
12-02-15, 09:30
Vielleicht mach es der keine Quellcode einfacher

PGM

DCL VAR(&FEHLER) TYPE(*CHAR) LEN(1)
CALL PGM(PGMXXX) PARM(FEHLER)
IF COND(&FEHLER *EQ 'X') THEN(GOTO CMDLBL(FEHLER))
GOTO ENDE99
FEHLER:
SNDBRKMSG MSG('Fehler ist aufgetreten') TOMSGQ(DSPXXXX)
ENDE99:
RCLRSC
ENDPGM

Robi
12-02-15, 09:32
Parm(Fehler) ist falsch
Parm(&Fehler) ist richtig
Robi

TheDevil
12-02-15, 09:34
Sorry .. das war jetzt nur schnell geschrieben... es geht uim die Sache ansich. Also wenn ich die Variable im CL defenieren (blank) dann das rpg laufen lasse ist die Frage ob danach ein durch das rpg neu ermittelter wert auch wieder im cl zur verfügung steht (hier dann z. b. das x)

Robi
12-02-15, 09:38
Sorry, das war nur schnell geantwortet.
Die Sache an sich
Das geht seit es RPG / CL gibt

Ausnahme:
im RPG empfängst du



*entry plist
f1 parm f2 f3


Dann wird geht nicht f3 zurück ans CL sondern f1

Robi

TheDevil
12-02-15, 09:53
Danke für alle schnellen Antworten. Sorry für die Frage .. aber irgendwie waren hier im Norden einfach zu viele Bäume vor meinen Augen.

dschroeder
12-02-15, 10:03
Sorry, das war nur schnell geantwortet.
Die Sache an sich
Das geht seit es RPG / CL gibt

Ausnahme:
im RPG empfängst du



*entry plist
f1 parm f2 f3


Dann wird geht nicht f3 zurück ans CL sondern f1

Robi

Stimmt nicht ganz: f2 wird zurückgegeben!
Dieter

Robi
12-02-15, 10:44
Stimmt natürlich
Fülltext 20 Zeichen