[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Jun 2008
    Beiträge
    10

    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

  2. #2
    Registriert seit
    Feb 2001
    Beiträge
    20.695
    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).
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  3. #3
    Registriert seit
    Jun 2008
    Beiträge
    10
    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

  4. #4
    Registriert seit
    Feb 2001
    Beiträge
    20.695
    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.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  5. #5
    Registriert seit
    Jun 2008
    Beiträge
    10
    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

  6. #6
    Registriert seit
    Feb 2001
    Beiträge
    20.695
    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.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

Similar Threads

  1. Konvertierung nach Graphic --> CCSID Problem
    By codierknecht in forum NEWSboard SAP
    Antworten: 32
    Letzter Beitrag: 09-02-18, 13:00
  2. Windowstabelle wird im IFS in CCSID 1252 erstellt
    By umeis in forum NEWSboard Windows
    Antworten: 3
    Letzter Beitrag: 11-08-06, 12:45
  3. CCSID ändern
    By schaaf in forum IBM i Hauptforum
    Antworten: 3
    Letzter Beitrag: 04-05-06, 11:18
  4. CPYTOIMPF und CCSID
    By Muchi in forum IBM i Hauptforum
    Antworten: 7
    Letzter Beitrag: 21-04-06, 13:54
  5. CCSID eines Files
    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
  •