Show TOC Anfang des Inhaltsbereichs

Funktionsgruppen  Dokument im Navigationsbaum lokalisieren

Funktionsgruppen sind Behälter bzw. Rahmenprogramme für Funktionsbausteine. Funktionsgruppen können nicht ausgeführt werden. Beim Aufruf eines Funktionsbausteins wird die gesamte Funktionsgruppe, in der sich der Funktionsbaustein befindet, in den internen Modus des aufrufenden Programms geladen, falls sie sich noch nicht dort befindet (Siehe auch Organisation von externen Prozeduraufrufen).

Die folgende Abbildung zeigt den Aufbau einer Funktionsgruppe. Die Funktionsgruppe hat einen bis zu 26-stelligen Namen fgrp, der vom System zur Erstellung der einzelnen Komponenten (eigentliches Rahmenprogramm und zugehörige Include-Programme) verwendet wird. Beim Anlegen einer Funktionsgruppe bzw. eines Funktionsbausteins mit dem Werkzeug Function Builder werden das Rahmenprogramm und die Include-Programme automatisch angelegt.

Diese Grafik wird im zugehörigen Text erklärt

Das Rahmenprogramm SAPLfgrp enthält nichts außer INCLUDE-Anweisungen für die folgenden Include-Programme:

·        Das Include-Programm LfgrpTOPenthält die Anweisung FUNCTION-POOL, die in Funktionsgruppen die Anweisungen REPORT bzw. PROGRAM ersetzt und globale Datendeklarationen für die gesamte Funktionsgruppe.

·        Das Include-Programm LfgrpUXXenthält weitere INCLUDE-Anweisungen für die Include-Programme LfgrpU01, LfgrpU02,.... Letztere enthalten die eigentlichen Funktionsbausteine.

·        Die Include-Programme LfgrpF01, LfgrpF02,... können zur Definition von Unterprogrammen verwendet werden, auf die alle Funktionsbausteine der Gruppe durch interne Aufrufe Zugriff haben.

Die Erstellung dieser INCLUDE-Programme ist in der ABAP Workbench weitgehend durch Vorwärtsnavigation automatisiert (z.B. Erstellung eines Unterprogramm-Includes durch Doppelklick auf einen Unterprogrammnamen in einer PERFORM-Anweisung innerhalb eines Funktionsbausteins).

In Funktionsgruppen kann kein gemeinsamer Datenbereich (COMMON PART) deklariert werden und Funktionsgruppen verwalten eigene Tabellen-Arbeitsbereiche (TABLES). Funktionsgruppen kapseln also Daten vor dem Aufrufer von Funktionsbausteinen und stellen somit eine Vorstufe zu den Klassen von ABAP Objects dar (siehe Von Funktionsgruppen zu Objekten).

Alle Funktionsbausteine einer Funktionsgruppe haben gemeinsamen Zugriff auf die globalen Daten der Gruppe. Deshalb sollten solche Funktionsbausteine in einer Funktionsgruppe zusammengefaßt werden, die mit den gleichen Daten arbeiten. Beispielsweise können alle Funktionsbausteine, die auf eine bestimmte interne Tabelle zugreifen, in einer Gruppe zusammengefasst werden, in der die interne Tabelle global definiert wird.

Funktionsgruppen können wie ausführbare Programme und Modul-Pools Bildschirme (Dynpros, Selektionsbilder und Listen) als Komponenten enthalten. Die Verarbeitung von Benutzereingaben auf den Bildschirmen erfolgt wie üblich in Dialogmodulen oder den entsprechenden Ereignisblöcken im Rahmenprogramm der Funktionsgruppe. Hierfür gibt es nochmals spezielle Include-Programme. Funktionsgruppen können also einzelne Bildschirme oder Dynprofolgen kapseln und modularisieren.

 

 

Ende des Inhaltsbereichs