Anmelden

View Full Version : RCVF - Aktuellen Satz kopieren



Matthias182
07-08-09, 08:10
Hallo Leute,

ich habe mal wieder eine Frage an euch, die ich leider selbst nicht lösen kann.

Ich versuche gerade in einem CL eine Datei zu lesen. Wenn nun eine bestimmte Bedingung erfüllt ist, möchte ich den Satz in eine andere Datei kopieren.

Ich hatte dabei bereits an ein CPYF mit Angabe der Satznummer gedacht, aber leider weiß ich nicht wo ich die aktuelle Satznummer her bekomme.

Oder gibt es vielleicht noch eine elegantere Lösung? Schon mal vorweg, RPG beherrsche ich leider überhaupt nicht.

Vielen Dank.


Gruß
Matthias

kitvb1
07-08-09, 08:15
SQL ist eleganter
insert into where...

Pikachu
07-08-09, 09:39
Beim CPYF kann man Zeichentests und Feldtests angeben.

RobertMack
07-08-09, 09:42
Falls es eindeutige Schlüsselfelder (oder eine eindeutige Kombination aus Feldern) gibt:

LOOP: RCVF
MONMSG CPF0000 EXEC(GOTO ENDE)

IF COND(Deine Prüfung) THEN(DO)
CPYF FROMFILE(RCVF-Datei) TOFILE(Zieldatei)
INCREL( (*IF FELD1 *EQ &FELD1) (*AND FELD2 *EQ &FELD2) (*AND...) )
ENDDO
GOTO LOOP
ENDE:

Aus dem Kopf, bzgl. INCREL könnte auch *BCAT mit Feldinhalt erforderlich sein...

Und performant ist das auch nicht, aber zur Not... ;-)

Fuerchau
09-08-09, 12:02
Nunja, CLP ist da etwas "armselig" aber natürlich für solche Sachen nicht gemacht.
Aber die einfachste Sache ist eben, eine Variable als Satzzähler zu verwenden.

Vorsicht:
Enthält die Datei gelöschte Sätze, stimmt dein Satzzähler nicht mehr !
Also einen RGZPFM vorab durchführen.

holgerscherer
11-08-09, 19:34
Enthält die Datei gelöschte Sätze, stimmt dein Satzzähler nicht mehr !
Also einen RGZPFM vorab durchführen.

Jetzt greifen wir aber tief in die Steinzeit-Trickkiste ;-)
Sauberer wärs ja, wenn der OP das CL mit einem RPG verheiratet...

-h

Pikachu
12-08-09, 08:16
Was für eine Bedingung ist denn das genau, die da dann für jeden gelesenen Satz erfüllt ist oder nicht?

Fuerchau
12-08-09, 08:43
@Holger
Wenn man die Steinzeit noch mitgemacht hat kann das manchmal ganz hilfreich sein, was wären wir schließlich ohne diese.