Zeiterfassungsdaten mit Excel und PowerQuery abfragen

Neuigkeiten und Informationen zur SpikeTime Zeiterfassung

17.07.2015 12:19
Zurück zur Übersicht

Mit der SpikeTime API können alle Zeiterfassungsdaten von unseren Servern abgefragt werden.

Mit der Excel-Erweiterung PowerQuery können diese in Excel weiterverarbeitet und bspw. für die Erstellung von Pivot-Tabellen oder Pivot-Charts verwendet werden.

Hier ein kleines Beispiel, wie mit der Erweiterung und der SpikeTime API ganz leicht eine eigene Auswertung erstellt werden kann.Zuerst muss die Erweiterung PowerQuery von Microsoft heruntergeladen und installiert werden (Excel ab der Version 2013 wird benötigt).

Die Erweiterung gibt es hier als kostenlosen Download (https://www.microsoft.com/de-DE/download/details.aspx?id=39379).

Nach der Installation der Erweiterung erscheint ein neuer Reiter in der oberen Leiste von Excel, PowerQuery.

PowerQuery

Damit können nun Abfragen auf die SpikeTime API erstellt werden und Daten aus dem SpikeTime Account abgerufen werden. Dieses Beispiel soll eine kleine Auswertung erstellen, die die Anzahl Projekte je Kunde zeigt. Natürlich können auch die Arbeitszeiten, Mitarbeiter etc. abgefragt werden.

Um auf die SpikeTime API zuzugreifen wird der API-Schlüssel benötigt. Jeder Benutzer hat einen eigenen Schlüssel, der in den Einstellungen abgelesen werden kann.

SpikeTime API Key

Um nun eine Abfrage zu erstellen muss im Tab POWER QUERY die Funktion “Aus dem Web” aufgerufen werden und dort die API Adresse eingegeben werden. Für den Abruf der Kunden wird die folgende Adresse verwendet: https://www.spiketime.de/api/Customer

Abfrage der API aus dem Web

Excel fragt danach nach der Authentifizierung. Dort muss “Standard” gewählt werden und als Benutzername der API Key aus den Einstellungen eingegeben (oder besser kopiert) werden. Damit dies für alle Adressen der SpikeTime API direkt funktioniert kann hier direkt https://www.spiketime.de gewählt werden.

API Key eingeben

Excel ruft danach direkt die Kunden aus der Zeiterfassung ab und zeigt eine Vorschau der heruntergeladenen. Um diese Daten dann auch lesbar zu machen, müssen diese in eine Tabelle konvertiert werden. Zusätzlich sollte das Dataset benannt werden. Hier im Beispiel habe ich es “Kunden” genannt.

In Tabelle konvertieren

Die nächste Abfrage einfach mit OK bestätigen.

Danach muss die Tabelle erweitert werden um die eigentlichen Werte auch sichtbar zu machen.

Tabelle erweitern

Nun kann die Tabelle gespeichert werden, Excel ruft die Werte vom SpikeTime Server ab und die Daten stehen zur weiteren Bearbeitung zur Verfügung.

Tabelle speichern

Zusätzlich zu den Kunden werden nun noch die Projekte geladen. Dazu wird einfach der gesamte Prozess noch einmal mit der URL https://www.spiketime.de/api/Customer wiederholt. Bevor jedoch wieder gespeichert wird, werden die beiden Tabellen noch verknüpft, so dass zu jedem Projekt der dazugehörige Kunde angezeigt wird.

Projekte in PowerQuery

Um die Abfragen zusammenzuführen zuerst auf “Abfragen zusammenführen” klicken und dann das “Kunden”-Dataset auswählen. Im Projekt-Dataset das Feld “Customer_Id” und im Kunden-Dataset das Feld Id wählen. Excel meldet direkt, ob es Übereinstimmungen gibt.

Abfragen zusammenführen

Nach dem Zusammenführen der Daten muss nur noch einmal nach rechts gescrollt werden und die Kunden-Tabelle wieder über den bekannten Klick erweitert werden. Nach dem Speichern sind nun alle Projekte mit ihren zugehörigen Kunden in einer Excel Tabelle vorhanden.

Mit einem Klick auf die Tabelle in Excel und dann auf Einfügen => Pivot-Table kann auf die SpikeTime-Daten eine Pivot-Tabelle erstellt werden.

Pivot Tabelle erstellen

Mit dieser Pivot-Tabelle kann dann wie gewohnt gearbeitet werden. Im aktuellen Beispiel kann einfach eine Auswertung der Anzahl Projekte je Kunde erstellt werden.

Projekte je Kunde

Die Abfragen können jederzeit direkt vom SpikeTime Server aktualisiert werden und somit mit Excel alle möglichen Auswertungen der Zeiterfassungsdaten erstellt werden. Weitere Informationen zur SpikeTime-API sind hier zu finden.

Wir bieten auch Unterstützung bei der Erstellung von eigenen Abfragen und Auswertungen an. Dazu könnt ihr einfach eine E-Mail an mail@spiketime.de schreiben oder uns auf der Homepage im Chat direkt kontaktieren.