[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Dec 2009
    Beiträge
    314

    Ein Programm 2 system-i unterschiedliche Ergebnisse

    Hallo,

    ich habe folgendes Problem: 2 system-i die eine mit V5R2 (compile funktioniert), die andere mit V5R4 (compile funktioniert nicht), folgende Statements sind in der Umwandlungsliste enthalten:

    Copy im Cobol unter

    01 HY1-SATZ.
    COPY DD-HY1SATZ OF LEAHY1.

    'HY1-FELD-BEZEICHNUNG OF HY1SATZ OF HY1' nicht in 'HY1SATZ' definiert. Schlüsselfeld ignoriert.
    I-O FORMAT:HY1SATZ FROM FILE LEAHY1 OF LIBRARY TLEAREL HY1SATZ >>
    HY1SATZ
    THE KEY DEFINITIONS FOR RECORD FORMAT HY1SATZ HY1SATZ
    NUMBER NAME RETRIEVAL ALTSEQ HY1SATZ
    0001 HY1-TABELLE ASCENDING NO HY1SATZ
    0002 HY1-KEY ASCENDING NO HY1SATZ
    0003 HY1-DATUM ASCENDING NO HY1SATZ
    0004 HY1-UHRZEIT ASCENDING NO HY1SATZ
    0005 HY1-REFERENT ASCENDING NO HY1SATZ
    0006 HY1-PROGRAMM ASCENDING NO HY1SATZ
    0007 HY1-FELD-BEZEICHNUNG ASCENDING NO HY1SATZ
    05 HY1SATZ. HY1SATZ
    06 HY1-KEY PIC X(30). HY1SATZ
    Key HY1SATZ
    06 HY1-DATUM PIC S9(8). >>
    * Datum >>
    06 HY1-UHRZEIT PIC S9(8). >>
    * Uhrzeit >>
    06 HY1-REFERENT PIC X(10). >>
    * Referent >>
    06 HY1-PROGRAMM PIC X(10). >>
    * Programm >>
    06 HY1-TABELLE PIC X(10). >>

    06 HY1-KZ-NUM PIC X(1). >>
    * KZ num,J od SPACE >>
    06 HY1-KLASSE PIC X(1). >>
    * Klassifizierung >>
    06 HY1-WERT-NUM PIC S9(14)V9(4). >>
    * numerischer Wert
    06 FILLER PIC X(32). HY1SATZ >>
    a >>
    'HY1-FELD-BEZEICHNUNG' hat eine falsche Feldart. Alphanumerische Angabe für FILLER deklariert. >>
    Feld Bezeichnung HY1SATZ >>
    (Variable length field) HY1SATZ >>
    06 HY1-TRANSAKTIONS-ART PIC X(1). HY1SATZ >>
    Transaktionsart HY1SATZ >>
    06 FILLER PIC X(102). HY1SATZ >>
    a >>
    'HY1-WERT' hat eine falsche Feldart. Alphanumerische Angabe für FILLER deklariert. >>
    Wert HY1SATZ >>
    (Variable length field) HY1SATZ
    > >
    > >
    Copy im Cobol unter V5R2

    01 HY1-SATZ. >>
    COPY DD-HY1SATZ OF LEAHY1. >>
    I-O FORMAT:HY1SATZ FROM FILE LEAHY1 OF LIBR>>
    >>
    THE KEY DEFINITIONS FOR RECORD FORMAT HY1SATZ >>
    NUMBER NAME RETRIEVAL >>
    0001 HY1-TABELLE ASCENDING >>
    0002 HY1-KEY ASCENDING >>
    0003 HY1-DATUM ASCENDING >>
    0004 HY1-UHRZEIT ASCENDING >>
    0005 HY1-REFERENT ASCENDING >>
    0006 HY1-PROGRAMM ASCENDING >>
    0007 HY1-FELD-BEZEICHNUNG ASCENDING >>
    05 HY1SATZ. >>
    06 HY1-KEY PIC X(30). >>
    * Key >>
    06 HY1-DATUM PIC S9(8). >>
    * Datum >>
    06 HY1-UHRZEIT PIC S9(8). >>
    * Uhrzeit >>
    06 HY1-REFERENT PIC X(10). >>
    * Referent >>
    06 HY1-PROGRAMM PIC X(10). >>
    * Programm >>
    06 HY1-TABELLE PIC X(10). >>
    * Tabelle >>
    06 HY1-KZ-NUM PIC X(1). >>
    * KZ num,J od SPACE >>
    06 HY1-KLASSE PIC X(1). >>
    * Klassifizierung >>
    06 HY1-WERT-NUM PIC S9(14)V9(4). >>
    * numerischer Wert >>
    06 HY1-FELD-BEZEICHNUNG. >>
    * (Variable length field) >>
    49 HY1-FELD-BEZEICHNUNG-LENGTH >>
    PIC S9(4) COMP-4.>>
    49 HY1-FELD-BEZEICHNUNG-DATA >>
    PIC X(30). >>
    * Feld Bezeichnung >>
    06 HY1-TRANSAKTIONS-ART PIC X(1). >>
    * Transaktionsart >>
    06 HY1-WERT. >>
    * (Variable length field) >>
    49 HY1-WERT-LENGTH PIC S9(4) COMP-4.>>
    49 HY1-WERT-DATA PIC X(100). >>
    * Wert

    Die DDS ist in beiden Fällen gleich definiert.>>
    > >
    DDS-Quelle
    >>
    REF(LEAFR)
    **** UNIQUE
    R HY1SATZ
    *** KEY 20A ALIAS(HY1_KEY)
    KEY 30A ALIAS(HY1_KEY)
    COLHDG('Key')
    DATUM R ALIAS(HY1_DATUM) >>
    REFFLD(DATUM) >>
    COLHDG('Datum') >>
    UHRZEIT 8S 0 ALIAS(HY1_UHRZEIT) >>
    COLHDG('Uhrzeit') >>
    REFERENT R ALIAS(HY1_REFERENT) >>
    REFFLD(REFERENT) >>
    COLHDG('Referent') >>
    PROGRAMM 10A ALIAS(HY1_PROGRAMM) >>
    COLHDG('Programm') >>
    TABELLE 10A ALIAS(HY1_TABELLE) >>
    COLHDG('Tabelle') >>
    *
    KZNUM R ALIAS(HY1_KZ_NUM) >>
    REFFLD(TEXT1) >>
    COLHDG('KZ num,J od SPACE') >>
    KLASSE R ALIAS(HY1_KLASSE) >>
    REFFLD(TEXT1) >>
    COLHDG('Klassifizierung') >>
    WERTNUM 18S 4 ALIAS(HY1_WERT_NUM) >>
    COLHDG('numerischer Wert') >>
    >>
    FELDBEZ 30A ALIAS(HY1_FELD_BEZEICHNUNG) >>
    VARLEN(8) >>
    COLHDG('Feld Bezeichnung') >>
    TRANSART 1A ALIAS(HY1_TRANSAKTIONS_ART) >>
    COLHDG('Transaktionsart') >>
    WERT 100A ALIAS(HY1_WERT) >>
    VARLEN(8) >>
    COLHDG('Wert') >>
    >>
    K TABELLE >>
    K KEY
    K DATUM >>
    K UHRZEIT >>
    K REFERENT >>
    K PROGRAMM >>
    K TABELLE >>
    K FELDBEZ
    Kann mir vielleicht jemand weiterhelfen?

    mfg
    Andreas
    Andreas
    Ein AS/400 Dinosaurier since 1989

  2. #2
    Registriert seit
    Nov 2003
    Beiträge
    2.307
    Sieht nach 'nem Problem mit Feldern variabler Länge beim Wandeln aus.

  3. #3
    Registriert seit
    Feb 2001
    Beiträge
    20.243
    CRTCBLPGM CVTOPT(*VARCHAR)

    Ggf. kann man das auch als PROCESS-Anweisung in der Quelle angeben.
    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 2009
    Beiträge
    314
    Zitat Zitat von Fuerchau Beitrag anzeigen
    CRTCBLPGM CVTOPT(*VARCHAR)

    Ggf. kann man das auch als PROCESS-Anweisung in der Quelle angeben.
    Danke, habe jetzt mal auch auf der V5R2 compiliert und dann genau diesen unterschied gefunden. Das gute am RTCp ist, das ich diese Optionen generell in den BuildSpec's definieren kann und diese werden dann von allen Entwicklern innerhalb des Projektes verwendet und keiner kann was vergessen.

    mfg
    Andreas
    Andreas
    Ein AS/400 Dinosaurier since 1989

  5. #5
    Registriert seit
    Nov 2003
    Beiträge
    2.307
    Zitat Zitat von nico1964 Beitrag anzeigen
    ... und keiner kann was vergessen.
    Außer beim Releasewechsel von V5R2 nach V5R4 zum Beispiel.

  6. #6
    Registriert seit
    Dec 2009
    Beiträge
    314
    Zitat Zitat von Pikachu Beitrag anzeigen
    Außer beim Releasewechsel von V5R2 nach V5R4 zum Beispiel.
    Nein, hat nichts mit dem Releasewechsel zu tun, da wir unter V5R2 mit dem guten alten ADM arbeiten und erst auf der V5R4 mit RTCp und da habe ich einfach nicht aufgepasst, beim anpassen der Compileroptions
    Andreas
    Ein AS/400 Dinosaurier since 1989

Similar Threads

  1. Unterschiedliche Ergebnisse bei Datenbankabrage
    By nico1964 in forum NEWSboard Windows
    Antworten: 7
    Letzter Beitrag: 09-04-10, 10:39
  2. Programm auf "ferner" AS400 ausführen.
    By Souljumper in forum NEWSboard Programmierung
    Antworten: 6
    Letzter Beitrag: 13-05-09, 19:50
  3. Programmbibliothek in einem Cobol oder CL Programm ermitteln
    By schatte in forum NEWSboard Programmierung
    Antworten: 19
    Letzter Beitrag: 10-01-07, 11:32
  4. Tools von IST – Integrierte System Technik
    By Kirsten Steer in forum NEWSboard Server Software
    Antworten: 0
    Letzter Beitrag: 11-12-06, 09:03
  5. Antworten: 0
    Letzter Beitrag: 07-11-06, 08:30

Berechtigungen

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