Zum Hauptinhalt springen
Alle KollektionenDokumentation und HilfeTipps und Tricks
Übertragung der Anwesenheit aus primaERP
Übertragung der Anwesenheit aus primaERP

Wie übertragen Sie die Anwesenheit von primaERP nach Flexi

Lenka Haringerová avatar
Verfasst von Lenka Haringerová
Vor über 3 Jahren aktualisiert

Sehen Sie

eine große Anzahl von Mitarbeitern mit unregelmäßiger Beschäftigung und Stundenlohn in ABRA Flexi? Möchten Sie bei der Lohnabrechnung die manuelle Eingabe von Arbeitsstunden vermeiden? Lassen Sie Ihre Mitarbeiter ihre Arbeitszeiten im Zeiterfassungssystem erfassen und laden Sie die Daten automatisch in ABRA Flexi hoch. Für die Arbeitszeiterfassung können Sie zum Beispiel die praktische Cloud-Anwendung ABRA primaERP

nutzen.

Die Vorteile der Anwesenheitserfassung in ABRA primaERP werden auf der Seite Modul Anwesenheit

vorgestellt. Wie Sie die REST-API verwenden, um die resultierenden Nummern an ABRA Flexi zu übertragen, wird in den folgenden Zeilen gezeigt.

Beziehen der notwendigen Abrechnungskomponenten aus ABRA Flexi

Zuerst müssen Sie die Abrechnungsordner, die Sie ändern wollen, aus Flexi abrufen. Das liegt daran, dass Sie die IDs, die Flexi ihnen zugewiesen hat, benötigen, um sie zurückzuschreiben. Der ganze Vorgang kann vereinfacht werden, indem man die Daten aus Flexi um die notwendige Zahl ergänzt und die Daten zurückschickt.

Aus der Abrechnungsdatei in Flexi können Sie die notwendigen Abrechnungsdateien abrufen. Verwenden Sie eine einfache Filterung, um die benötigten Daten zu erhalten. Sie müssen die Ordner für ein bestimmtes Jahr und einen bestimmten Monat abrufen und auch nur die Stundensatz-Ordner. Eine Abfrage an die Flexi-API sieht also zum Beispiel so aus:

GET /payroll-loza/(cisMzdSloz = 'code:STUNDENLOHN' und Jahr = 2017 und Monat = 1).json?detail=custom:id,person(osbCis,vorname,nachname,titel),hours,changeTime,changeCastMzd,castkaHod,castMzd&includes=/mpayroll-loza/person&limit=0

Diese Abfrage gibt alle Ordner des Typs STUNDENLOHN für Januar 2017 zurück. Das Ergebnis enthält alle Felder, die Sie benötigen, um diese Ordner straffrei ändern zu können.

Das von Flexi zurückgegebene Ergebnis sieht in etwa so aus:

null

Laden von Daten aus primaEPR

Wenn Sie alle benötigten Daten aus Flexi haben, können Sie die Daten aus dem Anwesenheitssystem abrufen. Wir werden das Laden von Daten aus primaERP demonstrieren, das über eine API verfügt, die aber nicht unbedingt erforderlich ist. Sie können in diesem Schritt z. B. auch eine Excel-Tabelle mit Anwesenheiten laden. Wichtig ist nur, dass Sie in der Lage sind, den Mitarbeiter zu identifizieren und zu wissen, wie viele Stunden er gearbeitet hat.

In der API von primaERP müssen Sie eine Anfrage an die URL stellen

GET https://kbel.api.primaerp.com/v1/time/timerecords/summary.json?summary=user/position;sum(duration)&$filter=start ge datetime'2017-05-01T00:00:00.000Z' and stop en datetime'2017-06-01T00:00:00.000Z'&token=9c11cea8-c3b3-4232-bfb-f8acefce2f5a

Sie erhalten z. B. Daten in diesem Format:

[ { "Schlüssel": "A02200", "Zusammenfassungen": [ { "Name": "Summe(Dauer)", "Wert": "232777000" } ] ]

Die Abfrage verwendet die Summierung über die Eigenschaft Dauer. Die Position des Mitarbeiters wird als Identifikator verwendet, der für eine Personennummer verwendet wird, die dann zur Paarung der Daten aus primaERP mit den Daten aus Flexi verwendet werden kann. Als Nächstes verwenden Sie die Filterung des Zeitraums in der Abfrage. Damit werden nur Aufgaben herausgefiltert, die im Berichtszeitraum begonnen und beendet wurden.

Die von primaERP zurückgegebenen Daten enthalten also die Personennummer aus Flexi als Schlüssel und die Summe der Dauer der einzelnen Aufgaben. Diese Summierung ergibt die Gesamtzeit in Millisekunden. Die Stunden, die wir in den Ordner STUNDENLOHN schreiben müssen, erhalten wir daher durch die Formel

Stunden = Dauer / 1000 / 60

In unserem Beispiel sind dies 64,66 Stunden. Natürlich können Sie aufrunden und werden dies wahrscheinlich auch tun. Aber das ist jedem Benutzer selbst überlassen. Mit Flexi können Sie eine Zahl mit zwei Dezimalstellen in einen Ordner eingeben.

Datenverarbeitung und Rückschreiben in ABRA Flexi

Sie müssen nun die Daten verarbeiten und zurück in Flexi schreiben. Anschließend gehen wir die einzelnen aus Flexi abgerufenen Gehaltsabrechnungsordner durch und fügen ihnen nacheinander die Daten aus primaERP hinzu.

Jede Gehaltsabrechnungsdatei enthält eine eindeutige Kennung, nämlich die Personennummer des Mitarbeiters. Sie werden diese Nummer verwenden, um in den primaERP-Daten nach der richtigen Summierung zu suchen. Sobald Sie ihn gefunden haben, rechnen Sie Millisekunden in Stunden um und geben ihn in das Stundenfeld ein. In das Feld castMzd geben Sie das Produkt aus den geleisteten Stunden und dem Wert des Feldes castHours ein, das den Stundenlohn des Mitarbeiters enthält. Schließlich müssen Sie in den Feldern changeClock und changeCastMzd true statt false eingeben, damit Flexi die eingegebenen Werte nicht auf Basis des Zeitpools ändert.

Die Daten sind fertig und Sie können sie an Flexi zurücksenden. Dies ist den Lesern unserer Beiträge bereits bestens bekannt. Nur um sicherzugehen, lautet die URL, in die wir die Daten schreiben werden

PUT /zahlungsabrechnung-datei.json

Ein paar Worte zum Schluss

Wenn Ihr Unternehmen zumindest ein paar stundenweise Beschäftigte hat, empfehlen wir, ein ähnliches Tool zu erstellen. Dabei spielt es keine Rolle, ob die Daten aus primaERP oder einem anderen Zeiterfassungssystem abgerufen werden. Natürlich ist es auch möglich, eine einfache Excel-Tabelle zu verwenden. Solange es Spalten für die Personennummer und die Arbeitszeit enthält, sollte es ausreichend sein.

Wenn Sie eine solche Brücke schaffen, wird es Ihnen der Lohnbuchhalter nach jeder Abrechnung sicherlich mehrere Tage lang danken. Denn wer will schon für jeden Mitarbeiter die geleisteten Arbeitsstunden immer wieder neu eingeben.

Hat dies deine Frage beantwortet?