Serverdruck-Dienst
Einführung
Bei dem Serverdruck-Dienst handelt es sich um einen Windows-Service, der die sogenannten myfactory-ServerPrints weiterverarbeitet bzw. verteilt. Der Druckdienst reagiert auf Dateiereignisse vom Typ "created", d.h. sobald ein gültiger Druckauftrag (in Form von Dateien - siehe Begriffe) in einem vordefinierten Verzeichnis angelegt wurde, wird der Auftrag vom Druckdienst an den jeweiligen Druckertreiber weitergeleitet. Pro Druckauftrag wird immer eine Druckauftragsdatei und eine zugehörige Druckdatei benötigt. Namentlich unterscheiden sich beide Dateien nur hinsichtlich der Dateiendung. Die Druckauftragsdateien werden nach erfolgtem Ausdruck in ein Unterverzeichnis verschoben und je nach Konfiguration des Dienstes danach gelöscht.
Begriffe
- Druckauftragsdatei: Auftragsdatei im XML-Format; Dateiendung ".xml"
- Druckdatei: die zu druckende Datei (.pdf oder .html /.htm)
- Druckauftrag: umfasst die Druckauftragsdatei und die zugehörige Druckdatei
- Druckverzeichnis: das vordefinierte Verzeichnis, das vom Druckdienst beobachtet wird
- Druckserver: der Computer, auf dem der Serverdruck-Dienst ausgeführt wird
- Serverdruck-Dienst: der Dienst "myfactoryServerPrint", der auf dem Druckserver läuft
Systemvoraussetzungen
Die folgenden Punkte gelten für den Computer, auf dem der Serverdruck-Dienst installiert wird. Dieser kann also unabhängig vom myfactory-Server sein (siehe Begriff "Druckserver"):
- Aktuelles Windows mit aktuellen Updates und Patches
- .NET-Framework: 4.0
- Installierte Komponente ABCPDF: Version 8.0 oder höher
- Explizites Windows-Konto zur Ausführung des Dienstes (wie nachfolgend beschrieben)
Installation
Erstellen Sie zunächst ein neues Windows-Konto welches für die Ausführung des Dienstes verwendet werden soll. Dieses Konto sollte nur diesem Zweck dienen und kein reales Benutzerkonto darstellen.
Gehen Sie dazu bitte wie folgt vor:
- Erstellen Sie ein neues Windows-Benutzerkonto mit dem Namen "ServerPrinter“.
Typ des Benutzerkontos: "lokaler Administrator"
Geben Sie ein Kennwort ein und aktivieren Sie das Kontrollkästchen "Kennwort läuft nie ab".
- Klicken Sie in der Programmgruppe "Verwaltung" auf "Lokale Sicherheitsrichtlinie“.
- Weisen Sie dem Konto mithilfe des Tools „Lokale Sicherheitsrichtlinie“ das Recht „Als Dienst anmelden“ zu (Weitere Informationen zu dem Thema: http://msdn.microsoft.com/de-de/library/cc431322.aspx).
Anschließend können Sie das Setup-Programm des Druckdienstes starten. Ein Assistent wird Sie durch die weitere Installation führen.
Bei Bedarf können Sie außerdem das Installationsverzeichnis für den Dienst ändern, falls Sie nicht in den vorgegebenen Pfad installieren möchten. Im Anschluss wird dann die Installation gestartet:
Im darauffolgenden Dialog "Dienstanmeldung festlegen“ müssen Sie die Benutzerkontodaten des neu erstellten Windows-Kontos angeben. Daher stellen Sie dem Namen des Benutzerkontos im Benutzernamenfeld bitte den Namen des Computers voran, auf welchem das Konto angelegt wurde. In der Regel sollte dies der lokale Computername sein.
Prüfen Sie nach Beendigung des Assistenten bitte, ob der Dienst "myfactoryServerPrint" in der Diensteliste des Systems vorhanden ist. Der Dienst sollte noch nicht gestartet sein, denn er muss zuvor noch konfiguriert werden.
Konfiguration
Startparameter des Dienstes in der Konfigurationsdatei festlegen
Nun können Sie den Dienst konfigurieren, indem Sie im Windows-Explorer in das Installationsverzeichnis des Dienstes wechseln und dort die Datei "myfactoryServerPrintConfig.xml" öffnen.
Die Datei myfactoryServerPrintConfig.xml enthält eine XML-Struktur, die nicht verändert werden darf. Dies gilt allerdings nicht für die in den XML-Tags eingeschlossenen Werte, welche für die verschiedenen Parameter jederzeit modifiziert werden können. Eingeschlossen werden die Konfigurationsparameter durch ein "Params"-Tag.
PrintServerPath
Hier hinterlegen Sie bitte den Pfad zu dem lokalen Verzeichnis, in welchem die Druckaufträge (Druckauftragsdateien einschließlich der Druckdateien) von der myfactory abgelegt werden sollen. Um einen automatischen Ausdruck für den Serverprint zu ermöglichen, müssen die Angaben in der Konfigurationsdatei mit den Angaben in den myfactory-Grundlagenoptionen ("Administration / Grundlagen / Register „Druck“) übereinstimmen.
Wenn Sie zusätzlich den Serverdrucktransfer verwenden, dann muss für das fehlerfreie Zusammenspiel der beiden Dienste derselbe „Printserver“-Pfad hinterlegt sein wie in der Konfigurationsdatei des Serverprint-Transferdienstes (dort unter “Path“).
DefaultPrinter
Hier geben Sie bitte den Namen des Standarddruckers bzw. des Druckertreibers für den Serverdruck-Dienst an. Dieser leitet die Druckdateien (z.B. im PDF-Format) dann an den Druckertreiber weiter.
Den vollständigen Namen Ihres lokal installierten Druckers finden Sie in den Eigenschaften des Druckertreibers (z.B. bei HP: HP LaserJet M1536dnf MFP). Bei einem Netzwerkdrucker ist - wie in diesem HP-Beispiel im Screenshot zu sehen - der Hostname des Netzwerkdruckers vor den eigentlichen Druckernamen zu setzen.
Wenn eine Druckauftragsdatei keine Angabe für "PrinterPath" enthält (siehe Kapitel "Druckauftragsdatei"), so wird der in dieser myfactoryServerPrintConfig.xml angegebene Drucker verwendet. Dies ist immer dann der Fall, wenn in der Druckerzuordnung (in der Oberfläche unter "Administration / Druckvarianten / Druckerzuordnung") kein Drucker hinterlegt wurde.
Haben Sie sowohl in der Druckerzuordnung als auch in der Serverprint-Konfigurationsdatei (jeweils unterschiedliche) Drucker angegeben, so wird bei einem Belegdruck stets der Drucker priorisiert, der in der Druckerzuordnung vermerkt ist. Dies wiederum bewirkt einen Eintrag im "PrinterPath" der Druckauftragsdatei.
DeleteWaitTime
Geben Sie hier bitte die Wartezeit (in Minuten) an, die verstreichen soll, bevor gedruckte Druckaufträge gelöscht werden. Wenn Sie 0 angeben, werden die Dateien nicht gelöscht. Allerdings können diese vom Druckdienst eventuell trotzdem durch gleichnamige Druckaufträge überschrieben werden.
InternalBufferSize
Die Puffergröße für den internen Datei-Eventspeicher in kiloByte. Der Standardwert beträgt 40 kB, kann aber beliebig erhöht werden.
Richtwert: Bei 500 gleichzeitig zu verarbeitenden Druckaufträgen liegt der rechnerischen Wert bei ca. 40 kB. Pro Druckauftrag ca. 80 Byte.
LogLevel
Über diesen Parameter lassen sich die Einträge steuern, die in das Eventlog geschrieben
werden. Der Standardwert ist 1.
Zulässige Werte für LogLevel sind:
0: schreibt keine Einträge in das Eventlog
1: schreibt Fehler und Warnungen in das Eventlog
2: schreibt Fehler, Warnungen und Informationen in das Eventlog
AutoRotate
Dieser Wert ist im Standard nicht sichtbar. Der Standardwert ist "False".
False: keine Auto-Rotation der Seiten beim Drucken
True: Auto-Rotation der Seiten beim Drucken, wenn das Seitenformat der zu druckenden Seite nicht mit den Druckeinstellungen übereinstimmt.
AutoZoom
Dieser Wert ist im Standard nicht sichtbar. Der Standardwert ist "False".
False: kein Skalieren/Zoomen der Seiten beim Drucken
True: automatisches Skalieren/Zoomen der Seiten beim Drucken, wenn das Seitenformat der zu druckenden Seite die Größe des druckbaren Bereiches überschreitet.
PrintFilesExtension
Dieser Wert ist im Standard nicht sichtbar. Der Standardwert ist „leer“, was bedeutet, dass
der Dienst PDF-Dateien verarbeiten soll.
Seit Version 1.4.0.0 des Druckdienstes kann dieser Parameter auch auf den Wert ".html" gesetzt werden, um Dateien im HTML-Format zu verarbeiten.
Serverdruck-Parameter für den Belegdruck ändern (in der myfactory-Oberfläche)
Um die Konfigurationsparameter für den Belegdruck zu ändern, klicken Sie im myfactory-Menü bitte auf "Administration / Grundlagen“ und wählen anschließend bitte die Registerkarte "Druck" aus.
Pfad für Serverdruck
Hier können Sie den Pfad zu dem Verzeichnis angeben, in das die Ausgabedateien geschrieben werden sollen. Der Verzeichnispfad muss mit dem Parameter "PrintServerPath" in der Konfigurationsdatei des Dienstes übereinstimmen.
Format für Serverdruck
Wählen Sie in der dortigen Dropdown-Liste bitte das Format PDF aus. Zur Auswahl stehen weiterhin das HTML- sowie das XPS-Format.
Neustart des Systemdienstes für die Druckwarteschlange
Wenn Sie über die Systemsteuerung Änderungen an Druckern vornehmen, wie z.B. den Drucker umbenennen oder neue Drucker hinzufügen/installieren, ist es notwendig, den Systemdienst "Druckwarteschlange" im Anschluss neu zu starten.
Starten des Serverdruck-Dienstes
Starten Sie nun bitte den Serverdruck-Dienst über die Diensteliste des Systems. Die Startart für den Dienst ist auf „automatisch“ voreingestellt. Dadurch wird der Dienst nach einem Neustart des Systems automatisch gestartet.
Dateien
Druckauftragsdateien enthalten eine XML-Struktur, die von der myfactory bei der Ausgabe generiert wird.
Erläuterung der Parameter
Die Druckauftragsparameter werden durch ein "ServerPrint"-Tag eingeschlossen.
PrinterPath
Der Name des Druckertreibers bzw. der Druckerwarteschlange. Wenn dieser Parameter leer bleibt, wird der in der Serverprint-Konfiguration eingetragene Standarddrucker bzw. Standarddruckertreiber verwendet.
Dieser Name muss mit dem Drucker(treiber)namen des Betriebssystems auf dem Druckserver übereinstimmen. Wenn Sie sich nicht sicher sind, wie der korrekte Name Ihres Druckers bzw. Druckertreibers lautet, dann können Sie diesen über die Eigenschaften des Druckertreibers herausfinden.
CopyCount
Die Anzahl der Exemplare, die gedruckt werden sollen (wird derzeit ignoriert).
Params
Wird nicht genutzt.
Druckdateien tragen immer den gleichen Dateinamen wie die zugehörige Druckauftragsdatei. Sie unterscheiden sich namentlich also lediglich in der Dateiendung.
Abgeschlossene Druckaufträge
Abgeschlossene Druckaufträge werden vom Serverdruck-Dienst in das Unterverzeichnis "\printed" verschoben. Bereits verschobene Druckaufträge werden dann je nach Einstellung des "DeleteWaitTime"-Parameters von dort gelöscht.
Wenn ein Druckauftrag nicht gedruckt werden konnte bzw. fehlerhaft war, wird er in das
Unterverzeichnis "\failed" verschoben. Diese Druckaufträge bleiben unabhängig von der Einstellung des "DeleteWaitTime"-Parameters erhalten, und können somit manuell in das übergeordnete Verzeichnis kopiert werden, um den Druckauftrag erneut auszuführen.
Netzwerkdrucker
Auch Netzwerkdrucker werden unterstützt. Die Pfade (PrinterPath) zu Netzwerkdruckern sind so anzugeben, dass zunächst der Hostname, gefolgt vom Druckernamen, notiert wird (siehe Screenshot als Beispiel).
Die Namen der installierten Netzwerkdrucker bzw. Netzwerkdruckertreiber auf dem Betriebssystem des Druckservers müssen dabei auch hier mit den Namen der Drucker in der myfactory-Serverprintkonfiguration übereinstimmen, da diese sonst nicht angesteuert werden können.
Problemanalyse
Zur Analyse von Problemen mit dem Druckdienst kann das Windows-Anwendungsprotokoll (Eventlog) ausgewertet werden. Der Druckdienst schreibt wichtige Informationen, Warnungen und Fehler unter dem Quellennamen myfactoryServerPrint in das Anwendungsprotokoll.
Hinweise bzw. bekannte Probleme
- Um systemmäßige Veränderungen an den Druckern, z.B. veränderte Schachtzuordnungen oder Änderung eines Druckernamens, in den Serverdruck-Dienst zu übernehmen, gehen sie
bitte wie folgt vor:
- Beenden sie den Serverdruck-Dienst
- Starten sie den Systemdienst "Druckwarteschlange" neu
- Starten sie den Serverdruck-Dienst
- Bei neueren Windows-Betriebssystemen können die Drucker pro Benutzer unterschiedlich eingerichtet werden. Es kann z.B. vorkommen, dass die Drucker zwar unter einem bestimmten Benutzerkonto (z.B. Administrator) korrekt eingerichtet sind, aber für das Windows-Benutzerkonto, das für den Serverdruck-Dienst verwendet wird, abweichen.
- Die Verarbeitungsgeschwindigkeit bei Netzwerkdruckern ist häufig um ein Vielfaches langsamer als bei lokal installierten Druckern. Werden also sehr viele Dokumente oder große Druckstapel über den Dienst gedruckt, muss das Konzept hinsichtlich Hardware und Netzwerk vorher auf die jeweiligen Bedürfnisse abgestimmt werden. Vor der Inbetriebnahme sollten in solchen Fällen unbedingt entsprechende Tests durchgeführt werden.
- Wenn Sie Probleme mit den grundsätzlichen Druckereigenschaften (wie z.B. Schachtsteuerung oder Duplexdruck) haben, dann installieren Sie den entsprechenden Druckertreiber bitte mit jenem Windows-Benutzerkonto (ServerPrinter), mit dem Sie auch den Serverdruck-Dienst ausführen.