Aufkleber Postpaket

In diesem Beispiel soll ein ganz besonderes Konstrukt innerhalb des print2forms-Systems vorgestellt werden - der Vordruck. Die Idee bei Vordrucken ist die, dass man zunächst ein Muster für ein ausgefülltes (!) Formular oder ein Etikett erstellt, und dieses dann durch print2forms ausfüllen lässt. Dazu werden die Platzhalter innerhalb des Formulars entfernt und gegen Nutzdaten aus der gerade zu druckenden Seite ersetzt.

Wenn Sie die Beispielapplikation p2fSample nicht offen gelassen haben, rufen Sie sie jetzt wieder auf und tragen Sie wieder unter Anzahl Lieferscheine eine 1 und unter Artikel pro Lieferschein eine 13 ein. Wählen Sie unter Drucker den mit dem print2forms-Treiber aus und unter Beispiel wählen Sie jetzt Aufkleber Postpaket.

Falls Ihr Drucker über eine Universalzuführung oder eine manuelle Zuführung verfügt, legen Sie dort als Simulation für den Aufkleber DIN-A6 Blätter ein.

Wenn Sie auf die Schaltfläche Drucken klicken, wird der Ausdruck gestartet. Eine kurze Meldung bestätigt dies.

Für die Demo unter OS/400 oder i5/OS rufen Sie entweder den folgenden Befehl

  P2Fsample BEISPIEL(4) LIEFER(1) ARTIKEL(13) 

auf oder Sie tippen nur

  P2Fsample 

drücken F4, und füllen die drei Parameterfelder mit den Werten 4, 1 und 13 aus.

Auf Ihrem Drucker sollte ein Ausdruck ähnlich dem folgenden erscheinen:

Ausdruck Aufkleber Postpaket

Der print2forms-Prozess, der diesem Beispiel zugrunde liegt, hat den Namen ExPaket - Lieferscheine ermitteln und ist im Prinzip wieder ein alter Bekannter. Der Prozess sucht nach den Grenzen von Lieferscheinen und übergibt die gefundenen Lieferscheine an einen Prozess mit dem Namen Paket. Dadurch wird sichergestellt, dass beim Druck mehrerer Lieferscheine hintereinander für jeden Lieferschein ein eigener Aufkleber gedruckt wird. Durch Erhöhen der Zahl der Lieferscheine in der Beispielapplikation kann dies leicht nachvollzogen werden.

Dokuemntenprozess Aufkleber Postpaket

Der Prozess Paket besteht aus zwei Einträgen innerhalb der Seitenfolge, wobei der erste mit dem Wert Nutzdatenseite für Seitentyp bereits signalisiert, dass die Seite nicht gedruckt werden soll, sondern nur zur Lieferung von Nutzdaten dienen soll. Mit der Auswahl des Formulars Paket wird bestimmt, wie die aufgesammelten Nutzdaten gedruckt werden sollen.

Der zweite Eintrag unter Seitenfolge mit dem Namen Ignorieren sorgt dafür, dass eventuell vorhandene weitere Seiten des empfangenen Lieferscheins ignoriert werden. Der Prozess Paket funktioniert daher sowohl mit einseitigen als auch mit mehrseitigen Lieferscheinen.

Druckprozess Aufkleber Postpaket

Bevor nun das Formular Paket näher erläutert wird, soll zum besseren Verständnis in einem kleinen Exkurs erst einmal gezeigt werden, was ein Vordruck ist und wie er in das print2forms-System importiert wird.

Dazu wird eine weitere Komponente des print2forms-Systems benötigt: der Import-Filter. Aus einem Druckertreiber heraus kann keine Kommunikation mit einem Benutzer des Rechners aufgebaut werden, weil der Treiber unter einem Systemkonto läuft. Beim Import der sogenannten Vordrucke muss aber der Benutzer entscheiden, welche Texte im Vordruck als Platzhalter für variable Daten angesehen werden sollen. Deshalb wird der Import-Filter quasi als Relais zwischen das druckende Programm und den Druckertreiber eingeklinkt.

Dazu muss zum ersten die Port-Nummer im Anschluss des Druckers p2f Import abgeändert werden. Setzen Sie dort statt der 9105 eine 9106 ein. Anschliessend starten Sie im Installationsverzeichnis von print2forms im Unterverzeichnis p2fFilter das Programm p2fFilter. Das Import-Filter installiert sich in der Task-Leiste und wartet auf Aufträge.

Für dieses Beispiel wurde mit einem geeigneten Programm, in diesem Fall der Apache OpenOffice-Suite 1) 2) 3), das Etikett, welches als Vordruck verwendet werden soll, entworfen. 4)

Entwurf Aufkleber Postpaket in Open Office

Im Vordruck wurden sieben Platzhalter (einfache Texte) definiert: Identcode, Leitcode, Name, Zusatz, Strasse, Ort und 999 (hinter 'Frachtpostzentrum'). Dies sind im Prinzip ganz normale Texte mit unterschiedlicher Formatierung, was hier etwa Schriftgrösse, Schriftstil und Position betrifft. Diese Formatierung ist insofern von Bedeutung, als sie sich später auf die ersetzten Nutzdaten vererbt.

Um den Vordruck nun in das print2forms-System zu übertragen, wird ein bestimmter Drucker verwendet, ein sogenanntes Import-Gateway - im Rahmen der Demo hat es den Namen p2f Import. Dieses ist aus Sicht des Windows-Systems ein ganz normaler Drucker, der von jedem Programm verwendet werden kann. Das Besondere an diesem Drucker ist aber, dass er in den Druckeigenschaften eine eigene Registerkarte für den Importvorgang besitzt.

Importeinstellungen Aufkleber Postpaket

Auf dieser Registerkarte wird eine zu importierende Ressource ausgewählt oder neu angelegt. Ausserdem enthält die Karte die Informationen zur Anmeldung des Benutzers am print2forms-Server. Hier wird die Ressource Paket im Subcontainer Etiketten zum Überschreiben ausgewählt.

Mit dem Auslösen des Druckvorgangs (aus der Office-Suite heraus) werden die Daten zunächst vom Import-Filter empfangen und ausgewertet. Dabei werden alle Textpassagen des Vordrucks ermittelt und in einem speziellen Fenster angezeigt. Das Fenster öffnet sich automatisch kurz nach dem Start des Druckvorgangs.

Feldzuweisung Aufkleber Postpaket

Hier sind, farblich gekennzeichnet, auch schon die sieben Platzhalter zu erkennen. Diese sind print2forms bekannt, weil es sich um einen Reimport handelt - der Vordruck existierte ja bereits.

Mit einem Klick auf die Schaltfläche Druckdaten werden die vorher (mit einem print2forms-Drucker) aufgezeicheneten Druckdaten eingelesen und ebenfalls auf darin enthaltene Textpassagen untersucht. Wählen Sie für die Demo aus dem Installationsverzeichnis von print2forms im Unterverzeichnis p2fSample die Datei Postpaket.prn. Es erscheint ein zweites Fenster, in dem die in den Druckdaten gefundenen Texte angezeigt werden.

Feldzuweisung Aufkleber Postpaket

Ein Teil der Texte ist ebenfalls eingefärbt, als Zeichen dafür, dass diese Texte einem Platzhalter zugewiesen sind. Ohne jetzt auf den genauen Dialogablauf einzugehen, sei nur gesagt, dass jetzt mit der Maus oder der Tastatur Zuordnungen von Platzhaltern angelegt, angezeigt, verändert oder gelöscht werden können. Die regulären Ausdrücke zur Auswahl der Nutzdaten werden dabei automatisch generiert. 5)

Feldzuweisung Aufkleber Postpaket

Durch die Anzeige in zwei getrennten Fenstern und die automatische Hin- und Herschaltung zwischen ihnen im Laufe des Dialogs können selbst auf kleinen Monitoren mühelos Platzhalter und Nutzdaten schnell und effektiv einander zugewiesen werden. Mehrfachzuweisungen sind möglich. Nutzdaten können mehreren Platzhaltern zugewiesen sein. Auch partielle Überlappungen von Nutzdaten sind kein Problem.

Sind alle Zuordnungen gemacht, veranlasst ein Klick auf die Schaltfläche Import die Weitergabe der Druckdaten und der Zuordnungen an das eigentliche Import-Gateway, welches daraus dann eine entsprechende Ressource aufbaut.

Zurück zum Ablauf des Beispiels. Die eigentliche Formatierung der Druckausgabe erledigt letztendlich das Formular Paket.

Hier fallen zunächst zwei Barcodefelder auf, die benötigt werden, weil auf dem Aufkleber gemäss den Spezifikationen der Post zwei Barcodes aufzubringen sind: ein Leitcode und ein Identcode. Die Inhalte dieser Barcodes sind ebenfalls genau spezifiziert. Der Einfachheit halber wird im Beispiel aber davon ausgegangen, dass die Barcodedaten in den Nutzdaten korrekt formatiert enthalten sind - wenn nicht, besitzt print2forms aber Mechanismen, die Inhalte des Barcodes auch aus vielen verschiedenen Textstellen spezifikationsgemäss zusammenzusetzen.

Formular Aufkleber Postpaket

Wichtig bei beiden Feldern ist die Positionierung, die den Wert Relativ zur Ressource hat. Dies bedeutet, dass die Felder ihre Position aus der Ressource, in diesem Fall der Ressource Paket im Subcontainer Etiketten, erben. In der Ressource, dem eigentlichen Vordruck, gibt es zwei Platzhalter, die auf diese beiden Felder verweisen, und damit deren Position festlegen.

Das wirklich Neue ist nun der Vordruck - die Ressource Paket im Subcontainer Etiketten. Diese enthält neben dem bereits bekannten Verweis auf eine Datei mit Druckdaten eine Liste von Zuordnungen, in denen Platzhalter innerhalb des Vordrucks definiert und den Nutzdaten zugeordnet werden. Diese Liste wurde, wie weiter oben beschrieben, vom Import-Gateway aufgrund der gemachten Zuweisungen automatisch erzeugt.

Ressource Aufkleber Postpaket

Hier finden sich die sieben Platzhalter wieder. Der Name des Platzhalters kommt genau so im Vordruck vor. Der Name muss eineindeutig sein, das heist, er darf in dieser Form nur einmal im Vordruck vorkommen. Insbesondere darf er natürlich auch nicht in den konstanten Teilen des Vordrucks auftauchen. Auch darf ein Name nicht der Anfang eines anderen Namens sein.

Jedem Platzhalter werden Nutzdaten aus dem Druckdatenstrom zugeordnet. Wie bereits mehrfach gesehen, werden die Nutzdaten über einen Feldindex und einen regulären Ausdruck beschrieben. Die Eigenschaften Feldindex Daten und Auswahlmuster Daten liefern die benötigten Angaben.

Als Besonderheit sind bei den Platzhaltern für die Barcodes noch die Verweise auf die im aufrufenden Formular enthaltenen Felder Leitcode und Identcode zu sehen. Diese sorgen dafür, dass der Platzhalter nicht einfach gegen einen Nutzdatentext ersetzt wird, sondern gegen einen Barcode mit dem Nutzdatentext als Inhalt.

Beim Ausführen des Prozesses Paket wird nun die erste Seite des Lieferscheins nicht gedruckt, sondern nur nach Textpassagen untersucht, die in einem Zwischenspeicher abgelegt werden. Das Formular Paket verweist auf die Ressource Paket, die ihrerseits die Liste mit den Zuordnungen enthält.

Diese Liste wird nun abgearbeitet. Die Platzhalter werden aus dem Druckdatenstrom der Ressource entfernt und gegen die entsprechenden Textpassagen aus den Nutzdaten ersetzt. Im Falle der Barcodes werden die Platzhalter ebenfalls entfernt, aber nicht gegen einen Text, sondern gegen einen Barcode ersetzt, der genau an der Position des Platzhalters erzeugt wird.

Die eventuell vorhandenen restlichen Seiten des Lieferscheins werden ignoriert. Auf diese Weise wird pro Lieferschein ein Aufkleber generiert.

Das Besondere an den Vordrucken ist, dass sie praktisch unabhängig vom zugrundeliegenden Druckdatenstrom sind. Da die Ersetzung der Platzhalter mit Nutzdaten nicht nur mit PCL-Daten, sondern auch mit ZPL-, EPL- oder IGP-Daten funktioniert, lassen sich auf diese Weise viele Etikettendrucker einfach mit einem print2forms-System ansteuern.

Existiert in einer print2forms-Installation auch ein Router, ist es ohne weiteres denkbar, auf einem Laserdruck die Lieferscheine auszugeben und quasi gleichzeitig dazu auf einem daneben stehenden Etikettendrucker den zugehörigen Paketaufkleber.


Hinweise



1)
Apache OpenOffice enthält auch ein Zeichenprogramm (Draw), das praktisch alles bietet, um auch anspruchvollste Formular- und Etikettendesigns zu erstellen. Zudem ist die Nutzung kostenlos. Weil damit der Erstellungsprozess von Formularen und Etiketten praktisch abgedeckt ist, besteht auch keine Notwendigkeit, für print2forms einen eigenen Formular- und Etitketten-Designer anzubieten.

2)
Die Office Suite von Microsoft kann ebenfalls zur Erstellung von Formularen und Etiketten genutzt werden. Allerdings fehlt der Suite ein spezielles Zeichenprogramm. Word oder PowerPoint Dokumente sind aber durchaus nutzbar.

3)
Die ebenfalls kostenlose Suite LibreOffice ist für den Einsatz in Zusammenarbeit mt print2forms weniger geeignet, weil ihr Druckertreiber die meisten Ausgaben als Raster-Graphik erzeugt, und damit die Texterkennungsmechanismen von print2forms im Zusammenhang mit dem Import-Filter nicht funktionieren können.

4)
Die Vorlagen für alle Beispiele des Tutorials befinden sich in einem Ordner mit dem Namen 'Formulare', der unter 'Öffentliche Dokumente', SPE Systemhaus GmbH', 'print2forms' 'p2fSample' zu finden ist (also 'C:\Users\Public\Documents\SPE Systemhaus GmbH\print2forms\p2fSample\Formulare').

5)
Genauere Informtionen finden sich in der Dokumentation zum Importieren und Import-Filter.