Ovládací prvky tabulky a smyčky kroků jsou objekty pro zobrazení tabulky obrazovky, které přidáte na obrazovku v programu Screen Painter.
Z hlediska programování jsou ovládací prvky tabulky a krokové smyčky téměř úplně stejné. Ovládací prvky tabulky jsou jednoduše vylepšené krokové smyčky, které zobrazují data se vzhledem a chování spojeným s tabulkami v desktopových aplikacích.
S ovládacími prvky tabulky může uživatel:
- Procházejte tabulkou svisle a vodorovně
- Změňte velikost šířky sloupce
- Posun v rámci pole (pokud je obsah pole širší než pole)
- Vyberte řádky nebo sloupce tabulky
- Pořadí pořadí sloupců
- Uložte aktuální nastavení zobrazení pro budoucí použití
Ovládací prvky tabulky také nabízejí speciální funkce formátování (některé automatické, jiné volitelné), které usnadňují prohlížení a používání tabulek. Ovládání tabulky poskytuje -
- automatická změna velikosti tabulky (vertikální a horizontální), když uživatel změní velikost okna
- oddělovací čáry mezi řádky a mezi sloupci (vertikální a horizontální)
- pole záhlaví sloupce pro všechny sloupce
Jednou z funkcí krokových smyček je, že jejich řádky tabulky mohou pokrývat více než jeden řádek na obrazovce. Řádek ovládacího prvku tabulky na druhé straně musí být vždy obsažen v jednom řádku (i když je možné rolování).
Obecně platí, že mnoho funkcí poskytovaných ovládacím prvkem tabulky je řešeno lokálně front-endem SAPgui vašeho systému, takže je nemusíte programovat sami. Jedinou významnou výjimkou je svislé posouvání .
Příklad (transakce TZ60)
Syntaxe
Chcete-li zpracovat ovládací prvky tabulky v programech ABAP, musíte deklarovat ovládací prvek v deklarační části programu pro každý ovládací prvek tabulky pomocí následujícího příkazu:
OVLÁDACÍ PRVKYTYPE TABLEVIEW POUŽITÍ OBRAZOVKY
kde
Pozici kurzoru pro ovládací prvek tabulky lze nastavit následujícími způsoby:
U PBO můžete nastavit kurzor na konkrétní pole konkrétního řádku ovládacího prvku tabulky.
NASTAVTE POLI KURZORUŘÁDEK [OFFSET ]
Pomocí volitelného přídavku OFFSET můžete zadat posunutí kurzoru do pole, jak je popsáno v části Nastavení polohy kurzoru.
Na PAI můžete číst aktuální pozici kurzoru.
ZÍSKEJTE KURZOROVÉ POLELINE …
Kromě informací uvedených v části Zjištění polohy kurzoru obsahuje pole
ZÍSKEJTE KURZOROVOU ŘÁDKU.
k určení řádku ovládacího prvku tabulky. SY-SUBRC umožňuje zkontrolovat, zda je kurzor umístěn v řádku ovládacího prvku tabulky.
Pro získání odpovídajícího řádku vnitřní tabulky:
ZÍSKEJTE KURZOR řádek.ind = -top_line + - 1.Číst tabulku index ind.
Systémová proměnná stepl - obsahuje aktuální index řádku tabulky ve smyčce… endloop. Loopc - obsahuje počet řádků viditelných v tabulce
Vytvoření
ovládacího prvku tabulky 1. Přidejte ovládací prvek tabulky na obrazovku 2.
Zadejte název ovládacího prvku tabulky. V programu ABAP deklarujte strukturu se stejnou (typ CONTROLS
3. Chcete-li vytvořit pole, přejděte na funkci polí Dikt./Program.
- Zadejte název struktury, jejíž pole chcete. (Chcete-li, aby si to vybral ze slovníku vašeho programu, klikněte na příslušné puhbutton).
- V seznamu polí vyberte pole, která chcete, a zvolte OK.
- Klikněte do oblasti ovládání tabulky
Pokud chcete sloupec výběru, zaškrtněte příslušné zaškrtávací políčko v atributech a pojmenujte jej. Vytvořte pole v programu ABAP.
V PBO byste měli mít prohlášení
LOOP naPOUŽÍVÁNÍ CONTROL .ENDLOOP.
V PAI byste měli mít.
LOOP na.ENDLOOP.
V rámci smyček dochází k přenosu dat mezi obrazovkou a interní tabulkou. Když vyplníte interní tabulku, použijte tabulku DESCRIBE TABLE
Změna atributů jednotlivých buněk dočasně změnit tabulku SCREEN v PBO. Můžete změnit atributy struktury vytvořené příkazem CONTROLS
-fixed_cols atd. jsou atributy ovládacího prvku -cols-index atd. jsou atributy sloupců. -cols-screen-invisible atd. jsou atributy obrazovky každého sloupce.