Kurzer Überblick über das Paketkonzept
In älteren
Releases (vor SAP Web Application Server 6.20) wurden Entwicklungsobjekte
(Programme, Tabelle, Dynpros, BAPIs, Funktionsbausteine, Typen usw.) in über
1700 Entwicklungsklassen eingeteilt, die in einer flachen Struktur abgelegt
waren.
Jeder Entwickler konnte jedes beliebige Objekt verwenden. Einen Schutz vor
Verwendung der eigenen Entwicklungsobjekte konnte ein Entwickler kaum
einrichten. Ebenso konnte er diejenigen Entwicklungsobjekte nur schwer
kennzeichnen, die er anderen zur Verfügung stellen wollte. Ferner waren die
Möglichkeiten einer technischen Modularisierung im Kleinen, z.B. mittels
Modulpools, Funktionsgruppen oder Klassen sehr begrenzt. Im Großen wie im
Kleinen fehlten also geeignete Mechanismen für eine technische
Modularisierung.
Mit dem Release SAP Web Application Server 6.20 wurde das Paketkonzept eingeführt, um diese Probleme zu beheben. Pakete sind die Weiterentwicklung der vorhandenen Entwicklungsklassen mit neuer zusätzlicher Semantik. Sie sollen Entwickler dabei unterstützen, Einheiten im SAP-System zu modularisieren, zu kapseln und zu entkoppeln.
Die bisherigen Entwicklungsklassen sind als einfache Container für Entwicklungsobjekte mit einer Transportschicht versehen, die den Transportweg festlegt. Pakete erweitern das Konzept von Entwicklungsklassen um neue Eigenschaften: Schachtelung, Kapselung, Sichtbarkeit und Verwendungserklärungen.
· Die Schachtelbarkeit ist die Fähigkeit von Paketen, andere Pakete in sich einzubetten.
· Die Kapselungsstufe bestimmt den Grad der Paketkapselung.
· Die Sichtbarkeit bezeichnet eine Eigenschaft von Paketelementen. Ein Element kann außerhalb seines Pakets sichtbar sein. Es ist dabei immer innerhalb seines Paketes, niemals jedoch in eingebetteten Paketen sichtbar. Ist ein Element nach außen sichtbar, so liegt es in mindestens einer Paketschnittstelle.
· Mit einer Verwendungserklärung ist ein einseitiges Recht eines Paketes verbunden, die sichtbaren Elemente einer Schnittstelle eines anderen Paketes zu verwenden.
Mittels Schnittstellen und Sichtbarkeit kann ein Paket sein Angebot an Services kenntlich machen. Alle sichtbaren Elemente können also potenziell von anderen Paketen verwendet werden. Nicht sichtbare Elemente dagegen können von anderen Pakete auch nicht verwendet werden. Damit kann ein Paket seine Elemente vor beliebiger Fremdverwendung schützen und seine Inhalte kapseln.
Verwendungserklärungen schränken die Nutzung von sichtbaren Elementen fremder Schnittstellen ein. Nicht alle Elemente, die sichtbar sind, können auch verwendet werden. Erst bei Vorliegen einer Verwendungserklärung auf eine Schnittstelle eines fremden Paketes kann ein Paket die sichtbaren Elemente dieses Paketes verwenden.
Schachtelbarkeit erlaubt eine hierarchische Aufteilung von größeren Einheiten des SAP-Systems. Im Zusammenspiel von Schnittstellen und Verwendungserklärungen lassen sich zusätzlich die Paketelemente auf einfache Weise verbergen und so vor nicht beabsichtigter Verwendung schützen.
Mit diesem Paketkonzept besteht nun die Möglichkeit, das SAP-System in technische Einheiten in Form von Paketen zu zerlegen und zu kapseln, die hohen Abhängigkeiten zu verringern und damit das System im Großen und im Kleinen zu entkoppeln.

Es wird sowohl auf der Seite der Verwender wie der Anbieter oder für beide zugleich beständige Ausnahmen von Paketprüfungen geben. Dies ist z.B. bei bestimmten Systemprogrammen oder bei generierten Programmen sinnvoll.
Ferner wird es bei Migrationsprojekten im allgemeinen eine Übergangsphase geben, in der Paketprüfungen zunächst abgeschwächt werden.