Dieser Service besteht aus zwei Komponenten, die sich um das Hochladen von Dokumenten in die Cloud oder direkt ins DMS kümmern.
Architektur
Der erste Service (STP.IM.DocumentCollectorOnPremiseService)
Dieser Service kümmert sich um die Dokumentenverarbeitung. Sobald ein Dokument im Arbeitsordner eingegangen ist, wird es vom Service aufgenommen und entsprechend verarbeitet.
Im Arbeitsordner gibt es mehrere Unterordner, die bei der Dokumentenverfolgung helfen.
- approved
- error
- info
- originals
- pending
- processed
- retained
- temp
- work
Der zweite Service (STP.IM.DocumentCollectorManagement)
Dieser Service ist eine visuelle Komponente und hilft bei grundlegenden Konfigurationen, Genehmigungen usw.
Entwicklung
Voraussetzungen
- Klone das Repository nach
C:\Projects\
Lokale Einrichtung
- Aktualisiere in App.config die Beispiel-Einstellungen, um eine Verbindung zum entsprechenden Mandanten, Benutzerverwaltung (on-premise) und LSB (on-premise) herzustellen.
- Für Debugging-Zwecke in den Visual Studio Debug-Eigenschaften muss
/uials Befehlszeilenargument hinzugefügt werden
Ausführen
- Aktualisiere die Beispielordnerkonfiguration in
C:\ProgramData\STP AG\STP.IM.DocumentCollectorOnPremiseService\ScanFolders - Erstelle im Ordner
C:\Users\Public\STP.Scanfoldereinen Ordner, der so benannt ist wie in deiner Ordnerkonfiguration
Ein Dokument sammeln
Starte den Service. Kopiere dein Dokument in den Ordner C:\Users\Public\STP.Scanfolder\<yourfolder>.
Einstellungen
Es gibt zwei Orte, an denen du Einstellungen für den Document Collector konfigurieren kannst: * Allgemeine Konfiguration, normalerweise platziert in C:\ProgramData\STP AG\STP.IM.DocumentCollectorOnPremiseService
Beispiel für eine `config.json` Konfigurationsdatei:
```json
{
"CountUploadWorkers": 3,
"DurationToErrorQueueInMinutes": 60,
"EnableUploads": true,
"ErrorItemPath": "C:\\Users\\Public\\STP.Scanfolder\\ErrorItems",
"ImageRenderingSettings": {
"ImageRenderingMode": 4
},
"SmtpMailSettings": {
"DefaultSenderAddress": null,
"DefaultSenderName": null,
"Domain": null,
"Password": null,
"Port": 0,
"Server": null,
"SSL": false,
"UseDefaultCredentials": false,
"User": null
},
"UploadQueuePath": "C:\\Users\\Public\\STP.Scanfolder\\UploadQueue",
"WorkingModeSettings": {
"WorkingMode": 0
},
"RetentionCleanerWorkerRunAt": 15
}
```
* `CountUploadWorkers` - Wie viele Worker Dokumente parallel hochladen. Optionaler Parameter vom Typ `number`. Standardwert ist `3`.
* `DurationToErrorQueueInMinutes` - Dauer in Minuten, nach der die Datei vom Upload-Ordner in den Fehlerordner verschoben wird. Optionaler Parameter vom Typ `number`. Standard ist `60` Minuten.
* `EnableUploads` - Dieser Parameter aktiviert den Start der Upload-Worker. Optionaler Parameter vom Typ `boolean` (true/false). Standard ist `true`.
* `ErrorItemPath` - Der Pfad, wohin fehlerhafte Dokumente verschoben werden. Erforderlicher Parameter vom Typ `string`.
* `ImageRenderingSettings.ImageRenderingMode` - Die Qualität, in der die Bilder gerendert werden. Optionaler Parameter vom Typ `number`. Standardwert ist `4`. Mögliche Optionen:
* `Hohe Qualität` - 5
* `Normale Qualität` - 4
* `Keine Bildkorrektur` - 3
* `Salz- und Pfeffer-Filterung` - 2
* `Median Glättung` - 1
* `SmtpMailSettings` - Einstellungen, die eine E-Mail-Benachrichtigung im Falle fehlerhafter Dokumente ermöglichen.
* `UploadQueuePath` - Der Pfad, wohin Dokumente zum Hochladen abgelegt werden. Erforderlicher Parameter vom Typ `string`.
* `WorkingModeSettings.WorkingMode` - Die Art und Weise, wie der Document Collector eingehende Dateien im Eingangsordner behandelt. Optionaler Parameter vom Typ `number`. Standardwert ist `0`. Mögliche Optionen:
* `Nur Cloud` - 0 - Die Dokumente werden in die IM-Cloud hochgeladen
* `Nur On-Premise` - 1 - Die Dokumente werden in den konfigurierten Ordner verschoben, um vom DMS importiert zu werden
* `RetentionCleanerWorkerRunAt` - Die lokale Uhrzeit, zu der der Retention Worker ausgelöst wird und ältere Dokumente bereinigt. Optionaler Parameter vom Typ `number`. Standardwert ist `1`.
* `MaxUploadFileSizeInBytes` - Die maximale Dateigröße, die gelesen und hochgeladen werden darf. Optionaler Parameter vom Typ `number`. Standardwert ist `20971520` (200MB).
-
Ordnerspezifische Konfigurationen (können mehrere Dateien sein)
Beispiel für eine
ScanFolders-Konfigurationsdatei:{ "DirectoryPath": "C:\\Users\\Public\\STP.Scanfolder\\Input1", "ScanIntervalSeconds": 5, "Enabled": true, "UseUploadApproval": false, "AutomaticApproveAfter": null, "MasksToTargets": [ { "TargetLaneName": ".automation", "FileMask": "*.*", "ClassName": ".automation", "OverridesTargetLaneByCode": [ ] } ], "IsBatchFolder": true, "DocumentSeparatorIdentifier": "DOCUMENT_SEPARATOR", "OutGoingMailOnly": true, "DmsImportFolder": "C:\\Users\\Public\\STP.Scanfolder\\Input1\\temp", "DmsImportFolderFallback": "", "ServiceMode": true, "EmailRecipientsOnError": "info@test.de", "KeepSeparatorSheet": true, "DmsImportFilePattern": null, "MinimumFileAgeInSeconds": 60, "RemoveEmptyPagesEnabled": true, "RemoveEmptyPagesThreshold": 5.0, "RetentionPeriods": { "OriginalsRetentionPeriodInDays": 7, "ErrorsRetentionPeriodInDays": 0, "ProcessedRetentionPeriodInDays": 0 } }-
DirectoryPath- Der Ordner, in dem Dokumente zur Verarbeitung abgelegt werden. Erforderlicher Parameter vom Typstring. -
ScanIntervalSeconds- Wie viele Sekunden der Dienst wartet, bevor er ein Dokument aufnimmt. Erforderlicher Parameter vom Typnumber. -
Enabled- Aktiviert den Ordnerscanner-Arbeiter. Erforderlicher Parameter vom Typboolean. -
UseUploadApproval- Wenntrue, ist eine manuelle Genehmigung erforderlich (funktioniert mit DocumentCollectorManagement). Optionaler Parameter vom Typboolean. Standard istfalse. -
AutomaticApproveAfter- Wie viele Sekunden der Dienst wartet, wennUseUploadApprovalauftruegesetzt ist (funktioniert nur mit DocumentCollectorManagement). -
MasksToTargets.TargetLaneName- Eingabeverwaltungsspur, in die die Dokumente hochgeladen werden. Optionaler Parameter vom Typstring. -
MasksToTargets.FileMask- Platzhaltermuster, das im gescannten Ordner verwendet wird, um Dateien auszuwählen (im Beispiel bedeutet*.*alle Dateitypen). Erforderlicher Parameter vom Typstring. -
MasksToTargets.ClassName- Eingabeverwaltungsklasse, in der die Dokumente klassifiziert werden. Optionaler Parameter vom Typstring. -
IsBatchFolder- Bestimmt, ob das Dokument direkt an IM gesendet werden soll (false) oder vom Document Collector verarbeitet und dann an IM gesendet werden soll (true). Optionaler Parameter vom Typboolean. Standard istfalse. -
DocumentSeparatorIdentifier- Dokumententrennungsmuster, das zur Trennung des Dokuments verwendet wird. Erforderlicher Parameter vom Typstring. -
OutGoingMailOnly- Wenntrue, wird die Eingabeverwaltung umgangen und Dokumente werden in den DMS-Ordner gesendet, wenn ein wz-Barcode gefunden wird. Standardwert istfalse. -
DmsImportFolder- Ordner, den DMS direkt auf Dokumente mit wz-Barcodes scannt. -
DmsImportFolderFallback- Sicherungsordner, den DMS direkt auf Dokumente mit wz-Barcodes scannt (funktioniert mit DocumentCollectorManagement). -
ServiceMode- Funktioniert nur mit DocumentCollectorManagement. Optionaler Parameter vom Typboolean. Standard istfalse. -
EmailRecipientsOnError- Liste der Empfänger bei Fehlern. Optionaler Parameter vom Typstring. -
KeepSeparatorSheet- Behält oder löscht die Seite mit dem Trennblatt. Nicht mit Barcodes mit Inhalt verwenden! Optionaler Parameter vom Typboolean. Standard istfalse. -
MinimumFileAgeInSeconds- Das Intervall in Sekunden, ab dem die Datei alt genug für die Verarbeitung ist. Optionaler Parameter vom Typnumber. Standard ist60. -
RemoveEmptyPagesEnabled- Bestimmt, ob leere Seiten eines Dokuments entfernt werden. Optionaler Parameter vom Typboolean. Standard istfalse. -
RemoveEmptyPagesThreshold- Ein Schwellenwert, unter dem die Seite als leer markiert wird. Optionaler Parameter vom Typdouble. Standard ist0.0. -
LexDmsImportFolder_OnPremiseOnly- Der Ordner, in den die Dokumente abgelegt werden, wenn wirWorkingModeSettings.WorkingModeauf1in der allgemeinen Konfigurationconfig.jsonkonfigurieren. Erforderlich, wenn die allgemeine Konfigurationsoption auf1gesetzt ist, vom Typstring. -
SplitDocumentByFixedBatchSize- Trennt das Dokument nach einer festen Seitenanzahl.0bedeutet, dass es ausgeschaltet ist, und andere Arten von Trennungen können angewendet werden, andernfalls wird das Dokument unabhängig von vorhandenen Trennungen nach der eingegebenen Anzahl aufgeteilt. Optionaler Parameter vom Typnumber. Standard ist0. -
RetentionPeriods- Das System wird Dokumente nicht für immer aufbewahren. Jeden Tag löscht der Dienst die Dokumente aus den Ordnern. Die Ausführungszeit ist in der Datei config.json im OrdnerC:\ProgramData\STP AG\STP.IM.DocumentCollectorOnPremiseServicekonfigurierbar. Die Aufbewahrungsfrist ist in Tagen festgelegt.Obedeutet, dass Dokumente nicht gelöscht werden. -
RetentionPeriods.OriginalsRetentionPeriodInDays- Wie viele Tage der Dienst wartet, bevor er Dokumente automatisch aus dem Ordneroriginalslöscht. Optionaler Parameter vom Typnumber. Standard ist7. -
RetentionPeriods.ErrorsRetentionPeriodInDays- Wie viele Tage der Dienst wartet, bevor er Dokumente automatisch aus dem Ordnererrorlöscht. Optionaler Parameter vom Typnumber. Standard ist0. -
RetentionPeriods.ProcessedRetentionPeriodInDays- Wie viele Tage der Dienst wartet, bevor er Dokumente automatisch aus dem Ordnerprocessedlöscht. Optionaler Parameter vom Typnumber. Standard ist0.
-
Ausgehende Post
Seit Version 24.08.15.2 unterstützt der DocumentCollector die folgenden Kombinationen von p4-Barcodes und Trennblättern:
- Trennen von ausgehenden Postdokumenten-Chargen nur mit dem winsolvenz.p4 Barcode.
- Trennen von ausgehenden Postdokumenten-Chargen mit dem winsolvenz.p4 Barcode und Trennung ihrer Anhänge mit Dokumententrennblättern.
- Trennen von ausgehenden Postdokumenten-Chargen nur mit Dokumententrennblättern.
Es gibt einige Änderungen im Vergleich zu früheren Versionen:
- Dokumenten-Chargen mit X- oder Y-Barcodes (Code39) werden gescannt und basierend auf dem Barcode auf der ersten Seite des Dokuments verarbeitet.
- Barcodes auf den Seiten der Dokumente werden erkannt, und die Barcode-Seite selbst wird nicht gelöscht.
- Wenn der Barcode erkannt wird, wird er im Dateinamen im Modus
<barcode><timestamp>-<document_number_grouped_by_barcode>.pdfgeschrieben und über den konfiguriertenDmsImportFolder-Pfad an den Document Management System (DMS) Collector übertragen. - Wenn kein Barcode erkannt wird, werden die Dokumente an das Input Management übertragen.
- Wenn es keine Übereinstimmung mit dem
DocumentSeparatorIdentifiergibt, werden die Dokumente basierend auf Barcodes verarbeitet.
⚠️ DocumentSeparatorIdentifier darf nicht mehr denselben
Wert wie die Barcodes haben, da sonst Verwirrung darüber entsteht, ob ein
Dokument oder ein Anhang getrennt werden soll. Wenn
DocumentSeparatorIdentifier mit dem Barcode-Wert übereinstimmt, wird
die Seite mit dem Barcode gelöscht und der Rest des Dokuments im Input Management
verarbeitet.
Verknüpfung mit