[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Nov 2005
    Beiträge
    59

    Programm Status Datenstruktur

    Moin, moin,

    ich verweifele gerade an meinem "alten" Code.

    Zu Dokumentierungszwecken frage ich im Programm häufiger User und Programmname ab und schreibe diese Daten mit Datum und Zeit in eine Protokolldatei. Da ich nun meine Protokolldatei ersetzen musste (weitere Angaben werden benötigt), sollte das Programm einfach nur mit der geänderten Datei neu kompiliert werden.

    Code:
      ˜*****************************************************************        €
         ˜*       D A T E N S T R U K T U R E N                                    €
         ˜*****************************************************************        €
         D/copy XXX/QRPGLEH,PGM_SDS_I
    
         D mydate          S               D   DATFMT(*EUR) INZ(D'2000-01-01')
         D mytime          S               T   INZ(T'00:00:00')
    
         D $text           S            132
         d $pgm            s             10
    
         C/EJECT
         ˜*****************************************************************        €
         ˜*       I N I T I A L I S I E R U N G                                    €
         ˜*****************************************************************        €
         C
    
          //********************************************************
          // mainline
          //********************************************************
         c     *entry        plist
         c                   parm                    $text
         c                   parm                    $pgm
    
          /FREE
           mydate = %date;
           mytime = %time;
    
           reset cpyprf;
    
           cptext = $text;
           cpusr = user;
           cppgm = $pgm;
           cpdat = mydate;
           cptim = mytime;
    In der Kompilierungsliste erhalte ich folgende Fehler:
    Code:
    ...
    *RNF7031   TIMSYS          A(6)                   41D 
    *RNF7031   USER            A(10)                  37D 
    *RNF7031   XFILE           A(8)                   34D 
    *RNF7031   XINFO           A(35)                  35D 
    *RNF7031   XMSGID          A(7)                   26D 
    *RNF7031   XMSGTX          A(80)                  31D 
    *RNF7031   XMSGTY          A(3)                   27D 
    *RNF7030 USER              **UNDEF**              80
    Also in der PGM_SDS_I ist der "USER" definiert und es wird nicht auf diese Variable verwiesen. Zum anderen vewende ich eine Variable "USER", die nicht definiert ist!!!??

    Hat jemand eine Idee, wo ich die Ursache für diese Merkwürdigkeit finden und beheben kann?

    Danke

    Andreas

  2. #2
    Registriert seit
    Aug 2003
    Beiträge
    1.508
    Hallo Andreas,

    interessant wäre
    1. der Inhalt von PGM_SDS_I
    2. was im SPLF bei der Auflösung dieser Copy-Strecke steht.

    lg Andreas

  3. #3
    Registriert seit
    Nov 2005
    Beiträge
    59
    Moin Andreas,

    hier der Spoolfile-Abschnitt:
    Code:
        19+DPGMSDS          SDS                  qualified 
        20+D  PGMNAM                 1     10              
        21+D  STATUS                11     15              
        22+D  PRVSTS                16     20              
        23+D  RPGLIN                21     28              
        24+D  SUBROU                29     36              
        25+D  NBRPAR                37     39              
        26+D  XMSGID                40     46              
        27+D  XMSGTY                40     42              
        28+D  MIODT                 47     50              
        29+D  IWRKAR                51     80              
        30+D  PGMLIB                81     90              
        31+D  XMSGTX                91    170              
        32+D  RPGEXC               171    174              
        33+D  JAHRHU               199    200              
        34+D  XFILE                201    208              
        35+D  XINFO                209    243              
        36+D  JOB                  244    253    
        37+D  USER                 254    263    
        38+D  NBR                  264    269    
        39+D  RUNDAT               270    275    
        40+D  DATSYS               276    281    
        41+D  TIMSYS               282    287    
        42+D  CMPDAT               288    293    
        43+D  CMPTIM               294    299    
        44+D  CMPLVL               300    303    
        45+D  SRCFIL               304    313    
        46+D  SRCLIB               314    323    
        47+D  SRCMBR               324    333
    und hier der Quellcode:

    Code:
          *
          * ‚Programm-Status Datenstruktur
          *‚-----------------------------------------------
         DPGMSDS          SDS                  qualified
         D  PGMNAM                 1     10
         D  STATUS                11     15
         D  PRVSTS                16     20
         D  RPGLIN                21     28
         D  SUBROU                29     36
         D  NBRPAR                37     39
         D  XMSGID                40     46
         D  XMSGTY                40     42
         D  MIODT                 47     50
         D  IWRKAR                51     80
         D  PGMLIB                81     90
         D  XMSGTX                91    170
         D  RPGEXC               171    174
         D  JAHRHU               199    200
         D  XFILE                201    208
         D  XINFO                209    243
         D  JOB                  244    253
         D  USER                 254    263
         D  NBR                  264    269
         D  RUNDAT               270    275
         D  DATSYS               276    281
         D  TIMSYS               282    287
         D  CMPDAT               288    293
         D  CMPTIM               294    299
         D  CMPLVL               300    303
         D  SRCFIL               304    313
         D  SRCLIB               314    323
         D  SRCMBR               324    333
    Habe ich etwas übersehen.
    Der Code stammt grundsätzlich noch von OS V5R4, mittlerweile stehen wir bei V7R1M0.

    Gruß

    Andreas

  4. #4
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Qualified ist die Ursache. Alle felder beginnen mit "PGMSDS.", also PGMSDS.USER!
    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
    Nov 2005
    Beiträge
    59
    Moin Fuerchau,

    vielen Dank!

    Nu funzt es wieder. Das WE kann kommen.

    Gruß

    Andreas

  6. #6
    Registriert seit
    Jan 2007
    Beiträge
    905
    Kleiner Tipp von mir...

    ... setz den USER doch auf 358-367, dann hast du auch den effektiven User. Deine Definition entspricht dem Job User. Warum ist das wichtig? Im Falle von HTTP/CGIDEV Anwendungen hättest du für jedes aufgerufene Programm QTMHHTTP als User in deinem Programm.

    Gruss
    kf

Similar Threads

  1. suche in Datenstruktur Array
    By woodstock99 in forum NEWSboard Programmierung
    Antworten: 8
    Letzter Beitrag: 15-01-14, 16:57
  2. STRDBG und Datenstruktur
    By XMan in forum NEWSboard Programmierung
    Antworten: 6
    Letzter Beitrag: 08-01-14, 18:51
  3. Spools Status Fin
    By pille in forum IBM i Hauptforum
    Antworten: 4
    Letzter Beitrag: 28-11-02, 09:37
  4. Drucker steht in Status PND?
    By H.V in forum NEWSboard Drucker
    Antworten: 1
    Letzter Beitrag: 10-07-02, 14:03
  5. SPLF Status ändern
    By procher in forum IBM i Hauptforum
    Antworten: 4
    Letzter Beitrag: 11-06-01, 12:51

Berechtigungen

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