PDA

View Full Version : Datentransfer von PC zur AS400 - CPYFRMIMPF?



mott
15-04-02, 20:38
Hallo!

Vielleicht kann mir jemand helfen. Ich habe nämlich folgendes Problem:

Ich möchte eine PC-Datei zur AS400 senden mittels CPYFRMIMPF. Die Datei sieht ungefähr folgendermaßen aus:

text1#text2#text3#text4#text5# ...

Sie hat weder ein CR, LFCR usw. Der einzige Begrenzer ist das zeichen #.

Nun möchte ich die Datei so zur AS400 in eine Datenbankdatei (pro Satz nur ein Feld) kopieren, dass text1 im ersten Satz, text2 im zweiten Satz usw. steht.

Wer kann mir sagen, ob dies mit CPYFRMIMPF funktioniert? Oder gibt es eine andere Lösung für mein Problem?

Für eure Antworten bin ich euch im voraus sehr dankbar!

Gruß!
Michi

Stefan_R
16-04-02, 07:46
Hallo,

probiers doch mal wie folgt:

beim Parameter
RCDDLM > *LFCR

dann öffnet sich auch der für dich interessante Parameter

STRDLM '#'

Gruss
Stefan

Sven Schneider
16-04-02, 11:17
Besser,

RCDDLM('#')

und

DTAFMT(*DLM)

Sven

[Dieser Beitrag wurde von Sven Schneider am 16. April 2002 editiert.]

mott
16-04-02, 20:41
Danke für eure Antworten!

Bei Stefan´s Lösungsvorschlag habe ich das Problem, dass nur ein Satz kopiert wird, da als Begrenzer *LFCR angegeben wurde und dieses Zeichen nicht in meinem File vorkommt (alle Zeichen stehen in einer "Wurst" in der Datei).

Sven´s Tip funktioniert überhaupt nicht. Kopiervorgang wird mit untenstehender Fehlermeldung beendet.

Habt ihr eine Erklärung für mein Problem?

Vielen Dank!
Michi

Nachrichten-ID . . . . : CPF2845
Nachricht . . . : Kopiervorgang aufgrund von Ursachencode 11 nicht
durchgeführt.

Ursache . . . . : Der Befehl CPYFRMIMPF (Aus Importdatei kopieren) oder der
Befehl CPYTOIMPF (In Importdatei kopieren) konnte aufgrund von Ursachencode
11 nicht durchgeführt werden. Ursachencodes:
1 - Der Wert für FROMCCSID ist nicht gültig.
2 - Feld *N in der Felddefinitionsdatei ist kein Feld in der Zieldatei
(TOFILE)
3 - Die Daten für Feld *N der Zieldatei (TOFILE) haben ein falsches
Dezimalzeichen.
4 - Als Daten für Feld *N 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.
5 - Die Begrenzer für DTAFMT(*DLM) sind nicht gültig.
6 - Der Inhalt der Ausgangsdatei (FROMFILE) oder der Fehlersatzdatei
(ERRRCDFILE) kann nicht gelöscht werden.
7 - Das numerische Feld *N der Ausgangsdatei (FROMFILE) enthält
Leerzeichen oder andere Zeichen, die für ein numerisches Feld nicht gültig
sind.
8 - Feld *N der Ausgangsdatei (FROMFILE) enthält Zeichen, die für ein
Datums-, Zeit- oder Zeitmarkenfeld nicht gültig sind.
9 - Die Daten für Feld *N sind für die Datenart der Zieldatei (TOFILE)
nicht gültig.
10 - Die Daten in der Felddefinitionsdatei sind für die Zieldatei (TOFILE)
nicht korrekt.
11 - Der Parameter RCDDLN für eine Datenstromdatei kann nur *CR, *CRLF,
*LF oder *LFCR sein, für eine Datenbankdatei kann der Parameter RCDDLM *EOR
oder ein gültiger Wert sein.
Fehlerbeseitigung: Für den Ursachencode einen der folgenden Schritte
ausführen:
1 - Die Angabe für FROMCCSID muß auf einen gültigen CCSID-Wert gesetzt
werden, wenn die CCSID der Ausgangsdatei (FROMFILE) 65535 ist. Hat die
Ausgangsdatei nicht die CCSID 65535, den Wert CCSID(*FILE) benutzen. Oder
die angegebene CCSID wird nicht unterstützt.
2 - Den Namen des Feldes in der Felddefinitionsdatei in den Namen eines
Feldes in der Zieldatei (TOFILE) ändern.
3 - Für die Daten der Ausgangsdatei (FROMFILE) ein korrektes
Dezimalzeichen angeben.
4 - Die Daten der Ausgangsdatei (FROMFILE) so ändern, daß das Feld kein
Nullfeld ist.
5 - Für das Format DTAFMT(*DLM) gültige Begrenzer angeben.
6 - Versuchen, den Inhalt der Zieldatei (TOFILE) und der Fehlersatzdatei
(ERRRCDFILE) mit dem Befehl CLRPFM (Inhalt der physischen Teildatei löschen)
löschen.
7 - Die Daten der Ausgangsdatei (FROMFILE) ändern.
8 - Die Daten der Ausgangsdatei (FROMFILE) ändern.
9 - Die Daten der Ausgangsdatei (FROMFILE) ändern.
10 - Die Daten in der Felddefinitionsdatei so ändern, daß sie für die
Ausgangsdatei (FROMFILE) korrekt sind. Wenn der Befehl CPYFRMIMPF eine
Datenstromdatei verwendet, die Länge des Parameters STMFLEN vergrößern.
11 - Den gültigen RCDDLM-Wert für den Parameter verwenden.