HVS32 PSI REST Schnittstelle (Automatik-Polling)

Aus Wiki - Heidler Strichcode GmbH
Zur Navigation springen Zur Suche springen

Voraussetzungen

DGS-Version 3.8.4 oder höher
DGS-Plugins HVS32Client, PSI-Server

Die PSI-Schnittstelle ist anhand den vorgaben der PSI Software AG umgesetzt worden. Zur Umsetzung standen folgende Dokumentationen zur Verfügung:

  • PSIwms WebService Interface, Version 1.2 (26.02.2021)
  • PSIwms Schnittstelle zum Versandsystem, Version 2021 (23.07.2020)

Funktionsbeschreibung

Bei der PSI-REST-Schnittstelle stellt der DataGatewayServer (DGS) einen REST-Server mit nur einer Funktion ( /request ) zur Verfügung. Über diese Funktion kann das PSI-System verschiedene Telegramme übermitteln. Die auszuführende HVS32-Funktion wird dabei über den Parameter MsgNam gesteuert, welcher in jedem Telegram vorhanden ist.

Der DGS ist die zentrale Kommunikationseinheit, über die sämtliche Daten zwischen dem Versandsystem und dem SAP-System ausgetauscht werden. Er läuft in Form eines Dienstes auf einem Windows-Server.

Ablauf

  • Das PSI-System bereitet das Telegramm vor und übermittelt dieses über die REST-Schnittstelle an den DataGatewayServer (DGS)
  • Der DGS quittiert den Erhalt des Telegrammes
  • Im DGS wird das Telegramm für die Verarbeitung im HVS32 vorbereitet. Bei einer Druckanfrage wird jedes Packstück in eine separate Verbuchungsanfrage gesplittet und sequenziell verarbeitet.
  • Bei einer Verbuchungsanfrage werden die Daten im HVS32 zuerst nur verbucht. Es wird noch kein Etikett erzeugt.
  • Bei jeder Anfrage wird geprüft, ob eine HVS32 Station mit dem DGS verbunden ist. Sollte keine Station verbunden sein, so wird die Anfrage mit einem Fehler quittiert und somit auch das komplette Telegramm.
  • Bei einer Verbuchungsanfrage werden alle bereits verbuchten Packstücke aus diesem Telegramm im HVS32 storniert und das Hostsystem mit einer "Alarmmeldung" benachrichtigt.
  • Wenn eine HVS32 Station verbunden ist, so wird die Anfrage an die nächste freie Station weitergeleitet, in welcher die Anfrage verarbeitet wird.
  • Sollte es sich um eine Verbuchungsanfrage handeln und in diesem Prozess ein Fehler auftreten, so werden wie oben beschrieben alle Packstücke aus diesem Telegramm storniert und es erfolgt eine Alarmmeldung.
  • Erst nachdem alle Verbuchungsanfragen erfolgreich verarbeitet worden sind, werden Druckanfragen erzeugt und erneut an das HVS32 gesendet. Erst hier werden die Etiketten gedruckt. Dies verhindert, die Ausgabe von Etiketten, welche im Fehlerfall automatisiert storniert werden müssten.
  • Sollte in diesem Druck-Prozess ein Fehler auftreten, erfolgt eine Alarmmeldung. An dieser Stelle werden keine Packstücke mehr storniert, da diese bereits gedruckt und auf einem Packstück aufgebracht sein könnten.
  • Der DGS sammelt die Rückmeldungen der einzelnen Anfragen innerhalb eines Telegrammes und meldet die Rückmeldedaten aus dem HVS32 gesammelt in dem vorgesehenen Telegramm ans Hostsystem zurück.
  • Sollte die Rückmeldung fehlschlagen, z.B. weil das Hostsystem zu diesem Zeitpunkt nicht erreichbar ist, kann ein entsprechendes Fehlerhandling im DGS getriggert werden. Wie dieses Handling jedoch auszusehen hat, bzw. ob es überhaupt benötigt wird, ist noch unbekannt.

Notwendige Konfigurationsparameter

Folgende Parameter werden für die Einrichtung der PSI-REST-Schnittstelle benötigt:

Parameter Beschreibung
Port Port, unter welchem der DGS die PSI-REST-Schnittstelle zur Verfügung stellt
PSI-Telegram Versionsnr. Versionsnr., welche vom PSI-System in jedem Telegram als VersionsNr übermittelt wird
REST Endpoint PSI-System REST Endpoint, worüber das PSI-System für die asynchrone Rückmeldung erreichbar ist

Verfügbare HVS32 Funktionen

Bitte beachten Sie, dass die Feld-Beschreibungen sich nur auf einen Standard beziehen, welcher als Vorschlag für die Schnittstelle dienen soll. Funktionsnamen, Feldnamen /-längen /-formate können prinzipiell abweichen, müssen in diesem Fall jedoch individuell betrachtet/analysiert werden.

Packstück-Verarbeitung (VersandDatenAnfrage) [Telegram=Auftrag]

Die Gatewayfunktion VersandDatenAnfrage wird vom Data-Gateway-Server im Automatik-Polling Modus an das HVS32 gesendet, um dort ein Etikett für ein Packstück zu erzeugen und verbuchen. Ein Etikett wird für alle weiteren Funktionen wie Storno, Verladefreigabe, etc. anhand der hostseitigen Packstück-ID identifiziert. Diese wird im Feld PackstueckID übergeben und muss dementsprechend innerhalb des Versandsystems eindeutig sein.

Schnittstellen-Feld-Beschreibung

Packstück verladen/freigeben (VerladeVersandDaten) [Telegram=Verlademeldung]

Die Gatewayfunktion VerladeVersandDaten wird vom Data-Gateway-Server im Automatik-Polling Modus an das HVS32 gesendet, um dort Packstücke für den Ausgang frei zu geben. Nur Packstücke, welche für den Ausgang freigegeben wurden, werden für den Tagesabschluss berücksichtigt.

Schnittstellen-Feld-Beschreibung

Packstück Nachdrucken (VersandDatenNachdruckAnfrage) [Telegram=Nachdruck]

Die Gatewayfunktion VersandDatenNachdruckAnfrage wird vom Data-Gateway-Server im Automatik-Polling Modus an das HVS32 gesendet, um dort ein Etikett für ein Packstück nachzudrucken. Ein Etikett wird anhand der hostseitigen Packstück-ID nachgedruckt. Diese wird im Feld PackstueckID übergeben. Bei manchen Frachtführern (z.B. DPD) werden beim Nachdruck neue Trackingnummern vergeben. Somit ist die alte Trackingnummer nicht mehr gültig und das alte Versandetikett muss vernichtet werden. Die neue Trackingnummer kann in der Rückmeldung zurückgemeldet werden.

Schnittstellen-Feld-Beschreibung

Packstück stornieren (StornoVersandDaten) [Telegram=Auftrag Storno]

Die Gatewayfunktion StornoVersandDaten wird vom Data-Gateway-Server im Automatik-Polling Modus an das HVS32 gesendet, um dort bestehende Packstücke zu stornieren, die noch nicht auf einer Ausgangsliste sind. In der Regel wird ein Packstück anhand der hostseitigen Packstück-ID storniert. Diese wird im Feld PackstueckID übergeben. Zusätzlich zur hostseitigen Packstück-ID kann auch die TrackingNr zur Identifikation des Packstücks beitragen, für den Fall, dass die hostseitige Packstück-ID keine Eindeutigkeit garantieren kann.

Schnittstellen-Feld-Beschreibung