RPG (limbaj de programare)
Limbajul de programare RPG a fost creat la începutul anilor 1960 de către compania IBM pentru a răspunde necesității companiilor de a crea rapoarte. RPG este un acronim de la expresia engleză Report Program Generator, generator de programe pentru rapoarte.
La început RPG era utilizat doar pentru generarea și tipărirea de rapoarte.
Î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
Un exemplu de program RPG
modificareProgramul 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ă înregistrarea nu se găsește, 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 PRINCIPALA: 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*****************************************************************