Bfx.Abstract.Model.WebService.dll: Unterschied zwischen den Versionen

Zeile 125: Zeile 125:


  /Set?objectType=Employee&indexQuery=EmployeeIDX&matchString=PNR123&importType=EmployeeEntitlement_Urlaub&valueString=EmployeeRecEntitlementKeyDate%23%23%23%2302.02.2012%26EmployeeRecEntitlementCustomPostingKeyDate%23%23%23%2303.02.2012%26EmployeeRecEntitlementValue%23%23%23%23200,00&keyDate=01.10.2020
  /Set?objectType=Employee&indexQuery=EmployeeIDX&matchString=PNR123&importType=EmployeeEntitlement_Urlaub&valueString=EmployeeRecEntitlementKeyDate%23%23%23%2302.02.2012%26EmployeeRecEntitlementCustomPostingKeyDate%23%23%23%2303.02.2012%26EmployeeRecEntitlementValue%23%23%23%23200,00&keyDate=01.10.2020
EmployeeEntitlement_<span class="col-red">Urlaub</span> → hier muss nach dem _ die Kurzbezeichnung der Anspruchsart gesendet werden
EmployeeRecEntitlementKeyDate → Stichtag der Anspruchszeile
EmployeeRecEntitlementCustomPostingKeyDate → Zubuchungstag der Anspruchszeile
EmployeeRecEntitlementValue → Zusatzanspruch der Anspruchszeile
keyDate → Beginn-Datum der Anspruchszeile (hier gilt aber auch die oben beschriebene Logik bzgl. dem Maximum zwischen keyDate und "Ist bis")<br />


<br />
<br />

Version vom 17. Februar 2022, 18:53 Uhr


Ab Version 2021.16 können beliebige Objekte angelegt und deren Eigenschaften (z.B. Zuname, E-Mail Adressen, etc.) über diese Webservice Schnittstelle geändert werden.


Objekt anlegen

/New
?objectType=<Objekttyp des neuen Objektes>
&indexQuery=<Index für Verifizierung>
&matchString=<Wert für Suche auf Index>
&keyDate=<Stichtag bei zeitlich begrenzbaren Eigenschaften>

Beispiel Personal

Details zur Anlage eines neuen Personals finden Sie hier.

Beispiel Benutzer

Neuer Benutzer mit Username "USER1"

/New?objectType=AlexUser&indexQuery=UserX&matchString=USER1

Objekt ändern

/Set
?objectType=<Objekttyp auf dem geändert wird>
&indexQuery=<Index über den das Objekt gefunden wird>
&matchString=<Wert für Suche auf Index>
&importType=<Eigenschaft die geändert werden soll>
&valueString=<Wert der der Eigenschaft, URL-Encoded>
&keyDate=<Stichtag bei zeitlich begrenzbaren Eigenschaften>

Format für Datum:

DD.MM.YYYY

Ergebnis:

Enthält eine etwaige Fehlermeldung.

Beispiele Personal

Beim Setzen von zeitlich abgrenzbaren Eigenschaften wird der Beginn automatisch begrenzt mit dem 'Ist bis'-Datum der Stammplanungseinheit des Mitarbeiters.

Wird ein keyDate mitgegeben, so wird entweder dieses Datum verwendet oder als Beginn das Maximum zwischen keyDate und "Ist bis" genommen.

Wird kein keyDate mitgegeben, so wird entwerder der 1. des aktuellen Monats genommen oder auch das Maximum zwischen keyDate und "Ist bis".

Beispiel:

  • Dezember 2021 befindet sich im Status IST
  • Jänner 2022 befindet sich im Status Planung
  • "Ist bis" ist somit der 1.1.2022
  • Parameter Zuname wird mit Stichtag 1.3.2022 gesendet
    • Ergebnis: Zuname wird per 1.3.2022 hinterlegt
  • Parameter Zuname wird mit Stichtag 1.11.2021 gesendet
    • Ergebnis: Zuname wird per 1.1.2022 hinterlegt


  • Setzen von Email "test@example.com" bei Personal mit Personalnummer "PNR123"
/Set?objectType=Employee&indexQuery=EmployeeIDX&matchString=PNR123&importType=EmployeeEmailAddress&valueString=test@example.com
  • Setzen von Kartennummer "1234567" bei Personal mit Personalnummer "PNR123" ab 01.01.2020
    • Achtung, ist das "Ist bis" Datum z. B. der 01.03.2020 so würde der Beginn auch erst ab 01.03.2020 gesetzt werden!
/Set?objectType=Employee&indexQuery=EmployeeIDX&matchString=PNR123&importType=EmployeeCardID&valueString=1234567&keyDate=01.01.2020
  • Setzen von Zuname "Mustermann" bei Personal mit Personalnummer "PNR123" ab 01.10.2020
/Set?objectType=Employee&indexQuery=EmployeeIDX&matchString=PNR123&importType=Surname&valueString=Mustermann&keyDate=01.10.2020
  • Setzen von Vorname "Max" bei Personal mit Personalnummer "PNR123"
/Set?objectType=Employee&indexQuery=EmployeeIDX&matchString=PNR123&importType=Forename&valueString=Max
  • Setzen von Beschäftigungsausmaß 62,5% bei Personal mit Personalnummer "PNR123" ab 01.03.2022
/Set?objectType=Employee&indexQuery=EmployeeIDX&matchString=PNR123&importType=EmploymentFactorPercent&valueString=62,5&keyDate=01.03.2022

Beispiele Benutzer

  • Setzen von Email "test@example.com" bei User mit Username "USER1"
/Set?objectType=AlexUser&indexQuery=UserX&matchString=USER1&importType=UserEmail&valueString=test@example.com
  • Setzen von Username "USER1NEU" bei User mit Username "USER1"
/Set?objectType=AlexUser&indexQuery=UserX&matchString=USER1&importType=Username&valueString=USER1NEU

Externe Kennzeichen (Foreign Keys)

Der Import von Externen Kennzeichen (Foreign Keys) ist über die interne ObjectID von ALEX möglich oder über Fremdschlüssel, die zuvor initialisiert werden müssen.

Fremdschlüssel stehen für die gängigsten Objekttypen zur Verfügung:

  • Berufsgruppe
  • Planungseinheit
  • Qualifikation
  • Vertrag
  • Lohnartenumschlüsselung


  • Setzen von Berufsgruppe mit externem Kennzeichen "B1" bei Personal mit Personalnummer "1"
/Set?objectType=Employee&indexQuery=EmployeeIDX&matchString=1&importType=EmployeeJobGroup&valueString=B1
  • Setzen von Planungseinheit mit externem Kennzeichen "P1" bei Personal mit Personalnummer "1"
/Set?objectType=Employee&indexQuery=EmployeeIDX&matchString=1&importType=MasterAllocation&valueString=P1
  • Setzen von Qualifikationen - Beispiel folgt

Eingebettete Objekte (Records)

Der Import von eingebetteten Objekten (Records) ist ebenfalls möglich

Beispiele für eingebettete Objekte:

  • Anspruchszeile am Personal
  • Informationen über Kinder für Pflegefreistellung


  • Setzen von Anspruchszeile bei Personal
/Set?objectType=Employee&indexQuery=EmployeeIDX&matchString=PNR123&importType=EmployeeEntitlement_Urlaub&valueString=EmployeeRecEntitlementKeyDate%23%23%23%2302.02.2012%26EmployeeRecEntitlementCustomPostingKeyDate%23%23%23%2303.02.2012%26EmployeeRecEntitlementValue%23%23%23%23200,00&keyDate=01.10.2020

EmployeeEntitlement_Urlaub → hier muss nach dem _ die Kurzbezeichnung der Anspruchsart gesendet werden

EmployeeRecEntitlementKeyDate → Stichtag der Anspruchszeile

EmployeeRecEntitlementCustomPostingKeyDate → Zubuchungstag der Anspruchszeile

EmployeeRecEntitlementValue → Zusatzanspruch der Anspruchszeile

keyDate → Beginn-Datum der Anspruchszeile (hier gilt aber auch die oben beschriebene Logik bzgl. dem Maximum zwischen keyDate und "Ist bis")


  • Setzen von Kindern beim Personal (max. 7 Kinder sind möglich)

1. Kind: Franz, Geburtstag: 03.02.2012

/Set?objectType=Employee&indexQuery=EmployeeIDX&matchString=PNR123&importType=EmployeeChildren&keyString=0&valueString=ChildName%23%23%23%23Franz%26ChildBirthday%23%23%23%2303.02.2012

2. Kind: Hans, Geburtstag: 03.02.2013

/Set?objectType=Employee&indexQuery=EmployeeIDX&matchString=PNR123&importType=EmployeeChildren&keyString=1&valueString=ChildName%23%23%23%23Hans%26ChildBirthday%23%23%23%2303.02.2013

7. Kind: Karl, Geburtstag: 03.02.2014

/Set?objectType=Employee&indexQuery=EmployeeIDX&matchString=PNR123&importType=EmployeeChildren&keyString=6&valueString=ChildName%23%23%23%23Karl%26ChildBirthday%23%23%23%2303.02.2014

Ausgabe

Json-Objekt in der Form:

{ "request" : "" 
, "status" : ""
, "details" : "" 
}
  • "request": Angeforderter Request als "Handshake"
  • "status": "ok" oder "error"
  • "details": Optionale Detailinformationen bei "error"

File Import

Der Pfad für die Importfiles kann in den Systemeinstellungen in der Gruppe "Object Import Einstellungen" beim Parameter "Eigenschaften-Import Pfad" festgelegt werden.

Die gewünschte Dateierweiterung kann beim Parameter "Eigenschaften-Import Dateierweiterung" eingetragen werden.

Der definierte Ordner wird alle 2 Minuten auf neue Dateien geprüft.

Format für Datei

{
   "objectType": "string",
   "indexQuery": "string",
   "importType": "string",
   "lines": [
       {
           "matchString": "string",
           "valueString": "string",
           "keyDate": "DD.MM.YYYY"
       }
   ]
}

Beispiele Personal

Setzen von Kartennummer "1234567" bei Personal mit Personalnummer "1" ab 01.01.2020.

{
    "objectType": "Employee",
    "indexQuery": "EmployeeIDX",
    "importType": "EmployeeCardID",
    "lines": [
        {
            "matchString": "1",
            "valueString": "1234567",
            "keyDate": "01.01.2020"
        }
    ]
}

Setzen von Email "test@example.com" bei Personal mit Personalnummer "1" ab 01.01.2020.

{
    "objectType": "Employee",
    "indexQuery": "EmployeeIDX",
    "importType": "EmployeeEmailAddress",
    "lines": [
        {
            "matchString": "1",
            "valueString": "test@example.com",
            "keyDate": "01.01.2020"
        }
    ]
}

Setzen von Zuname "Mair" bei Personal mit Personalnummer "1" ab 01.01.2020 und setzen von Zuname "Huber" bei Personal mit Personalnummer "2" ab 01.02.2020.

{
   "objectType": "Employee",
   "indexQuery": "EmployeeIDX",
   "importType": "Surname",
   "lines": [
       {
           "matchString": "1",
           "valueString": "Mair",
           "keyDate": "01.01.2020"
       },
       {
           "matchString": "2",
           "valueString": "Huber",
           "keyDate": "01.02.2020"
       }
   ]
}


Bit Factory interne Zusatzinfos

Aktivierung