Nichts steht still in IT. Und am wenigsten bei den Druckerherstellern und Entwicklern bei Zebra Technologies, die sich besonders bemüht haben, in den letzten Jahren Funktionen zu ihrem Zebra-Etikettendrucker-Sortiment hinzuzufügen. Diese neuen Möglichkeiten erleichtern es wesentlich, gesicherte Zustellung und Fehlertoleranz zu implementieren. Wir werden uns die hinzugefügten Funktionen im Detail anschauen, erklären, warum sie im Output-Management nützlich sind und wie Sie sie durch den Gebrauch der VPSX-Software wirksam einsetzen können.
Zebra-Thermodrucker weisen einen kleinen Druckerpuffer auf und drucken langsam im Vergleich zu Laserdruckern. Vor den jüngsten Verbesserungen wurden beim Senden von Großaufträgen an Zebra-Etikettendrucker standardmäßig TCP-Window Reduktionstechniken verwendet, um zu verhindern, dass mehr Daten gesendet werden als der Drucker puffern kann. Dies bedeutet, dass für größere Aufträge Daten von der EOM-Software länger brauchten, um zu einem Etikettendrucker zu gelangen als es bei einem Laserdrucker der Fall gewesen wäre. (Dieses Problem ist übrigens nicht auf Zebra-Etikettendrucker beschränkt; ein typischer Intermec-Etikettendrucker, SATO-Etikettendrucker oder sonstige Barcode-Etikettendrucker weisen dasselbe Problem auf.)
Um aus der VPSX-Perspektive sicherzustellen, dass wir jedes Daten-Byte im Druckauftrag haben, müssen wir das finale ACK („Acknowledgement“) vom Drucker erhalten. Dies bedeutet, dass die TCP-Verbindung sowohl von der VPSX-Software als auch vom Druckgerät geschlossen wurde. Ein Zebra-Thermodrucker tut dies NUR, wenn ein Druckauftrag erfolgreich erledigt wurde. Wenn es ein Unterstützungsproblem für den Zebra-Drucker gibt und die Etiketten nicht ausgedruckt werden können, muss die LRS-Software irgendwie informiert werden. Und wenn das Problem während des Druckens auftritt und bestehen bleibt, müssen wir die Etiketten erneut senden. Bei nicht permanenten Problemen müssen wir einfach nur warten, bis wir mehr Daten senden können. Diese Situation wird gewöhnlich vom TCP-Fenster gehandhabt. Bei permanenten Fehlern hängen wir wieder von TCP ab; der Drucker sollte die TCP-Verbindung ZURÜCKSETZEN und die EOM-Lösung darüber informieren, dass der Socket anormal geschlossen wurde, bevor der Druck beendet werden konnte.
Eine andere nützliche Funktion hilft dabei, Zebra-Druckerprobleme zu verhindern: Sie können einen ZPL-Host-Statusbefehl an den Drucker senden, und dieser sollte mit seinem Printer-Engine-Status antworten (z. B. „Ready“, „Hood Up“, „OFFLINE“, „Ribbon Out“). Dabei handelt es sich um etwas, das wir VOR dem Senden der Druckdaten überprüfen können.
Um in korrekter Weise solche längeren Drucksitzungen zu handhaben, müssten Sie die folgenden Schritte ausführen, wenn Sie den Drucker konfigurieren. Zuerst sollten Sie die ZPL (Abkürzung für „Zebra Programming Language“, nicht für „Zebra Printer Label“) in der VPSX-Druckerdefinition spezifizieren. Danach sollte TCP-Keepalives im Betriebssystem eingeschaltet werden, und die TCP-Missing-Response sollte auf eine angemessene Sekundenzahl eingestellt werden. Außerdem müssen wir alle zwischengeschalteten internen Firewalls überprüfen, da Firewalls die unschöne Angewohnheit haben, halbgeschlossene Verbindungen nach einer bestimmten Zeit zu verwerfen (halbgeschlossen ist das, was passiert, wenn VPSX das Senden aller Daten abgeschlossen hast und auf die finale ACK vom Drucker wartet). Firewalls löschen dann stillschweigend alle Pakete (vom oder zum Drucker), sobald sie eine halbgeschlossene Verbindung verworfen haben. Somit müssen wir wieder die Firewall-Administratoren auffordern, die Zeitdauer einzustellen, nach der die Firewall die Verbindung verwirft. Sie muss unter unserer TCP MRD Einstellung liegen und es muss mit dem Kunden vereinbart werden, dass nach einer spezifizierten Anzahl von Minuten, OHNE ETWAS vom Drucker zu hören, wir annehmen dürfen, dass die Verbindung unterbrochen ist.
Und schließlich ist es bei allen langsamen Druckern mit einem kleinen Puffer bei Verwendung eines WAN IP Optimizer erforderlich, den Drucker-Endpunkt aus der Optimierung auszuschließen. Wenn Sie dies nicht tun, erzeugt der Optimizer TCP-Antworten, um den WAN-Durchsatz zu optimieren und die Anzahl offener Verbindungen zu minimieren. Diese Optimierungen zeigen ein falsches Bild des tatsächlichen Druckerstatus und können dazu führen, anzunehmen, dass ein Auftrag korrekt ausgedruckt worden ist, wenn es tatsächlich nicht der Fall war. Dies sind nur einige Dinge, über die Sie während des Prozesses der Fehlerbehebung für den Zebra-Drucker nachdenken müssen.
Was bringt uns dies aus einer praktischen Perspektive heraus? Um einen erfolgreichen Prozess sicherzustellen, müssen wir alles in einem Druckauftrag ausdrucken. In diesem Fall jedoch (wie in jedem anderen LPR- oder Socket-basierten Druckprotokoll) haben wir kein anderes Feedback als „fertig“. Obwohl wir einen Auftrag erneut senden können, falls er nicht ausgedruckt worden ist, können wir diesen Auftrag nicht auf der richtigen Seite neustarten, da der Drucker uns nie mitgeteilt hat, welche Seiten er gedruckt hat. Auch ist unsere Mitteilung von Fehlern, die auf dem Druckerdisplay erscheinen, (und in unserer Web UI) eingeschränkt, da es keine Status-Aktualisierung gibt.
Wenn Sie also absolut sicher sein möchten, dass alle Etiketten einmal und nur einmal ausgedruckt worden sind, müssten Sie jedes einzelne Etikett als eigenen Auftrag senden. Wenn Sie dies nicht tun, hat nach einem permanenten Druckerfehler die VPSX-Software keine Wahl als ALLE Etiketten des Auftrags erneut zu senden, und Ihr Bediener muss den vorherigen unvollständigen Druckauftrag löschen.
Neu und verbessert
Wie ich schon sagte, steht bei IT die Zeit nicht still, und Zebra-Technologieingenieure haben zwei neue Funktionen in ihre moderneren Zebra-Etikettendrucker ZT610 und ZT411 eingeführt. Zuerst haben sie die SNMP MIB für den Druck hinzugefügt und korrekterweise die Host-MIB mit aktuellem Fehlerstatus und Meldungen aktualisiert. Dies bedeutet, dass man die SNMP-Flag in der Druckerdefinition einschalten kann und man sicher sein kann, dass aktuelle Meldungen über den Gerätestatus erhalten werden. Zweitens fügten sie PJL-Statusfeedback pro Seite und Gerät hinzu, was eine Zweiwege-Konversation mit dem Drucker ermöglicht sowie ein Keepalive auf Applikationsebene (keine Notwendigkeit von TCP-Keepalives). Es liefert auch Statusfeedback für jedes Etikett (Seite), die physisch ausgedruckt worden ist. Um diese Funktionen zu nutzen, muss der Drucker einfach konfiguriert werden, um eine TCPIP/PJL-Verbindung mit eingeschalteter SNMP-Flag zu verwenden. Beachten Sie, indem dass die Konversation niemals in den „halbgeschlossenen“ Status übergeht, wir auch eine Menge Firewall-Probleme vermeiden. Das ist eine Herausforderung weniger, der man sich stellen muss.
Wir können nun zuverlässig die Druckaufträge erneut von der richtigen Seite aus starten, wenn dies erforderlich ist, und auch den Druckerstatus an VPSX weiterleiten. Als Ergebnis können Sie Hunderte von Etiketten in einem Auftrag an den Drucker senden, und wenn der Auftrag bei der Hälfte unterbrochen wird, kann ein moderner Zebra-Etikettendrucker den Druck wieder an der letzten Seite beginnen, von der er uns Feedback zurückgegeben hat. Da echte Zweiwege-Kommunikation verwendet wird (nicht nur TCP-Flags), wird der Status der TCP-Verbindung ständig Information über den Druckerstatus an VPSX senden. Was noch wichtiger ist, weil dies auf Applikationsebene erfolgt, gibt es keine Interferenzen seitens des WAN-Optimizers.
Welches sind echte Benutzerfälle für diesen Typ von Zebra-Druckerunterstützung? Wir bekommen jeden Tag neue. Zebra-Etikettendrucker, Intermec-Etikettendrucker und solche von anderen Händlern sind stark in Shopfloor-Produktions- und Logistikprozesse involviert. Fast jeder Hersteller und/oder fast jede Versandabteilung verwendet sie in kritischen Geschäftsprozessen. Leider behandeln die Bediener solche Drucker nicht sorgsam, sodass wir Höchstleistungen erbringen müssen, um die geforderten Ergebnisse bereitzustellen.
Fall eins: Die Person im Warenlager, die für das Drucken von Etiketten verantwortlich ist und für das Nachfüllen der Druckerverbrauchsmaterialien, schaltet den Drucker aus, wenn er nachmittags nach Hause geht. Wenn er zurückkommt, erwartet er, dass der Drucker seine Arbeit dort fortsetzt, wo er sich unterbrochen hat. Der Drucker befindet sich in China.
Problem: China hat seine eigene obligatorisch regierungsgewartete Firewall, über die keine externe Seite Kontrolle hat. Als Ergebnis KÖNNEN die erforderlichen Firewalleinstellungen NICHT durchgeführt werden.
Lösung: Um diese Probleme zu lösen, könnte ein internationales Unternehmen entweder eine On-Premise-Satelliten-VPSX-Instanz haben oder eine in China basierte Cloud. Als Alternative könnte einfach ein PJL-kompatibler Zebra-Drucker erworben werden.
Fall zwei: Ein Kunde druckt Etiketten in den Produktionslinien und bemerkt, dass es gelegentlich lange Verzögerungen gibt, bevor der Ausdruck startet. Dies führt dazu, dass einige Druckaufträge zweimal oder nicht vollständig ausgedruckt werden.
Lösung: Untersuchen Sie sorgfältig die Pakete, die vom Drucker an BEIDEN Enden der Verbindung erzeugt wurden (an der VPSX-Netzwerkschnittstelle und am Druckerport im Warenlager) und senden Sie die Ergebnisse an LRS-Support. Durch das „Spurenlesen“ kann LRS feststellen, dass nicht nur die Firewall halbgeschlossene Verbindungen verworfen hat, sondern der WAN-Optimizer TCP-Keepalives beantwortet hat sowie die finale ACK gesendet hat, auch wenn der Drucker nicht in der Lage war, das Ende des Auftrags zu bestätigen.
Meine Nachricht für heute ist dies: Achten Sie sorgfältig auf langsame, kritische Zebra-Etikettendrucker, insbesondere ältere Modelle ohne moderne Funktionen wie SNMP und PJL. Durch sorgfältige Konfigurierung dieser Geräte können Sie zufriedenstellende Ergebnisse erzielen. Und wenn Sie Ihre Flotte aktualisieren, wäre es ratsam, Drucker mit diesen SNMP- und PJL-Funktionen zu kaufen. Sie werden Ihre Ergebnisse erheblich verbessern. Wird dies auf geschäftskritisches Drucken angewendet, wird es sicherlich Ihren Nettoprofit erhöhen.
Beste Wünsche aus dem Odenwald