Fiori Abwesenheitsantrag mit Suchhilfe und dabei im Standard bleiben
Sicher kennen Sie auch das Problem eine Fiori Standardanwendung erweitern zu wollen und dabei nicht Gefahr zu laufen, dass Sie die Anpassung mit dem nächsten Update der SAP wieder überarbeiten müssen. In diesem Beitrag möchte ich ihnen zeigen, wie Sie den Fiori Abwesenheitsantrag anpassen können, ohne dabei das Frontend zu beeinflussen. Im zweiten Teil erfahren Sie, wie Sie den Typ dieses Feldes zu einer Suchhilfe abändern können.
Outlook-Integration zum Abwesenheitsantrag
Nutzen Sie das Self-Service-AddOn von ACTIVATEHR, um eine Kalender-Synchronisation von Outlook und SAP zu ermöglichen.
Erweiterung des Abwesenheitsantrags – warum eigentlich?
Eine Abwesenheit kann viele verschiedene Ursachen haben. Daher gibt es auch eine Vielzahl an Einstiegsszenarien um eine neue Abwesenheit anzulegen. Wenn Sie oder Ihre Mitarbeiter eine Abwesenheit erfassen kann es daher schon vorkommen, dass die Vorlagen zum erfassen der Daten nicht ausreichen. Nehmen wir einmal das Beispiel „Sonderurlaub“. Standardmäßig sieht die Vorlage im Fiori Abwesenheitsantrag folgendermaßen aus:
Was ist nun aber, wenn dies nicht ausreicht? Was ist zum Beispiel, wenn Sie möchten, dass der Grund für den Sonderurlaub auch noch mit angegeben wird?
Customizing
Für den oben beschrieben Fall kennen Sie vielleicht bereits die Lösung. Die SAP stellt für diesen Fall kundeneigene Felder zur Verfügung. Diese stehen zu Ihrer freien Verfügung. Um diese zu verwenden nutzen Sie die Transaktion SPRO und navigieren zu folgendem Pfad:
Hier müssen Sie die Feldauswahl definieren und Ihrer Abwesenheitsart zuweisen. In der Detailansicht von „Verarbeitungsprozesse für Abwesenheitsarten“ können Sie dann Ihr neu definiertes Feld dem Antrag zuweisen, indem Sie bei Feldauswahl für Zusatzdaten den Namen Ihres Feldes angeben. Das Ergebnis sieht dann folgendermaßen aus:
Damit kann der Anwender den Grund für seine Abwesenheit nun detaillierter angeben. Wie ist es nun jedoch wenn der Anwender nicht irgendetwas eintragen soll, sondern es eine fest definierte Vorauswahl geben soll? Die Antwort sind Suchhilfen. Wie kann dieses Feld nun zu einer Suchhilfe umgewandelt werden?
Anlegen einer Suchhilfe im Abwesenheitsantrag
Dazu legen Sie im ersten Schritt zunächst eine Suchhilfe an. Dies kann zum Beispiel direkt in der SE80 passieren. Dort definieren Sie die Quelle der Werte. Diese Suchhilfe muss über den oData-Service bekannt gemacht werden. Daher müssen Sie den Standard oData-Service kopieren und um die Suchhilfe erweitern.
Besonders wichtig ist hier bei der Erzeugung der Laufzeitartefakte den Haken zu setzen, dass der bestehende oData-Service überschrieben wird. Andernfalls wird unser neu angelegter Service ignoriert.
Der letzte Schritt im Backend erfolgt in dem Badi „HCMFAB_LRQ_ENRICH“ dort können wir die entsprechenden Attribute mitgeben, um aus dem Freitextfeld ein Feld mit Suchhilfe zu machen. Mit jedem Aufruf der Suchhilfe wird nun die entsprechende Methode im oData Service aufgerufen. Dort können sie die Logik definieren, welche Werte letztendlich angezeigt werden. Wenn alles richtig konfiguriert wurde, sieht das Ergebnis folgendermaßen aus:
Damit haben Sie nun einen groben Überblick erhalten, wie der Abwesenheitsantrag erweitert werden kann. Für nähere Informationen können sie sich gern mein How-To herunterladen um eine detaillierte Anleitung zu erhalten. Sollten weiterhin noch Fragen offen geblieben sein kommen Sie gern auf mich zu.