[NEWSboard IBMi Forum]

Hybrid View

  1. #1
    Registriert seit
    Nov 2001
    Beiträge
    170

    CHGPF FILE(Lib/Datei) CCSID(273) klappt nicht

    Hallo zusammen,

    wenn ich einen CHGPF auf eine DDS-Datei mache, und danach mit DSPFD die Datei anschaue, hat sie immer noch die CCSID 65535.

    Warum ?

    Wenn ich der Datei direkt beim Erstellen die CCSID 273 mitgeben will kommt der Fehler :
    'Für den Parameter CCSID ist ein Wert im Parameter RCDLEN erforderlich.'

    Ich will die Datei per CPYTOIMPF ins IFS schicken.

    Vielen Dank im Voraus

  2. #2
    Registriert seit
    Feb 2001
    Beiträge
    20.696
    Dann ist die Datei per CRTPF ... RCDLEN(nnn) erstellt worden und nicht mit DDS.
    In diesem Fall ist die CCSID immer *HEX und läßt sich auch ncht ändern.

    Falls die PF doch mit DDS erstellt wurde, dann gibt es CCSID-Definitionen auf Feldebene.

    Ist die Datei mit CREATE TABLE per SQL erstellt, hat automatisch jedes Feld eine CCSID.
    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
    Nov 2001
    Beiträge
    170
    Danke für die schnelle Antwort.
    Verstehe es aber nicht.
    Ich habe die Datei im DDS so erstellt

    A R MA$VORSCHR
    A MANRSO 7S 0
    A VGAPSO 13S 2
    A VGABSO 13S 2

    Und dann mit CRTPF (wie sonst ?) erstellt.
    Danach hat die Datei CCSID 65535.
    Selbst, wenn ich beim erstellen den Parameter
    CCSID *JOB
    angebe und vorher CHGJOB CCSID(273) ausführe.

  4. #4
    Registriert seit
    Nov 2003
    Beiträge
    2.403
    Was steht denn bei DSPJOB Auswahl 2 ganz am Ende bei den folgenden Werten?

    - "ID des codierten Zeichensatzes (CCSID)"
    - "Standard-ID des codierten Zeichensatzes"

    Probier mal mit: CHGJOB LANGID(DEU) CNTRYID(DE) und dann die Datei mit CRTPF erstellen.

  5. #5
    Registriert seit
    Nov 2001
    Beiträge
    170
    ID des codierten Zeichensatzes (CCSID) . . . . . : 273
    Standard-ID des codierten Zeichensatzes . . . . . : 273

    und ich wandel dann interaktiv um

  6. #6
    Registriert seit
    Jan 2001
    Beiträge
    850
    Hallo,

    so wie deine DDS Beschreibung aussieht
    sind nur numerische Daten in der Tabelle.

    Füge mal ein Alpha Feld hinzu.

    Dann ändert das System automatisch die CCSID.

    Ganz schön schlau oder

    Gruß
    Michael

  7. #7
    Registriert seit
    Nov 2001
    Beiträge
    170
    Hallo MK,

    unglaublich, aber du hast Recht !
    Aber das kann doch nicht der Weisheit letzter Schluß sein

    Zumindest hilft es mir, danke

  8. #8
    Registriert seit
    Nov 2001
    Beiträge
    170
    So ein Dreck,
    jetzt habe ich zwar die gewünschte CCSID 273 in der PF, aber beim Kopieren ins IFS steht immer noch der Mist mit den @-Zeichen drin

    Und wenn ich bei den Parametern STMFCCSID oder STMFCODPAG den WERT *PCASCII angebe, will er mit Fehler 1 nicht kopieren.
    Ich verzweifel noch an dem Mist.

  9. #9
    Registriert seit
    Nov 2003
    Beiträge
    2.403
    Die @ in ASCII entsprechen 0x40 und damit den Leerzeichen in EBCDIC. Aber wo kommen denn die Leerzeichen her, wenn deine Datei nur numerische Felder hat?

    Ist vielleicht die Zieldatei im IFS eventuell bereits vorhanden?

  10. #10
    Registriert seit
    Feb 2001
    Beiträge
    20.696
    Wenn die Datei nur numerische Felder hat, ist die CCSID egal, da diese nur Zeichenfelder betrifft.
    Wie gibst du denn den CPYTOIMPF an ?

    Die TOCCSID sollte für Windows 1252 sein, dann funktioniert es auch korrekt.

    Allerdings darf das Ziel nicht vorhanden sein. Existiert dieses bereits, wird die CCSID des Ziels verwendet.

    So funktioniert es bei mir immer ohne Probleme:

    CPYTOIMPF FROMFILE(&DABIBL/&DAFILE) TOSTMF(&FTPPATH) +
    STMFCODPAG(1252) RCDDLM(*CRLF) +
    STRDLM(*NONE) RMVBLANK(*TRAILING)
    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

  11. #11
    Registriert seit
    Nov 2001
    Beiträge
    170
    Der Befehl :

    CPYTOIMPF FROMFILE(Lib/Datei) TOSTMF(Ziel) MBROPT(*REPLACE) TOCCSID(1252) RCDDLM(*CRLF) STRDLM(*NONE) RMVBLANK(*NONE) FLDDLM(';') DECPNT(*COMMA) bringt den Fehler :

    TOCCSID nicht gültig, wenn die Ausgabedatei eine Datenstromdatei ist.

    Wir haben übrigens 6.1

Similar Threads

  1. ChgPf in V6R1
    By gue_br in forum IBM i Hauptforum
    Antworten: 5
    Letzter Beitrag: 21-02-10, 11:20
  2. Datei-Attribute
    By dino in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 17-04-08, 08:12
  3. Probleme mit IFS und CCSID
    By fabax in forum IBM i Hauptforum
    Antworten: 12
    Letzter Beitrag: 19-03-07, 13:32
  4. Change FFD
    By Vicky-B in forum IBM i Hauptforum
    Antworten: 11
    Letzter Beitrag: 21-10-05, 11:57

Berechtigungen

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