(Die Seite wurde neu angelegt: „Mit dieser Einstellung, kann der Dienstplanausdruck im PDF-Format über den Browser mittels WebService aufgerufen werden. Die Ausdruckeinstellungen können mi…“) |
|||
(33 dazwischenliegende Versionen von 8 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
Das [[Intern:Bfx.Alex.UI.Web.dll|WebUI-Webservice]] - '''Dienstplan PDF''' ist eine [[Programmfunktion]] zur Abfrage des Dienstplans pro Personal oder Planungseinheit und Datum im Dateiformat PDF. <ref name="issue8097">{{githubissue|8097}}</ref> | |||
== Ausgangssituation == | |||
=== Voraussetzungen === | |||
* Es müssen die Voraussetzungen für den Betrieb des [[Intern:Bfx.Alex.UI.Web.dll|WebUI-Webservice]] erfüllt sein. | |||
*Es muss ein Benutzer mit den gewünschten Druckeinstellungen konfiguriert werden. | |||
**<code>Systemeinstellungen: Druck-Einstellungen: Benutzer für Webservice Ausdruck von Monatsplan</code> | |||
*Der Benutzer muss mindestens die Rolle '''DIENSTPLAN LESEN''' (auf Systemeinstellungen) besitzen. | |||
{{AlexBild|Ausdruck Benutzer|[[Datei:Dienstplan_PDF.PNG]]}} | |||
* Es kann ein '''minimaler [[Statustreppe|Status]] für Webservice-Ausdruck von Dienstplan''' <ref name="issue8715">{{githubissue|8715}}</ref> ausgewählt werden. Danach werden nur Pläne ab diesem Status angezeigt. Falls nichts eingestellt wird, werden alle Status angezeigt. | |||
**<code>Systemeinstellungen: Druck-Einstellungen: minimaler Status für Webservice-Ausdruck von Dienstplan</code> | |||
== | ===Formatierung der Anfrage=== | ||
Die Daten werden dem Webservice '''in der URL kodiert''' als '''GET'''-Argumentübertragung übergeben. | |||
[[[[Kategorie: | Ein Datum wird immer als <code>DD.MM.YYYY</code> übertragen. | ||
====Schema für URL-Kodierung==== | |||
Der [https://de.wikipedia.org/wiki/URL-Encoding Prozent-Encodierte] [https://de.wikipedia.org/wiki/Query-String Query-String] der URL muss folgendes Format haben. Parameter in eckigen Klammern sind optional: | |||
'''/AlexPrintPlanPeriod''' | |||
[?planCode=] | |||
[&employeeId=] | |||
[&date=] | |||
{| class="wikitable alex-blue" | |||
!Parameter!!Wertebereich!!Beschreibung | |||
|- | |||
|<code>planCode</code>||Zeichenkette||Kurzzeichen einer Planungseinheit | |||
|- | |||
|<code>employeeId</code>||Zeichenkette||Eine Personalnummer, die '''Planungseinheit''' ergibt sich aus der '''Stammzuteilung''' | |||
|- | |||
|<code>date</code>||Datum||Datum des Monats des gewünschten Stundennachweises, wenn nicht angegeben '''Heute''' | |||
|} | |||
Beispiel: | |||
*<code><nowiki>http://192.168.0.100:8080/AlexPrintPlanPeriod?date=10.06.2023&employeeId=123</nowiki></code> | |||
===Formatierung der Ausgabe === | |||
Bei einer erfolgreichen Anfrage gibt das Webservice eine '''Datei im PDF-Format''' zurück | |||
Bei einem Fehler wird ein JSON-String nach folgendem Schema zurückgegeben: | |||
{ | |||
"$schema": "https://json-schema.org/draft/2020-12/schema", | |||
"title": "New/Set-Result", | |||
"description": "Format für Fehlerausgabe des Webservice", | |||
"type": "object", | |||
"properties": { | |||
"request": { | |||
"type": "string", | |||
"description": "Angeforderter Request als 'Handshake'" | |||
}, | |||
"status": { | |||
"type": "string", | |||
"description": "'error'" | |||
}, | |||
"details": { | |||
"type": "string", | |||
"description": "Optionale Detailinformationen des Fehlers" | |||
} | |||
}, | |||
"required": [ | |||
"request", | |||
"status" | |||
] | |||
} | |||
==== Status von Dienstplan nicht erfüllt <ref name="issue8715"/> ==== | |||
Falls der '''minimaler Status für Webservice-Ausdruck von Dienstplan''' nicht erfüllt ist, wird folgende Fehlermeldung als Text im Response zurückgegeben: | |||
{ | |||
"request": "/AlexPrintPlanPeriod?date=<date>&employeeId=<id>", | |||
"status": "error", | |||
"details": "Dienstplan mit Status >Planung< noch nicht verfügbar." | |||
} | |||
Der Response Status wird auf <code>404 Not Found</code> gesetzt. | |||
==Fußnoten== | |||
[[Kategorie:Funktionsübersicht]] | |||
[[Kategorie:Schnittstellen]] | |||
[[Kategorie:Webservice]] | |||
<references /> |
Aktuelle Version vom 22. November 2024, 09:54 Uhr
Das WebUI-Webservice - Dienstplan PDF ist eine Programmfunktion zur Abfrage des Dienstplans pro Personal oder Planungseinheit und Datum im Dateiformat PDF. [1]
Ausgangssituation
Voraussetzungen
- Es müssen die Voraussetzungen für den Betrieb des WebUI-Webservice erfüllt sein.
- Es muss ein Benutzer mit den gewünschten Druckeinstellungen konfiguriert werden.
Systemeinstellungen: Druck-Einstellungen: Benutzer für Webservice Ausdruck von Monatsplan
- Der Benutzer muss mindestens die Rolle DIENSTPLAN LESEN (auf Systemeinstellungen) besitzen.
Ausdruck Benutzer |
- Es kann ein minimaler Status für Webservice-Ausdruck von Dienstplan [2] ausgewählt werden. Danach werden nur Pläne ab diesem Status angezeigt. Falls nichts eingestellt wird, werden alle Status angezeigt.
Systemeinstellungen: Druck-Einstellungen: minimaler Status für Webservice-Ausdruck von Dienstplan
Formatierung der Anfrage
Die Daten werden dem Webservice in der URL kodiert als GET-Argumentübertragung übergeben.
Ein Datum wird immer als DD.MM.YYYY
übertragen.
Schema für URL-Kodierung
Der Prozent-Encodierte Query-String der URL muss folgendes Format haben. Parameter in eckigen Klammern sind optional:
/AlexPrintPlanPeriod [?planCode=] [&employeeId=] [&date=]
Parameter | Wertebereich | Beschreibung |
---|---|---|
planCode |
Zeichenkette | Kurzzeichen einer Planungseinheit |
employeeId |
Zeichenkette | Eine Personalnummer, die Planungseinheit ergibt sich aus der Stammzuteilung |
date |
Datum | Datum des Monats des gewünschten Stundennachweises, wenn nicht angegeben Heute |
Beispiel:
http://192.168.0.100:8080/AlexPrintPlanPeriod?date=10.06.2023&employeeId=123
Formatierung der Ausgabe
Bei einer erfolgreichen Anfrage gibt das Webservice eine Datei im PDF-Format zurück
Bei einem Fehler wird ein JSON-String nach folgendem Schema zurückgegeben:
{ "$schema": "https://json-schema.org/draft/2020-12/schema", "title": "New/Set-Result", "description": "Format für Fehlerausgabe des Webservice", "type": "object", "properties": { "request": { "type": "string", "description": "Angeforderter Request als 'Handshake'" }, "status": { "type": "string", "description": "'error'" }, "details": { "type": "string", "description": "Optionale Detailinformationen des Fehlers" } }, "required": [ "request", "status" ] }
Status von Dienstplan nicht erfüllt [2]
Falls der minimaler Status für Webservice-Ausdruck von Dienstplan nicht erfüllt ist, wird folgende Fehlermeldung als Text im Response zurückgegeben:
{ "request": "/AlexPrintPlanPeriod?date=<date>&employeeId=<id>", "status": "error", "details": "Dienstplan mit Status >Planung< noch nicht verfügbar." }
Der Response Status wird auf 404 Not Found
gesetzt.