-
CCSID und ODBC
Hallo Forum!
Folgende Situation (V5R2):
Tabelle und Feld: CCSID 273
Nun haben wir viele User (z.B. aus Tschechien) mit folgenden Einstellungen:
Sprachen-ID: CSY
Landes- oder Regions-ID: CZ
Zeichensatz-ID: 870
Wenn ein solcher User mit der 5250-Anzeigeemulation und eingestellter Host-Codepage 870 z.B. über STRSQL auf das Feld zugreift, wird alles richtig angezeigt.
Ich will nun aber die Daten per ODBC auf den PC holen und schaffe nur teilweise richtige (und damit falsche) Lösungen:
Probleme bereiten weniger deren Sonderzeichen, sondern "unsere" Umlaute, die ebenfalls (vor allem im Ungarischen) Anwendung finden.
Eine "normale" Abfrage mit SELECT Feld FROM ... liefert zwar richtige Umlaute, aber falsche Sonderzeichen.
Die Lösung (die ich übrigens hier entdeckt habe) mit
SELECT CAST(CAST Feld AS CHAR(50) FOR BIT DATA) AS CHAR(50) CCSID 870) AS Feld FROM ...
ergibt richtige Sonderzeichen aber statt der Umlaute stehen {, }, \, [, ] und | (was irgendwie auch richtig ist, wenn man sich die beiden Codepages 273 und 870 ansieht).
Ich hätte allerdings erwartet, dass die Umlaute, wenn sie ein User mit obigen Einstellungen eingibt, in der Datei falsch stehen (also mit Klammern usw.). Weil dem nicht so ist, funktioniert das mit dem CASTen auch nicht richtig.
Ich kann die Datei aber auch nicht auf mehrere Dateien aufteilen, weil die ERP-Software damit problemlos arbeitet und ich die Daten "nur" auslesen will.
Wie kann ich den ODBC-Treiber dazu überreden, sich wie die 5250-Anmeldeemulation zu verhalten?
Ich habe leider keine Einstellung gefunden. Es hilft nichts bei der Verbindung mit einem solchen User zuzugreifen. Der springende Punkt scheint die Einstellung der Host-Codepage bei der Emulation zu sein.
- Hans J. Sieghart
-
 Zitat von HJS
Hallo Forum!
Folgende Situation (V5R2):
Tabelle und Feld: CCSID 273
Nun haben wir viele User (z.B. aus Tschechien) mit folgenden Einstellungen:
Sprachen-ID: CSY
Landes- oder Regions-ID: CZ
Zeichensatz-ID: 870
Wenn ein solcher User mit der 5250-Anzeigeemulation und eingestellter Host-Codepage 870 z.B. über STRSQL auf das Feld zugreift, wird alles richtig angezeigt.
Ich will nun aber die Daten per ODBC auf den PC holen und schaffe nur teilweise richtige (und damit falsche) Lösungen:
Probleme bereiten weniger deren Sonderzeichen, sondern "unsere" Umlaute, die ebenfalls (vor allem im Ungarischen) Anwendung finden.
Eine "normale" Abfrage mit SELECT Feld FROM ... liefert zwar richtige Umlaute, aber falsche Sonderzeichen.
Die Lösung (die ich übrigens hier entdeckt habe) mit
SELECT CAST(CAST Feld AS CHAR(50) FOR BIT DATA) AS CHAR(50) CCSID 870) AS Feld FROM ...
ergibt richtige Sonderzeichen aber statt der Umlaute stehen {, }, \, [, ] und | (was irgendwie auch richtig ist, wenn man sich die beiden Codepages 273 und 870 ansieht).
Ich hätte allerdings erwartet, dass die Umlaute, wenn sie ein User mit obigen Einstellungen eingibt, in der Datei falsch stehen (also mit Klammern usw.). Weil dem nicht so ist, funktioniert das mit dem CASTen auch nicht richtig.
Ich kann die Datei aber auch nicht auf mehrere Dateien aufteilen, weil die ERP-Software damit problemlos arbeitet und ich die Daten "nur" auslesen will.
Wie kann ich den ODBC-Treiber dazu überreden, sich wie die 5250-Anmeldeemulation zu verhalten?
Ich habe leider keine Einstellung gefunden. Es hilft nichts bei der Verbindung mit einem solchen User zuzugreifen. Der springende Punkt scheint die Einstellung der Host-Codepage bei der Emulation zu sein.
- Hans J. Sieghart
Wir hatten dieses Problem auch, in userem Fall CCSID 037 englisch und es ging um dänische Zeichen.
Damit alles richtig umgesetzt wird muß die CCSID auch bei den tschechischen Usern auf 273 gesetzt werden und nur das Tastaturlayout in CZ. Dann werden die zeichen auch richtig gespeichert.
Hope that helps....
-
 Zitat von RaMai
Wir hatten dieses Problem auch, in userem Fall CCSID 037 englisch und es ging um dänische Zeichen.
Damit alles richtig umgesetzt wird muß die CCSID auch bei den tschechischen Usern auf 273 gesetzt werden und nur das Tastaturlayout in CZ. Dann werden die zeichen auch richtig gespeichert.
Hope that helps....
Das scheint mir leider nicht so einfach bei >200 Usern. Das System ist auch schon seit über 2 Jahren so im Betrieb. Da ist schon eine kleine Datenmenge zusammengekommen. Und ansonsten funktioniert es ja auch klaglos (Formulare, Ausdrucke alles richtig). Im Sinne von "never touch a running system" suche ich eher nach einem Workaround mit SQL und ODBC. Trotzdem danke für deinen Hinweis.
Similar Threads
-
By codierknecht in forum NEWSboard SAP
Antworten: 32
Letzter Beitrag: 09-02-18, 13:00
-
By berndl in forum IBM i Hauptforum
Antworten: 6
Letzter Beitrag: 13-10-06, 09:28
-
By synus in forum IBM i Hauptforum
Antworten: 2
Letzter Beitrag: 06-10-06, 15:38
-
By umeis in forum NEWSboard Windows
Antworten: 3
Letzter Beitrag: 11-08-06, 12:45
-
By Hubert in forum IBM i Hauptforum
Antworten: 2
Letzter Beitrag: 12-05-06, 11:52
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