Mit Druckprozessoren wie PrintMulti ist es möglich, auf Druckaufträge vielfältig Einzuwirken. Beispiele dafür sind die gleichzeitige Ausgabe als PDF sowie auf dem Drucker, Ausgabe auf mehrere Drucker, E-Mail-Versand, Seitenzahl-abhängige Ausgabe uvm.

Für ein relativ einfaches Kunden-Szenario war es notwendig, das die Ausgabe aus dem ERP sowohl als PDF für den E-Mail-Versand als auch in Papierform vorlag. Das besondere daran: Nur die erste Seite soll als PDF ausgegeben, die restlichen Seiten sollen ausgedruckt werden.

Installation und Einrichtung unter Windows 10 (1903)

  • Die aktuelle Installationsdatei herunterladen und ausführen.Damit PrintMulti genutzt werden kann ist mindestens ein Drucker erforderlich. Dieser muss nicht real existieren, er sollte nur mit einem möglichst kompatiblen Treiber und PrintMulti als Prozessor konfiguriert sein. Dies sieht beispielsweise so aus:
  • Manuell einen neuen lokalen Drucker hinzufügen.
  • Als Anschluss “FILE: (Ausgabe in eine Datei umleiten)” auswählen. Als Pfad z.B. “C:\temp\output.prn” angeben.
  • Als Treiber wird oft “HP Color LaserJet 8550 PCL” empfohlen. Sofern dieser noch nicht auf dem System vorhanden ist, kann dieser heruntergeladen, mit 7-Zip entpackt und dann mittels “Datenträger…” bei der Druckereinrichtung angegeben werden.
  • Der Druckername kann frei gewählt werden.
  • Anschließend die Druckereigenschaften bearbeiten und auf der Registerkarte “Erweiert” unter “Druckprozessor” “PrintMulti” auswählen. Die Voreinstellung kann auf “RAW” belassen werden.

PrintMulti konfigurieren

Die eigentliche PrintMulti-Konfiguration befindet sich unter

C:\Program Files\PrintMulti\PrintMulti.ini

Die Original-Datei sollte man vorher sichern, bevor man diese ändert oder durch eine Eigene ersetzt.

Für das vorgestellte Szenario sieht diese so aus:

[Common]
LogJobMask=4
LogJobFile=C:\Temp\jobs.csv
LogMask=27
LogFile=C:\Temp\debug.csv

[PrintMulti]
Active=1
PrintSelf=0
Action1=Print;ActionFirstPageAsPDF
Action2=Print;ActionRemainingPages

[ActionFirstPageAsPDF]
Active=1
Printer=PDF24
; Die erste Seite soll auch gleich die letzte Seite sein
LastPage=$(1)

[ActionRemainingPages]
Active=1
Printer=EPSON
; Gibt die Startseite vor, d.h. ab welcher Seite angefangen wird zu drucken
FirstPage=$(2)