Ansicht
Dokumentation

HR_SEN_TEMPLATE_PROCESS_LOGIC - Vorlage: Funktionsbaustein für Zusatzlogik eines Berechnungsablaufs

HR_SEN_TEMPLATE_PROCESS_LOGIC - Vorlage: Funktionsbaustein für Zusatzlogik eines Berechnungsablaufs

BAL Application Log Documentation   CL_GUI_FRONTEND_SERVICES - Frontend Services  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

Dieser Funktionsbaustein dient als Vorlage und Muster zum Anlegen einer Zusatzlogik für einen Berechnungsablauf bei der Berechnung einer Dienstzeit.

Dieser spezielle Funktionsbaustein ist für folgende Berechnungsabläufe notwendig:

  • bei denen das Ergebnis der Dienstzeitberechnung im Infotyp Dienstzeitberechnung (0553) gespeichert werden soll
  • bei denen eine umfangreiche Logik zur Berechnung der Dienstzeit hinterlegt werden muß

In beiden Fällen hinterlegen Sie den Funktionsbaustein für die Zusatzlogik des Berechnungsablaufs in der Steuerungstabelle zum Berechnungsablauf (Tabelle T525P bzw. T525Q). Das R/3-System ruft den Funktionsbaustein für die Zusatzlogik des Berechnungsablaufs dynamisch beim allgemeinen Ablauf der Dienstzeitberechnung durch den Funktionsbaustein HR_SEN_CALCULATE_COMPLETE auf.

Nutzung des Infotyps Dienstzeitberechnung (0553)

Die Besonderheit beim Speichern der Dienstzeit im Infotyp Dienstzeitberechnung liegt darin, daß weder eine Berechnungsart noch ein entsprechendes Auswertungsintervall vorgegeben werden kann. Diese Informationen hängen vielmehr vom Berechnungsablauf ab, für den die Dienstzeit gespeichert werden soll.

Im Infotyp Dienstzeitberechnung starten Sie die Dienstzeitberechnung immer ohne Angabe der Berechnungsart (ID_CALTY) und der zusätzlich notwendigen Parameter

Es ist Aufgabe des Funktionsbausteins für die Zusatzlogik des Berechnungsablaufs, diese Parameter für den Berechnungsablauf zu bestimmen. Nach der Ermittlung der Paramter ruft dieser Funktionsbaustein zur eigentlichen Berechnung der Dienstzeit den Funktionsbaustein HR_SEN_CALCULATE_PROCESS_STEP auf.

Beispiel

Das R/3-System soll die Dienstzeit für den Berechnungsablauf SENI ermitteln. Die ermittelte Dienstzeit möchten Sie im Infotyp Dienstzeitberechnung speichern.
Bei der Ermittlung dieser Dienstzeit soll das R/3-System alle im System vorhandenen Dienstzeiten bis zum Tag vor dem Beginndatum des zu speichernden Infotypsatzes auswerten. Die gesamte Dienstzeit soll als Dauer in Jahren, Monaten und Tagen gespeichert werden.
Für diesen Berechnungsablauf muß im Funktionsbaustein für die Zusatzlogik des Berechnungsablaufs die Berechnungsart auf 1 (Berechnung Dauer aus Ende- und Beginndatum) gesetzt werden. Zur Bestimmung des Auswertungsintervalls wird das Beginndatum auf den Wert 18000101 (Low-Date) und das Endedatum auf den Wert Selektionsdatum (entspricht dem Beginndatum des Infotypsatzes) abzüglich einem Tag gesetzt.
Mit diesen, für den Berechnungsablauf SENI individuell ermittelten Parametern, ruft der Funktionsbaustein für die Zusatzlogik des Berechnungsablaufs dann zur Ermittlung der Dienstzeit den Funktionsbaustein HR_SEN_CALCULATE_PROCESS_STEP auf.

Grundsätzlich ist immer dann ein Funktionsbaustein für die Zusatzlogik des Berechnungsablaufs sinnvoll oder notwendig, wenn bei der Ermittlung der Dienstzeit lediglich der Berechnungsablauf angegeben wird und die Bestimmung der Berechnungsart und des Auswertungsintervalls automatisch erfolgen soll.

Zusätzliche Logik bei der Berechnung der Dienstzeit

Sofern es notwendig ist, komplexere Berechnungsabläufe ggf. mit mehreren Ablaufschritten abzubilden (z.B. Vergleichsrechnungen), ist es ebenfalls sinnvoll, diese fest vorgegebenen Abläufe im Funktionsbaustein für die Zusatzlogik des Berechnungsablaufs zu definieren.

Dabei kann für unterschiedliche Ablaufschritte auch mehrfach die Dienstzeitberechnung durch Aufruf des Funktionsbausteins HR_SEN_CALCULATE_PROCESS_STEP durchgeführt werden.

Die Logik im Funktionsbaustein für die Zusatzlogik des Berechnungsablaufs ist nicht vorgegeben, sondern hängt von den jeweiligen Anforderungen des Berechnungsablaufs ab.

Die Speicherung der Dienstzeit und eine zusätzliche Logik bei der Ermittlung der Dienstzeit schließen sich nicht aus.

Vorgehen

Wenn Sie einen eigenen Berechnungsablauf anlegen möchten, für den das Ergebnis der Dienstzeitberechnung gespeichert werden soll oder für den eine spezielle Logik zur Berechnung der Dienstzeit notwendig ist, kopieren Sie diesen Funktionsbaustein in eine eigene Funktionsgruppe.

Nehmen Sie in Ihrer Kopie die notwendigen Änderungen vor und tragen Sie den Namen des Funktionsbausteins in der Sicht V_T525P (Berechnungsablauf Dienstzeitberechnung) bzw. der Sicht V_T525Q (Berechnungsablauf Dienstzeitberechnung (Kunde)) bei Ihrem Berechnungsablauf ein.





Parameter

ED_DATE
ES_DURATION
ID_AUTHO
ID_BEGDA
ID_CALTY
ID_CRULE
ID_ENDDA
ID_MOLGA
ID_PERNR
ID_PROCE
ID_PROTO
ID_SEL_DATE
IS_DURATION
IT_PSTEP_TSPST

Ausnahmen

ERROR_OF_OTHER_FUNCTIONS
NO_RESULT_FOR_CALTY

Funktionsgruppe

HRSEN00TEMPLATE_PROCESS

SUBST_MERGE_LIST - merge external lists to one complete list with #if... logic for R3up   Fill RESBD Structure from EBP Component Structure  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 8230 Date: 20240523 Time: 064203     sap01-206 ( 115 ms )