Serverdruck-Transferdienst
1. Konzept
Beim Standard-Serverdruck schreibt die myfactory die Druckdateien in ein lokales oder freigegebenes Netzwerk-Verzeichnis. Der Serverdruck-Dienst liest dieses Verzeichnis regelmäßig aus und druckt alle darin enthaltenen Dateien aus. Soll solch ein Hintergrunddruck realisiert werden, wenn sich der myfactory Server nicht inhouse, sondern z.B. in der Cloud oder einem externen Standort befindet, so müssen die Dateien zunächst in ein lokales oder freigegebenes Verzeichnis übertragen und erst in einem zweiten Schritt durch den Standard-Serverdruckdienst ausgelesen und ausgedruckt werden.
In den Grundlageneinstellungen ist hierzu bei "Pfad für Serverdruck" der Text "web" einzugeben.
Im Web-Modus legt der myfactory-Serverdruck keine Dateien im lokalen (Serverprint)-Verzeichnis ab, sondern erzeugt System-Dokumente und Einträge in der Anwendungsdatenbanktabelle
tsServerPrintWeb.
Der auf dem Client installierte Dienst "myfactoryServerPrintTransfer" (Das Setup dazu finden Sie im Partnerportal unter
"Downloads/myfactory.BW/myfactory.ServerPrintTransfer (V6.0)".) ruft dann in regelmäßigen Intervallen die WebService-Seite
Services/ServerPrintTransfer.asmx auf. Über diesen Webservice holt der Dienst die Dateien aus der Datenbank und legt sie in ein lokales Verzeichnis auf der Festplatte des Clients ab.
Wurden die Druckdateien mit dem Serverprint-Transferdienst erfolgreich übertragen und ist dementsprechend das Submitted-Flag gesetzt, so wird das Dokument auf dem Server gelöscht, um die Ressourcen für andere Zwecke freizugeben.
Als User-Parameter beim Aufruf der Webservice-Methoden ist ein myfactory-Benutzerkonto anzugeben, welches mindestens einen Business Manager-Client lizenziert haben muss. Auf das lokale Verzeichnis kann dann der bestehende Serverdruckdienst zugreifen und die Dateien genau wie im Normalmodus (mit lokalem Pfad) ausdrucken.
2. Installation
Installieren Sie den Dienst durch Doppelklick auf die Datei
ServerPrintTransferSetup.msi bzw.
setup.exe.
Nun kann der Dienst
"myfactoryServerPrintTransfer" über die Dienstverwaltung gestartet und wieder gestoppt werden.
Sollte der Dienst in der Dienstverwaltung nicht angezeigt werden, so muss dieser manuell installiert werden. Führen Sie dazu bitte die Datei
"InstallUtil.exe" aus dem Verzeichnis
C:\Windows\Microsoft.NET\Framework\v2.0.50727 aus.
Übergeben Sie als Parameter die exe-Datei inkl. Pfadangabe (
C:\Programme\myfactory\wfSetupServPrintTrans\wfServPrintTrans.exe).
Der gesamte String lautet also:
C:\Windows\Microsoft.NET\Framework\v2.0.50727\InstallUtil.exeC:\Programme\myfactory\wfSetupServPrintTrans\wfServPrintTrans.exeSpätestens jetzt kann der Dienst über die Dienstverwaltung gestartet und wieder gestoppt werden.
3. Konfiguration
Konfigurationseinstellungen werden in der Datei „app.config“ gespeichert, die Sie unter "C:\Programme\myfactory\wfSetupServPrintTrans“ finden.
Der Serverprint-Transferdienst kann mit den folgenden Werten konfiguriert werden:
• Server-Name / IP-Adresse
• User(Name)
• Pwd
• Pfad zur Ablage
Es lassen sich außerdem drei Einschränkungsmöglichkeiten hinterlegen. Über diese können
Sie in der Konfigurationsdatei vorgeben, welche Druckdateien aus der tsServerPrintWeb
abgerufen werden sollen:
• Printers
• UserNames
• Divisions
(Die Angabe mehrerer Werte ist jeweils getrennt durch $;$ möglich.)
Damit können mehrere Transferdienste auf verschiedenen Rechnern installiert werden und auf dieselbe Datenbank auf dem Server zugreifen, wobei jeder dann nur die für ihn gedachten Dateien bekommt.
Die Einzelwerte sind ODER-verknüpft, die verschiedenen Werte sind UND-verknüpft. Bei den UserNames wird der Kurzname verwendet (Divisions "1$;$2" und UserNames "SY001$;$DE004" ruft also alle Serverdruckdateien ab, die vom Sysadmin oder vom DemoWF in der Betriebsstätte 1 oder 2 erstellt wurden)
Zudem können Sie für alle drei Einschränkungen bei Bedarf eine "NOT"-Syntax einbauen.
Für die Einschränkung "Divisions" können Sie also z.B. Folgendes angeben:
"NOT-1$;$NOT-2"In diesem Fall werden alle Druckdateien auf den Client übertragen, die nicht aus Betriebsstätte 1 oder 2 stammen.
Zweites Beispiel: UserNames "NOT-SY001"
Es werden alle Druckdateien übertragen, außer die, die der Benutzer „SysAdmin“ erstellt hat.
Umgekehrt können Sie mit einem einzigen Transferdienst potentiell auch auf mehrere Server bzw. Instanzen zugreifen, um von dort Druckdateien abzurufen. Dies können Sie für die zugehörigen Parameter entsprechend in der Konfigurationsdatei vermerken:
Konkret können Sie in der Konfigurationsdatei
app.config die folgenden Einstellungen vornehmen:
http://localhost/myfactory61/services/ServerPrintTransfer.asmxmyfactory61160000http://localhost/wfDatamyfactory61 (Ist hier kein WebName angegeben, dann gilt: WebName = AppName. Hier muss also nicht zwingend ein WebName hinterlegt werden.)
-1C:\myfactory\ServerPrint(Hier muss derselbe Pfad hinterlegt sein wie in der Konfigurationsdatei des standardmäßigen Serverdruck-Dienstes.)
Sollten Sie die Konfigurationsdatei ändern, so muss danach der Dienst neu gestartet werden, damit die Änderungen wirksam werden.
In den Grundlageneinstellungen ist bei "Pfad für Serverdruck" der Text "web" einzugeben.
Darüber hinaus gilt es noch einige Sicherheitsfunktionen zu beachten, wenn Sie intern mit dem für Online-Shops und Systemdienste vorgesehenen Sammelbenutzer "Webshop"-User arbeiten.
Unter "Druck / Konfiguration Druck“ können Sie dabei in der Oberfläche folgende Optionen setzen:
Webshop-Benutzer zulassen (war in der Vergangenheit standardmäßig möglich):
Der Webshop-User hat als Sammelbenutzer Zugriff auf systeminterne Dienste wie eben den Serverdrucktransfer. Daher muss der Zugriff auf den Transferdienst aus Sicherheitsgründen zunächst freigeschaltet werden.
Erweiterte Kennwortprüfung:
Sofern aktiviert, kann anhand der Schaltfläche [ Kennwort setzen ] ein zusätzliches Passwort für den Serverprint-Transfer vergeben werden (ist insbesondere im Zusammenhang mit dem Freischalten des Webshop-Benutzers wichtig).
Zusätzlich ist das dort gesetzte Kennwort noch in der Konfigurationsdatei app.config einzutragen. Dazu navigieren Sie bitte zu dem Konfigurationseintrag "AddPwd" und hinterlegen dort als Wert das gewünschte Kennwort für den Webshop-Benutzer:
4. Ablauf
Wird der Serverdruck jetzt angestoßen, so werden die Daten der Druckdateien in die Tabelle
tsServerPrintWeb innerhalb der Anwendungsdatenbank geschrieben.
Von dem Transferdienst werden die Dateien dann in das gewünschte Verzeichnis übertragen und können bei aktiviertem Serverdruckdienst direkt ausgedruckt werden.