-
schon wieder: CCSID
Hallo allerseits,
ich weiss es gibt schon x-Beiträge zum Thema CCSID, ich komme aber hier nicht weiter.
Ich sollte eine als unicode-gespeicherte csv-datei in eine physische datei bringen - mit tschechischen und ungarischen sonderzeichen...
i habe schon so ziemlich alles probiert von cpyfrmstmf, cpyfrmimpf in allen möglichen variationen, das gewünschte ergebnis bleibt aber aus.
Weiss jemand Rat?
danke
-
Dafür benötigst du eine PF (per SQL oder DDS) mit UNICODE-Zeichenfeldern (CCSID(13488).
Die CCSID gibst du auf Feldebene an, entweder bei DDS mit Typ G CCSID(13488) oder per SQL mit "MYFIELD GRAPHIC(nn) CCSID 13488".
Beim CPYFRMIMPF musst du als FROMCCSID(13488) angeben.
CPYFRMSTMF geht auch, aber da kannst du nicht in einzelne Felder aufteilen, dass musst du dann selber programmieren.
Hierzu legst du auch eine PF per DDS/SQL mit genau 1 Feld und CCSID(13488) an, dann kannst du die Datei kopieren.
Die Weiterverarbeitung kann nur per SQL und/oder ILERPG verarbeiten.
Im ILERPG sind die Felder dann vom Typ C (UCS2).
-
ok, danke für die schnelle antwort.
Unicode-Datei habe ich nun erstellt und ein cpyfrmimpf durchgeführt.
Die Sonderzeichen sehen jetzt natürlich sehr kryptisch aus.
Habe ich richtig verstanden: Mittels ilerpg kann ich mit %char die Felder ausgeben sodass diese richtig angezeigt werden?
Muss ich die ZeichensatzId der Sitzung/des Jobs auf den jeweiligen Länderwert einstellen?
danke
-
Du kannst du Sonderzeichen natürlich nur am Terminal der korrekten Sprache sehen.
Zum Testen reicht z.B. einfach ein RUNQRY oder ein Select * per STRSQL.
Die Datei ist in Unicode und bleibt auch so.
Stellst du den Job auf 273 und das terminal auf 273, kannst du die deutschen Zeichen korrekt lesen.
Das gleiche gilt für 870 Polnisch u.ä..
Verarbeitest du die Daten allerdings weiter in Nicht-UCS2 gehen dir die diversen Sonderzeichen verloren, da per %char (auch bei SQL in normales Zeichenfeld) nur in z.B. 273 gewandelt wird. Unbekannte Zeichen bekommen Ersatzwerte.
Du siehst, ganz so einfach ist das leider nicht.
PS:
Mit dem Drucken sieht das dann genauso aus, hier ist die korrekte CHRID des Zielzeichensatzes VORHER zu wählen.
-
Danke erstmal für die Tipps, aber irgendwas passt da noch nicht bei mir:
ich habe mit cpyfrmimpf, ccsid(13488) in eine phys. datei, grafikfeld mit ccsid 134488 kopiert.
Auf einer tschechischen sitzung (ccsid 1153) sehe ich in der datei nur kryptische zeichen.
das sieht dann so aus:
ÿþ1 = z a d a t p o u z e p Y*e s t á v k u
das 'Y*' sollte eigentlich ein 'ř' sein.
Was mache ich da falsch?
danke,
ennsman
-
Da stellt sich jetzt die Frage, wie die PC-Datei denn tatsächlich aussieht.
Ist sie tatsächlich UNICODE (13488) oder nicht vielleicht doch UTF-8 (1208) ?
Probier mal den Import mit 1208 als FROMCCSID.
Similar Threads
-
By codierknecht in forum NEWSboard SAP
Antworten: 32
Letzter Beitrag: 09-02-18, 13:00
-
By umeis in forum NEWSboard Windows
Antworten: 3
Letzter Beitrag: 11-08-06, 12:45
-
By schaaf in forum IBM i Hauptforum
Antworten: 3
Letzter Beitrag: 04-05-06, 11:18
-
By Muchi in forum IBM i Hauptforum
Antworten: 7
Letzter Beitrag: 21-04-06, 13:54
-
By Binford in forum IBM i Hauptforum
Antworten: 6
Letzter Beitrag: 07-03-06, 08:58
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