[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Oct 2008
    Beiträge
    56

    Question OS-Version Medifikationsstufe ermitteln

    Hallo Welt

    In einem RPG-Programm soll die OS-Version ermittelt werden. Das geschieht mit dem API "QUSROBJD". Als Kommentar steht in diesem Programm (aus dem Jahr 2006), dass dieses API die OS-Version z.B. für V5R3M5 als "V05R03M50" zurückliefert, d.h. die Modifikationsstufe steht nicht, wie man erwarten würde, an den letzten beiden Stellen als "05", sondern an der vorletzten Stelle als "5".

    In letzter Zeit gibt es vermehrt Meldungen von Kunden, dass die Modifikationsstufe anscheinend nicht mehr richtig ermittelt wird. Kann es sein, dass das je nach OS-Version unterschiedlich zurückgeliefert wird bzw. hat sich in den OS-Versionen 6 oder 7 daran etwas geändert?

    Mir steht leider zur Zeit gar kein System mit einer Modifikationsstufe > 0 zur Verfügung, wo ich das testen könnte.

    Danke im Voraus für hilfreiche Antworten

  2. #2
    Registriert seit
    Jun 2001
    Beiträge
    2.044
    Das Api kenn ich nicht
    wir machen das so

    Code:
    D PR_RTN          S            128A   INZ                            
    D PR_RTNLEN       S              4A   INZ(X'00000080')               
    D PR_FORMAT       S              8A   INZ('PRDR0100')                
    D PR_PROD         S             27A   INZ('*OPSYS *CUR  0000*CODE ') 
    D PR_ERRCD        S              4A   INZ(X'00000000')               
    C                   CALL      'QSZRTVPR'                     
     *                  ====      ============                   
    C                   PARM                    PR_RTN           
    C                   PARM                    PR_RTNLEN        
    C                   PARM                    PR_FORMAT        
    C                   PARM                    PR_PROD          
    C                   PARM                    PR_ERRCD         
                                                                 
    C                   EVAL      RELEASE = %SUBST(PR_RTN:20:6)  
                                                                 
    C                   IF        RELEASE = *BLANK               
    C                   RETURN    '*NONE '                       
    C                   ENDIF
    Das liefert V7R1M0 zurück

    Robi
    Das Notwendige steht über dem technisch machbaren.
    (klingt komisch, funktioniert aber!)

  3. #3
    Registriert seit
    Nov 2010
    Beiträge
    33
    Hi,

    hätte eine kurze Frage dazu. Was habt ihr gegen den Datenbereich QSS1MRI?

    Mfg
    loisl

  4. #4
    Registriert seit
    Jun 2001
    Beiträge
    2.044
    Das Notwendige steht über dem technisch machbaren.
    (klingt komisch, funktioniert aber!)

Similar Threads

  1. Programmbibliothek in einem Cobol oder CL Programm ermitteln
    By schatte in forum NEWSboard Programmierung
    Antworten: 19
    Letzter Beitrag: 10-01-07, 11:32
  2. Dateigröße ermitteln und anzeigen
    By Bratmaxxe in forum NEWSboard Programmierung
    Antworten: 9
    Letzter Beitrag: 08-01-07, 09:50
  3. Fixtexte in Bildschirmdateien ermitteln
    By ulbrecht in forum NEWSboard Programmierung
    Antworten: 7
    Letzter Beitrag: 06-12-06, 17:06
  4. nach Insert neu gen. Datensatz ermitteln
    By M.Kasper in forum IBM i Hauptforum
    Antworten: 6
    Letzter Beitrag: 25-08-06, 07:32
  5. SQL Select mit SUM aus einer DB
    By JonnyRico in forum NEWSboard Programmierung
    Antworten: 14
    Letzter Beitrag: 30-03-06, 12:33

Berechtigungen

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