VenDoc Schnittstelle: Unterschied zwischen den Versionen

Keine Bearbeitungszusammenfassung
 
(24 dazwischenliegende Versionen von einem anderen Benutzer werden nicht angezeigt)
Zeile 1: Zeile 1:
{{AlexBildDunkel
|
'''ACHTUNG: nicht in Verwendung'''
|[[Bild:ApothekeralexMiraculix.png|300px]]
|}}
Um die Kommunikation zwischen [https://www.prakom.net/de/produkte/vendoc VenDoc] und ALEX robust abzuhandeln, werden klare organisatorische Abläufe und funktionelle Zuständigkeiten festgelegt. Darauf aufbauend ist die technische Umsetzung beschrieben.
Um die Kommunikation zwischen [https://www.prakom.net/de/produkte/vendoc VenDoc] und ALEX robust abzuhandeln, werden klare organisatorische Abläufe und funktionelle Zuständigkeiten festgelegt. Darauf aufbauend ist die technische Umsetzung beschrieben.


Zeile 38: Zeile 47:
Dabei helfen ihm Werkzeuge wie [[Standeskontrolle]] und [[Besetzungs-Report]].
Dabei helfen ihm Werkzeuge wie [[Standeskontrolle]] und [[Besetzungs-Report]].


Ist die Datenlage geprüft und für richtig befunden, ist der Tag für die Zeiterfassung in ALEX abzuschließen (siehe [[Supervisorenschulung_WEB]]).
Ist die Datenlage geprüft und für richtig befunden, ist der Tag für die Zeiterfassung in ALEX abzuschließen (siehe [[Supervisorenschulung_WEB]]). Es können dabei natürlich auch mehrere Tage auf einmal abgeschlossen werden.


Damit VenDoc die Intervalle leicht weiter verarbeiten kann, werden die Intervalle gruppiert nach Personal, aufsteigend sortiert nach "Von" Zeitpunkt übergeben. Zusätzliche Garantie: Pro Personal und Zeitpunkt gibt es nur EIN Intervall (= Unique Key).
Damit VenDoc die Intervalle leicht weiter verarbeiten kann, werden die Intervalle gruppiert nach Personal, aufsteigend sortiert nach "Von" Zeitpunkt übergeben. Zusätzliche Garantie: Pro Personal und Zeitpunkt gibt es nur EIN Intervall (= Unique Key).


=== Beispiel 1 ==
Im Ergebnis der Abfrage finden sich alle korrekt verarbeiteten Intervalle.
 
=== Beispiel 1 ===
 
Ergebnis zum Zeitpunkt 2010.12.20 00:00 für Abfragezeitraum 2019.12.18 00:00 - 2019.12.20 00:00
 
{| class="wikitable"
|-
! Personal ID !! von !! bis !! Auftrag !! Tätigkeit
|-
| 10 || 2019.12.18 08:30 || 2019.12.18 12:00 || 111 || 1
|-
| '''10''' || '''2019.12.18 13:00''' || 2019.12.18 17:00 || 444 || 2
|-
| 11 || 2019.12.18 08:30 || 2019.12.18 12:00 || 111 || 1
|-
| 11 || 2019.12.18 13:00 || 2019.12.18 17:00 || 444 || 2
|-
| 10 || 2019.12.19 08:15 || 2019.12.19 12:30 || 999 || 3
|-
| 10 || 2019.12.19 13:00 || 2019.12.19 17:00 || 999 || 1
|-
| 10 || 2019.12.20 08:30 || 2019.12.20 12:00 || 111 || 1
|-
| 10 || 2019.12.20 13:00 || 2019.12.20 17:00 || 444 || 2
|}


Am  2019.12.20 werden diese Daten erfasst


=== Beispiel 2 ==
{| class="wikitable"
|-
! Personal ID !! von !! bis !! Auftrag !! Tätigkeit
|-
| 10 || 2019.12.20 08:30 || 2019.12.20 12:00 || 111 || 1
|-
| 10 || 2019.12.20 13:00 || 2019.12.20 17:00 || 444 || 2
|}
 
und die Zeile
 
{| class="wikitable"
|-
! Personal ID !! von !! bis !! Auftrag !! Tätigkeit
|-
| '''10''' || '''2019.12.18 13:00''' || 2019.12.18 '''17:00''' || 444 || 2
|}
 
auf
 
{| class="wikitable"
|-
! Personal ID !! von !! bis !! Auftrag !! Tätigkeit
|-
| '''10''' || '''2019.12.18 13:00''' || 2019.12.18 '''17:30''' || 444 || 2
|}
 
geändert.
 
Ergebnis zum Zeitpunkt 2010.12.21 00:00 für Abfragezeitraum 2019.12.18 00:00 - 2019.12.21 00:00
 
{| class="wikitable"
|-
! Personal ID !! von !! bis !! Auftrag !! Tätigkeit
|-
| 10 || 2019.12.18 08:30 || 2019.12.18 12:00 || 111 || 1
|-
| '''10''' || '''2019.12.18 13:00''' || 2019.12.18 '''17:30''' || 444 || 2
|-
| 11 || 2019.12.18 08:30 || 2019.12.18 12:00 || 111 || 1
|-
| 11 || 2019.12.18 13:00 || 2019.12.18 17:00 || 444 || 2
|-
| 10 || 2019.12.19 08:15 || 2019.12.19 12:30 || 999 || 3
|-
| 10 || 2019.12.19 13:00 || 2019.12.19 17:00 || 999 || 1
|-
| 10 || 2019.12.20 08:30 || 2019.12.20 12:00 || 111 || 1
|-
| 10 || 2019.12.20 13:00 || 2019.12.20 17:00 || 444 || 2
|}
 
=== Beispiel 2 ===
 
Ergebnis zum Zeitpunkt 2010.12.20 00:00 für Abfragezeitraum 2019.12.01 00:00 - 2019.12.20 00:00
 
{| class="wikitable"
|-
! Personal ID !! von !! bis !! Auftrag !! Tätigkeit
|-
| 10 || 2019.12.18 08:30 || 2019.12.18 12:00 || 321|| 1
|-
| 10 || 2019.12.18 13:00 || 2019.12.18 17:00 || 321 || 2
|}
 
Am 20.12.2020 09:00 wird dieses Interval
 
{| class="wikitable"
|-
! Personal ID !! von !! bis !! Auftrag !! Tätigkeit
|-
| '''10''' || '''2019.12.18 13:00''' || 2019.12.18 17:00 || 321 || 1
|}
 
durch diese ersetzt:
 
{| class="wikitable"
|-
! Personal ID !! von !! bis !! Auftrag !! Tätigkeit
|-
| '''10''' || '''2019.12.18 12:45''' || 2019.12.18 14:30 || 587 || 2
|-
| '''10''' || '''2019.12.18 14:30''' || 2019.12.18 18:15 || 321 || 2
|}
 
Ergebnis zum Zeitpunkt 20.12.2020 09:01 für Abfragezeitraum 2019.12.01 00:00 - 2019.12.20 00:00
 
{| class="wikitable"
|-
! Personal ID !! von !! bis !! Auftrag !! Tätigkeit
|-
| 10 || 2019.12.18 08:30 || 2019.12.18 12:00 || 321 || 1
|-
| 10 || 2019.12.18 12:45 || 2019.12.18 14:30 || 587 || 2
|-
| 10 || 2019.12.18 14:30 || 2019.12.18 18:15 || 321 || 2
|}


== Materialbuchungen ==
== Materialbuchungen ==
Zeile 51: Zeile 182:
Die Materialbuchungen werden in ALEX nur erfasst und nicht geändert. Korrekturen sind als Minus in einer neuen Buchungen mit neuem Zeitstempel zu erfassen.
Die Materialbuchungen werden in ALEX nur erfasst und nicht geändert. Korrekturen sind als Minus in einer neuen Buchungen mit neuem Zeitstempel zu erfassen.
Materialbuchungen können jederzeit von VenDoc für einen beliebigen Zeitraum abgefragt werden.
Materialbuchungen können jederzeit von VenDoc für einen beliebigen Zeitraum abgefragt werden.
=== Beispiel 1 ===
Ergebnis zum Zeitpunkt 2010.12.20 00:00 für Abfragezeitraum 2019.12.01 00:00 - 2019.12.20 00:00
{| class="wikitable"
|-
! RecordID !! Personal ID !! um !! Auftrag !! Menge !! Artikel !! Lager !! Text
|-
| 1 || 4711 || 2019.12.18 08:30 || 0815 || '''100''' || 1 ||  ||
|}
Wird am 2010.12.20 08:30 erkannt, dass die '''100''' ein Erfassungsfehler sind, weil nur '''10''' Artikel '1' ausgehoben wurden und die Buchung korrigiert, so sieht das Abfrageergebnis um 2010.12.20 08:31 so aus:
{| class="wikitable"
|-
! RecordID !! Personal ID !! um !! Auftrag !! Menge !! Artikel !! Lager !! Text
|-
| 1 || 4711 || 2019.12.18 08:30 || 0815 || '''100''' || 1 ||  ||
|-
| 2 || 4711 || 2010.12.20 08:30 || 0815 || '''-90''' || 1 ||  ||
|}


== Infobuchungen ==
== Infobuchungen ==

Aktuelle Version vom 8. April 2021, 09:30 Uhr

ACHTUNG: nicht in Verwendung

ApothekeralexMiraculix.png


Um die Kommunikation zwischen VenDoc und ALEX robust abzuhandeln, werden klare organisatorische Abläufe und funktionelle Zuständigkeiten festgelegt. Darauf aufbauend ist die technische Umsetzung beschrieben.

Übersicht

Organisationskonzept

Stammdatenverwaltung

Personaldatenpflege

Die systemübergreifende Identifikation der Personalstammdaten erfolgt über eine von ALEX vergebene eindeutige Nummer. Das Personal wird in ALEX angelegt.

VenDoc holt sich die verwendbaren Eigenschaften (Vor- Zuname, Geb. Datum, Ein/Austritt...) von ALEX.

Es wird immer der gesamte Personalstamm zurück gegeben.

Kunden, Aufträge, Tätigkeiten, Material

Diese Daten werden an ALEX übergeben, und hier nur lesend verwendet.

Die Übergabe der Daten erfolgt vollständig: Alle Sätze, die für ALEX markiert sind, werden in der Schnittstelle übergeben.

In ALEX werden keine Daten gelöscht, sondern nur auf "Abgelaufen" gesetzt.

Verrechnung der erfassten Zeiten

In ALEX gibt es verschiedene Möglichkeiten, Arbeitszeiten eines Mitarbeiters auf Aufträge und Tätigkeiten zuzuordnen:

  • An/Abmeldung über Stempeluhr
  • Buchung über App
  • Manuelle Erfassung/Nachbearbeitung durch
    • Selbstbedienung
    • Verantwortlichen

Manuelle Änderungen der Intervalle werden nur in ALEX durchgeführt.

Diese Daten sind in ALEX vom Verantwortlichen zu überprüfen.

Dabei helfen ihm Werkzeuge wie Standeskontrolle und Besetzungs-Report.

Ist die Datenlage geprüft und für richtig befunden, ist der Tag für die Zeiterfassung in ALEX abzuschließen (siehe Supervisorenschulung_WEB). Es können dabei natürlich auch mehrere Tage auf einmal abgeschlossen werden.

Damit VenDoc die Intervalle leicht weiter verarbeiten kann, werden die Intervalle gruppiert nach Personal, aufsteigend sortiert nach "Von" Zeitpunkt übergeben. Zusätzliche Garantie: Pro Personal und Zeitpunkt gibt es nur EIN Intervall (= Unique Key).

Im Ergebnis der Abfrage finden sich alle korrekt verarbeiteten Intervalle.

Beispiel 1

Ergebnis zum Zeitpunkt 2010.12.20 00:00 für Abfragezeitraum 2019.12.18 00:00 - 2019.12.20 00:00

Personal ID von bis Auftrag Tätigkeit
10 2019.12.18 08:30 2019.12.18 12:00 111 1
10 2019.12.18 13:00 2019.12.18 17:00 444 2
11 2019.12.18 08:30 2019.12.18 12:00 111 1
11 2019.12.18 13:00 2019.12.18 17:00 444 2
10 2019.12.19 08:15 2019.12.19 12:30 999 3
10 2019.12.19 13:00 2019.12.19 17:00 999 1
10 2019.12.20 08:30 2019.12.20 12:00 111 1
10 2019.12.20 13:00 2019.12.20 17:00 444 2

Am 2019.12.20 werden diese Daten erfasst

Personal ID von bis Auftrag Tätigkeit
10 2019.12.20 08:30 2019.12.20 12:00 111 1
10 2019.12.20 13:00 2019.12.20 17:00 444 2

und die Zeile

Personal ID von bis Auftrag Tätigkeit
10 2019.12.18 13:00 2019.12.18 17:00 444 2

auf

Personal ID von bis Auftrag Tätigkeit
10 2019.12.18 13:00 2019.12.18 17:30 444 2

geändert.

Ergebnis zum Zeitpunkt 2010.12.21 00:00 für Abfragezeitraum 2019.12.18 00:00 - 2019.12.21 00:00

Personal ID von bis Auftrag Tätigkeit
10 2019.12.18 08:30 2019.12.18 12:00 111 1
10 2019.12.18 13:00 2019.12.18 17:30 444 2
11 2019.12.18 08:30 2019.12.18 12:00 111 1
11 2019.12.18 13:00 2019.12.18 17:00 444 2
10 2019.12.19 08:15 2019.12.19 12:30 999 3
10 2019.12.19 13:00 2019.12.19 17:00 999 1
10 2019.12.20 08:30 2019.12.20 12:00 111 1
10 2019.12.20 13:00 2019.12.20 17:00 444 2

Beispiel 2

Ergebnis zum Zeitpunkt 2010.12.20 00:00 für Abfragezeitraum 2019.12.01 00:00 - 2019.12.20 00:00

Personal ID von bis Auftrag Tätigkeit
10 2019.12.18 08:30 2019.12.18 12:00 321 1
10 2019.12.18 13:00 2019.12.18 17:00 321 2

Am 20.12.2020 09:00 wird dieses Interval

Personal ID von bis Auftrag Tätigkeit
10 2019.12.18 13:00 2019.12.18 17:00 321 1

durch diese ersetzt:

Personal ID von bis Auftrag Tätigkeit
10 2019.12.18 12:45 2019.12.18 14:30 587 2
10 2019.12.18 14:30 2019.12.18 18:15 321 2

Ergebnis zum Zeitpunkt 20.12.2020 09:01 für Abfragezeitraum 2019.12.01 00:00 - 2019.12.20 00:00

Personal ID von bis Auftrag Tätigkeit
10 2019.12.18 08:30 2019.12.18 12:00 321 1
10 2019.12.18 12:45 2019.12.18 14:30 587 2
10 2019.12.18 14:30 2019.12.18 18:15 321 2

Materialbuchungen

Die Materialbuchungen werden in ALEX nur erfasst und nicht geändert. Korrekturen sind als Minus in einer neuen Buchungen mit neuem Zeitstempel zu erfassen. Materialbuchungen können jederzeit von VenDoc für einen beliebigen Zeitraum abgefragt werden.

Beispiel 1

Ergebnis zum Zeitpunkt 2010.12.20 00:00 für Abfragezeitraum 2019.12.01 00:00 - 2019.12.20 00:00

RecordID Personal ID um Auftrag Menge Artikel Lager Text
1 4711 2019.12.18 08:30 0815 100 1


Wird am 2010.12.20 08:30 erkannt, dass die 100 ein Erfassungsfehler sind, weil nur 10 Artikel '1' ausgehoben wurden und die Buchung korrigiert, so sieht das Abfrageergebnis um 2010.12.20 08:31 so aus:

RecordID Personal ID um Auftrag Menge Artikel Lager Text
1 4711 2019.12.18 08:30 0815 100 1
2 4711 2010.12.20 08:30 0815 -90 1

Infobuchungen

Die Infobuchungen werden in ALEX nur erfasst und nicht geändert. Sie können jederzeit von VenDoc für einen beliebigen Zeitraum abgefragt werden.

Technische Beschreibung

Allgemeines

Je ALEX Installation steht ein Webservice zur Verfügung.

Der Port des Webservice ist via - https://k5.alexweb.io/CustomerPort ersichtlich.

Kommunikation erfolgt über HTTPS Protokoll. An ALEX via "POST", von ALEX via "GET".

Die Daten selbst werden in JSON dargestellt.

Allgemeine Stammdaten von VenDoc an ALEX

  • Auftrag (in ALEX -> 'Kundenplan')
    • VenDoc Primärschlüssel
    • Kunde * VenDoc Primärschlüssel
    • Betreff
    • Status (0 = Offen, 2 = Erledigt)
    • Belegnummer
    • Mitarbeiter Zuordnung (ALEX Primärschlüssel)
  • Tätigkeiten (in ALEX -> Farbmarkierung)
    • VenDoc Primärschlüssel
    • Code
    • Name
  • Material (in ALEX 'Material')
    • VenDoc Primärschlüssel
    • Artikelnummer
    • Bezeichnung
    • Einheit
    • EAN Nummer
    • Warengruppe (VenDoc Primärschlüssel)
  • Lager (in ALEX 'Lager')
    • VenDoc Primärschlüssel
    • Code
    • Name
  • Warengruppe (in ALEX 'Warengruppe')
    • VenDoc Primärschlüssel
    • Code
    • Name
  • Kunde (in ALEX 'Kundenstamm')
    • VenDoc Primärschlüssel
    • Firmenname
    • Inaktiv

Ergebnisse von ALEX an VenDoc

Angestoßen von VenDoc durch Angabe von "Alle" oder "Personal", von/bis, optional nur geprüfte.

  • Zeitbuchungen
    • Unique Key:
      • Personal (ALEX Primärschlüssel)
      • Beginn
    • Ende
    • Auftrag (VenDoc Primärschlüssel)
    • Tätigkeit (VenDoc Primärschlüssel)
    • Lohnart (VenDoc Primärschlüssel)
    • Text
  • Material/Gerätebuchungen
    • ALEX Primärschlüssel der Buchung
    • Personal (VenDoc Primärschlüssel)
    • Zeitpunkt
    • Auftrag (VenDoc Primärschlüssel)
    • Menge
    • Artikel (VenDoc Primärschlüssel)
    • Lager (VenDoc Primärschlüssel)
    • Text
  • Infobuchungen
    • ALEX Primärschlüssel der Buchung
    • Personal (VenDoc Primärschlüssel)
    • Datum
    • Auftrag (VenDoc Primärschlüssel)
    • Titel
    • Text
    • Bild

Personalstammdaten von ALEX an VenDoc

  • Personal
    • Personalnummer
    • Vorname / Nachname
    • Geburtstag
    • Eintritt / Austritt
    • Anschrift
    • Alex Primärschlüssel

In ALEX an VenDoc schicken Ja/Nein einstellen lassen

Konfiguration (*.bfx_CONFIG)

, "modelPlugins" :
{	
....
,"n" : "Bfx.Alex.Logistics.Interface.Model.dll"
....
}