Skripte und Schnittstellen
Beachten Sie bitte, dass wir keine Unterstützung bei der Entwicklung von eigenen Skripten für Ihren individuellen Anforderungsfall leisten können.
Wir bieten eine kostenpflichtige individuelle Entwicklung von Skripten oder Erweiterungen von BarcodeOCR an, falls Interesse besteht.
BarcodeOCR bietet mehrere Schnittstellen an, um nachfolgende Prozesse zu informieren bzw. zu automatisieren oder Ihre Dokumente individuell einzusortieren.
Typ | Schnittstelle | Aufruf | Konfiguration in BarcodeOCR | typischer Anwendungsfall |
---|---|---|---|---|
Typ 1 | .bat-Skript/.exe-Anwendung | nach dem Speichern einer Ausgabedatei | unter ERWEITERT | Weiterverarbeitung pro Ausgabedatei |
Typ 2 | .bat-Skript/exe-Anwendung | nach dem Verarbeiten einer Eingangsdatei | unter ERWEITERT | Weiterverarbeitung mehrere Ausgabedateien nachdem eine Eingangsdatei verarbeitet wurde |
Typ 3 | PowerShell-Skript - Unterordnerskript | während der Verarbeitung | unter BENENNEN/SORTIEREN | Festlegen eines Unterordnerpfades oder Überschreiben des Dateinamens |
Typ 4 | PowerShell-Skript | nach der Verarbeitung | unter ERWEITERT | Weiterverarbeitung pro Ausgabedatei - mit weiteren Optionen und mehr Informationen |
Typ 5 | PowerShell-Skript | vor der Verarbeitung einer Quelldatei | unter ERWEITERT | Überspringen bestimmter Dateien, allgemeine Verarbeitung vorab, Zuweisen in eine andere Arbeitsanweisung |
Bei der Installation von BarcodeOCR werden mehrere Beispielskripte im Ordner "Script Samples" im Installationsordner abgelegt. Diese bereiten die übergebenen Parameter bereits auf und sind ein guter Ausgangspunkt für Ihre individuelle Logik.
Hinweis zu Ausführung von PowerShell-Skripten
Für einen produktiven Betrieb des fertigen Skriptes sollte dieses mit einem vertrauenswürdigen Code-Signing Zertifikat signiert werden und die das ExecutionPolicy-Level sollte zurückgestellt werden.
Bei PowerShell-Skripten gibt es gegenüber .bat-Skripten eine Besonderheit: Je nach Konfiguration und Betriebssystem ist die Ausführung der Skripte standardmäßig nicht erlaubt. In diesem Fall kann BarcodeOCR das Skript nicht ausführen und wird im Fehler-Log dazu auch einen Hinweis protokollieren. Stellen Sie bitte vor der Nutzung einer PowerShell-Schnittstelle sicher, dass Sie die Ausführung von Skripten auf Ihrem System erlauben. (Hilfeseite von Microsoft)
Die installierten Beispielskripte sind nicht digital signiert. Um diese in einer Testumgebung auszuprobieren ist ein ExecutionLevel "Unrestricted" notwendig. BarcodeOCR führt die Skripte - je nach System und Installation - in der x86- oder in der x64-PowerShell-Konsole aus. Stellen Sie bitte sicher, dass beide Umgebungen entsprechend konfiguriert sind.
Mit dieser Einstellung erlauben Sie die Ausführung aller PowerShell-Skripte. Wenn Sie sich nicht sicher sind, kontaktieren Sie dazu ggf. ihren IT-Betreuer oder IT-Administrator vor dem Konfigurieren dieser Einstellung.
Die Schritte zum Setzen der Einstellung
- Starten Sie die Windows PowerShell-Konsole (x86 und x64) als Administrator
- Führen Sie den Befehl Get-ExecutionPolicy aus und notieren Sie sich den aktuellen Wert (in dem Screenshot "Restricted") - Somit können Sie den Wert später zurückstellen
- Führen Sie den Befehl Set-ExecutionPolicy Unrestricted aus und bestätigen Sie die Eingabe bei der Abfrage mit y
Typ 1 - bat/exe nach dem Speichern einer Ausgabedatei
Allgemeines
- Die Schnittstelle wird nach jeder Speicherung einer Ausgabedatei (Fehler- & Erfolgsordner) aufgerufen
- Die Parameter werden fest übergeben - eine Anpassung der Reihenfolge der Parameter oder der Bezeichnung ist nicht möglich
- .bat-Skripte oder .exe-Anwendungen können gestartet werden
- BarcodeOCR wartet, bis das Skript beendet wurde. Danach nächste Datei für die Speicherung vorbereitet
- Es existiert kein Timeout beim Warten auf den Prozess
Parameter
Parameter | Bezeichnung | Beispielwerte |
---|---|---|
-result | Ergebnis der Verarbeitung | success / error |
-configurationName | Name der Konfiguration | "Test" |
-source | Vollständiger Pfad zur Eingangsdatei | "C:\Config\dec24748\Test\Testfile.pdf" |
-destination | Vollständiger Pfad zur Ausgabedatei | "C:\Config\dec24748\Test\Success\INV_12345.pdf" |
-pageFrom | Seitenzahl erste Seite des Ursprungsstapels | 1 |
-pageTo | Seitenzahl letzte Seite des Ursprungsstapels | 1 |
-errorReason | Grund warum das Dokument in den Fehlerordner sortiert wurde | None / NoBarcode / Duplicate / Error |
-detectedBarcode | Erkannter Barcode | INV_12345 |
Beispiel einer Parameterübergabe
Hinweis: Diese Form der Übergabe kann nicht verändert werden
-result=success -configurationName="Test" -source="C:\Config\dec24748\Test\Testfile.pdf" -destination="C:\Config\dec24748\Test\Success\\INV_12345.pdf" -pageFrom=1 -pageTo=1 -errorReason=None -detectedBarcode=INV12345
Typ 2 - bat/exe nach dem Verarbeiten einer Eingangsdatei
Allgemeines
- Die Schnittstelle wird vor dem Löschen der Eingangsdatei aufgerufen - es wurden zuvor also Ausgabedateien erzeugt
- Die Parameter werden fest übergeben - eine Anpassung der Reihenfolge der Parameter oder der Bezeichnung ist nicht möglich
- .bat-Skripte oder .exe-Anwendungen können gestartet werden
- BarcodeOCR wartet, bis das Skript beendet wurde. Danach nächste Datei für die Speicherung vorbereitet
- Es existiert kein Timeout beim Warten auf den Prozess
Parameter
Parameter | Bezeichnung | Beispielwerte |
---|---|---|
-source | Vollständiger Pfad zur Eingangsdatei | "C:\Config\dec24748\Test\Testfile.pdf" |
-files | Liste der gespeicherten Dateinamen, erkanntem Barcode und des Status | "INV_1.pdf","INV_1","True" |
Beispiel einer Parameterübergabe
Hinweis: Diese Form der Übergabe kann nicht verändert werden
-source="C:\Config\dec24748\Tour\test invoices.pdf" -files=""S-INV-PT-03757.pdf","INV-PT-03757","True";"S-INV-PT-03757_0.pdf","INV-PT-03757","True";"S-INV-PT-03757_1.pdf","INV-PT-03757","True";"S-INV-PT-03757_2.pdf","INV-PT-03757","True";"S-INV-PT-03757_3.pdf","INV-PT-03757","True";"S-INV-PT-03757_4.pdf","INV-PT-03757","True";"S-INV-PT-03757_5.pdf","INV-PT-03757","True";"S-INV-PT-03757_6.pdf","INV-PT-03757","True";"S-INV-PT-03757_7.pdf","INV-PT-03757","True";"S-INV-PT-03757_8.pdf","INV-PT-03757","True""
Typ 3 - PowerShell während der Verarbeitung
Allgemeines
- Die Schnittstelle während der Vorbereitung der Speicherung einer Ausgabedatei ausgeführt
- Die Parameter werden als Datenobjekt übergeben
- BarcodeOCR wartet, bis das Skript beendet wurde und interpretiert die zurückgegebenen Werte. Weichen Sie von "leeren" Werten ab, nutzt BarcodeOCR diese für die weitere Speicherung
- Umbenennungen und Duplikatsbehandlungen die in der Benutzeroberfläche definiert wurden werden trotzdem angewandt
- Es existiert kein Timeout beim Warten auf das Skript
Parameter
Es wird bei dieser Schnittstelle ein Datenobjekt mitgegeben, welches auch Arrays und umfassende Texte beinhalten kann:
Allgemeine Parameter
Parameter | Bezeichnung | Beispielwerte |
---|---|---|
ConfigurationName | Name der Arbeitsanweisung | "Test" |
ConfigurationGuid | Unique Identifier der Arbeitsanweisung | cbfc4771-7f73-481e-b1ca-e4b95eb3d605 |
ConfigurationFilePath | Dateipfad zur Konfigurationsdatei | "C:\ProgramData\Keil IT\BarcodeOCR\AnalyserConfig.xml" |
UsedBarcode | Erkannter Barcode der für die Trennung und Umbenennung verwendet wird | Barcode-Content, bzw. bei Fehlerdateien leer |
Result | Wurde die Datei im Ausgabeordner abgelegt? | True = Datei im Erfolgsordner gespeichert False = Datei im Fehlerordner gespeichert |
ErrorReason | Grund warum das Dokument in den Fehlerordner gelegt wurde | NoBarcode, CorruptedFile, Unknown, Duplicate, NameError |
FileProcessStartTime | Zeitpunkt wo die Verarbeitung der Datei gestartet wurde | |
SourceFilePath | Vollständiger Pfad zur Quelldatei | C:\Config\dec24748\Tour\Sample.pdf |
BackupFilePath | Vollständiger Pfad zur Datei im Sicherungsordner (sofern aktiv) | C:\Config\dec24748\Tour\Backup\Sample_eb3d605.pdf |
DestinationFilePath | Vollständiger Pfad zur Ausgabedatei | C:\Config\dec24748\Tour\Error\No_Barcode_1.pdf' |
Subfolder | Unterordnerstruktur, sofern vorher definiert | Subfolder\Sub-Subfolder |
NumberOfPages | Anzahl an Seiten des Dokumentes | 4 |
NumberOfRemovedPages | Anzahl an entfernten Seiten durch die Leerseitenerkennung | 0 |
StartPage | Seitenzahl erste Seite des Ursprungsstapels | 1 |
EndPage | Seitenzahl letzte Seite des Ursprungsstapels | 4 |
Parameter pro Seite
Folgende Informationen werden als Array übergeben und werden pro Seite im Ausgabedokument übergeben
Parameter | Bezeichnung | Beispielwerte |
---|---|---|
Number | Seitenzahl | 4 |
RecognizedText | Erkannter Text auf dieser Seite (Modul: Texterkennung) | "Lorum ipsum ...." |
Barcodes | Liste mit den erkannten Barcodes auf dieser Seite | Pro Barcode: Typ, Text, und X/Y-Koordinaten |
Rückgabewerte
- Diese Schnittstelle kann zwei Werte an BarcodeOCR zurückgeben, die bei der weiteren Verarbeitung berücksichtigt werden.
- Das Beispielskript vereinfacht diesen Schritt und bietet zwei entsprechende Variablen an, die lediglich gesetzt werden müssen.
- Werden leere Variablen zurückgegeben, werden die Werte nicht überschrieben
- BarcodeOCR protokolliert die zurückgegebenen Werte des Skriptes in dem Ablaufprotokoll
- Wirft das Skript einen Fehler wird die Ausgabe des Skriptes ignoriert und die Datei wird nach den Einstellungen der Arbeitsanweisung verarbeitet
Parameter | Bezeichnung | Beispielwerte |
---|---|---|
SUBFOLDER_NAME | Pfad der Unterordnerstruktur die genutzt werden soll (Ordner werden durch BarcodeOCR erzeugt, falls diese nicht existieren) | Invoices |
FILE_NAME | Dateiname der als Ausgabedatei verwendet werden soll. Dieser kann durch das Skript überschrieben werden | Invoice_VariableFromSQL_Test.pdf |
Typ 4 - PowerShell nach der Verarbeitung
Allgemeines
- Die Schnittstelle wird nach dem Speichervorgang einer Ausgabedatei aufgerufen
- Die Parameter werden als Datenobjekt übergeben
- BarcodeOCR wartet, bis das Skript beendet wurde und interpretiert die zurückgegebenen Werte. Weichen Sie von "leeren" Werten ab, nutzt BarcodeOCR diese für die weitere Speicherung
- Umbenennungen und Duplikatsbehandlungen die in der Benutzeroberfläche definiert wurden werden trotzdem angewandt
- Es existiert kein Timeout beim Warten auf das Skript
Parameter
Es wird bei dieser Schnittstelle ein Datenobjekt mitgegeben, welches auch Arrays und umfassende Texte beinhalten kann:
Allgemeine Parameter
Parameter | Bezeichnung | Beispielwerte |
---|---|---|
ConfigurationName | Name der Arbeitsanweisung | "Test" |
ConfigurationGuid | Unique Identifier der Arbeitsanweisung | cbfc4771-7f73-481e-b1ca-e4b95eb3d605 |
ConfigurationFilePath | Dateipfad zur Konfigurationsdatei | "C:\ProgramData\Keil IT\BarcodeOCR\AnalyserConfig.xml" |
UsedBarcode | Erkannter Barcode der für die Trennung und Umbenennung verwendet wird | Barcode-Content, bzw. bei Fehlerdateien leer |
Result | Wurde die Datei im Ausgabeordner abgelegt? | True = Datei im Erfolgsordner gespeichert False = Datei im Fehlerordner gespeichert |
ErrorReason | Grund warum das Dokument in den Fehlerordner gelegt wurde | NoBarcode, CorruptedFile, Unknown, Duplicate, NameError |
FileProcessStartTime | Zeitpunkt wo die Verarbeitung der Datei gestartet wurde | |
SourceFilePath | Vollständiger Pfad zur Quelldatei | C:\Config\dec24748\Tour\Sample.pdf |
BackupFilePath | Vollständiger Pfad zur Datei im Sicherungsordner (sofern aktiv) | C:\Config\dec24748\Tour\Backup\Sample_eb3d605.pdf |
DestinationFilePath | Vollständiger Pfad zur Ausgabedatei | C:\Config\dec24748\Tour\Error\No_Barcode_1.pdf' |
Subfolder | Unterordnerstruktur, sofern vorher definiert | Subfolder\Sub-Subfolder |
NumberOfPages | Anzahl an Seiten des Dokumentes | 4 |
NumberOfRemovedPages | Anzahl an entfernten Seiten durch die Leerseitenerkennung | 0 |
StartPage | Seitenzahl erste Seite des Ursprungsstapels | 1 |
EndPage | Seitenzahl letzte Seite des Ursprungsstapels | 4 |
Parameter pro Seite
Folgende Informationen werden als Array übergeben und werden pro Seite im Ausgabedokument übergeben
Parameter | Bezeichnung | Beispielwerte |
---|---|---|
Number | Seitenzahl | 4 |
RecognizedText | Erkannter Text auf dieser Seite (Modul: Texterkennung) | "Lorum ipsum ...." |
Barcodes | Liste mit den erkannten Barcodes auf dieser Seite | Pro Barcode: Typ, Text, und X/Y-Koordinaten |
Typ 5 - PowerShell vor der Verarbeitung
Allgemeines
- Die Schnittstelle nach der Erkennung einer neuen Datei im Lauschordner, aber noch vor der Verarbeitung durch BarcodeOCR ausgeführt
- Die Parameter werden als Datenobjekt übergeben
- BarcodeOCR wartet, bis das Skript beendet wurde und interpretiert die zurückgegebenen Werte. Weichen Sie von "leeren" Werten ab, nutzt BarcodeOCR diese für die weitere Speicherung
- Es existiert kein Timeout beim Warten auf das Skript
Parameter
Es wird bei dieser Schnittstelle ein Datenobjekt mitgegeben, welches auch Arrays und umfassende Texte beinhalten kann:
Allgemeine Parameter
Parameter | Bezeichnung | Beispielwerte |
---|---|---|
ConfigurationName | Name der Arbeitsanweisung | "Test" |
ConfigurationGuid | Unique Identifier der Arbeitsanweisung | cbfc4771-7f73-481e-b1ca-e4b95eb3d605 |
ConfigurationFilePath | Dateipfad zur Konfigurationsdatei | "C:\ProgramData\Keil IT\BarcodeOCR\AnalyserConfig.xml" |
SourceFilePath | Vollständiger Pfad zur Quelldatei | C:\Config\dec24748\Tour\Sample.pdf |
Rückgabewerte
- Diese Schnittstelle kann zwei Werte an BarcodeOCR zurückgeben, die bei der weiteren Verarbeitung berücksichtigt werden.
- Das Beispielskript vereinfacht diesen Schritt und bietet zwei entsprechende Variablen an, die lediglich gesetzt werden müssen.
- Werden leere Variablen zurückgegeben, werden die Werte nicht überschrieben
- BarcodeOCR protokolliert die zurückgegebenen Werte des Skriptes in dem Ablaufprotokoll
- Wirft das Skript einen Fehler wird die Ausgabe des Skriptes ignoriert und die Datei wird nach den Einstellungen der Arbeitsanweisung verarbeitet
Parameter | Bezeichnung | Beispielwerte |
---|---|---|
OVERWRITE_CONFIG | Optional: Erwartet einen Namen einer Arbeitsanweisung (wie im ersten Schritt definiert, jedoch case insensitive). Sofern gesetzt und gültig, wird die Datei mit den Einstellungen der Arbeitsanweisung verarbeitet | Beispielanweisung |
DO_NOT_PROCESS | Sofern auf "true" gesetzt wird die Verarbeitung der Datei durch BarcodeOCR abgebrochen und die Datei bleibt im Lauschordner liegen | true false |