Wiki-Quellcode von get_timerecording.php

Zuletzt geändert von YellowFox_RD am 2025/01/20 15:37

Verstecke letzte Bearbeiter
YellowFox_RD 1.1 1 (% class="box" %)
2 (((Inhaltsverzeichnis)))
3 {{toc/}}
4
5 (% class="box" %)
6 (((
7 **Kompatibilität
8 **Diese Funktion ist nur für Kunden mit aktivierter Zeiterfassung V3 verfügbar.
9 Kunden mit der bisherigen Zeiterfassung nutzen bitte weiterhin die Funktion [[get_timerecording.asp>>doc:YellowFox Remote Tracking Interface.Funktionen.Zeiterfassung.get_timerecording\.asp.WebHome]]
10 )))
11
12 Gibt alle empfangenen Zeiterfassungsbuchungen des abgefragten Zeitraumes zurück. Der Zeitraum kann dabei entweder nach Eingang der Buchungen oder gebuchter Zeit gewählt werden.
13 Falls die Zeiterfassungsbuchungen aus den Digitacho Dateien erstellt werden ist zu beachten, das es zu Verzögerungen kommt. Es muss erst die jeweilige Datei vom Fahrzeug heruntergeladen werden und danach noch exportiert werden. Dies kann zu mehreren Stunden, eventuell sogar Tagen, Verzögerung führen. Deshalb wird auch standardmäßig das Verarbeitungsdatum verwendet, damit ein chronologischer Datenabruf ohne Lücken oder Dopplungen möglich ist.
14 = Beschreibung =
15 **(% class="green mark" %)GET(%%) get_timerecording.php?company**=//COMPANY_RTIKEY//**&import**=//COMPANY_IMPORTKEY//**&start**=//YYYYMMDDHHMMSS//**&end**=//YYYYMMDDHHMMSS//**&format**=//CSV//**&version**=//1//**&date_query**//=insert//
16 = Parameter =
17 |=Parameter|=Beschreibung|=Typ|=Hinweis|=Pflicht
18 |company|RTI Firmenschlüssel|string||ja
19 |import|RTI Importschlüssel|string||ja
20 |start|Startzeitpunkt der Ausgabe|string|der Ausgabezeitraum darf maximal 31 Tage umfassen|ja
21 |end|Endzeitpunkt der Ausgabe|string|der Ausgabezeitraum darf maximal 31 Tage umfassen|ja
22 |format|Ausgabeformat|string|zulässige Ausgabeformate
23 (((
24 * csv
25 * json
26 * xml
27 * buspronet
28 * gfos
29 )))|ja
30 |version|Versionsnummer der Abfrage|integer|aktuell ist Version 1
31 sollte sich das Ausgabeformat ändern wird jeweils eine neue Versionsnummer vergeben|nein
32 |date_query|Welches Datum bildet die Grundlage für die Zeitraumeingrenzung|string|'insert' (Standard) = Verarbeitungsdatum
33 'gps' = Datum an dem die Zeitbuchung stattgefunden hat (in Verbindung mit 'with_changes=1', werden geänderte Buchungszeiten mit beachtet)
34 'update' = NUR in Verbindung mit 'with_changes=1', allgemeine Rückgabe wie 'insert', wurde eine Buchung bearbeitet, zählt aber das Bearbeitungsdatum|nein
35 |group|Bezeichnung der Personalgruppe, auf welche eingegrenzt werden soll|string|Es muss die exakte Bezeichnung einer Personalgruppe angegeben werden|nein
36 |with_changes|Gibt an, ob portalseitige Bearbeitungen von Buchungen mit beachtet werden sollen.
37 Im Portal gelöschte Buchungen werden dann auch nicht ausgegeben|integer|0 (Standard) - die Buchungen werden immer so ausgegeben, wie ursprünglich erfasst
38 1 - Die Buchungen werden inklusive der Änderungen ausgegeben (wie im Portal)|nein
39
40 = Rückgabe =
41 Es wird ein **string** zurückgegeben. Im Fehlerfall wird "(% class="error" %)**ERROR:Beschreibung**(%%)".
42 == JSON Format ==
43 Gibt einen JSON Formatierten Text zurück mit den angegebenen Details zu jeder Buchung.
44 === Beispiel Ausgabe ===
45 **JSON Ausgabe**
46 {{code language="js"}}[
47 {
48 "person": {
49 "id": "A23",
50 "key": "DF00000001234",
51 "name": "Max Mustermann",
52 "card_nr": null
53 },
54 "datetime": "2019-04-01 05:26:00",
55 "activity": {
56 "id": "1003",
57 "name": "Arbeitszeit"
58 },
59 "terminal": {
60 "id": "M_123",
61 "name": "DD-YF 456"
62 }
63 "position": {
64 "lat": 51.4,
65 "lon": 13.1,
66 "address": "Am Wüsteberg 3, 01723 Kesselsdorf"
67 },
68 "area": null,
69 "costcenter": {
70 "id": null,
71 "name": null
72 }
73 },
74 {
75 "person": {
76 "id": "A23",
77 "key": "DF00000001234",
78 "name": "Max Mustermann",
79 "card_nr": null
80 },
81 "datetime": "2019-04-01 12:35:00",
82 "activity": {
83 "id": "1001",
84 "name": "Pause"
85 },
86 "terminal": {
87 "id": "F_17",
88 "name": "Büro",
89 "position": {
90 "lat": 52.0,
91 "lon": 11.9,
92 "address": "Am Wüsteberg 3, 01723 Kesselsdorf"
93 },
94 "area": null,
95 "costcenter": {
96 "id": "K-47",
97 "name": "allgemeines"
98 }
99 }{{/code}}
100
101 == XML Format ==
102 **XML Ausgabe**
103 {{code language="xml"}}<?xml version="1.0"?>
104 <bookings>
105 <booking>
106 <person>
107 <id/>
108 <key>DF00000001234</key>
109 <name>Max Mustermann</name>
110 <card_nr/>
111 </person>
112 <datetime>2019-04-01 05:26:00</datetime>
113 <activity>
114 <id>1003</id>
115 <name>Arbeitszeit</name>
116 </activity>
117 <terminal>
118 <id>M_123</id>
119 <name>DD-YF 456</name>
120 </terminal>
121 <position>
122 <lat>51.0</lat>
123 <lon>13.1</lon>
124 <address>Am Wüsteberg 3, 01723 Kesselsdorf</address>
125 </position>
126 <area/>
127 <costcenter>
128 <id/>
129 <name/>
130 </costcenter>
131 </booking>
132 <booking>
133 <person>
134 <id/>
135 <key>DF00000001234</key>
136 <name>Max Mustermann</name>
137 <card_nr/>
138 </person>
139 <datetime>2019-04-01 12:35:00</datetime>
140 <activity>
141 <id>1001</id>
142 <name>Pause</name>
143 </activity>
144 <terminal>
145 <id>F_17</id>
146 <name>Büro</name>
147 </terminal>
148 <position>
149 <lat>52.3</lat>
150 <lon>11.09</lon>
151 <address>Am Wüsteberg 3, 01723 Kesselsdorf</address>
152 </position>
153 <area/>
154 <costcenter>
155 <id>K-47</id>
156 <name>allgemeines</name>
157 </costcenter>
158 </booking>
159 </bookings>{{/code}}
160
161 == CSV Format ==
162 Das CSV Format enthält eine Zeile pro Buchung mit allen jeweils vorhandenen Informationen.
163 === Metainformationen ===
164 |=Trennzeichen|Semikolon ( ; )
165 |=Textbegrenzer|Doppeltes Hochkomma ( " )
166 |=Zeilenende|0x0D 0x0A (CarriageReturn LineFeed)
167 |=Header|Zeile 1
168 |=Kodierung|Windows-1252
169
170 === CSV Spalten ===
171 |=Spalte|=Beschreibung|=
172 |PERSON_ID|//optional// selbstdefinierter Identifikator|Einstellbar unter Personalverwaltung - MA-Nr.
173 |PERSON_KEY|Selbstdefinierter Buchungsschlüssel der Person|
174 |PERSON_NAME|Name der Person|
175 |PERSON_CARD_NR|//optional// Buchungsschlüssel|Einstellbar unter Personalverwaltung - Card-Nr.
176 |DATETIME|Zeitpunkt der Buchung|Format: TT.MM.JJJJ HH:MM:SS
177 |ACTIVITY_ID|Technischer Ident einer Buchung, im Portal zur Tätigkeit hinterlegbar|
178 |ACTIVITY_NAME|Beschreibungstext, welcher für diese Buchung hinterlegt wurde|
179 |TERMINAL_ID|//optional// RTI Ident des Buchungsterminals|Einzustellen über die RTI Einstellungen
180 |TERMINAL_NAME|Bezeichner des Buchungsterminals|typischerweise das hinterlegte Fahrzeugkennzeichen
181 |LAT|//optional// Latitude zur Positionierung|
182 |LON|//otpional// Longitude zur Positionierung|
183 |ADDRESS|Aufgelöster Positionstext|
184 |AREA|Gebiete, welche für diese Position festgelegt wurden|Trennzeichen: "%~|%"
185 |COST_CENTER_ID|//optional// technischer Ident zur identifikation einer gesetzten Kostenstelle|
186 |COST_CENTER_NAME|//optional// Name einer gesetzten Kostenstelle|
187
188 === Beispiel Ausgabe ===
189 **Ausgabe in CSV**
190 {{code language="java"}}"PERSON_ID";"PERSON_KEY";"PERSON_NAME";"PERSON_CARD_NR";"DATETIME";"ACTIVITY_ID";"ACTIVITY_NAME";"TERMINAL_ID";"TERMINAL_NAME";"LAT";"LON;""ADDRESS";"AREA";"COST_CENTER_ID";"COST_CENTER_NAME"
191 "A23";"DF000000000123";"Max Mustermann";"";"01.10.2019 08:00:00";"1023";"Arbeit";"M_23";"DD-YF 123";"51.4";"13.1";"Musterstraße 17, 01234 Musterstadt";"Hauptzentrale";"K-47";"allgem. Arbeiten"
192 "A23";"DF000000000123";"Max Mustermann";"";"01.10.2019 12:00:00";"1024";"Pause";"M_23";"DD-YF 123";"52.0";"11.3";"Testweg 23, 91234 Testhausen";"Müller GmbH";"";""{{/code}}
193
194 = Beispiele =
195 **Abruf der Buchungen im CSV Format**
196 {{code language="java"}}https://map.yellowfox.de/rti/get_timerecording.php?company=COMPANY_RTIKEY&import=COMPANY_IMPORTKEY&start=20190602000000&end=20190605235959&format=CSV{{/code}}
197