-
CCSID 273 mit Osteuropa Sonderzeichnen nach EXCEL?
Hallo,
welche Methode funktioniert dann am Besten wenn man eine derartige Datenbank(zB. globaler Kundenstamm 273 auch für CZ,HU,PL etc.) ohne Verlust der jeweiligen Sonderzeichen(also zB. nur der Kundenstamm auf PL eingeschränkt, ist aber auch 273 da ja die gleiche Datei) nach EXCEL oder ähnliches PC'File transferieren möchte ?
Filetransfer oder FTP oder CPYxxx ? Oder erst nachher im EXCEL die Fehler korrigieren (Makro) ?
-
Tja, ähem, ....
Nun kommt es darauf an, wie denn die Daten erfasst werden.
Wenn z.B. polnische Daten ausschließlich an polnischen Terminals erfasst werden, kommt es ja nur auf die korrekte Darstellung an. Dies lässt sich per SQL mit doppeltem CAST erreichen:
cast ( cast(myfield as char(xx) ccsid 65535) as char(xx) ccsid 870)
xx = Länge des Feldes
Dadurch wird eben der Code als polnisch angenommen.
-
Eingabe und Darstellung erfolgen jeweils in einer 'sauberen' Umgebung je Land und sind OK.
Erstelle ich jetzt mit SQL eine eigene Zwischendatei(worauf muss man dabei achten), setze die in Frage kommenden Felder wie beschrieben mit SQL um und mache dann einen Filetransfer ?
-
Du kannst direkt per CREATE VIEW eine Sicht erstellen, die du dann einfach per ODBC (MS-Query) überträgst. Filetransfer führt ggf. wieder zum Verlust der Zeichen wenn du keinen polnischen PC verwendest.
Ggf. ist auch ein CAST (... as graphic(xx) ccsid 13488) (UCS-2/UNICODE) erforderlich.
-
Also das habe ich mal so gemacht, OKCUNM ist der Kundenname mit Sonderzeichen :
CREATE VIEW TESTLIB/TESTFILE (OKCUNO, OKCUNM, OKCUNMUNI) AS SELECT
OKCUNO, OKCUNM, CAST(OKCUNM as graphic(36) ccsid 13488) FROM
DATA/KUNDEN WHERE OKCUNO like '07%'
Gibt's jetzt im ODBC noch spezielle Einstellungen ? Umsetzung etc...
-
Da ist leider noch ein Fehler drin, da durch die einfache Konvertierung ja von 273 nauch UCS-2 gewandelt wird und somit bleibt alles westeuropäisch.
Für solche Fälle brauchst du ein 3-fach Cast:
cast ( cast ( cast (myfield as char(xx) ccsid 65535) as char(xx) ccsid 870) as graphic(xx) ccsid 13488)
Inner-Cast: betrachte die Zeichen als Hex ohne Codewandlung
Middle-Cast: nimm die Hex-Werte als 870 Osteuropa an
Outer-Cast: Wandle die Osteuropa-Zeichen in UCS-2 ohne Verluste
Im ODBC sind keine weiteren Einstellungen nötig (ab V5R1), da die Graphic-Felder als W-String erkannt werden. ACCESS/MS-Query könnte ggf. Schwierigkeiten machen, da diese mit DAO arbeiten.
Bei nativen ADO-Zugriffen gibt es jedoch keine Schwierigkeiten.
-
Also so geht's - Vielen Dank. Habe auch fürs Verständnis einiges dazugelernt.
Similar Threads
-
By Waldi2000 in forum NEWSboard Drucker
Antworten: 4
Letzter Beitrag: 11-08-06, 11:26
-
By TARASIK in forum IBM i Hauptforum
Antworten: 1
Letzter Beitrag: 29-06-06, 15:59
-
By y-tom in forum IBM i Hauptforum
Antworten: 3
Letzter Beitrag: 29-05-06, 14:31
-
By DrNick in forum IBM i Hauptforum
Antworten: 8
Letzter Beitrag: 22-02-05, 14:36
-
By Markus Gruebl in forum IBM i Hauptforum
Antworten: 4
Letzter Beitrag: 21-09-01, 09:24
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