FlexSpooler

FlexSpooler ist ein Programm zur Überwachung definierter Spool Verzeichnisse auf komplett vorhandene Dateien bestimmten Dateityps. In Abhängigkeit vom Dateityp wird vom FlexSpooler ein definiertes Aktionsprogramm gestartet und dessen Beendigung abgewartet. Da das Ergebnis eines Aktionsprogramms eine oder mehrere Dateien sein können, die wiederum in einem Spool Verzeichnis abgelegt werden können, lassen sich sehr flexibel Kaskaden von Bearbeitungsfolgen mittels bausteinartiger Aktionsprogramme realisieren. Benötigt ein Aktionsprogramm mehr Eingangsdaten, als die aktuell gespoolte Datei, können diese Daten in zusätzlichen, gleichnamigen Dateien anderen Dateityps bereitgestellt werden (d.h. FlexSpooler startet das definierte Aktionsprogramm erst, wenn alle zugehörigen Dateien komplett im Spool Verzeichnis vorhanden sind). Die Spool Verzeichnisse werden reihum abgearbeitet, so dass ein Verzeichnis mit vielen Dateieinträgen nicht zur Blockade der Abarbeitung der anderen führen kann. Für jedes Spool Verzeichnis lässt sich zudem ein Zeitfenster definieren, in welchem es vom FlexSpooler abgearbeitet wird. Somit lassen sich langwierige Bearbeitungen zum Beispiel auf Zeiten außerhalb der Bürozeiten verlagern.

Installation

Die Installation beschränkt sich darauf, das komplette Verzeichnis mit dem FlexSpooler Programm und den zum Teil darin befindlichen Aktionsprogrammen und Konfigurationsdateien auf den als Server dienenden PC zu kopieren. Alle die Funktionsweise betreffenden Einstellungen werden in der FlexSpooler Konfigurationsdatei "FlexSpooler.ini" vorgenommen. Danach kann das FlexSpooler Programm manuell gestartet werden, oder mittels "srvany" als Windows Dienst konfiguriert werden, um selbsttätig beim Booten auch ohne Benutzeranmeldung zu starten. Eine Logdatei (per Default "FlexSpooler.log") protokolliert alle vom FlexSpooler initiierten Aktionsprogrammaufrufe.

Freigaben: Windows 7/10
Voraussetzung:   Keine
Aktuelle Version: 2.0.0.5

Konfiguration

Alle Funktionskonfigurationen des FlexSpooler Programms werden über die zentrale Konfigurationsdatei "FlexSpooler.ini" vorgenommen. Nach erfolgten Änderungen ist ein Neustart des FlexSpooler Programms notwendig, damit diese wirksam werden.

[System]  
LicenseKey= Lizenzschlüssel
;  
LogFile= Optionale Angabe von Pfad- und Dateinamen der zu verwendenden Logdatei. Default: FlexSpooler.log
AppendLog=0 0=Logdatei überschreiben, 1=Logdatei erweitern
;  
SpoolDirs=Dir1,Dir2 Kommagetrennte Liste symbolischer Spool Verzeichnisnamen, deren Eigenschaften jeweils in einem eigenen Abschnitt definiert werden
Interval=5 Prüfintervall in Sekunden
StartFlexCheck=0 0=Kein Autostart des Programms FlexCheck, 1=Autostart
   
[Dir1] Abschnitt für das symbolische Spool Verzeichnis "Dir1"
; Example Queue Dir1 Kommentar
; Converts DFT to TIF and PSM to DXF  
;  
FromTime=00:00 Startzeit für das Aktivitätszeitfenster
ToTime=23:59 Endezeit für das Aktivitätszeitfenster
;  
Dir=D:\Etc\FlexSpooler\In1 Spool Verzeichnis Pfadname
Ext=DFT,PSM Kommagetrennte Liste der Dateityperweiterungen, für welche Aktionsprogramme definiert werden.
;Ext=DFT+TXT,PSM Kommentiertes Beispiel für die Definition einer Dateigruppe (DFT+TXT). Hier wird erst dann das Aktionsprogramm für den Dateityp DFT gestartet, wenn auch zusätzlich eine gleichnamige Datei vom Typ TXT vorhanden ist.
;  
DFT=SeDft2Tif.exe,/dftfile #FILE# /colorasblack Aktionsprogrammdefinition für den Dateityp DFT.
Syntax: Aktionsprogramm, Aufrufparameter
Der Platzhalter #FILE# wird zur Laufzeit durch den Pfadnamen der gespoolten Datei ersetzt. Der Platzhalter #FILENAME# wird durch den Dateinamen (inkl. Dateiendung) der gespoolten Datei ersetzt.
;DFT=SeDft2Tif.exe,/dftfile #FILE# /colorasblack /updprops  
PSM=SePsm2Dxf.exe,/psmfile #FILE# Aktionsprogrammdefinition für den Dateityp PSM
   
[Dir2] Abschnitt für das symbolische Spool Verzeichnis "Dir2"
; Example Queue Dir2 Kommentar
; Converts DFT to DXF  
;
FromTime=00:00 Startzeit für das Aktivitätszeitfenster
ToTime=23:59 Endzeit für das Aktivitätszeitfenster
;  
Dir=D:\Etc\FlexSpooler\In2 Spool Verzeichnis Pfadname
Ext=DFT Kommagetrennte Liste der Dateityperweiterungen, für welche Aktionsprogramme definiert werden.
;  
DFT=SeDft2Dxf.exe,/dftfile #FILE# Aktionsprogrammdefinition für den Dateityp DFT.
Syntax: Aktionsprogramm, Aufrufparameter
Der Platzhalter #FILE# wird zur Laufzeit durch den Pfadnamen der gespoolten Datei ersetzt. Der Platzhalter #FILENAME# wird durch den Dateinamen (inkl. Dateiendung) der gespoolten Datei ersetzt.

Aufrufparameter

Keine

Weitere Beispielkonfigurationen

Nachfolgend sind Konfigurationen aufgeführt, die SeFileConverter ab V1.30 als Aktionsprogramm verwenden. Zum direkten Vergleich ist die Verwendung der abgelösten Aktionsprogramme kommentiert enthalten.

[System]
LicenseKey=

LogFile=D:\Out\LogOut\FlexSpooler.log
AppendLog=0

SpoolDirs=MULTI,DXF,PDF,TIF,JT,STL,STP
Interval=5
StartFlexCheck=1

[MULTI]
; SpoolDir to convert solely by XML JobControl File (JCF) containing multiple orders
; No depositing of the input file (deletion instead)
; Keeping log file of each conversion
;
FromTime=00:00
ToTime=23:59
;
Dir=D:\SpoolDirs\MultiIn
Ext=JCF
;
JCF=SeFileConverter\SeFileConverter.exe,/jcf:"#FILE#" /log:"D:\Out\LogOut\SEFC\#FILENAME#.log" /deposit:""

[DXF]
; SpoolDir to convert DFT to DXF
;
FromTime=00:00
ToTime=23:59
;
Dir=D:\SpoolDirs\DxfIn
Ext=DFT
;
;DFT=SeDft2Dxf.exe,/dftfile #FILE#
DFT=SeFileConverter\SeFileConverter.exe,/mode:dxf /sefile:"#FILE#" /log:"D:\Out\LogOut\SEFC\#FILENAME#.log" /deposit:"D:\Out\Deposit"

[PDF]
; SpoolDir to convert DFT to PDF
;
FromTime=00:00
ToTime=23:59
;
Dir=D:\SpoolDirs\PdfIn
Ext=DFT
;
;DFT=SeDft2Pdf.exe,/dftfile #FILE#
DFT=SeFileConverter\SeFileConverter.exe,/mode:pdf /sefile:"#FILE#" /log:"D:\Out\LogOut\SEFC\#FILENAME#.log" /deposit:"D:\Out\Deposit"

[TIF]
; SpoolDir to convert DFT to TIF
;
FromTime=00:00
ToTime=23:59
;
Dir=D:\SpoolDirs\TifIn
Ext=DFT
;
;DFT=SeDft2Tif.exe,/dftfile #FILE# /colorasblack
DFT=SeFileConverter\SeFileConverter.exe,/mode:tif /sefile:"#FILE#" /log:"D:\Out\LogOut\SEFC\#FILENAME#.log" /deposit:"D:\Out\Deposit"

[STL]
; SpoolDir to convert PAR, PSM and indirectly given ASM to STL
;
FromTime=00:00
ToTime=23:59
;
Dir=D:\SpoolDirs\StlIn
Ext=ASC,PAR,PSM
;
;ASC=Se2Stl.exe,/sefile #FILE#
;PAR=Se2Stl.exe,/sefile #FILE#
;PSM=Se2Stl.exe,/sefile #FILE#
ASC=SeFileConverter\SeFileConverter.exe,/mode:stl /sefile:"#FILE#" /log:"D:\Out\LogOut\SEFC\#FILENAME#.log" /deposit:"D:\Out\Deposit"
PAR=SeFileConverter\SeFileConverter.exe,/mode:stl /sefile:"#FILE#" /log:"D:\Out\LogOut\SEFC\#FILENAME#.log" /deposit:"D:\Out\Deposit"
PSM=SeFileConverter\SeFileConverter.exe,/mode:stl /sefile:"#FILE#" /log:"D:\Out\LogOut\SEFC\#FILENAME#.log" /deposit:"D:\Out\Deposit"

[STP]
; SpoolDir to convert PAR, PSM and indirectly given ASM to STEP
;
FromTime=00:00
ToTime=23:59
;
Dir=D:\SpoolDirs\StpIn
Ext=ASC,PAR,PSM
;
;ASC=Se2Step.exe,/sefile #FILE#
;PAR=Se2Step.exe,/sefile #FILE#
;PSM=Se2Step.exe,/sefile #FILE#
ASC=SeFileConverter\SeFileConverter.exe,/mode:stp /sefile:"#FILE#" /log:"D:\Out\LogOut\SEFC\#FILENAME#.log" /deposit:"D:\Out\Deposit"
PAR=SeFileConverter\SeFileConverter.exe,/mode:stp /sefile:"#FILE#" /log:"D:\Out\LogOut\SEFC\#FILENAME#.log" /deposit:"D:\Out\Deposit"
PSM=SeFileConverter\SeFileConverter.exe,/mode:stp /sefile:"#FILE#" /log:"D:\Out\LogOut\SEFC\#FILENAME#.log" /deposit:"D:\Out\Deposit"

[JT]
; SpoolDir to convert PAR, PSM and indirectly given ASM to JT
;
FromTime=00:00
ToTime=23:59
;
Dir=D:\SpoolDirs\JtIn
Ext=ASC,PAR,PSM
;
;ASC=Se2JT.exe,/sefile #FILE# /monolithic
;PAR=Se2JT.exe,/sefile #FILE#
;PSM=Se2JT.exe,/sefile #FILE#
ASC=SeFileConverter\SeFileConverter.exe,/mode:jt /sefile:"#FILE#" /log:"D:\Out\LogOut\SEFC\#FILENAME#.log" /deposit:"D:\Out\Deposit"
PAR=SeFileConverter\SeFileConverter.exe,/mode:jt /sefile:"#FILE#" /log:"D:\Out\LogOut\SEFC\#FILENAME#.log" /deposit:"D:\Out\Deposit"
PSM=SeFileConverter\SeFileConverter.exe,/mode:jt /sefile:"#FILE#" /log:"D:\Out\LogOut\SEFC\#FILENAME#.log" /deposit:"D:\Out\Deposit"