Die Basisklasse CL_BSP_ELEMENT
Definition
Die Klasse
CL_BSP_ELEMENT liefert eine Standard-Implementierung des Interfaces IF_BSP_ELEMENT. Dieses Basisinterface stellt im wesentlichen eine Reihe vom Methoden und Attributen zur Verfügung, die als Framework bei der Implementierung von individuellen Elementen in BSP-Extensions zum Einsatz kommen.Verwendung
Die Standard-Implementierung der Klasse
CL_BSP_ELEMENT stellt die gemeinsame Grundfunktionalität für alle Elementhandler-Klassen bereit. Um spezifische Funktionen eines BSP-Elements zu implementieren, müssen Sie bestimmte Interface-Methoden der Elementhandler-Klasse überschreiben und dort eventuell neue hinzufügen.Siehe auch:
Elementhandler-Klassen implementierenMethoden
Interface-Methoden der Validierung |
|
COMPILE_TIME_IS_VALID |
Ermittelt zur Compile-Zeit, ob Element-Attributen korrekte Werte zugewiesen wurden. Das Ergebnis der Validierung wird in den Rückgabeparameter valid geschrieben.Die möglichen Werte von valid sind: 'X' oder ' ' (Leerzeichen).Wie Sie diese Methode in der Elementhandler-Klasse überschreiben können, erläutert ein Beispiel für den Fall der benutzerdefinierten Validierung. |
RUNTIME_IS_VALID |
Ermittelt zur Laufzeit, ob den Element-Attributen korrekte Werte zugewiesen wurden. Siehe auch entsprechendes Beispiel für benutzerdefinierte Validierung.Mit dem Aufruf der Runtime-Methode <Elementname>->RUNTIME_IS_VALID mit dem speziellen Argument ‘/*/‘ haben Sie die Möglichkeit zu verhindern, daß ein Abbruch beim Aktivieren erfolgt, falls der String mit Runtime-Attributen (arg_1/arg_2/...) wegen der Maximallänge von 200 Zeichen zu lang wird und damit überläuft. |
Interface-Methoden zur Beeinflussung des Element-Ablaufs und Element-Inhalts |
|
DO_AT_BEGINNING |
Auf diese Methode wird immer bei der Prozessierung der BSP-Seite zu Beginn des Element-Aufrufs zugegriffen. Über den Rückgabeparameters RC können Sie steuern, ob auf den Inhalt des aktuellen BSP-Element ausgewertet wird oder nicht. Die möglichen Werte des Rückgabeparameters RC sind daher:CO_ELEMENT_CONTINUE und CO_ELEMENT_DONE.Ein Beispiel für eine spezielle Implementierung dieser Methode erhalten Sie unter: Referenzübergabe bei Attributen. |
DO_AT_ITERATION |
Auf diese Methode wird bei der Prozessierung der BSP-Seite nach der Auswertung des Element-Inhalts zugegriffen. Voraussetzung, daß diese Methode überhaupt aufgerufen wird ist jedoch, daß die entsprechende Option Iteration über Element-Inhalt für das Element explizit gesetzt wurde. Die Methode liefert den Rückgabeparameters RC zurück.Die möglichen Werte des Rückgabeparameters RC sind hier ebenfalls:CO_ELEMENT_CONTINUE und CO_ELEMENT_DONE.Ein Beispiel für die Implementierung erhalten Sie in Iteration über Element-Inhalt |
DO_AT_END |
Auf diese Methode wird auf jeden Fall am Ende des Element-Aufrufs zugegriffen. Da zu diesem Zeitpunkt der komplette Element-Inhalt verfügbar ist, kann diese Methode zur Manipulation des Element-Inhalts genutzt werden.Mit dem Rückgabeparameter RC können Sie steuern, ob die komplette BSP-Seite weiter ausgewertet wird oder nicht. Die möglichen Werte sind daher:CO_PAGE_CONTINUE und CO_PAGE_DONE. |
Interface-Methoden für Zugriffe auf Parent-Knoten |
|
GET_CLASS_NAMED_PARENT |
Liefert ein beliebiges Parent-Element zurück, das durch die Elementhandler-Klasse identifiziert wird. |
GET_ELEMENT_NAMED_PARENT |
Liefert ein beliebiges Parent-Element zurück, das durch den Namen der Extension und den Element-Namen identifiziert wird. |
GET_DIRECT_PARENT |
Liefert das direkte Parent-Element zurück. |
Interface-Methode für die Fehlerbehandlung |
|
RAISE_ERROR |
Löst eine Exception der Klasse CX_BSP_ELEMENT_EXCEPTION aus. |
Interface-Methode für Zugriff auf den Inhalt des BodyWriters |
|
GET_PREVIOUS_OUT |
Liefert die Referenz auf den BodyWriter des umgebenden Elements zurück . |
Attribute
Allgemeine Interface-Attribute |
|
ID |
ID des BSP-Elements. |
M_NAME |
Name des BSP-Elements. |
M_EXTENSION |
Name der BSP-Extension. |
M_CLASS_NAME |
Name der Elementhandler-Klasse. |
M_PARENT |
Referenz auf ein Parent-Element. |
M_PAGE_CONTEXT |
Referenz auf den Seitenkontext (IF_BSP_PAGE_CONTEXT ) |
Vordefinierte Interface-Konstanten |
|
CO_PAGE_DONE |
Diese Konstante legt fest, daß die BSP-Seite nicht weiter ausgewertet wird. |
CO_PAGE_CONTINUE |
Diese Konstante legt fest, daß die BSP-Seite weiter ausgewertet wird. |
CO_ELEMENT_DONE |
Diese Konstante legt fest, daß das BSP-Element nicht mehr ausgewertet wird. |
CO_ELEMENT_CONTINUE |
Diese Konstante legt fest, daß das BSP-Element (noch einmal) ausgewertet wird. |
Interface-Attribut für den BodyWriter |
|
M_OUT |
Referenz auf den BodyWriter, der den Element-Inhalt verwaltet. |
Interface-Attribut der Validierung |
|
M_VALIDATOR |
Statischer Validierer (für alle Instanzen der Klasse), der für die Laufzeit-Validierung verwendet wird. Instanzen dieses Objektes werden nur dann erzeugt, wenn die Option Iteration über Element-Inhalt für das Element explizit gesetzt wurde. |