CL_CRM_1O_EVENT - One Order Event Handler

Addresses (Business Address Services)   PERFORM Short Reference  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Funktionalität

Der Event Handler nimmt gemäß Registrierung Einträge auf und führt bei Auslösen von Ereignissen sofort oder verzögert die registrierten Callback-Funktionen aus.

Konzept dieser Klasse

  • Für die Teilobjekte des CRM Vorgangs, die als Sender oder Empfänger von Ereignissen fungieren, existiert je eine Instanz der Klasse. Diese Instanzen werden im Klassenkonstruktor aufgebaut.
  • Aus der Registrierungsinformation (CRMC_EVENT_CALL) werden für jede Instanz je zwei Datenpäckchen abgeleitet. Auch dies geschieht einmalig beim Laden der Klasse.
  • Die Tabelle GT_REGISTERED_EVENTS wird beim Publizieren des Events verwendet, um schnell zu ermitteln, ob überhaupt Empfänger auf das spezielle Ereignis registriert sind.

  • Ist dies der Fall, so wird für alle registrierten Instanzen = Teilobjekte die Methode DO_ORDER_EVENTaufgerufen. Die gerufene Instanz prüft nun mit ihrem Datenpäckchen der zweiten Art namens GT_REGISTERED_CALLBACKS, welche Callbackbausteine nun auszuführen oder vorzumerken sind.

  • Die Mengen von Businessobjekttypen werden durch Binärzahlenvom Typ EVT1O_BOR_GROUP realisiert. Es kann somit sehr performant geprüft werden, ob eine bestimmteMenge Obermenge einer anderen ist, oder, wie es der Event Handler häufig benötigt, obmindestens ein Element der Menge SET1 in der Menge SET2 vorkommt ( nämlich durch die Operation NOT ( SET2 Z SET1 ) ).
  • Die Verwaltung der Alt-/Neudaten erfolgt mit dem Ref To Data Konzept. Insbesondere wird das Abbauen nicht mehr benötigter Daten dem Garbage Collector überlassen.
  • Die Implementierung orientiert sich im übrigen an der bestehenden Implementierung der Funktionsgruppe CRM_EVENT_OW, ist aber von dieser völlig unabhängig.
  • Die OO-Events AFTER_CHANGE etc. existieren zwar, werden zur Zeit aber nicht verwendet, da es sichbei Performanceuntersuchungen gezeigt hat, daß es günstiger ist, die Handlermethode DO_ORDER_EVENT für die betroffenen Instanzen explizit aufzurufen.
  • Ein Vorteil der Verwendung von RAISE EVENT läge darin, daß der Kunde einfach und modifikationsfrei eigene Handlermethoden hinzufügen kann.

Beispiel

Hinweise

Weiterführende Informationen



BAL_S_LOG - Application Log: Log header data   PERFORM Short Reference  
Diese Dokumentation steht unter dem Copyright der SAP AG.


Length: 2802 Date: 20120527 Time: 140415     triton ( 69 ms )