Barcode-Leser

Prev Next

Baustein zum erkennen von Barcodes

Ereignisaktion - Kurzfassung

Zweck: Erkennt aus einem Eingabedokument die enthaltenen Barcodes.

Tooltip

  • Verwendung: Für erkannte Barcodes werden die Daten in einem Dokument referenziert und über den Wertauflöser "Ergebnis" definiert gespeichert.

  • Parameter: Dokumenteninhalt (Wertauflöser für Eingabedokument), Ergebnis (Wertauflöser für Ergebnisvariable), Barcode-Filter (Wertauflöser für eine Vorgabe für das Format des Barcodes mit einem regulären Ausdruck (RegEx) definiert werden), Barcode-Muster (Wertauflöser um ein Interpretationsmuster zu definieren), Barcodes in einem Dokument zusammenfassen (Wertauflöser, um die Option die Barcodes zusammenzufassen auszuwählen), Dokument aufteilen (Wertauflöser, um die Option zum aufteilen von Dokumenten auszuwählen), Überspringe Barcode-Seite? (Wertauflöser, um die Option auszuwählen welche Seite als Teildokument erscheint)

  • Output: Erkannte Barcodes unter einem oder mehreren Dokumenten.

  •  WARNUNG  Es muss eine Ergebnisvariable angegeben werden.

Siehe auch Barcode-Erkennung

Die Ereignisaktion Barcode Lesen erkennt Barcodes aus einem Dokument und fasst diese unter einem oder mehreren Dokumenten zusammen. Die erkannten Barcodes werden in einer Liste unter Temporäre Werte gespeichert. Jeder Listeneintrag enthält ein Barcode- Ergebnis- Objekt unter welchem der Barcode, das Format und die Seite, auf dem der Barcode gefunden worden ist, gespeichert wird.

Konfiguration

images/download/attachments/137301090/image-2023-5-12_8-56-37-version-1-modificationdate-1683874597176-api-v2.png

Dokumenteninhalt

Der Parameter Dokumenteninhalt muss das Dokument über einen Wertauflöser bereitstellen.

Ergebnis

Über einen Wertauflöser muss eine Variable definiert werden, unter dieser werden die Dokumente abgelegt.

Barcode-Filter

Der Barcode-Filter wird durch einen Wertauflöser definiert. Es wird ein Liste von Barcode-Filtern erwartet. Barcode-Filter entscheiden, welche der in einer Datei erkannten Barcodes überhaupt weiter verarbeitet werden sollen. Ohne Filter werden alle gefundenen Barcodes berücksichtigt. Jeder Barcode-Filter kann eine Vorgabe für das Format des Barcodes mit einem regulären Ausdruck (RegEx) enthalten. Beide Kriterien sind optional. Sie werden innerhalb desselben Filters UND-verknüpft. Sind mehrere Barcode-Filter definiert, werden diese ODER-verknüpft. Ein erkannter Barcode wird also weiterverarbeitet, wenn er für mindestens einen Filter alle angegebenen Kriterien erfüllt.

Barcode-Muster

Das Barcode-Muster wird durch einen Wertauflöser definiert. Ein Barcode-Muster definiert ein erweitertes Interpretationsschema für die Zeichenfolge aus dem Barcode durch eine Kombination von Klartext (z. B. Trennzeichen) und Platzhaltern für Abschnitte, die in Eigenschaften des Dokuments übernommen werden sollen.

Barcodes in einem Dokument zusammenfassen?

Diese Option muss über einen Wertauflöser definierte werden. Sollen die Barcodes in einem Dokument zusammengefasst werden, werden alle erkannten Barcodes in einer Liste, benannt nach der in Ergebnis definierten Variablen, als Temporäre Werte unter dem Dokument gespeichert.

In Kombination mit "Dokument aufteilen" werden für die gespeicherten Dokumente jeweils die erkannten Barcodes als Liste unter Temporären Werte gespeichert.

Dokument aufteilen?

Diese Option muss über einen Wertauflöser definierte werden. Für jeden Barcode wird nur ein Abschnitt(in dem der Barcode erkannt wurde) aus dem Gesamtdokument als (Teil-)Dokument gespeichert und zugewiesen.

Überspringe Barcode Seite?

Diese Option muss über einen Wertauflöser definierte werden. Die Option Überspringe Barcode Seite? wirkt nur in Verbindung mit der Option Dokument aufteilen?. Diese Option regelt, welche Seiten als Teildokument erscheinen.

Beispiel

Konfiguration

Für Auslösenden Ereignisse sowie für die Prüfende Regel wurden keine Ereignisse oder Regeln definiert.

Aktionen bei bestandener Regel:

  • In Setzte Werte wird eine Barcode-Filter Instanz erzeugt und unter der Variable mit dem Namen "bcf" die Werte speichert. Darunter können unter Zielwerte, Format und Regex und unter Quellwerte das Barcode-Format angelegt werden. In diesem Beispiel wird ein Barcode-Filter für Barcode-Format mit: "Code 128" angelegt. Dies bedeutet, es wird nach allen Einträgen mit diesem Format gefiltert.

  • Analog dazu ein weiters Setzte Werte, bei diesem werden die Barcode-Filter- Werte unter der Variablen "bcf2" gespeichert. Der erste Eintrag ist ein Filter nach dem Barcode-Format: "Code 39" und der zweite Eintrag ein Regex- Filter. Der beschreibt, dass nur Barcodes ausgegeben werden sollen, welche mit einer beliebigen Zahlen oder Buchstabenfolge beginnen, aber mit 2 Ziffern Enden müssen.


  • Abschließend folgt die Ereignisaktion Barcode-Leser

    • Für den Wert für den Parameter Dokumentinhalt wird eine Dateireferenz, mit einem Dateipfad einer PDF- Datei mit Barcodes, eingetragen.

    • Für den Parameter Ergebnis wird der Variablenname "result" gesetzt.

    • Im Parameter Barcode-Filter werden die oben definierten Barcodefilter in einer Erzeugten Liste gesetzt.

    • Als weitere Option wird noch Barcodes in einem Dokument zusammenfassen ausgewählt.


images/download/attachments/137301090/image-2023-5-12_12-25-2-version-1-modificationdate-1683887102342-api-v2.pngimages/download/attachments/137301090/image-2023-5-12_13-48-5-version-1-modificationdate-1683892085558-api-v2.png

Ergebnis:

Im Testmodus unter dem Tab Variablen wird folgender Ausschnitt angezeigt:

    <entry>
         <key xsi:type="xsd:string"> result</key>
         <value xsi:type="list">
            <entry name="BarcodeExamples.pdf" description="Detected Barcodes:CODE39;123ABCabc" size="0" reference="" xsi:type="doc:Document">
               <temporaryValues>
                  <data>
                     <entry>
                        <key xsi:type="xsd:string">barcodeResults</key>
                        <value xsi:type="list">
                           <entry barcode="CODE39" format="CODE_39" page="0" xsi:type="doc:BarcodeResult"/>
                           <entry barcode="123ABCabc" format="CODE_128" page="1" xsi:type="doc:BarcodeResult"/>
                        </value>
                     </entry>
                  </data>
               </temporaryValues>
               <documentContent>JVBERi0xLjcKCjQgMCBvYmoKKElkZW50aXR5KQplbmRvYmoKNSAwIG9iagooQWRvYmUpCmVuZG9iago4IDAgb2JqCjw8Ci9GaWx0ZXIgL0ZsYXRlRGVjb2RlCi9MZW5ndGggMTc4MzIwCi9MZW5ndGgx...=</documentContent>
               <attributes/>
            </entry>
         </value>
      </entry>

→ Auswertung:

In dem Beispiel- Dokument sind auf mehreren Seiten Barcodes gespeichert, teilweise ein oder mehrere Barcodes pro Seite. Es wird ein Dokument angelegt und unter Temporären Werten die gefundenen Barcodeinformationen abgelegt. Dass nur ein Dokument angelegt wurde, wird durch die ausgewählten Option "Barcodes in einem Dokument zusammenfassen" verursacht. Dass nur zwei Barcodes in der Liste sind, liegt an den angelegten Barcode-Filtern. Wäre hier zusätzlich die Option "Dokument aufteilen" ausgewählt worden, wäre für Seiten mit mehreren Barcodes ein Dokument angelegt worden und unter Temporären Werten in der Liste ein Eintrag, pro erkannten Barcode, eingetragen worden. Sonst wird wenn nur "Dokument aufteilen" ausgewählt wird, ein Dokument pro erkannten Barcode angelegt.