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.

TypSchnittstelleAufrufKonfiguration in BarcodeOCRtypischer Anwendungsfall
Typ 1.bat-Skript/.exe-Anwendung nach dem Speichern einer Ausgabedateiunter ERWEITERTWeiterverarbeitung pro Ausgabedatei
Typ 2.bat-Skript/exe-Anwendung nach dem Verarbeiten einer Eingangsdateiunter ERWEITERTWeiterverarbeitung mehrere Ausgabedateien nachdem eine Eingangsdatei verarbeitet wurde
Typ 3PowerShell-Skript - Unterordnerskriptwährend der Verarbeitungunter BENENNEN/SORTIERENFestlegen eines Unterordnerpfades oder Überschreiben des Dateinamens
Typ 4PowerShell-Skriptnach der Verarbeitungunter ERWEITERTWeiterverarbeitung pro Ausgabedatei - mit weiteren Optionen und mehr Informationen
Typ 5PowerShell-Skriptvor der Verarbeitung einer Quelldateiunter 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

  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

ParameterBezeichnungBeispielwerte
-resultErgebnis der Verarbeitungsuccess / error
-configurationNameName der Konfiguration"Test"
-sourceVollständiger Pfad zur Eingangsdatei"C:\Config\dec24748\Test\Testfile.pdf"
-destinationVollständiger Pfad zur Ausgabedatei"C:\Config\dec24748\Test\Success\INV_12345.pdf"
-pageFromSeitenzahl erste Seite des Ursprungsstapels 1
-pageToSeitenzahl letzte Seite des Ursprungsstapels 1
-errorReasonGrund warum das Dokument in den Fehlerordner sortiert wurdeNone / NoBarcode / Duplicate / Error
-detectedBarcodeErkannter BarcodeINV_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

ParameterBezeichnungBeispielwerte
-sourceVollständiger Pfad zur Eingangsdatei"C:\Config\dec24748\Test\Testfile.pdf"
-filesListe 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

ParameterBezeichnungBeispielwerte
ConfigurationNameName der Arbeitsanweisung"Test"
ConfigurationGuidUnique Identifier der Arbeitsanweisungcbfc4771-7f73-481e-b1ca-e4b95eb3d605
ConfigurationFilePathDateipfad zur Konfigurationsdatei"C:\ProgramData\Keil IT\BarcodeOCR\AnalyserConfig.xml"

UsedBarcode 

Erkannter Barcode der für die Trennung und Umbenennung verwendet wirdBarcode-Content, bzw. bei Fehlerdateien leer
ResultWurde die Datei im Ausgabeordner abgelegt?True = Datei im Erfolgsordner gespeichert
False = Datei im Fehlerordner gespeichert
ErrorReasonGrund warum das Dokument in den Fehlerordner gelegt wurdeNoBarcode, CorruptedFile, Unknown, Duplicate, NameError
FileProcessStartTimeZeitpunkt wo die Verarbeitung der Datei gestartet wurde
SourceFilePathVollständiger Pfad zur QuelldateiC:\Config\dec24748\Tour\Sample.pdf
BackupFilePathVollständiger Pfad zur Datei im Sicherungsordner (sofern aktiv)C:\Config\dec24748\Tour\Backup\Sample_eb3d605.pdf
DestinationFilePathVollständiger Pfad zur AusgabedateiC:\Config\dec24748\Tour\Error\No_Barcode_1.pdf'
SubfolderUnterordnerstruktur, sofern vorher definiertSubfolder\Sub-Subfolder
NumberOfPagesAnzahl an Seiten des Dokumentes4
NumberOfRemovedPagesAnzahl an entfernten Seiten durch die Leerseitenerkennung0
StartPageSeitenzahl erste Seite des Ursprungsstapels1
EndPageSeitenzahl letzte Seite des Ursprungsstapels4


Parameter pro Seite

Folgende Informationen werden als Array übergeben und werden pro Seite im Ausgabedokument übergeben

ParameterBezeichnungBeispielwerte

Number

Seitenzahl4

RecognizedText 

Erkannter Text auf dieser Seite (Modul: Texterkennung)"Lorum ipsum ...."
BarcodesListe mit den erkannten Barcodes auf dieser SeitePro 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
ParameterBezeichnungBeispielwerte

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

ParameterBezeichnungBeispielwerte
ConfigurationNameName der Arbeitsanweisung"Test"
ConfigurationGuidUnique Identifier der Arbeitsanweisungcbfc4771-7f73-481e-b1ca-e4b95eb3d605
ConfigurationFilePathDateipfad zur Konfigurationsdatei"C:\ProgramData\Keil IT\BarcodeOCR\AnalyserConfig.xml"
UsedBarcodeErkannter Barcode der für die Trennung und Umbenennung verwendet wirdBarcode-Content, bzw. bei Fehlerdateien leer
ResultWurde die Datei im Ausgabeordner abgelegt?True = Datei im Erfolgsordner gespeichert
False = Datei im Fehlerordner gespeichert
ErrorReasonGrund warum das Dokument in den Fehlerordner gelegt wurdeNoBarcode, CorruptedFile, Unknown, Duplicate, NameError
FileProcessStartTimeZeitpunkt wo die Verarbeitung der Datei gestartet wurde
SourceFilePathVollständiger Pfad zur QuelldateiC:\Config\dec24748\Tour\Sample.pdf
BackupFilePathVollständiger Pfad zur Datei im Sicherungsordner (sofern aktiv)C:\Config\dec24748\Tour\Backup\Sample_eb3d605.pdf
DestinationFilePathVollständiger Pfad zur AusgabedateiC:\Config\dec24748\Tour\Error\No_Barcode_1.pdf'
SubfolderUnterordnerstruktur, sofern vorher definiertSubfolder\Sub-Subfolder
NumberOfPagesAnzahl an Seiten des Dokumentes4
NumberOfRemovedPagesAnzahl an entfernten Seiten durch die Leerseitenerkennung0
StartPageSeitenzahl erste Seite des Ursprungsstapels1
EndPageSeitenzahl letzte Seite des Ursprungsstapels4


Parameter pro Seite

Folgende Informationen werden als Array übergeben und werden pro Seite im Ausgabedokument übergeben

ParameterBezeichnungBeispielwerte

Number

Seitenzahl4

RecognizedText 

Erkannter Text auf dieser Seite (Modul: Texterkennung)"Lorum ipsum ...."
BarcodesListe mit den erkannten Barcodes auf dieser SeitePro 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

ParameterBezeichnungBeispielwerte
ConfigurationNameName der Arbeitsanweisung"Test"
ConfigurationGuidUnique Identifier der Arbeitsanweisungcbfc4771-7f73-481e-b1ca-e4b95eb3d605
ConfigurationFilePathDateipfad zur Konfigurationsdatei"C:\ProgramData\Keil IT\BarcodeOCR\AnalyserConfig.xml"
SourceFilePathVollständiger Pfad zur QuelldateiC:\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
ParameterBezeichnungBeispielwerte

 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 liegentrue
false