PDA

View Full Version : csv -datei in pf-datei



RKA
10-02-04, 11:23
Hallo Zusammen,

wie kann ich eine CSV-Datei (CCSID 819) in eine physische Datei einspielen.

Geht das nur über ein Programm?

Wer kann mir hier Typs geben.

Oder hat jemand ein Grundgerüst für ein Programm das CSV einspielt.

Gruss

Robert

rmittag
10-02-04, 11:45
da gibt es ein Cmd : CPYFRMIMPF.

einfach prompten und auch die Bedienerhilfe lesen, ist eigentlich ganz einfach.

HTH
Rolf

Fuerchau
10-02-04, 12:21
Das Thema ist schon mehrfach diskutiert.
Siehe z.B. http://www.rlpserver.de/board/showthread.php?s=&threadid=4414&highlight=csv

oder suche nach CPYFRMIMPF / CPYFRMSTMF

malzusrex
10-02-04, 13:08
hattest du das nicht schon mal ??
csv-datei in physische Datei AS/400 (http://www.rlpserver.de/board/showthread.php?s=&threadid=4479)

tschau ronald

RKA
10-02-04, 13:36
Als Fehler bekomme ich den Ursachencode 4.

4 - Als Daten für Feld A1NR der Zieldatei (TOFILE) sind keine Nullen
erlaubt, oder die Ausgangsdatei (FROMFILE) hat nicht genügend Felder für die Zieldatei. Die Zieldatei unterstützt keine Nullen.


Hat jemand den Fehler schon gehabt?

RKA
10-02-04, 13:38
Habe noch vergessen den befehl CPYFRMIMPF reinzustellen.

CPYFRMIMPF FROMSTMF('/pabaq/paisypabaq') TOFILE(HELBD/PAISY) MBROPT(*REPLA
CE) RCDDLM(*CRLF) STRDLM(' ') RMVBLANK(*NONE) FLDDLM(';')

Fuerchau
10-02-04, 14:30
STRDLM(' ') ist mit Sicherheit falsch, nämlich dann, wenn Zeichenketten Leerzeichen enthalten. *NONE wäre da richtiger.

Nullwerte heißt: eine leere Zeichenfolge, also 2 Trennzeichen hintereinander !

Wenn die Zieldatei NULL nicht erlaubt, dann ergänze mit RPLNULLVAL(*FLDDFT) !

BenderD
10-02-04, 14:32
Hallo Robert,

ja, den Fehler bekomme ich immer, wenn meine CSV Datei weniger Felder gefüllt hat, als meine Zieldatei haben will und in selbiger keine NULL Values erlaubt sind.

mfg

Dieter Bender

RKA
10-02-04, 15:05
Hallo an alle,

danke für die gute Mithilfe.

Das Problem war das was Herr Fuerchau beschrieben hat.

CPYFRMIMPF FROMSTMF('/pabaq/paisypabaq') TOFILE(HELBD/PAISY) MBROPT(*REPL ACE) RCDDLM(*CRLF) STRDLM(*NONE) RMVBLANK(*NONE) FLDDLM(';') RPLNULLVAL(*FLDDFT)


Mit diesem Command habe ich die CSV-Datei in eine gezonte physische Datei eingespielt.

Wie gesagt nochmal, Vielen Dank an alle.

Gruss

Robert