Uvod u ABAP: Tipovi podataka, Operatorovi i urednik – Vodič
⚡ Pametni sažetak
Uvod u ABAP pokriva jezik SAP stvoren za izgradnju aplikacija na R/3 sustavu. Ovaj resurs objašnjava tipove podataka, operatore, kontrolne naredbe, internu tablicu i SE38 editor gdje počinje svaki ABAP program.

Što je ABAP?
ABAP je kratica za Advanced Business Application Programming (Napredno programiranje poslovnih aplikacija). To je programski jezik za razvojping prijave za SAP R/3 sustav.
Najnovija verzija ABAP-a zove se ABAP Objects i podržava objektno orijentirano programiranje. SAP pokrenut će aplikacije napisane pomoću ABAP/4, ranije verzije ABAP-a, kao i aplikacije koje koriste ABAP objekte.
Ovaj uvod ne pokušava dokumentirati svaki ABAP jezik konstrukt. Brzo uvodi ključne koncepte, tako da možete početi pisati radne programe, a zatim prijeći na naprednije teme.
Vrste podataka
Svaki ABAP program započinje deklariranjem podataka s kojima će raditi.
Sintaksa za deklariranje varijable u ABAP-u –
DATA Variable_Name TYPE Variable_Type.
Primjer:
DATA employee_number TYPE I.
Slijedi popis tipova podataka koje ABAP podržava.
| Tip podataka | Početna duljina polja | Valjana duljina polja | Početna vrijednost | Značenje |
|---|---|---|---|---|
| Numerički tipovi | ||||
| I | 4 | 4 | 0 | Cijeli broj (cijeli broj) |
| F | 8 | 8 | 0 | Broj s pomičnim zarezom |
| P | 8 | 1 - 16 | 0 | Upakiran broj |
| Tipovi likova | ||||
| C | 1 | 1 - 65535 | '...' | Tekstualno polje (alfanumerički znakovi) |
| D | 8 | 8 | '00000000' | Polje datuma (format: GGGGMMDD) |
| N | 1 | 1 - 65535 | '0 ... 0' | Numeričko tekstualno polje (numerički znakovi) |
| T | 6 | 6 | '000000' | Vremensko polje (format: HHMMSS) |
| Heksadecimalni tip | ||||
| X | 1 | 1 - 65535 | X'0 … 0′ | Heksadecimalno polje |
Osam gore navedenih tipova su klasični tipovi fiksne duljine. ABAP također nudi dva tipa promjenjive duljine s kojima se početnici gotovo odmah susreću: STRING za tekst bilo koje duljine i XSTRING za binarne podatke bilo koje duljine.
ABAP Operaulagatelji
Nakon što su podaci deklarirani, operatori ih mijenjaju i uspoređuju.
Dodjeljivanje vrijednosti
a = 16. MOVE 16 TO a. WRITE a TO b.
Sve tri naredbe pomiču vrijednost. Znak jednakosti je moderni oblik, dok su MOVE i WRITE TO stariji ekvivalenti koje ćete još uvijek susresti u starijim programima.
Aritmetičke operacije
COMPUTE a = a * 100.
ABAP također podržava ADD, SUBTRACT, MNOŽENJE i DIJELJENJE kao samostalne ključne riječi, ali oblik RAČUNAJ prikazan gore je onaj koji se najčešće koristi.
logički operatori
Logički operatori vraćaju vrijednost true ili false, i njih testira svaka kontrolna naredba u sljedećem odjeljku. Svaki ima oblik riječi i oblik simbola, a ta dva su zamjenjiva.
| Oblik riječi | Oblik simbola | Značenje |
|---|---|---|
EQ |
= |
Jednak |
NE |
<> |
Nije jednako |
GT |
> |
Veći od |
GE |
>= |
Veći od ili jednak |
LT |
< |
Less od |
LE |
<= |
Less nego ili jednako |
Izjave o kontroli
Kontrolne naredbe koriste gore navedene logičke operatore kako bi odlučile koje će se linije koda izvršavati i koliko često.
AKO … KRAJ AKO
IF [NOT] exp [ AND / OR [NOT] exp ]. ........ [ELSEIF exp. .......] [ELSE. .......] ENDIF.
CASE izjava
CASE variable. WHEN value1. ......... WHEN value2. ......... [WHEN OTHERS. .........] ENDCASE.
WHILE petlja
WHILE <logical expression>. ..... ENDWHILE.
DO petlja
DO <n> TIMES. ..... ENDDO.
Petlja WHILE se izvršava dok god je uvjet ispunjen. Petlja DO se izvršava fiksni broj puta ili beskonačno dok je ne zaustavi naredba EXIT.
Interne tablice u ABAP-u
Pojedinačne varijable rijetko su dovoljne. Poslovni programi čitaju više redaka odjednom, a interna tablica je struktura koja ih drži u memoriji.
Interna tablica je dinamički niz. Nema fiksnu veličinu, traje samo za vrijeme trajanja programa i standardni je način premještanja redaka između baze podataka i zaslona.
" Declare an internal table and a work area DATA: lt_employees TYPE TABLE OF pa0001, ls_employee TYPE pa0001. " Fill it from the database SELECT * FROM pa0001 INTO TABLE lt_employees UP TO 10 ROWS. " Read it row by row LOOP AT lt_employees INTO ls_employee. WRITE: / ls_employee-pernr, ls_employee-ename. ENDLOOP.
Tri gore navedene operacije pokrivaju većinu svakodnevnog rada: deklariranje tablice, popunjavanje s SELECT, a zatim prolazak kroz nju s LOOP AT. APPEND dodaje redak, READ TABLE pronalazi jedan, a DELETE uklanja retke koji odgovaraju uvjetu.
Urednik ABAP/4
Sva gore navedena sintaksa je upisana na jedno mjesto.
transakcija SE38 otvara ABAP Editor, gdje ćete kao programer provoditi većinu svog vremena stvarajući i modificirajući programe.
ABAP/4 urednik, transakcija SE38
Kako napisati svoj prvi ABAP program
Gornji zaslon prikazuje sljedeće korake. Slijed u nastavku generira radno izvješće za nekoliko minuta.
- Otvorite uređivač. Unesite šifru transakcije SE38 u SAP polje za naredbe grafičkog korisničkog sučelja i pritisnite Enter.
- Navedite naziv programa. Upišite ime koje počinje s Z or Y, Na primjer
ZHELLO_WORLDTa dva slova su imenski prostor korisnika i SAP jamči da ih nikada neće prebrisati tijekom nadogradnje. - Stvori ga. Kliknite stvoriti, unesite kratak opis i odaberite Izvršni program kao vrsta.
- Dodijelite paket. Odaberite Lokalni objekt za vježbu. Lokalni objekt ostaje u vašem sustavu i ne treba mu zahtjev za prijenos.
- Napišite kod.
REPORT zhello_world. DATA employee_name TYPE string. employee_name = 'Guru99'. WRITE: / 'Hello, ABAP!', / 'Welcome', employee_name.
- Provjerite sintaksu. Press Ctrl + F2Statusna traka prikazuje svaku grešku i redak koji ju je uzrokovao.
- Aktivirajte program. Press Ctrl + F3Neaktivni program se ne može pokrenuti.
- Izvršiti. Press F8Otvara se izlazna lista i prikazuje oba retka WRITE.
Kosa crta u naredbi WRITE prisiljava ispis u novi redak. Njenim uklanjanjem sve se ispisuje u jednom retku, što je prva navika formatiranja koju većina početnika usvaja.
Uobičajena ABAP transakcija Codes
Nekoliko transakcijskih kodova pokriva gotovo sve što je potrebno novom ABAP developeru.
| transakcija | Svrha |
|---|---|
SE38 |
ABAP Editor. Stvaranje, uređivanje, provjera i pokretanje programa. |
SE80 |
Navigator objekata. Jedna radna površina za programe, klase, pakete i ekrane. |
SE11 |
ABAP rječnik. Definirajte i pregledajte tablice baze podataka, podatkovne elemente i domene. |
SE16N |
Preglednik podataka. Pregledajte sadržaj bilo koje tablice bez pisanja SELECT naredbe. |
SE37 |
Alat za izradu funkcija. Izrada i testiranje funkcijskih modula. |
SE24 |
Alat za izradu klasa. Stvorite globalne klase za ABAP objekte. |
ST22 |
Analiza dumpa. Pročitajte pogrešku u izvođenju kada se program završi. |
SE38 i SE11 su dovoljni za izradu prvog izvješća. ST22 postaje najvrjedniji u grupi u trenutku kada se program sruši.

