CL_HRPAY00_MESSAGE_HANDLER - Message Handler HCM

Addresses (Business Address Services)   SUBST_MERGE_LIST - merge external lists to one complete list with #if... logic for R3up  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Funktionalität

Der Message-Handler ist eine Sammlung verschiedener Interfaces, die zur Verwaltung von Fehlermeldungenund zur Protokollierung von beliebigen Berechnungen und Verarbeitungen im HCM (LOG-Builder) verwendet werden können.

Folgende Verarbeitungen werden durch den Message-Handler unterstützt:

  • Sammlung und Ausgabe von Fehlermeldungen / Warnungen
Fehlermeldungen und Warnungen werden pro Personalnummer gesammelt und können am Ende der Verarbeitung als Nachricht oder Application Log ausgegeben oder dem Aufrufer als interne Tabelle übergeben werden.
  • Protokollierung
Über den sogenannten LOG-Builder können beliebige Texte,Nachrichten, Strukturen und Tabellen zur Protokollierung einer Berechnung oder Verarbeitung gesammeltwerden. Die Ausgabe des Protokolls kann über den HCM Application Log, das Abrechnungsprotokoll (interne Tabelle PTEXT) oder als Baum erfolgen.
  • HCM Application Log
Es wird eine Sammlung von Methoden zur einfachen Nutzung des HCM Application Log unterstützt.

Die oben beschriebenen Funktionen sind in folgende Interfaces gegliedert.

  • Ausgabe und Weiterverarbeitung der gesammelten Fehlermeldungen und Warnungen:
    IF_HRPAY00_MESSAGE_SERVICES,,Service-Methoden für Message Handler
  • Sammlung von Texten, Nachrichten, Strukturen und Tabellen zur Protokollierung:
    IF_HRPAY00_LOG_BUILDER,,,,,,Protokollierung HCM

Neben den aufgeführten Interfaces existiert noch folgende Methoden:

  • GET_MESSAGE_HANDLER,,Erzeugen Instanz für Message Handler
Die Methode GET_MESSAGE_HANDLER dient zur Erzeugung einer Instanz des Message-Handlers.Mit dieser Instanz können alle Interface-Methoden aufgerufen werden, d.h. mit einer Instanz kann beispielsweise sowohl die Sammlung von Fehlermeldungen als auch die Protokollierung vorgenommen werden.
Über den Parameter I_IDENT wird eine eindeutige Identifizierungdes Message-Handlers definiert. Ist der Parameter initial, wird die Klasse als Singleton behandelt.In diesem Fall wird keine neue Instanz angelegt, sofern für die Klasse bereits vorher eine Instanz gebildet wurde.
Zur Verwendung einer von der Klasse CL_HRPAY00_MESSAGE_HANDLER abgeleiteteten Klasse kann über den Parameter I_DERIVATED_CLASSNAME der Klassenname übergeben werden.
  • INIT,,,,,,,,,,Löschen aller Nachrichten und Protokolle
Durch Aufruf der Methode werden alle Nachrichten und Protokolle aus vorherigen Aufrufen des Message-Handlers gelöscht. Die Methode kann zur Initialisierung des Message-Handlers verwendet werden.

Beziehungen

Beispiel

Als Beispiel zur Nutzung des Message-Handlers dient der ReportRPMUST_MESSAGE_HANDLER (Beispielprogramm Nutzung Message-Handler) und die KlasseCL_HRPAY00_EXAMPLE_MESSAGES (Beispielklasse zur Nutzung des Message-Handlers).

Hinweise

Die Grundidee bei der Nutzung des Message-Handlers ist die Trennung zwischen der Sammlung der Nachrichten und Protokollierung und die anschließende Aufbereitung.

Zur Sammlung innerhalb einer Berechnung und Verarbeitung wird lediglich das InterfaceIF_HRPAY00_MESSAGE_HANDLERbenötigt. Dabei muss sich der Verwender (also derjenige, der für die Berechnung verantwortlichist) keine Gedanken über die anschließende Aufbereitung der Nachrichten oder des Protokollsmachen. Diese obliegt allein dem Aufrufer, der für den Message-Handler eine Instanz gebildethat und eine 'fremde' Berechnung aufruft. Dadurch ist es möglich, Berechnungen von beliebigerStelle aufzurufen (z.B. aus der Abrechnung und der Ablauflogik eines Infotypen). Der Aufrufer entscheidetüber die Darstellung der Meldungen und Protokolle in Abhängigkeit der jeweiligen Aufrufstelle. Der Berechnungsbaustein bleibt aber unverändert.

Weiterführende Informationen



General Data in Customer Master   Addresses (Business Address Services)  
Diese Dokumentation steht unter dem Copyright der SAP AG.


Length: 5670 Date: 20120527 Time: 155323     triton ( 175 ms )