Anfang des Inhaltsbereichs

OO-Transaktionen Dokument im Navigationsbaum lokalisieren

Sie können in der Transaktionspflege (SE93) einen Transaktionscode als OO-Transaktion klassifizieren.

Dabei verknüpfen Sie den Transaktionscode entweder mit dem Transaktionsdienst der Strukturlink ABAP - Object Services für persistente Objekte oder Sie verknüpfen den Transaktionscode mit einer öffentlichen Methode einer globalen oder lokalen Klasse eines Programms. Bei Aufruf einer Transaktion, die mit einer Instanzmethode verknüpft ist, erzeugt das System automatisch eine Instanz der Klasse in einem eigenen internen Modus.

Das folgende ist ein Beispiel für die Verknüpfung eines Transaktionscodes mit einer Instanzmethode einer lokalen Klasse eines beliebigen ABAP-Programms:

Beispiel

*&-----------------------------------------------------------*
*& Modulpool DEMO_OO_TRANSACTION *
*& *
*&-----------------------------------------------------------*

program DEMO_OO_TRANSACTION.

class DEMO_CLASS definition.
public section.
methods INSTANCE_METHOD.
endclass.

class DEMO_CLASS implementation.
method INSTANCE_METHOD.
message 'Instance method in local class' type 'I'.
endmethod.
endclass.

Das Programm DEMO_OO_TRANSACTION ist ein Modulpool vom Typ M, das keine Dynpros und keine Dialogmodule enthält. Stattdessen enthält das Programm die Definition einer lokalen Klasse DEMO_CLASS.

Mit diesem Programm ist der Transaktionscode DEMO_OO_METHOD wie folgt verknüpft:

Das Startobjekt der Transaktion ist Methode einer Klasse (OO-Transaktion).

OO-Transaktionsmodell ist nicht angekreuzt.

Der Klassenname ist DEMO_CLASS.

Die Methode ist INSTANCE_METHOD.

Es ist lokal in Programm angekreuzt und dort DEMO_OO_TRANSACTION angegeben.

Bei Aufruf der Transaktion wird das Programm geladen, eine Instanz der Klasse gebildet und die Methode ausgeführt.

Ende des Inhaltsbereichs