Show TOC Anfang des Inhaltsbereichs

Vorgehensweisen Ausnahmeklassen anlegen  Dokument im Navigationsbaum lokalisieren

Verwendung

Mit dieser Vorgehensweise können Sie globale persistente Klassen im Class Builder anlegen. Weitere Informationen über Ausnahmeklassen finden Sie in der ABAP-Schlüsselwortdokumentation unter Exception Classes.

Vorgehensweise

Hinweis

Sie können eine neue Ausnahmeklasse anlegen, wenn Sie sie zum ersten Mal benötigen – z.B. bei der Zuordnung von Ausnahmen in der Methodendefinition. Siehe auch Ausnahmen für Methoden anlegen.

...

       1.      Navigieren Sie im Repository Browser (Transaktion SE80) zu dem Paket, in dem Sie eine Ausnahmeklasse anlegen möchten.

       2.      Wählen Sie Anlegen Klassenbibliothek Klasse im Kontextmenü des Pakets.

Das Dialogfenster Anlegen Klasse wird angezeigt.

       3.      Wählen Sie im Gruppenrahmen Klassenart die Option Ausnahmeklasse.

       4.      Geben Sie im Feld Klasse einen Namen für die neue Klasse gemäß der Namenskonventionen ein. An den Namen von allen Ausnahmeklassen muss das Präfix CX_angehängt werden.

       5.      Geben Sie im Feld Beschreibung eine kurze Beschreibung der Klasse ein.

       6.      Geben Sie weitere Grunddaten für die Klasse an:

Option

Beschreibung

Oberklasse

Tragen Sie den Namen der direkten Oberklasse ein.

Hinweis

Ausnahmeklassen werden von einer der vordefinierten Basisklassen CX_STATIC_CHECK, CX_DYNAMIC_CHECK oder CX_NO_CHECK abgeleitet. Je nach Position der Ausnahmeklasse innerhalb der Klassenhierarchie geben Sie die passende Klasse innerhalb dieser Hierarchie oder eine der vordefinierten Basisklassen als Oberklasse an. Im zweiten Fall expandieren Sie einen neuen Hierarchie-Baum.

Instanziierung

      Standardmäßig wird die Option Public gewählt. Dies bedeutet, dass jeder Benutzer Instanzen der jeweiligen Klasse (mit CREATE OBJECT) erzeugen kann.

      Die Option Protected legt fest, dass nur geerbte Klassen oder die betreffende Klasse selbst Instanzen dieser Klasse erzeugen können.

      Wählen Sie die Option Private,  kann nur die betreffende Klasse selbst ihre Instanzen (mithilfe ihrer eigenen Methode) erzeugen.

      Mit der Option Abstrakt definieren Sie eine abstrakte Klasse. Sie können keine Instanz für diese Klasse erzeugen. Eine abstrakte Klasse kann als Vorlage für Ihre Unterklassen verwendet werden. Der Zugriff auf diese Klasse kann nur über Ihre statischen Attribute oder über Ihre Unterklassen erfolgen.

Klassentyp

Wenn Sie das Präfix CX_ für den Namen der Ausnahmeklasse vergeben haben, wird automatisch der Klassentyp Ausnahmeklasse gewählt. Sie können an dieser Stelle entscheiden, ob die Texte Ihrer neu angelegten Ausnahmeklasse im OTR erneut angelegt und abgelegt werden sollen oder ob Sie vorhandene Nachrichtenklassen für diese Ausnahmeklasse benutzen wollen.

Diese Optionen unterscheiden sich je nach Flexibilität der Parametrisierung und Anwendungsfällen:

      Ausnahmetexte im Online Text Repository (OTR)

Dieser Texttyp kann mit einer beliebigen Anzahl von Platzhaltern definiert werden. Jeder Platzhalter wird durch den Namen eines Attributs von der Ausnahmeklasse repräsentiert, die durch das Zeichen & eingeschlossen ist. Wenn die Ausnahme auftritt, werden die Platzhalter durch den Kontext der Attribute ersetzt. Die Texte werden im OTR abgelegt, können maximal 255 Zeichen enthalten und werden hauptsächlich in Systemprogrammen verwendet, in denen der Text nicht zum Programmbenutzer gesendet werden muss.

      Nachrichten sind Ausnahmetexte.

Dieser Typ von Ausnahmetext kann verwendet werden, wenn die Ausnahmeklasse das Interface IF_T100_MESSAGE implementiert. In diesem Fall werden die Kurztexte für Nachrichten von der Datenbanktablle T100 als Ausnahmetexte verwendet. Der Text wird durch die  Nachrichtenklasse und die Nachrichtennummer identifiziert. Attribute von der Ausnahmeklasse können Platzhaltern &1 bis &4 oder & in der Nachricht zugeordnet werden. Wenn die Ausnahme auftritt, werden die Platzhalter durch den Kontext der Attribute ersetzt. Diese Texte können maximal 72 Zeichen enthalten, und es ist möglich, sie zum Programmbenutzer während der Ausnahmebehandlung mit der Anweisung MESSAGE oref zu senden.

Final

Legt den Entwicklungsstatus des Objekts fest. Nur Objekte und Komponten mit dem Status Final können ausführbaren Code haben. Diese Klasse bildet den Abschluss in der Vererbungshierarchie, da eine finale Klasse keine weiteren Unterklassen anlegen darf.

       7.      Wählen Sie Sichern.

       8.      Geben Sie den Namen des Pakets ein, zu dem Ihre Klasse gehören soll.

       9.      Wählen Sie Sichern.

Ergebnis

Sie haben eine neue Ausnahmeklasse angelegt. Es wurde ein Class-Pool für die neue Klasse generiert, wenn die Option Nur Modelliert nicht aktiviert wurde. Im Unterschied zu normalen Klassen können Sie keine Methode für eine Ausnahmeklasse anlegen. Der Class Builder legt lediglich den Konstruktor an, aber Sie können Attribute anlegen und Ausnahmetexte pflegen.

Weitere Informationen:

Attribute für Ausnahmeklassen anlegen

Texte für Ausnahmen anlegen

 

 

 

Ende des Inhaltsbereichs