Anmelden

View Full Version : FTP und UTF-8



Seiten : [1] 2

Theo
17-06-04, 11:20
Ich sollte eine Datei vom AS/400 auf einen Unix-Server so mit FTP / PUT kopieren, dass die Datei dort im UTF-8 Format abgelegt wird. Wie muss ich vorgehen ?
Danke Theo

Fuerchau
17-06-04, 12:42
Erstellen der PF mit gültiger CCSID (e.g. 273 Deutsch) per CRTPF mit DDS oder per SQL.
Füllen der Datei und per
CPYTOIMPF FROMFILE(MYFILE) TOSTMF('/home/verz/tofile') STMFCODPAG(13488)
und anschließend per FTP übertragen.

Die Datei kann auch direkt in CCSID 13488 angelegt werden und per ILERPG/SQLILERPG befüllt werden.
CREATE TABLE MYFILE (MYFIELD graphic (100 ) CCSID 13488 NOT NULL)

andyheim
17-07-06, 15:20
ich habe es versucht, nur kommt leider folgende Fehlermeldung

Nachrichten-ID . . . . : CPDA097 Bewertung . . . . . . : 30
Nachrichtenart . . . . : Diagnose
Sendedatum . . . . . . : 17.07.06 Sendezeit . . . . . . : 16:18:01

Nachricht . . . : Umsetzung der CCSID wird nicht unterstützt.
Ursache . . . . : Die Umsetzung der CCSID zwischen der Codepage 13488 (die
durch den Parameter STMFCODPAG angegeben wird) und der CCSID 273 (die durch
den Parameter DBFCCSID angegeben wird) wird nicht soweit unterstützt, dass
alle erforderlichen Umsetzungen durchgeführt werden können.
Fehlerbeseitigung: Eine andere Codepage oder einen anderen CCSID-Wert
festlegen und den Befehl wiederholen.


der CL-Befehl lautet:
CPYTOIMPF FROMFILE(ANTILIB/YAC) TOSTMF('\Batch_AntaLink\customer_master_') +
STMFCODPAG(13488) RCDDLM(*CRLF)


Könnt Ihr mir helfen?????

Danke,
Andreas

KM
17-07-06, 15:46
Hallo,

13488 ist ja auch kein UTF-8, sondern UCS-2. Du musst schon die CCSID 1208 (UTF-8) benutzen. Dann klappt's auch mit dem Nachbarn.

Gruß,
KM

andyheim
17-07-06, 15:50
Danke für die prompte Antwort,nur leider....

Nachrichten-ID . . . . : CPDA097 Bewertung . . . . . . : 30
Nachrichtenart . . . . : Diagnose
Sendedatum . . . . . . : 17.07.06 Sendezeit . . . . . . : 16:50:38

Nachricht . . . : Umsetzung der CCSID wird nicht unterstützt.
Ursache . . . . : Die Umsetzung der CCSID zwischen der Codepage 1208 (die
durch den Parameter STMFCODPAG angegeben wird) und der CCSID 273 (die durch
den Parameter DBFCCSID angegeben wird) wird nicht soweit unterstützt, dass
alle erforderlichen Umsetzungen durchgeführt werden können.
Fehlerbeseitigung: Eine andere Codepage oder einen anderen CCSID-Wert
festlegen und den Befehl wiederholen.

Gruss Andreas

KM
17-07-06, 15:56
Hast Du in Deiner Quelldatei irgendwelche besonderen Zeichen drin, die evtl. nicht konvertiert werden können ? Also bei mir funktioniert's problemlos, auch mit Umlauten und sonstigen Zeichen.

Gruß,
KM

andyheim
17-07-06, 15:58
ich denke ich kenn das Problem...
ich erstelle die zu kopierende Datei gleich mit Feldtrennern und "

hier ein Bsp
#TYPE=1,SIZE=00012,FIELDS=CUSTOMERID;NAME;NAME2;VA T;TYPE;ONLINEPAYMENT;RESTRICTEDVIEW;STATUS;
"1";" 123456 ";"Neuer Kunde ";" ";"
"1";" 123457 ";"neu ";" ";"
"1";" 150298 ";"Bayer Industry Services ";"GmbH & Co. OHG ";"
"1";" 150346 ";"Braun GmbH ";"Buch-u. Offsetdruck ";"
"1";" 150347 ";"Beck-Verlag ";" ";"
"1";" 151531 ";"Karl Müller ";"Druck & Medien GmbH & Co.KG ";"
"1";" 153008 ";"Metro Cash & Carry ";"Deutschland GmbH & Co. KG ";"
"1";" 344039 ";"Druckhaus Schütze GmbH ";" ";"
"1";" 344503 ";"Gress Druck OHG ";" ";"
"1";" 344594 ";"April & Tochter Druckerei GmbH ";" ";"
"1";" 349681 ";"Karl Müller Libra Test ";"Druck & Medien GmbH & Co.KG ";"
"1";" 349682 ";"Karl Müller Libra Test2 ";"Druck & Medien GmbH & Co.KG ";"
#TYPE=2,SIZE=00001,FIELDS=DIVISIONID;
"2";"00"
#TYPE=3,SIZE=00001,FIELDS=DISTRCHANNELIDS;
"3";"00"
#TYPE=4,SIZE=00001,FIELDS=SALESORGANISATION;DIVISI ONID;DISTRCHANNELIDS;
"4";"DE01";"00";"00"

KM
17-07-06, 16:08
Warum denn solche Kopfstände ? Erstelle doch einfach eine normale physische Datei und übertrage diese dann so wie beschrieben. Teste es doch mal mit einer solchen, nur um festzustellen, ob der CPYTOIMPF funktioniert.

Gruß,
KM

andyheim
17-07-06, 16:16
Hallo KM
sorry, aber auch das geht nicht...
immer noch die gleiche Fehlermeldung.
An meinem Satzaufbau kann das nicht liegen!

Gruss
Andreas

KM
17-07-06, 16:24
Hast Du die Zieldatei erst mal gelöscht, bevor Du die neue Übertragung gestartet hast ? Wenn die nämlich schon vorhanden ist, wird glaube ich die CCSID nicht mehr verändert. Anders kann ich mir das auch nicht erklären. Wie gesagt, bei mir funktioniert's.

Gruß,
KM