Kombinierte Prüfung von Zeitbezügen bei ausgetretenen Mitarbeitern
Ausgangssituation
Im Zuge der Einführung von SAP Information Lifecycle Management im HCM stellt unter anderem die Frage der Löschlogik für Daten von ausgetretenen Mitarbeitern. Hinsichtlich des Bezugsdatums von den zu löschenden Daten bei ausgetretenen Mitarbeitern gibt es nach unseren Erfahrungen unterschiedliche Anforderungen sowie Lösungswege.
Auch die SAP ist bemüht, den Anforderungen gerecht zu werden und hat vor diesem Hintergrund erst kürzlich den Hinweis 2783754 ausgeliefert, der es ermöglichen soll, für ausgetretene Mitarbeiter sowohl High-End-Datensätze als auch abgegrenzte Datensätze gemeinsam in einem Regelwerk zu verarbeiten.
Dies funktioniert prinzipiell, deckt aber nicht alle Anforderungen ab, die von den Unternehmen gestellt werden.
Wir möchten Ihnen im Folgenden verschiedene Lösungsvarianten vorstellen:
Herausforderungen & Lösungsmöglichkeiten
Von den angelegten Regeln innerhalb eines Regelwerks kann immer nur eine einzige Regel pro Lauf angewendet werden. Standardmäßig wird die Regel gewählt, nach der der Datensatz am längsten aufbewahrt werden würde. Dies führt aber nicht immer zum gewünschten Ergebnis. Anhand eines Beispiels soll das Problem verdeutlicht werden.
In einem Regelwerk werden folgende Regeln angelegt:
Mit der ersten Regel soll erreicht werden, dass alle Datensätze gelöscht werden, sobald deren Enddatum 5 Jahre zurückliegt. Dies soll sowohl für ausgetretene als auch für aktive Mitarbeiter geschehen.
Darüber hinaus sollen die Daten ausgetretener Mitarbeiter aber auch dann vernichtet werden, wenn der Austritt des Mitarbeiters 10 Jahre zurückliegt.
Für die Daten ausgetretener Mitarbeiter handelt es sich hiermit um eine kombinierte Anforderung. Im Grunde möchte man erreichen, dass die Daten vernichtet werden, sobald ENTWEDER das Datensatzende 5 Jahre ODER das Austrittsdatum 10 Jahre zurückliegt.
Leider werden die Regeln aber nicht so verarbeitet, wie es gewünscht ist:
Da die beiden Datensätze mit Ende-Datum 01.05.2012 schon 5 Jahre zurückliegen, wird erwartet, dass diese gelöscht werden. Auf High-End-Datensätze nimmt die erste Regel keinen Einfluss, da solche nur bei einer Prüfung auf Austritt berücksichtigt werden. Da der Austritt aber noch keine 10 Jahre zurückliegt, darf der High-End-Datensatz nicht vernichtet werden.
Leider wird ausschließlich der 1. Datensatz für den aktiven Mitarbeiter vernichtet.
Das liegt daran, dass die beiden Regeln miteinander konkurrieren und nur eine von ihnen tatsächlich ausgeführt wird. Konkurrieren mehrere Regeln miteinander, wird geprüft, nach welcher Regel die Datensätze am längsten aufbewahrt werden würden. Nach der ersten Regel wäre das Löschdatum am 01.05.2017; nach der zweiten Regel am 31.12.2023. Somit wird die zweite Regel angewendet und der Datensatz nicht vernichtet.
Dies ist jedoch nicht das gewünschte Ergebnis, sodass eine Lösung gefunden werden muss.
Die SAP hat mittlerweile einen Hinweis ausgeliefert, mit dem sowohl auf Datensatzende als auch auf Austritt geprüft werden kann. Jedoch können die oben genannten Anforderungen auch mit dem Hinweis nicht erfüllt werden:
Der Hinweis „2783754: Use of HCM_TERMN_DATE and HCM_END_OF_RECORD“ bringt ein neues Bedingungsfeld mit sich, mit dem zwischen High-End- und Nicht-High-End-Datensätzen unterschieden werden kann. Es handelt sich dabei um ein Feld des Typs BOOLEAN. In diesem wird entweder ein Y für High-End-Datensätze oder ein N für Nicht-High-End-Datensätze eingetragen.
Somit ist es nun möglich, die oben aufgeführten Regeln jeweils um dieses Bedingungsfeld zu erweitern:
Um den Hinweis einzuspielen, muss das Bedingungsfeld manuell bei jedem Objekt angelegt werden, für das das Bedingungsfeld benötigt wird. Dies schließt auch die Pflege der objektkategoriespezifischen Einstellungen (SM34) ein, in denen die Felder zur Wertermittlung eingetragen werden müssen. Somit fällt ein hoher zusätzlicher Aufwand an, um diesen Hinweis einspielen zu können.
Nach Einspielen des Hinweises ergibt sich folgende Situation:
Das tatsächliche Ergebnis entspricht nun den Erwartungen. Da für den 1. Infotypsatz des ausgetretenen Mitarbeiters nun nicht mehr auf das Austrittsdatum, sondern auf das Datensatzende geprüft wird, wird er mitvernichtet.
Für die High-End-Datensätze gilt dann ausschließlich die zweite Regel, welche auf das Austrittsdatum prüft.
In diesem Fall entspricht das Ergebnis den Erwartungen. Es gibt jedoch auch Daten-Konstellationen, bei denen dies nicht der Fall ist.
Annahme: Es sollen generell alle Daten 10 Jahre nach Datensatzende gelöscht werden. Für ausgetretene soll zusätzlich noch 10 Jahre nach Austritt gelöscht werden.
Der ausgetretene Mitarbeiter ist nun seit dem 31.12.2005 nicht mehr aktiv. Somit ergibt sich folgende Erwartung:
Da das Datensatzende der beiden 1. Infotypsätze noch keine 10 Jahre zurückliegt, dürfen sie nicht vernichtetet. Für den ausgetretenen Mitarbeiter soll aber zusätzlich gelten, dass trotzdem gelöscht wird, sobald der Austritt 10 Jahre zurückliegt. Dies ist der Fall. Somit müssten beide Datensätze von ihm gelöscht werden.
Mit dem Hinweis ist es allerdings nur möglich zwischen High-End- und Nicht-High-Datensätzen zu unterscheiden. Dies hilft in diesem Fall nicht weiter, da nun beim ersten Datensatz ebenfalls auf den Austritt geprüft werden müsste.
Mit dem Hinweis könnten folgende Regeln gebildet werden:
Auf diese Weise wird jedoch nicht korrekt gelöscht, da der Nicht-High-End-Datensatz des ausgetretenen Mitarbeiters noch nicht alt genug ist.
Der Hinweis eignet sich tatsächlich nur dafür, für Nicht-High-End-Datensätze einen anderen Zeitbezug einzustellen als für High-End-Datensätze. Ein kombinierter Zeitbezug, also dass beispielsweise sowohl auf Datensatzende als auch auf das Austrittsdatum geprüft wird, lässt sich damit nicht realisieren.
Es gibt zwei Möglichkeiten, die oben genannten Anforderungen trotzdem zu erfüllen:
Das erste prüft für alle Mitarbeiter auf das Datensatzende; das zweite prüft nur für ausgetretene Mitarbeiter alle Daten nochmals auf das Austrittsdatum.
Wichtig ist hierbei, dass die Regelwerke abwechselnd „produktiv“ und „nicht-produktiv“ geschaltet werden müssen. Dies bedeutet einen erhöhten Aufwand im späteren Betrieb, da für jedes Objekt somit zwei Vor-, Schreib- und Löschläufe sowie eine manuelle Status-Umschaltung der Regelwerke erfolgen müssen.
Die Anforderungen würden auf diese Weise allerdings vollständig abgedeckt werden:
Da es allerdings doch sehr aufwendig ist, die Regelwerke jedes Mal umzuschalten, empfehlen wir
die zweite Möglichkeit:
2. Möglichkeit – einen kundeneigenen Zeitbezug
Die zweite – und wesentlich elegantere – Variante besteht in der Implementierung eines kundeneigenen Zeitbezugs. Der Vorteil liegt hier darin, dass die Logik genauso realisiert werden kann, wie sie benötigt wird. Der Aufwand fällt nur ein Mal zu Beginn während der Implementierung an und ein manuelles Umschalten der Regelwerke entfällt. Zudem ist es auf diese Weise möglich, die Anforderung mithilfe eines einzigen Regelwerks umzusetzen.
Für einen kombinierten Zeitbezug, der sowohl auf Datensatzende als auch auf Austritt prüft, sähe die Logik folgendermaßen aus:
Sobald entweder das Datensatzende oder der Austritt 10 Jahre zurückliegt, wird der Datensatz gelöscht.
Die Regeln würden folgendermaßen aussehen:
Diese Lösung ist allerdings nur dann möglich, wenn die Aufbewahrungsfrist für Austritt und Datensatzende identisch ist.
Lautet die Anforderung jedoch…
…lösche die Daten ausgetretener Mitarbeiter, wenn entweder das Datensatzende 5 oder aber der Austritt 10 Jahre zurückliegt…
… ist ein kombinierter Zeitbezug nicht möglich. In diesem Fall sollte die erste Lösung mit den zwei verschiedenen Regelwerken priorisiert werden.
Zusammenfassung / Empfehlung
Bevor Sie sich für eine Lösung entscheiden, sollten Sie Ihre Anforderungen genauestens prüfen. Je nach Anforderung ist eine andere Lösung empfehlenswert:
Anforderung A:
Alle Daten sollen generell x Jahre nach Datensatzende gelöscht werden.
Problem A:
High-End-Datensätze bleiben stehen
Lösung A:
ENTWEDER:
High-End-Datensätze werden in den einzelnen Regelwerken nicht betrachtet und später im Zuge der Komplettlöschung (HRPA_PERNR) mitvernichtet
ODER:
Einspielen des Hinweises “2783754: Use of HCM_TERMN_DATE and HCM_END_OF_RECORD”, um für High-End-Datensätze eine eigene Prüfung auf Austritt zu realisieren.
Anforderung B:
Daten aller Mitarbeiter sollen x Jahre nach Datensatzende gelöscht werden.
Daten ausgetretener Mitarbeiter sollen y Jahre nach Austritt gelöscht werden.
Problem B:
Es konkurrieren zwei Regeln für die ausgetretenen Mitarbeiter. Die Fristen für Datensatzende und Austritt sind unterschiedlich.
Lösung B:
Zwei Regelwerke mit jeweils einer Regel (siehe 1. Möglichkeit)
Anforderung C:
Daten aller Mitarbeiter sollen x Jahre nach Datensatzende gelöscht werden.
Daten ausgetretener Mitarbeiter sollen x Jahre nach Austritt gelöscht werden.
Problem C:
Es konkurrieren zwei Regeln für die ausgetretenen Mitarbeiter. Die Fristen für Datensatzende und Austritt sind allerdings identisch.
Lösung C:
Implementierung eines kundeneigenen Zeitbezugs, der die beiden benötigten Zeitbezüge in sich vereint (siehe 2. Möglichkeit)
Ein Beitrag von Sanja Pierdziwol