V tomto momente už máme programovo a tiež aj vizuálne obrazovku nášho programu pripravenú. Teraz sa zameriame v zápise kódu na definovanie niekoľkých overovacích podmienok (vytvoríme si tak funkčné vetvenie pre program), ktoré potrebujeme nastaviť pre vybrané prvky programu.
Najskôr ale trochu teórie.
Aplikáciu podmienok v zápise zdrojového kódu možno vyjadriť aj ako formu vetvenia funkčnosti programu.
Použitím príkazov jazyka ABAP programátor definuje stav, ktorý sa aktivuje (t.j. bude spustená k danej podmienke priradená časť zdrojového kódu) v momente splnenia niektorej z nastavených logických podmienok.
Jednoduchý príklad zadania:
Používateľ by mal vo vstupnej obrazovke možnosť zadať čísla v rozsahu 1 až 3 a podľa jeho voľby sa potom bude na výstupnej obrazovke zobrazovať nejaká informácia.
V tomto prípade by programátor do programu zapísal podmienku s definíciou:
- ak bude zadané číslo 1, program vypíše informáciu Zadal si číslo 1
- ak bude zadané číslo 2, program vypíše informáciu Zadal si číslo 2
- ak bude zadané číslo 3, program vypíše informáciu Zadal si číslo 3
To je celé, nič komplikované.
V programovacom jazyku ABAP, pre vetvenie programu vo forme logických podmienok, má programátor k dispozícii možnosť použitia príkazu IF alebo tiež aj príkazu CASE, pričom práve príkaz IF sa označuje ako ten jednoduchší spôsob pre vytvorenie funkčného vetvenia v programe.
Dnes sa pozrieme na príkaz IF, priblížime si spôsob jeho zápisu a možnosti použitia.
Príkaz IF
Všeobecný zápis príkazu:
IF a_podm. “ význam IF – ak platí podmienka a_podm..
“ .. spusti udalosť č.1
ELSEIF b_podm. “ význam ELSEIF – ak neplatí podmienka ale_podm a platí podmienka b_podm..
“ .. spusti udalosť č.2
ELSE. “ význam ELSE – alebo ak neplatí nič z vyššie uvedených podmienok..
“ .. spusti udalosť č.3
ENDIF. “ význam ENDIF – ukončenie zápisu pre IF
Vysvetlenie zápisu:
- ak bola splnená podmienka a_podm, potom sa spustí udalosť č.1 a spracovanie príkazu IF bude ukončené
- ak nebola splnená podmienka a_podm, program preverí, či je splnená podmienka b_podm
- ak bola splnená podmienka b_podm, potom sa spustí udalosť č.2 a spracovanie príkazu IF bude ukončené
- ak nebola splnená podmienka b_podm a teda ani a_podm, potom sa spustí udalosť č.3 a spracovanie príkazu IF bude ukončené
Vo všeobecnom zápise pre príkaz IF som uviedol slovo udalosť.
Význam tohto slova možno jednoducho popísať ako zapísanie ABAP príkazov v určitej postupnosti, ktoré majú za úlohu vykonať definovanú akciu (napríklad – vypísanie textového reťazca, spočítanie premenných alebo načítanie údajov z tabuliek pre ich ďalšie spracovanie).
Spôsob zápisu príkazu IF môže byť rôzny a bude závisieť od požiadavky, v akom rozsahu je potrebné riešiť vetvenie a množstvo použitých podmienok.
Niekedy sa použije iba zápis IF … ENDIF (ak sa má vykonať len jedna udalosť a to iba pri splnení definovanej podmienky), ďalej je tu možnosť klasického vetvenia v podobe IF … ELSE … ENDIF (ak má byť spustená udalosť č.1 alebo 2 podľa toho, či bola/nebola splnená podmienka), alebo v kompletnom zápise pre rozšírené vetvenie kódu ako IF … ELSEIF … ELSE … ENDIF (tu bude na základe preverenia základnej podmienky, program následne overovať ďalšie podmienky, prípadne sa spustí nastavená udalosť).
V prípade použitia posledného spôsobu s ELSEIF, môže takýto zápis pokračovať aj donekonečna a to až po použitie ELSE, ktorý by vetvenie zastavil po spustení poslednej udalosti, ale z dôvodu prehľadnosti zápisu zdrojového kódu sa toto viacnásobné použitie ELSEIF neodporúča.
Zaujal Vás článok?
Zvážte možnosť jeho zdieľania na sociálnych sieťach alebo dajte mi vedieť Váš názor resp. pripomienky k tomuto článku a to odoslaním správy cez formulár, alebo priamo na e-mailovú adresu info@saperp.sk.