[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Jul 2012
    Beiträge
    1

    cpyfrmpcd mit Umlauten

    Hallo Forum,

    mir fehlt zu diesem alten Problem eine praktikable Lösung. Ich habe im QDLS eine xml-Datei die ich per cpyfrmpcd mit Tabelle QA5U697273 auf die AS bringe. Hier sind die Umlaute in nicht lesbare Zeichen umgesetzt. Ich habe das ganze auch schon in eine Datei der AS mit CCSID 273 gebracht, gleiches Ergebnis. Mit einer angepassten Tabelle, die auf der o.g. basiert und für die Umlaute andere Hex-Einträge hat, komme ich auch nicht weiter. Gibt es da noch ein Hintertürchen das ich bislang nicht kenne???

  2. #2
    Registriert seit
    May 2007
    Beiträge
    295
    Guten Morgen.
    Ein radikaler Weg wäre hier, bevor man per CPYFRMPCD kopiert, die Datei (mit Inhalt) mittels iconv (QSH) in die richtige CCSID zu konvertieren:
    iconv -f quellccsid -t zielccsid quelldateiname > zieldateiname && setccsid zielccsid zieldateiname

    Ob dies jedoch im QDLS so praktikabel ist müsste man probieren.
    Greets
    Christian
    Anwendungsentwickler und ein bissal Systemoperator
    https://github.com/prsbrc
    LinkedIn

  3. #3
    Registriert seit
    Feb 2001
    Beiträge
    20.207
    XML-Dateien gehören nicht ins QDLS!
    Diese sollten innerhalb "/Home" abgewickelt werden.
    Häufig sind diese nämlich in UTF-8 (CCSID 1208) gespeichert und müssen erst in z.B. 273 konvertiert werden.
    Dazu bietet sich dann CPYFRMSTMF an.

    QDLS sollte soweit es irgend geht vermieden und abgeschafft werden!
    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

  4. #4
    Registriert seit
    Dec 2014
    Beiträge
    310
    Zitat Zitat von Fuerchau Beitrag anzeigen
    QDLS sollte soweit es irgend geht vermieden und abgeschafft werden!
    Dafür sollte es einen LIKE-Button geben

    Btw, um die eigentliche Frage "möglicherweise" zu beantworten, versuche mal Folgendes.
    Den Copy nicht mit CPYFRMPCD sondern mit:
    CPYFRMSTMF FROMSTMF('QDLS/myfolder/myfile')
    TOMBR('qsys.lib/mylib.lib/myfile.file/mymbr.mbr')
    MBROPT(*REPLACE)
    CVTDTA(*AUTO)
    STMFCCSID(*STMF) oder (*PCASCII)
    DBFCCSID(*FILE)
    STMFCODPAG(*STMF) oder (*PCASCII)


    Mit den Parametern STMFCCSID und STMFCODPAG (und evtl. DBFCCSID) musst Du "experimentieren".

    Beim umgekehrten Weg (also mit CPYTOSTMF) werden durch STMFCODPAG(*PCASCII oder *STDASCII) die Umlaute nämlich richtig aufbereitet!)

  5. #5
    Registriert seit
    Feb 2001
    Beiträge
    20.207
    Genau da setzt aber das Problem an.
    Von/auf QDLS lässt sich nur binär kopieren, da keine CCSID unterstützt wird.
    Dafür kann man ja mittels Codetabellen CPYxxxPCD verwenden.
    Bei UTF-8 o.ä. scheitert das ganz aber.
    (Ist z.B. auch beim QNTC so).
    Die Datei ist also in ein "/Home"-Verzeichnis zu bringen, dann klappts auch mit CPYxxxSTMF und für anderes auch CPYxxxIMPF.
    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. cpyfrmpcd
    By JanItor in forum IBM i Hauptforum
    Antworten: 6
    Letzter Beitrag: 10-02-15, 09:01

Tags for this Thread

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • You may not post attachments
  • You may not edit your posts
  •