Events

Getting started ... Alles für einen gelungenen Start.
2 Beiträge • Seite 1 von 1
2 Beiträge Seite 1 von 1

Events

Beitrag von Andrzej (ForumUser / 63 / 23 / 0 ) »
Hallo Forum,

ich befasse mich zur Zeit mit dem Eventhandling im ABAP. Hierfür habe ich ein schönes Beispiel im Internet gefunden. Könnt ihr mir bitte grob sagen wie ich solche Programme die Events beinhalten allgemein zum laufen bekomme?? müssen Events in der SE80 besonders hinterlegt werden.. bin totaler anfänger in dem Bereich bin über jede Information dankbar!

Code: Alles auswählen.


REPORT z_events.

TYPES: ty_boolean(1),
        ty_kennzeichen(10),
        ty_tankinhalt(4) TYPE p DECIMALS 2,
        ty_ort(30).
CONSTANTS: co_true VALUE 'X',
           co_false VALUE space,
           tankmenge TYPE ty_tankinhalt VALUE '20'.

*----------------------------------------------------------------------*
*       INTERFACE lif_fahrzeug
*----------------------------------------------------------------------*
*
*----------------------------------------------------------------------*
INTERFACE lif_fahrzeug.
  EVENTS: nicht_genung_tankinhalt.
  METHODS:
  get_kennzeichen
      RETURNING value(re_kennzeichen) TYPE ty_kennzeichen,
      get_ort
     RETURNING value(re_ort) TYPE ty_ort,
get_verbrauch
RETURNING value(re_verbrauch) TYPE ty_tankinhalt,
get_tankinhalt
RETURNING value(re_tankinhalt) TYPE ty_tankinhalt,
 tanken
IMPORTING value(im_tankmenge) TYPE ty_tankinhalt,
fahren_nach
IMPORTING
value(im_zielort) TYPE ty_ort
value(im_entfernung) TYPE p,
on_nicht_genug_tankinhalt
FOR EVENT nicht_genug_tankinhalt OF lif_fahrzeug.
ENDINTERFACE.                    "lif_fahrzeug

* Klassen-Definition
CLASS fahrzeug DEFINITION.
  PUBLIC SECTION.
    TYPES: ty_kennzeichen(10),
    ty_tankinhalt(4) TYPE p DECIMALS 2,
    ty_ort(30).
    INTERFACES: lif_fahrzeug.
    METHODS:
    constructor
    IMPORTING
    value(im_kennzeichen)
    TYPE ty_kennzeichen
    value(im_verbrauch)
    TYPE ty_tankinhalt
    value(im_ort)
    TYPE ty_ort
    value(im_tankinhalt)
    TYPE ty_tankinhalt DEFAULT 0.
  PRIVATE SECTION.
    DATA: kennzeichen TYPE ty_kennzeichen,
    tankinhalt TYPE ty_tankinhalt,
    verbrauch_per_100_km TYPE ty_tankinhalt,
    aktueller_ort TYPE ty_ort.
ENDCLASS.                    "fahrzeug DEFINITION
*
CLASS fahrzeug IMPLEMENTATION.
  METHOD constructor. "Initialisierungen
    kennzeichen = im_kennzeichen.
    verbrauch_per_100_km = im_verbrauch.
    aktueller_ort = im_ort.
    tankinhalt = im_tankinhalt.
    SET HANDLER lif_fahrzeug~on_nicht_genug_tankinhalt
      FOR ALL INSTANCES.
  ENDMETHOD.                    "constructor



gesponsert
Stellenangebote auf ABAPforum.com schalten
kostenfrei für Ausbildungsberufe und Werksstudenten


Re: Events

Beitrag von jocoder (Specialist / 338 / 3 / 101 ) »
Hallo,

zu erstem Mal deklariert man eine Event-Handler-Methode.

Code: Alles auswählen.

class fahrzeug definition.

...
methods on_nicht_genug_tankinhalt for event nicht_genug_tankinhalt OF lif_fahrzeug.
Dann muss das Event auch irgendwo ausgelöst werden außerhalb der Methode on_nicht_genug_tankinhalt:

Code: Alles auswählen.

 raise event nicht_genug_tankinhalt.
Damit das System weiß, welche Methode es beim Auslösen des Events nehmen muss:

Code: Alles auswählen.

method constructor.
...
set handler lif_fahrzeug~on_nicht_genuegend_tankinhalt for me.
endmethod.

Jetzt wird die Anweisung raise event nicht_genug_tankinhalt durch call method=>on_nicht_genug_tankinhalt ersetzt.

Seite 1 von 1

Vergleichbare Themen

11
Antw.
3336
Views
ALV events
von Bajdu » 01.12.2006 17:45 • Verfasst in ABAP® Core
2
Antw.
1520
Views
ALV Events
von kkauerau » 20.03.2017 15:32 • Verfasst in ABAP® für Anfänger
0
Antw.
1019
Views
Zum Aktivität events
von Bajdu » 19.10.2006 13:48 • Verfasst in ABAP® für Anfänger
2
Antw.
2218
Views
Problem mit Events
von MAGEMI1985 » 07.02.2005 11:46 • Verfasst in ABAP Objects®
1
Antw.
1953
Views
Problem mit events
von Markus Buchner » 28.09.2004 14:46 • Verfasst in ABAP Objects®

Über diesen Beitrag


Unterstütze die Community und teile den Beitrag für mehr Leser und Austausch

Newsletter Anmeldung

Keine Beiträge verpassen! Wöchentlich versenden wir lesenwerte Beiträge aus unserer Community.
Die letzte Ausgabe findest du hier.
Details zum Versandverfahren und zu Ihren Widerrufsmöglichkeiten findest du in unserer Datenschutzerklärung.