Úvod do ABAP: datové typy, Operators & Editor – Tutorial
⚡ Chytré shrnutí
Úvod do ABAP zahrnuje jazyk SAP vytvořeno pro tvorbu aplikací v systému R/3. Tento zdroj vysvětluje datové typy, operátory, řídicí příkazy, interní tabulku a editor SE38, kde začíná každý program ABAP.

Co je ABAP?
ABAP je zkratka pro Advanced Business Application Programming (pokročilé programování obchodních aplikací). Je to programovací jazyk pro vývojping žádosti o SAP systém R/3.
Nejnovější verze ABAP se nazývá ABAP Objects a podporuje objektově orientované programování. SAP bude spouštět aplikace napsané pomocí ABAP/4, dřívější verze ABAP, stejně jako aplikace využívající ABAP Objects.
Tento úvod se nepokouší zdokumentovat všechny jazyk ABAP konstrukt. Rychle představuje klíčové koncepty, abyste mohli začít psát funkční programy a poté přejít k pokročilejším tématům.
Typy dat
Každý ABAP program začíná deklarací dat, se kterými bude pracovat.
Syntaxe pro deklaraci proměnné v ABAP –
DATA Variable_Name TYPE Variable_Type.
Příklad:
DATA employee_number TYPE I.
Následuje seznam datových typů podporovaných protokolem ABAP.
| Datový typ | Počáteční délka pole | Platná délka pole | Počáteční hodnota | Význam |
|---|---|---|---|---|
| Číselné typy | ||||
| I | 4 | 4 | 0 | Celé číslo (celé číslo) |
| F | 8 | 8 | 0 | Číslo s plovoucí desetinnou čárkou |
| P | 8 | 1 - 16 | 0 | Zabalené číslo |
| Typy postav | ||||
| C | 1 | 1 - 65535 | '…' | Textové pole (alfanumerické znaky) |
| D | 8 | 8 | '00000000' | Pole s datem (formát: RRRRMMDD) |
| N | 1 | 1 - 65535 | '0 … 0' | Číselné textové pole (číselné znaky) |
| T | 6 | 6 | '000000' | Časové pole (formát: HHMMSS) |
| Hexadecimální typ | ||||
| X | 1 | 1 - 65535 | X'0…0′ | Hexadecimální pole |
Osm výše uvedených typů jsou klasické typy s pevnou délkou. ABAP také nabízí dva typy s proměnnou délkou, se kterými se začátečníci setkávají téměř okamžitě: STRING pro text libovolné délky a XSTRING pro binární data libovolné délky.
ABAP Operatorů
Jakmile jsou data deklarována, operátory je mění a porovnávají.
Přiřazení hodnot
a = 16. MOVE 16 TO a. WRITE a TO b.
Všechny tři příkazy přesouvají hodnotu. Znaménko rovnosti je moderní tvar, zatímco MOVE a WRITE TO jsou starší ekvivalenty, se kterými se stále setkáte ve starších programech.
Aritmetické operace
COMPUTE a = a * 100.
ABAP také podporuje operace ADD a SUB.TRACKlíčové funkce T, MIPLY a DIVIDE se používají jako samostatná klíčová slova, ale nejčastěji se používá výše uvedený tvar COMPUTE.
logické operátory
Logické operátory vracejí hodnotu true nebo false a právě je testuje každý řídicí příkaz v následující části. Každý z nich má slovní a symbolický tvar a tyto dva jsou zaměnitelné.
| Slovní forma | Symbolický tvar | Význam |
|---|---|---|
EQ |
= |
Rovná |
NE |
<> |
Nerovná se |
GT |
> |
Větší než |
GE |
>= |
Větší nebo roven |
LT |
< |
Less než |
LE |
<= |
Less než nebo rovno |
Kontrolní výkazy
Řídicí příkazy používají výše uvedené logické operátory k určení, které řádky kódu se spustí a jak často.
POKUD … KONEC POKUD
IF [NOT] exp [ AND / OR [NOT] exp ]. ........ [ELSEIF exp. .......] [ELSE. .......] ENDIF.
Příkaz CASE
CASE variable. WHEN value1. ......... WHEN value2. ......... [WHEN OTHERS. .........] ENDCASE.
Smyčka WHILE
WHILE <logical expression>. ..... ENDWHILE.
DO smyčka
DO <n> TIMES. ..... ENDDO.
Smyčka WHILE běží tak dlouho, dokud je splněna její podmínka. Smyčka DO běží pevně stanovený početkrát nebo donekonečna, dokud ji nezastaví příkaz EXIT.
Interní tabulky v ABAP
Jednotlivé proměnné málokdy stačí. Obchodní programy čtou mnoho řádků najednou a interní tabulka je struktura, která je uchovává v paměti.
Interní tabulka je dynamické pole. Nemá pevnou velikost, existuje pouze po dobu běhu programu a je standardním způsobem, jak přesouvat řádky mezi databází a obrazovkou.
" 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.
Tři výše uvedené operace pokrývají většinu každodenní práce: deklarace tabulky, její vyplnění pomocí SELECT a následná procházení smyčkou LOOP AT. APPEND přidává řádek, READ TABLE vyhledá řádek a DELETE odstraňuje řádky, které splňují podmínku.
Editor ABAP/4
Veškerá výše uvedená syntaxe je zapsána na jednom místě.
transakce SE38 otevře editor ABAP, kde jako vývojář strávíte většinu času vytvářením a úpravou programů.
Editor ABAP/4, transakce SE38
Jak napsat svůj první ABAP program
Na výše uvedené obrazovce probíhají následující kroky. Následující sekvence vytvoří funkční zprávu během několika minut.
- Otevřete editor. Zadejte kód transakce SE38 v SAP Příkazové pole grafického uživatelského rozhraní a stiskněte klávesu Enter.
- Pojmenujte program. Zadejte jméno začínající na Z or Y, Například
ZHELLO_WORLDTato dvě písmena představují jmenný prostor zákazníka a SAP zaručuje, že je během upgradu nikdy nepřepíše. - Vytvořte to. klikněte Vytvořit, zadejte krátký popis a vyberte Spustitelný program jako typ.
- Přiřadit balíček. Vybrat Lokální objekt pro cvičnou práci. Lokální objekt zůstává ve vašem systému a nevyžaduje žádný požadavek na transport.
- Napište kód.
REPORT zhello_world. DATA employee_name TYPE string. employee_name = 'Guru99'. WRITE: / 'Hello, ABAP!', / 'Welcome', employee_name.
- Zkontrolujte syntaxi. Pro média Ctrl + F2Stavový řádek hlásí jakoukoli chybu a řádek, který ji způsobil.
- Aktivujte program. Pro média Ctrl + F3Neaktivní program nelze spustit.
- Vykonat. Pro média F8Otevře se výstupní seznam a zobrazí se oba řádky WRITE.
Lomítko v příkazu WRITE vynutí nový řádek. Jeho odstraněním se vše vypíše na jeden řádek, což je první formátovací návyk, který si většina začátečníků osvojí.
Běžná transakce ABAP Codes
Několik transakčních kódů pokrývá téměř vše, co nový vývojář ABAP potřebuje.
| transakce | Účel |
|---|---|
SE38 |
ABAP Editor. Vytvářejte, upravujte, kontrolujte a spouštějte programy. |
SE80 |
Navigátor objektů. Jednotný pracovní stůl pro programy, třídy, balíčky a obrazovky. |
SE11 |
Slovník ABAP. Definuje a kontroluje databázové tabulky, datové prvky a domény. |
SE16N |
Prohlížeč dat. Zobrazte obsah libovolné tabulky bez nutnosti psaní příkazu SELECT. |
SE37 |
Tvůrce funkcí. Vytvářejte a testujte funkční moduly. |
SE24 |
Tvůrce tříd. Vytvořte globální třídy pro objekty ABAP. |
ST22 |
Analýza výpisu. Přečte chybu za běhu při ukončení programu. |
SE38 a SE11 stačí k vytvoření první zprávy. ST22 se stává nejcennějším ze skupiny v okamžiku, kdy dojde k pádu programu.

