Bfx.Alex.AccountsReport.DayInterval.Model.dll HTTP: Unterschied zwischen den Versionen

Zeile 66: Zeile 66:
  , "MasterAllocation" : "string"
  , "MasterAllocation" : "string"
  , "EmployeeJobGroup" : "string"
  , "EmployeeJobGroup" : "string"
, "DayPoolAllocations" : [ "string" ]
, "AssignedExtra" : [ { "Key" : "string", "Value" : float } ]
  , "Days" : [  
  , "Days" : [  
  { "ForDate" : "string"
  { "ForDate" : "string"
Zeile 78: Zeile 76:
  , "DayRequestKind" : "string"
  , "DayRequestKind" : "string"
  , "DayTotalMinutesComputed" : "float"
  , "DayTotalMinutesComputed" : "float"
, "DayPoolAllocations" : [ "string" ]
, "AssignedExtra" : [ { "Key" : "string", "Value" : float } ]
  , "DayIntervals" : [  
  , "DayIntervals" : [  
  { "From" : "string"
  { "From" : "string"

Version vom 12. November 2020, 08:40 Uhr


Es gibt auch eine Variante als Export-Schnittstelle.

Konfiguration für Config-File:

, "httpServicePlugins" :
 { "0" : "Bfx.Alex.AccountsReport.DayInterval.Model.dll"
 }
, "serverDaemonPlugins" :
 { "0" : "Bfx.HTTP.Server.dll"
 }

Aufruf

http://IP:PORT/EmployeeDayIntervals?PARAMETER
  • IP: Wie im ALEX-Config-File eingestellt
  • HTTP-Server-PORT: Wie im ALEX-Config-File eingestellt
  • PARAMETER:
    • Ressourcen können folgendermaßen angegeben werden
      • "allEmployees": gesamtes Personal
      • "id": Personalnummer
      • "planCode": Kurzzeichen von Plan
      • "resourcesBson": eine Zusammenfassung von Plan Kurzzeichen und Personalnummer zum Beispiel: "?resourcesBson={"employeeIDs":["E1","E2","E3"],"planCodes":["P1","P2","P3"]}"
    • "begin": Begin-Datum des Datenauszuges Format "DD.MM.YYYY"
    • "end": Ende-Datum des Datenauszuges Format "DD.MM.YYYY"
    • "allstates": Statusdaten für alle aktuellen Status: Planung -> Planung, Ist -> Planung und Ist

Sicherer Link-Aufruf

In den Systemeinstellungen kann unter den "WebApiServer Einstellungen" ein Key generiert werden. Dieser Key muss dann bei jedem Aufruf beim HTTP-Server mit `?WebApiServerKey=<generierter Key>` mitgegeben werden. Der Key kann nicht mehr verändert werden.

Parameter auf "ja" setzen und "Ausführen" klicken, dann wird Key hinterlegt.

Key.png

Beispiel:

http://localhost:4480/EmployeeDayIntervals?id=20&begin=05.12.2017&end=07.12.2017&WebApiServerKey=xxxx-xxxx-xxxx-xxxx-xxxx

Beispiele

Alle Tagesinformationen von gesamten Personal von 05.12.2017 bis einschließlich 07.12.2017:

http://localhost:4480/EmployeeDayIntervals?allEmployees=true&begin=05.12.2017&end=07.12.2017

Alle Tagesinformationen von Personal mit Personalnummer "20" von 05.12.2017 bis einschließlich 07.12.2017:

http://localhost:4480/EmployeeDayIntervals?id=20&begin=05.12.2017&end=07.12.2017

Alle Tagesinformationen von Personal auf Plan "X" von 01.12.2017 bis einschließlich 31.12.2017:

http://localhost:4480/EmployeeDayIntervals?planCode=X&begin=01.12.2017&end=31.12.2017

Alle Tagesinformationen von Personal "E1", "E2", "E3" und Personal auf Plänen "P1", "P2", "P3" von 01.12.2017 bis einschließlich 31.12.2017:

http://localhost:4480/EmployeeDayIntervals?begin=01.12.2017&end=31.12.2017&resourcesBson={"employeeIDs":["E1","E2","E3"],"planCodes":["P1","P2","P3"]}

Alle Tagesinformationen von Personal mit Personalnummer "20" von 05.12.2017 bis einschließlich 07.12.2017, alle Status:

http://localhost:4480/EmployeeDayIntervals?id=20&begin=05.12.2017&end=07.12.2017&allstates=true

Ergebnis

Tagesinformation im JSON-Format UTF8 codiert in der Form:

{ "Employees" : [
	 { "EmployeeID" : "string"
	 , "Surname" : "string"
	 , "Forename" : "string"
	 , "MasterAllocation" : "string"
	 , "EmployeeJobGroup" : "string"
	 , "Days" : [ 
		{ "ForDate" : "string"
		, "ForState" : "string"
		, "TextCategory" : "string"
		, "InfoText" : "string"
		, "DayPlanSymbol" : "string"
		, "DayShift1" : "string"
		, "DayShift2" : "string"
		, "DayRequestKind" : "string"
		, "DayTotalMinutesComputed" : "float"
		, "DayPoolAllocations" : [ "string" ]
		, "AssignedExtra" : [ { "Key" : "string", "Value" : float } ]
		, "DayIntervals" : [ 
			{ "From" : "string"
			, "To" : "string"
			, "DayIntervalPlanSymbol" : "string" 
		        , "DayIntervalInfoTextCategory" : "string"
			, "DayIntervalInfoText" : "string" 
			, "DayIntervalAssignedEvents" : [ "string" ] 
			}
		]}
	]}
]}

Glossar:

  • Employees: Array aller Personen
  • EmployeeID: Personalnummer
  • Surname: Zuname
  • Forename: Vorname
  • MasterAllocation: Stammplanungseinheit
  • EmployeeJobGroup: Berufsgruppe
  • Days: Array aller Tage
  • ForDate: Datum von Tag
  • ForState: Status von Tag
  • InfoText: Text auf Tag
  • DayPlanSymbol: Abwesenheit auf Tag (nur Planungscodes mit Typ "Abwesenheit")
  • DayShift1: Dienst 1 auf Tag
  • DayShift2: Dienst 2 auf Tag
  • DayRequestKind: Aufgabe auf Tag
  • DayTotalMinutesComputed: Total in Minuten aus Status
  • DayPoolAllocations: Array aller Poolzuteilungen an diesem Tag
  • AssignedExtra: Array aller Sonderabrechnung/Wert-Paare an diesem Tag
  • DayIntervals: Array aller Kommt/Geht-Zeiten
  • From: Komme
  • To: Gehe
  • DayIntervalPlanSymbol: Abwesenheit auf Kommt/Geht (nur Planungscodes mit Typ "Abwesenheit")
  • DayIntervalInfoText: Text auf Kommt/Geht
  • DayIntervalAssignedEvents: Array von Aufgaben

Beispiel

Datei:EmployeeDayIntervalsExample.txt