Inhaltsverzeichnis
DocXporter Dokumentation
Aktualisiert
von DocuScan Support
Funktionsumfang
Für DocXporter Version 7.10 und neuere finden Sie die Dokumentation unten den oben genannte Links im DocuWare Knowledge Center.
DocXporter erlaubt das Exportieren von Dokumenten und/oder Indexdateien aus DocuWare Archiven in das Dateisystem. Für die Auswahl der Dokumente stehen beliebige Filterkriterien auf Basis der Indexbegriffe zur Verfügung. Die exportierten Dateien werden nach dem Export im Archiv durch das Ändern von beliebigen Indexwerten gekennzeichnet. Die Dokumente werden standardmäßig als PDF Datei exportiert oder als Tiff-Datei. Optional werden Annotationen und Stempeln exportiert.
Installation
Download: Aktuelle Installationsdateien
DocXporter erfordert das .NET Framework 4.8.0. Die Anwendung wird mit dem Installationsprogramm installiert. Folgenden Dateien und Ordnern kommt eine besondere Bedeutung zu:
Datei / Ordner | Beschreibung |
docXporter.exe | Die eigentliche Anwendung mit der Programmlogik |
docXporter.exe.config | Die Konfigurationsdatei der Anwendung. Hier wird der Lizenzschlüssel eingetragen |
C:\ProgramData\docXporter | In diesem Ordner finden Sie die Konfigurationsdateien |
C:\ProgramData\docXporter\Logs | Hier werden die Logdateien erstellt |
C:\ProgramData\docXporter\Templates | Dies ist der Standardspeicherort für Templates zur Erstellung von Indexdateien |
C:\ProgramData\docXporter\Migration | In diesem Ordner wird nach alten Konfigurationsdateien gesucht um diese mit aktuellen Versionen von docXporter verwenden zu können |
Konfiguration
Die Konfiguration des DocXporter erfolgt über die jeweilige Konfigurationsdatei die sich im Ordner C:\ProgramData\docXporter\
befinden. Hier handelt es sich um eine XML Datei.
Für einfache Einstellungen wird der Wert zwischen den XML-Tags geändert. Die einfachen Einstellungen finden sich im Bereich General
.
Einstellungen, wie die Suchparameter im Archiv oder für die Aktualisierung von Indexbegriffen haben folgenden Aufbau. Dabei wird für jeden Eintrag die Zeile Item
dupliziert, Name
enthält den Datenbanknamen des Feldes, Value
den Wert.
<Object Name="DWArchivFilter" Type="Docuscan.DocuwareExporter.Configuration.FieldMapping">
<Item Name="COMPANY1" Value="Berger Stahlgroßhandel GmbH" />
<Item Name="STATUS" Value="Exportieren" />
</Object>
Mit dem Setup wird eine Standardkonfiguration (defaultconfig.xml) installiert.
Parameter der Konfigurationsdatei
Allgemeine Parameter
DWServiceUrl | Die URL zu den DocuWare Platform Services. Beispiel: http://DOCUWARESERVER/DocuWare/Platform DOCUWARESERVER muss entsprechend durch den Servernamen ersetzt werden unter dem auch der DocuWare Webclient erreichbar ist. |
DWUser | Benutzername des DocuWare Benutzers mit dem sich die Anwendung an DocuWare anmelden soll. Wir dieser Parameter leer gelassen, versucht die Anwendung sich per Windowsauthentifizierung mit dem User anzumelden, mit dem die Anwendung gestartet wurde. |
DWPassword | Passwort des DocuWare Benutzers mit dem sich die Anwendung an DocuWare anmelden soll. Das Passwort muss mittels des mitgelieferten EncryptionTool verschlüsselt werden. Mehr Informationen zu unserer Verschlüsselung finden Sie im Artikel Verschlüsselung von Passwörtern in Konfigurationsdateien |
DWOrganization | Die DocuWare Organisation an welcher die Anwendung angemeldet wird. |
DWArchivGuid | Die GUID des DocuWare Archivs aus dem die Dokumente exportiert werden. Die GUID findet man in der DocuWare Konfiguration in den Allgemeinen Einstellungen des Archivs. |
DWSearchDialogGuid | Die GUID des Suchdialoges auf dessen Basis die Dokumente für den Export ermittelt werden sollen. Die GUID findet man in der DocuWare Konfiguration in den Dialogen des Archivs |
Stempel
Dokumente können vor oder nach dem Export mit einem Stempel versehen werden.
EnableStamps | Ermöglicht die Aktivierung bzw. Deaktivierung der Möglichkeit ob der Stempel auf dem exportierten Dokument aufgebracht werden soll. Gültige Werte sind True = Aktiv, False = Inaktiv. Beachten Sie auch die weiterführenden Informationen zu den Stempeln weiter unten. |
StampBeforeExport | Dieser Schalter wird ignoriert, wenn EnableStamps den Wert False hat. Ermöglicht zu entscheiden ob der Stempel vor dem Export des Dokuments gesetzt wird und damit in den exportierten Dokumenten enthalten ist (sofern über den ExportMode Annotationen exportiert werden sollen) oder nach dem Export des Dokumentes. Gültige Werte sind True = Vor dem Export stempeln, False = Nach dem Export stempeln. |
StampLayer | Bezeichnet die Anmerkungsebene wo der Stempel aufgebracht wird. Standardmäßig hat diese Einstellung den Wert 1. |
StampPosX | Die Position in Pixeln, beginnend am linken Rand des Dokuments, wo der Stempel platziert wird. Für eine automatische Positionierung des Stempels muss hier -1 eingetragen werden. |
StampPosY | Die Position in Pixeln, beginnend am oberen Rand des Dokuments, wo der Stempel platziert wird. Für eine automatische Positionierung des Stempels muss hier -1 eingetragen werden. |
DWStampName | Der Name des Stempels welcher beim Export auf das Dokument aufgebracht wird. |
Suche
SearchMode |
| ||||||
SqlConnectionString | Ausschließlich für SearchMode Sql erforderlich Ein Sql Connection String zur verwendeten Datenbank. Dies ist in den meisten Fällen die DocuWare Datenbank. Diverse Beispiele für Connection Strings findet man z.B. unter https://connectionstrings.com DocXporter unterstützt ausschließlich Microsoft Sql Server Datenbanken. | ||||||
SqlSearchQuery | Ausschließlich für SearchMode Sql erforderlich Das Select-Statement als Sql-Query um zu exportierende Dokumente zu bestimmen. Die Query muss zwingend das Feld DWDOCID enthalten. Weiterhin wird eine explizite Angabe aller Felder die für Dateiname und Ordnername erforderlich sind vorausgesetzt. |
Export
ExportMode | Hier wird festgelegt in welchem Format die Dokumente nach dem Export im Dateisystem gespeichert werden. Bitte Groß-/Kleinschreibung beachten.
| ||||||||||||||||
ExportCoverage | Hiermit wird festgelegt welcher Teil des Dokuments exportiert werden soll.
| ||||||||||||||||
SectionIndex | Der Index der Sektion die exportiert werden soll. Damit diese Einstellung verwendet wird muss in der Einstellung ExportCoverage der Wert auf SectionIndex gesetzt werden. | ||||||||||||||||
DWArchivFilter | Die Filterkriterien nach denen die zu exportierenden Dokumente ausgewählt werden sollen. Der Parameterwert hat folgenden Aufbau: Ein Sonderfall ist der Wert Beispiel für eine Suche im Feld COMPANY nach sämtlichen Dokumenten die mit Peters beginnen: <Object Name="DWArchivFilter" Type="Docuscan.DocuwareExporter.Configuration.FieldMapping"> Beispiel für eine Suche die im Feld COUNTER nach Dokumenten sucht, die größer als 1.000 und kleiner als 2.000 sind: <Object Name="DWArchivFilter" Type="Docuscan.DocuwareExporter.Configuration.FieldMapping"> Beispiel für eine Suche die im internen Feld DWSTOREDATETIME nach Dokumenten sucht, die in den vergangenen 3 Tagen (inkusive aktueller Tag) archiviert wurden: <Object Name="DWArchivFilter" Type="Docuscan.DocuwareExporter.Configuration.FieldMapping">
Anstelle von einer Variable können auch feste Werte genommen werden. <Object Name="DWArchivFilter" Type="Docuscan.DocuwareExporter.Configuration.FieldMapping"> | ||||||||||||||||
DWArchivUpdateIndex | Parameter mit mehrfachen Werten. Die Konfiguration erfolgt gemäß den Informationen unter DwArchivFilter.Die Indexe die nach dem Export geändert werden sollen. Der Parameterwert hat folgenden Aufbau: Beispiel:
Beispiel: | ||||||||||||||||
ExportPath | Definiert den Ordner in den die Dokumente exportiert werden sollen. Bsp.: Beispiel: Der ExportPath kann auch Teile eines DocuWare Datumsfeldes, zum Beispiel den Monat oder das Jahr enthalten. Nach der Angabe des Feldnamens wird hierbei mit einem Doppelpunkt die .net-konforme Datumsformatierung angegeben, z.B. Falls sowohl Monat, wie Jahr in einem Exportpfad verwendet werden, erfolgt die Angabe in einem. Beispiel: Ergebnis: | ||||||||||||||||
FileName | Definiert den Aufbau des Dateinamens der exportierten Datei. Hierzu können sowohl fixe Werte als auch Indexwerte des Dokuments verwendet werden. Im Falle von Indexwerten wird der Feldname in geschweiften Klammern angegeben Bsp. Bitte beachten Sie einen eindeutigen Dateinamen zu verwenden. Sollte eine Datei bereits vorhanden sein, weil das Dokument denselben Wert in den Feldern aus denen der Dateiname konstruiert wird enthält, dann werden vorher exportiere Dokumente überschrieben. Diese Einstellung ist auch für MergedPdf und Zip-Export relevant! | ||||||||||||||||
TiffCompression | Ermöglicht die Angabe der Kompression zur Speicherung der Tiff-Dateien. Hiermit haben Sie die Möglichkeit Einfluss auf die Qualität und die Dateigröße zu nehmen. Folgende Werte stehen Ihnen zur Verfügung: Jpeg Empfohlen für farbige Dokumente und Dokumente mit Graustufen CcittGroup4 Empfohlen für schwarz-weiß Dokumente | ||||||||||||||||
TiffResolution | Hier können Sie die Auflösung des Tiff Dokuments festlegen. Je höher der Wert, desto besser kann die Qualität sein, aber die Dateigröße wird sich bei hohen Werten potentiell erhöhen. |
Indexdateien
Zu den exportierten Dokumenten können zusätzliche Dateien mit Indexdaten erzeugt werden.
IndexFileMode | Steuert ob eine Indexdatei für ein Dokument erstellt werden soll und wie die Erstellung erfolgt. Groß-/Kleinschreibung muss beachtet werden.
| ||||||||
IndexFileNamePattern | Definiert den Aufbau des Dateinamens der exportierten Datei. Hierzu können sowohl fixe Werte als auch Indexwerte des Dokuments verwendet werden. Im Gegensatz zu der Einstellung FileName (siehe oben) ist hier die Angabe der Dateierweiterung anzugeben. | ||||||||
TemplateFile | Der Pfad zur Template Datei. Wenn nur der Dateiname angegeben wird, dann wird im Ordner C:\ProgramData\docXporter\Templates nach dem Template gesucht. Bei der Angabe eines Pfades wird dieser direkt verwendet. | ||||||||
IndexFileDocumentTemplate | Diese Einstellung ist zur Erhaltung der Kompatibilität enthalten und sollte nicht mehr verwendet werden. Bitte verwenden Sie stattdessen ein Template für Indexdateien. | ||||||||
IndexFileRepetitionTemplate | Diese Einstellung ist zur Erhaltung der Kompatibilität enthalten und sollte nicht mehr verwendet werden. Bitte verwenden Sie stattdessen ein Template für Indexdateien. |
ZIP Dateien und Zusammenfassung in einer PDF-Datei
Neben dem Export von Dokumenten in einen Ordner im Dateisystem kann alternativ der Export in ZIP-Datei(en) erfolgen. Dabei kann auch je nach Anforderung eine Verteilung der Dokumente auf mehrere Dateien umgesetzt werden.
ExportTarget | Steuert ob der Export in eine ZIP Datei oder einen Dateisystem-Order erfolgt
| ||||||
GroupFileNamePattern | Legen Sie hier das Muster fest aus dem der Dateiname für die Ausgabe-Datei gebildet werden soll. Die Angabe der Dateiendung ist hier nicht erforderlich da diese automatisch vergeben wird. Jenachdem welches ExportTarget gewählt wurde lautet die Endung .zip oder .pdf Die Dateien werden im Ordner bereitgestellt wie in der Einstellung Bei der Erzeugung einer Zip-Datei wird der Aufbau der Dokumenten-Dateinamen innerhalb der ZIP Datei über die Einstellung FileName festgelegt. Beispiel: | ||||||
GroupPath | Um eine Gruppierung der Dokumente zu realisieren, wird über diese Einstellung eine Gruppierung aus einem oder mehreren Indexbegriffen gebildet. Der hier definierte Wert wird an den intern erzeugten Temp-Pfad angehängt um beim Abschluss des Exports die jeweiligen Dokumenten in die vorgesehenen ZIP Dateien zu packen oder aus diesen Dateien eine zusammenfassende PDF Datei erzeugt. Beispiel: |
Indexdateien mit Templates erzeugen
Neben dem Export von Dokumenten aus DocuWare ermöglicht DocXporter auch die Erstellung von Indexdateien. Insbesondere bei der Übergabe von Dokumenten und weiteren Informationen an ERP oder CRM Systeme hat diese Funktion eine zentrale Bedeutung.
Leider gibt es keinen Standard in welchem Format und Ausprägung solche Indexdateien erzeugt und verarbeitet werden. Es gibt nicht die eine Ausprägung von Indexdatei, sondern Format und Aufbau unterscheiden sich teils signifikant zwischen den einzelnen Zielsystemen.
Mit DocXporter haben Sie dank der leistungsfähigen Scriban-Template Engine nun die Möglichkeit nahezu jede Art von Indexdatei zu erzeugen: CSV-Dateien, XML-Dateien stellen kein Problem dar.
Erstellung von Templates
Die Template-Engine basiert auf Scriban. Auf der GitHub Projektseite findet sich ein umfangreiches Handbuch welches als Referenz herangezogen werden sollte. https://github.com/scriban/scriban/tree/master/doc
Im Ordner C:\ProgramData\docXporter\Templates
finden Sie einige Templates. Die hier enthaltenen Vorlagen können bereits als Basis für eigene Templates verwendet werden. Templates sollten die Dateierweiterung .sbntxt haben. Erzeugen Sie sich am besten eine Kopie von einem der Templates für Ihre eigenen Zwecke.
Wir empfehlen zur Bearbeitung des Editor Visual Studio Code und die zugehörige Erweiterung Scriban für die Syntaxhervorhebung.
Zugriff auf Indexfelder
Indexfelder stehen als Variable zur Verfügung. Als Name wird der DocuWare-Datenbankname in Großbuchstaben verwendet.
Sämtliche Angaben die zwischen geschweiften Klammern stehen {{ Anweisungen zwischen den Klammern }}
werden von der Template-Engine interpretiert. Alle anderen Texte außerhalb der Klammern sind statisch und bleiben unverändert.
Gekürzter Auszug aus dem DATEV REWE Template:
{{-date.now | date.to_string "%Y%m%d%H%M%S"-}};;"DocXporter";"admin";"";"{{-BERATER-}}";
- Rechts wird der Inhalt des Feldes
BERATER
ausgeben. Eingesetzt zwischen statischen Textausgaben wird der FeldName im Format{{-BERATER-}}
angegeben. - Links wird das aktuelle Datum mit Uhrzeit ausgeben.
Zugriff auf Tabellenfelder
Der Zugriff auf Tabellenfelder erfolgt analog. Das Tabellenfeld SPLITBUCHUNG
steht ebenfalls als Variable zur Verfügung. Mittels einer Schleife kann über die Zeilen (row
) iteriert werden. Der Zugriff auf die Werte in den einzelnen Spalten erfolgt dann über row.DBNAME
Gekürzter Auszug aus dem DATEV REWE Template:
{{~ for row in SPLITBUCHUNG ~}}
{{- row.SPLIT_ERPEXPORT_BETRAG -}};{{- row.SPLIT_SOLLHABEN -}};"{{- W_HRUNG -}}";;;"";"{{- row.SPLIT_KONTO | get_value -}}";"{{-FIRMENKONTO-}}";
{{~ end # for of Table-Field ~}}
- Das Beispiel startet mit einer
for
-Schleife. Damit iteriert die Template-Engine über jede Zeile (Variablerow
) im TabellenfeldSPLITBUCHUNG
- Der Zugriff auf eine Spalte / Feld erfolgt über
row.DBNAME
. Hier z.B.{{- row.SPLIT_ERPEXPORT_BETRAG -}}
- Natürlich kann innerhalb der Schleife auch auf die übrigen Indexfelder zugegriffen werden:
{{-FIRMENKONTO-}}
- Abgeschlossen wird die Schleife in der letzen Zeile mit
end
. Die Ausgaben zwischen for..end wird solange in die Zielindexdatei geschrieben wie es Zeilen im Tabellenfeld gibt. - Auffällig ist die Zeile
{{- row.SPLIT_KONTO | get_value -}}
Hier wird der WertSPLIT_KONTO
in einer Funktionget_value
verarbeitet. Dies hat in diesem speziellen Fall den Zweck damit nur die Kontonummer (4711) und nicht der tatsächliche Wert aus dem Indexfeld (4711>Allgemeines Beispiel) ausgegeben wird.
Stempel
Sollte der Stempel Felder beinhalten die genauso benannt (Beschriftung) wurden die Datenbankfeldnamen der Indexfelder des Dokumentes auf dem der Stempel aufgebracht werden soll, dann werden diese Felder automatisch mit den Indexwerten des entsprechenden Indexfeldes gefüllt.
Um die DocuWare Dokumenten ID in einem Stempel zu verwenden, verwenden Sie für das Stempel-Feld die Beschriftung DWDOCID.
Ausführung eines Exports
Nach dem die Anwendung vollständig konfiguriert wurde, kann die Anwendung gestartet werden.
Wenn docXporter.exe
ohne weitere Parameter ausgeführt wird, dann werden alle Konfigurationsdateien abgearbeitet.
Welche Erweiterung Sie hierfür verwenden ist egal. Sie darf nur nicht auf .xml lauten.
Wenn der Aufruf mit Parameter erfolgt docXporter.exe -c "Konfigurationsname"
, dann wird nur die entsprechende Konfiguration verarbeitet.
Die Anwendung dokumentiert die einzelnen Verarbeitungsschritte zum einen als Ausgabe im Konsolenfenster. Gerade bei den ersten Tests kann es hilfreich sein die Programmausgaben genau zu betrachten.
Um die Verarbeitung bzw. die Ausführung zu automatisieren kann die docXporter.exe über die „Geplanten Tasks“ von Windows entsprechend der dortigen Möglichkeiten zu unterschiedlichsten Zeiten oder Ereignissen ausgeführt werden.
Logging
Sämtliche Programmaktivitäten können in einer Log-Datei dokumentiert werden. Das Logs-Verzeichnis befindet sich unter C:\ProgramData\docXporter\Logs
. Standardmäßig wird pro Tag eine Logdatei erzeugt und 30 Dateien aufbewahrt. Sobald die Anzahl dieser historischen Log-Dateien erreicht ist, wird die jeweils älteste Datei gelöscht.
Zudem werden zunächst nur Informationen, sowie Fehler protokolliert. Sofern mehr Details, z.B. während der Testphase erforderlich sind, kann die Protokollierung auf DEBUG erhöht werden.
Der Detailgrad der Protokollierung wird ebenfalls in der docXporter.exe.config vorgenommen. Suchen Sie hier nach dem Block und ändern Sie den Text INFO nach DEBUG.
<root>
<level value="INFO"/>
</root>
Migration bestehender Konfigurationen
- Kopieren Sie Ihre alten Konfigurationsdateien docXporter.exe.config in den Ordner
C:\ProgramData\docXporter\Migration
- Sofern Sie mehrere Instanzen von docXporter verwenden, dass kopieren Sie sämtliche config-Dateien in den Ordner.Verwenden Sie einen aussagekräftigen Namen für die Konfigurationsdatei z.B. rechnungen.config oder uebergabe_erp.config. docXporter wird diesen Namen für die neue Konfigurationsdatei verwenden.
- Sobald alle Konfigurationsdateien kopiert wurden rufen Sie
docXporter.exe
auf. Dadurch, dass sich .config Dateien im Migrationsordner befinden, wird docXporter in den Migrationsmodus versetzt. Es werden nun sämtliche .config Dateien verarbeitet, die neuen Konfigurationen erzeugt und die Datei in .config.done umbenannt. - Im Ordner
C:\ProgramData\docXporter\
finden Sie nun eine Reihe von XML-Dateien die den gleichen Namen wie die .config Dateien haben. Jede dieser Dateien repräsentiert eine Konfiguration.