Limbajul de programare RPG
De la Wikipedia, enciclopedia liberă
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*****************************************************************

