Show TOC

HintergrundModifikationsfreie Erweiterungen Dieses Dokument in der Navigationsstruktur finden

 

In vielen Fällen wird es nötig werden, von SAP ausgelieferte oder andere bereits existierende Anwendungen zu verändern oder zu erweitern. Unstrukturierte Eingriffe in den Quell-Code oder das Layout einer Anwendungen nennt man Modifikationen. Modifikationen können zu Konflikten führen, wenn ein neues Release der Anwendungsprogramme eingespielt werden soll. Um solche Konflikte zu vermeiden, können für existierende Anwendungen, die mit Hilfe von Web Dynpro ABAP realisiert wurden, Erweiterungsimplementierungen angelegt werden.

Diese Erweiterungsimplementierungen sind eigenständige Entwicklungsobjekte, die unabhängig vom zugehörigen Original-Objekt verwaltet werden. Sie sind Teil des Erweiterungskonzepts, das im Application Server ABAP (AS-ABAP) in die ABAP Workbench integriert ist. Die zugrunde liegenden Original-Objekte werden durch eine solche Erweiterung nicht verändert und können daher i.d.R. problemlos beim Release-Wechsel aktualisiert werden. Informationen über Sonderfälle, bei denen ein Abgleich erforderlich ist, finden Sie unter Erweiterungen nach einem Upgrade abgleichen.

Erweiterungsimplementierungen für Web Dynpro ABAP

ABAP-Quelltexte in einer Web-Dynpro-Anwendung können mit Hilfe von BAdIs erweitert werden.

Hinweis Hinweis

ABAP-Quelltexterweiterungen mittels expliziter oder impliziter Erweiterungspunkte stehen für Web Dynpro ABAP nicht zur Verfügung.

Ende des Hinweises.

Sie können auch an einzelnen Bestandteilen einer Web-Dynpro-Component Erweiterungen vornehmen, ohne dass dafür explizite Erweiterungspunkte durch die Anwendungsentwicklung vorimplementiert sein müssen. So können Sie beispielsweise

  • UI-Elemente in einer View hinzufügen oder ausblenden oder

  • in einem Controller-Context neue Knoten hinzufügen

  • vollständig neue Views als Erweiterung anlegen

  • im Erweiterungsmodus in ein Window zusätzliche Views einbetten.

Hinweis Hinweis

Zusätzlich ist es möglich, bestehende Erweiterungsimplementierungen zu switchen.

Weitere Informationen: Switch Framework

Ende des Hinweises.
Anlegen einer Erweiterungsimplementierung
  1. Verzweigen Sie in der Objektliste der SE80 im Anzeigemodus zu der gewünschten Component.

  2. Öffnen Sie die View oder den Controller im Editor, in dem Sie die Erweiterung vornehmen möchten.

  3. Wählen Sie das Symbol zum Erweitern in der Symbolleiste des Web Dynpro Explorers.

    Erweitern (Erweitern)

    Hinweis Hinweis

    Die Funktion Erweitern steht Ihnen nur dann zur Verfügung, wenn die Original-Component im Anzeigemodus vorliegt.

    Wenn Sie vom Anzeige- in den Änderungsmodus umschalten, ist die Original-Component selbst änderungsbereit und es kann daher keine Erweiterungsimplementierung angelegt oder geändert werden. Die Ikone ist ausgegraut.

    Ende des Hinweises.

    Hiermit öffnen Sie entweder einen Anlege-Dialog für eine neue Erweiterungsimplementierung, oder Sie erhalten alle zu dieser Component vorhandenen Erweiterungsimplementierungen zur Auswahl und zur weiteren Bearbeitung angeboten.

  4. Vergeben Sie einen eindeutigen Namen und einen Kurztext für Ihre Erweiterungsimplementierung.

    Wenn Sie eine zusammengesetzte Erweiterungsimplementierung anlegen möchten, wählen Sie entweder eine bestehende Erweiterung über die F4–Hilfe aus oder legen Sie eine weitere Implementierung über das Symbol für Anlegen zusammengesetzte Impl. an.

    Hinweis Hinweis

    Es ist sinnvoll, dass der Name der Erweiterungsimplementierung einen Namensraum-Präfix enthält. Die Namen von Objekten, die Sie im Rahmen dieser Erweiterungsimplementierung anlegen, sollten dann ebenfalls mit diesem Namensraum-Präfix beginnen.

    Dies dient der Vermeidung von Namenskonflikten zu Objekten der Original-Component.

    Wird beispielsweise ein Button in der Erweiterung /myCompany/myEnhancement_1/ angelegt, könnte der Button dann /myCompany/button_1 genannt werden.

    Weitere Informationen über Namensräume und Namenskonventionen finden Sie unter Namensraum für Entwicklungen einrichten.

    Ende des Hinweises.
  5. Wählen Sie Anlegen des Enhancements (Enter).

  6. Ordnen Sie ein Paket zu und wählen Sie Sichern (Enter).

  7. Nehmen Sie die gewünschten Erweiterungen vor und sichern Sie Ihre Eingaben.

    Die neue Erweiterungsimplementierung wird Ihnen in einem separaten Knoten in der Objektliste unterhalb des Component-Knotens angezeigt.

Sie können anschließend die von Ihnen vorgesehenen Erweiterungen bzw. Erweiterungsänderungen ausführen:

Hinweis Hinweis

Grundsätzlich können zu einer Component mehrere, voneinander unabhängige Erweiterungsimplementierungen vorgenommen werden. Die einzelnen Änderungen können jeweils nur in der Implementierung editiert werden, in der sie angelegt worden sind.

Ende des Hinweises.
Ausblenden einer Erweiterungsimplementierung

Sie haben die Möglichkeit, aus Performancegründen per Einstellung im Menü der ABAP Workbench die Anzeige von Erweiterungsimplementierungen zu unterbinden.

  1. Wählen Sie dazu in der SE80   Hilfsmittel   Einstellungen...  .

  2. Verzweigen Sie auf die Registerkarte ABAP Editor.

  3. Verzweigen Sie auf die untergeordnete Registerkarte Editor.

  4. Markieren Sie unter Erweiterungsimplementierungen die Option Keine einblenden.

    Alternativ können Sie festlegen, dass alle Erweiterungsimplementierungen eingeblendet werden oder dass nur eingeschaltete Erweiterungsimplementierungen eingeblendet werden.

  5. Wählen Sie Übernehmen (Enter).