Limbajul de programare RPG

De la Wikipedia, enciclopedia liberă

(Redirecţionat de la RPG (limbaj de programare))
Salt la: Navigare, căutare
Dezambiguizare
Acest articol se referă la limbajul de programare RPG. Pentru alte sensuri vedeţi RPG (dezambiguizare).

Limbajul de programare RPG a fost creat la începutul anilor 1960 de IBM pentru a răspunde necesităţii companiilor de a crea rapoarte.

La început, RPG era utilizat doar pentru tipărirea de rapoarte.

RPG = Report Program GENERATOR.

În prezent RPG este un limbaj de programare procedural şi este utilizat în principal pentru crearea de aplicaţii în domeniul economic.

Programul RPG utilizează 3 tipuri de structuri

- structuri secvenţiale

- structuri condiţionale

- structuri repetitive

Exemplu de Program Rpg

Programul afişează ecranul ECRAN02. Ecranul va fi afişat până se apasă tasta F3. Se introduce numărul matricol în câmpul din ecran şi se caută valoarea în fişierul FMATRG. Dacă nu se găseşte înregistrarea se va afişa un mesaj. Dacă înregistrarea este găsită, se afişează numărul matricol precum şi numele şi prenumele studentului.

    HDEBUG
    F*----------------------------------------------------------
    F*       FISIERE
    F*----------------------------------------------------------
    FECRAN02   CF   E             WORKSTN
    FFMATRG    UF A E           K DISK
    F*
    D*----------------------------------------------------------
    D*      DATE
    D*----------------------------------------------------------
    D*
    DERR              S              1S 0
    DXNRMATR          S             10A
    D*---------TEXTE PENTRU MESAJE -----------------------------
    DTXTMS1           C                   'INTRODUCETI NUMARUL MATRICOL!!'
    DTXTMS2           C                   'NUMAR MATRICOL INEXISTENT' 
    D*
    C*-------------INCEPUTUL PROGRAMULUI------------------------
    C*-------BUCLA PRICIPALA: SE EXECUTA PANA SE APASA F3-------
    C                   DOU       *IN03=*ON
    C                   EXFMT     RCHEIE
    C                   IF        *IN06=*ON
    C*
    C                   IF        NRMATR=*BLANK
    C                   EVAL      MESAJ1=TXTMS1
    C                   EVAL      MESAJ2=*BLANK
    C                   EXFMT     WMESAJE
    C                   ITER
    C                   ENDIF
    C*
    C                   IF        *IN06='1'
    C     NRMATR        CHAIN     RFMATRG
    C*
    C                   IF        %FOUND
    C                   EVAL      MESAJ1='NUMAR MATRICOL '+NRMATR
    C                   EVAL      MESAJ2=%TRIM(NUME)+' '+%TRIM(PRENUME)
    C                   EXFMT     WMESAJE
    C                   ELSE
    C                   EVAL      MESAJ1=TXTMS2
    C                   EVAL      MESAJ2=*BLANK
    C                   EXFMT     WMESAJE
    C                   ENDIF
    C*
    C                   ENDIF
    C*
    C                   ENDIF
    C*
    C                   ENDDO
    C*******************SFARSITUL PROGRAMULUI**************************
    C                   SETON                                           LR
    C*****************************************************************
Unelte personale