|
|
||
|---|---|---|
| .. | ||
| readme.md | ||
readme.md
Kalenderfehlzeiten aus der ZeusX Zeiterfassung übernehmen
Die Zeiterfassungssoftware ZeusX bitet eine WebAPI Schnittstelle an.
Voraussetzungen
- PHP 7.x oder höher
- cURL-Erweiterung
- REST WebAPI Client für die Einrichtung
- Webserver mit HTTPS-Unterstützung beim ZeusX
- Softwarelizenz für den Export von Kalenderfehlzeiten über WebAPI
Installation
-
Export in der Zeiterfassungssoftware anlegen
- Einrichtung >> Modelle >> Datenaustausch >> Exportdefinition >> [+]Neu
- Export-Layout hochladen
-
(De)Aktievierung der zusätzlichen Zeitstempelverschlüsselung bei jedem Webrequest
- Als Systemadministrator anmelden
- Einrichtung >> Personen
- Zum Systemsart (01.01.2000) springen
- Systemeinstellungen >> API Web-Service >> Datenschutzeinstellung: Auf zusätzliche Client Autorisierung wird verzichtet
- Erstellung des (Bearer) Token über
https://<ZeusX WebUI URL>/Environment/Account/Token.aspxmit dem Schnittstellewebapiund dem ZeusX Login
-
Abfrage testen
- Abfrage aller Exporte aus der Zeiterfassungssoftware ZeusX mit einem GET Request:
curl --request GET \ --url https://<Server-URL>/<API-Site>/api/export/ \ --header 'authorization: <Token>'Hier wird dann ein JSON zurückgegeben mit einer Liste aller in der Zeiterfassungssoftware ZeusX definierten Exportdefinitionen Zur Abfrage wird die ObjektId aus dem JSON benötigt.
- Abfrage aller Organisationseinhgeiten bzw. Abteilungen per GET Request, die ine der Zeiterfassungssoftware ZeusX angelegt sind:
curl --request GET \ --url https://<Server-URL>/<API-Site>/api/organization/ \ --header 'authorization: <Token>'Hier wird wieder die ObjektId aus dem zurück gegebenen JSON der jeweiligen OE benötigt.
- Beantragung der Erstellung und zusammenfügen der Daten aus der Zeiterfassungssoftware+ ZeusX per POST Request:
curl --request POST \ --url https://<Server-URL>/<API-Site>/api/export \ --header 'authorization: <Token>' \ --header 'content-type: application/json' \ --data '{ "ExportDefinition":"<ObjektId vom ersten Request>", "organizationUnit":"<ObjektId vom zweiten Request>", "DateFrom":"<Startdatum der Exportwerte im Format dd.mm.yyyy>", "DateUntil":"<Enddatum der Exportwerte im Format dd.mm.yyyy>" }'Hier wird ein reiner Text zurück gegeben mit einer GUID die für die Abfrage der Daten notwendig ist.
- Abfrage der Exportdaten die beantragt worden sind per GET Request:
curl --request GET \ --url https://<Server-URL>/<API-Site>/api/export/<GUID Rückgabewert aus der Beantragung der Daten> \ --header 'authorization: <Token>'Hier kann die Antwort entweder die zu erwartenden Daten sein, oder folgendses JSON, was dann bedeutet das die Erstellung der Daten aktuell noch andauert:
{ "Result":"JobPending", "Message":"" }