Skip to main content

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. 

PS-Settings.png

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
  1. Starten Sie die Windows PowerShell-Konsole (x86 und x64) als Administrator
  2. 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
  3. 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
Invoices/CustomerName/BranchB

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
<leer>

 DO_NOT_PROCESS 

Sofern auf "true" gesetzt wird die Verarbeitung der Datei durch BarcodeOCR abgebrochen und die Datei bleibt im Lauschordner liegen true
false