-
IFS-File mit RPG-Progr geschrieben: keine Umlaute
Hallo,
ich lese per RPG eine AS400 Datei (CCSID 273) und schreibe Datenauszüge davon in eine Textdatei im Filesystem QNTC.
(mit Scott Klements IFS-SRVPGM)
Das funktioniert alles prima. Wenn man jedoch die Textdatei mit Notepad öffnet, werden die Umlaut nicht richtig dargestellt.
Hier die Anweisung im RPG zum Anlegen der Datei:
fd = open( %trim(filename)
: O_CREAT + O_EXCL + O_CCSID + O_WRONLY
+ O_TEXTDATA + O_TEXT_CREAT
: S_IWUSR + S_IRUSR+S_IRGRP+S_IROTH
: 273
: 0 );
Der vierte Parameter hat keine Wirkung. Egal was anstelle der 273 eingetragen wird, das Ergebnis ist immer gleich.
Hat jemand eine Idee?
Gruß
Herbert
-
Die Ziel-CCSID sollte eher 1252 (ANSI) sein. Das klappt aber solange nicht, wie die Job-CCSID noch auf 65535 (HEX) steht.
-
Ich habe die JOB-CCSID auf 273 gestellt und die Ziel-CCSID auf 1252
Ergebnis: unverändert, keine Umlaute
2.Versuch
wie oben, jedoch die Textdatei im Filesystem /Root (auf AS400) ablegen.
Ergebnis: einwandfrei! Umlaute vorhanden.
3. Versuch
wie Versuch 2, jedoch JOB-CCSID auf 65535 lassen.
Ergebnis: einwandfrei! Umlaute vorhanden.
Es scheint am QNTC-Filesystem zu liegen, wo die Datei auf einen Windows-Server geschrieben wird.
Muss ich auf /Root ausgeben und dann die Datei zum Zielserver kopieren, oder kann man es noch irgendwie drehen, ohne Umweg über /root gleich auf dem richtigen Server auszugeben?
-
...das ist ja auch nur die halbe Sache. Die Datei muss nach der Erstellung geschlossen werden und dann nochmal mit TEXTDATA geöffnet werden.
D*B
-
Den o_text_creat gibt es seit V5R2
Es geht dann in einem Aufwasch.
Wenn ich es aber so mache. dann ist es auch nicht besser:
fd = open(pathfile:
O_CREAT+O_WRONLY+O_CCSID:
S_IWUSR+S_IRUSR+S_IRGRP+S_IROTH:
1252) ;
callp close(fd);
fd = open(pathfile:
O_WRONLY+O_TEXTDATA);
Egal wie, auf QNTC keine Umlaute.
Man kann auch nicht per CPY-Befehl von /root nach /qntc kopieren. Entweder geht es gar nicht, wegen CPFA098 (Die CCSID der Zieldatei konnte nicht mit der CCSID der
Quellendatei abgeglichen werden. )
oder, wenn man TOCODEPAGE(*STDASCII) angibt, dann gehen die Umlaute verloren.
-
QNTC unterstützt keine CCSID.
Erstelle die Datei am Besten in /Home/MyVerz und kopiere sie anschliessend ins QNTC.
Hier geht es je nach Release manchmal nur mit QSHELL CMD('cp /fromdir/file /todir').
-
Vielen Dank für den Hinweis mit QSHELL.
Hat funktioniert.
Similar Threads
-
By steven_r in forum NEWSboard Programmierung
Antworten: 4
Letzter Beitrag: 30-01-07, 07:48
-
By Stoeberl in forum NEWSboard Programmierung
Antworten: 8
Letzter Beitrag: 10-01-07, 10:58
-
By emax in forum IBM i Hauptforum
Antworten: 3
Letzter Beitrag: 06-10-06, 11:01
-
By wuwu in forum IBM i Hauptforum
Antworten: 5
Letzter Beitrag: 18-08-06, 08:09
-
By y-tom in forum IBM i Hauptforum
Antworten: 3
Letzter Beitrag: 29-05-06, 14:31
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- You may not post attachments
- You may not edit your posts
-
Foren-Regeln
|
Erweiterte Foren Suche
Google Foren Suche
Forum & Artikel Update eMail
AS/400 / IBM i
Server Expert Gruppen
Unternehmens IT
|
Kategorien online Artikel
- Big Data, Analytics, BI, MIS
- Cloud, Social Media, Devices
- DMS, Archivierung, Druck
- ERP + Add-ons, Business Software
- Hochverfügbarkeit
- Human Resources, Personal
- IBM Announcements
- IT-Karikaturen
- Leitartikel
- Load`n`go
- Messen, Veranstaltungen
- NEWSolutions Dossiers
- Programmierung
- Security
- Software Development + Change Mgmt.
- Solutions & Provider
- Speicher – Storage
- Strategische Berichte
- Systemmanagement
- Tools, Hot-Tips
Auf dem Laufenden bleiben
|
Bookmarks