8.5 Filter
8.5.1 Übersicht und Grundprinzip
Filter ermöglichen es Ihnen, genau festzulegen, welche PDF-Dateien von einem Profil verarbeitet werden sollen. Wenn keine Filterkriterien definiert sind, werden alle PDF-Dateien in den überwachten Ordnern verarbeitet.
Wie Filter funktionieren
Bei jeder neuen PDF-Datei prüft das Programm: 1. Entspricht die Datei allen definierten Filterkriterien? 2. Falls ja: Die Datei wird verarbeitet 3. Falls nein: Die Datei wird übersprungen (Status: “Kein Treffer”, wenn von keinem Profil aufgrund der Filter verarbeitet)
Die Filter-Registerkarten
Die Filtereinstellungen sind in folgende Registerkarten unterteilt:
| Registerkarte |
Beschreibung |
| Dateieigenschaften |
Filtert nach Dateiname, Pfad, Größe, Datum |
| PDF-Daten |
Filtert nach PDF-Metadaten, Inhalt, Anhängen und Barcodes |
| Extrahierte Daten |
Filtert nach den Ergebnissen der Extrahierungsregeln |
| Ergebnisvorschau |
Zeigt Filterergebnisse für Beispieldateien |
| Prüfung auf Überschneidungen |
Prüft auf Konflikte mit anderen Profilen |
8.5.2 Registerkarte: Dateieigenschaften
Hier filtern Sie nach Eigenschaften der Datei selbst.
Ordnerpfad enthält / enthält nicht
Filtert nach dem Speicherort der Datei.
Beispiel: Um nur Dateien aus dem Unterordner “Rechnungen” zu verarbeiten: - Ordnerpfad enthält: Rechnungen
Geprüft wird stets der aktuelle Speicherort: Wird eine Datei während der Verarbeitung von einem Profil verschoben, sehen nachfolgende Profile desselben Durchgangs bereits den neuen Ordner.
Dateiname enthält / enthält nicht
Filtert nach dem Namen der PDF-Datei.
Beispiele: - Dateiname enthält: Rechnung - Verarbeitet alle Dateien mit “Rechnung” im Namen - Dateiname enthält nicht: ENTWURF - Ignoriert Dateien mit “ENTWURF” im Namen
Gültigkeit der Dateinamen-Prüfung
Neben den beiden Feldern legt die Auswahl “Gültigkeit” fest, welcher Name geprüft wird, wenn eine Datei während der Verarbeitung umbenannt wird (z.B. durch die Aufgabe “Datei umbenennen”):
| Auswahl |
Bedeutung |
| ursprünglicher Dateiname |
Geprüft wird immer der Name, unter dem die Datei aufgegriffen wurde. Eine Umbenennung durch ein zuvor angewendetes Profil ändert das Filterergebnis nicht. |
| auch nach Umbenennung |
Geprüft wird der jeweils aktuelle Name. Da die Filterkriterien vor dem Start jedes Profils ausgewertet werden, reagieren nachfolgende Profile desselben Durchgangs damit auf Umbenennungen durch vorherige Profile. |
Neu angelegte Profile verwenden “ursprünglicher Dateiname”; länger bestehende Profile verwenden aus Kompatibilitätsgründen “auch nach Umbenennung”, sofern die Auswahl nie geändert wurde.
Anwendungsfall “Umbenennung als Erledigt-Kennzeichen”: Versieht eines Ihrer Profile fertig verarbeitete Dateien z.B. mit dem Präfix @, sorgt in den übrigen Profilen desselben Ordners der Eintrag <BeginOfRegex>^@<EndOfRegex> im Feld “enthält nicht:” mit der Gültigkeit “auch nach Umbenennung” dafür, dass die Datei nach der Umbenennung von keinem weiteren Profil mehr verarbeitet wird - auch dann nicht, wenn dessen Filterkriterien beim Aufgreifen noch gepasst hätten.
Hinweis: Die Gültigkeit-Auswahl bestimmt nur, welcher Name geprüft wird - nicht, wie oft geprüft wird. Ob ein Profil seine Filterkriterien zusätzlich vor jeder einzelnen Aufgabe erneut auswertet, steuert die separate Option “Filter vor jeder Aufgabe erneut prüfen” (Abschnitt 8.2.10). Vorsicht bei der Kombination: Benennt ein Profil die Datei selbst so um, dass sie einen eigenen Ausschluss mit “auch nach Umbenennung” erfüllt, brechen bei aktivierter Option die restlichen Aufgaben dieses Profils ab. Für das Erledigt-Kennzeichen-Muster sollte die Option daher deaktiviert bleiben.
Noch robuster als das Umbenennen ist übrigens das Verschieben fertig verarbeiteter Dateien in einen nicht überwachten Ordner: Der Eingangsordner bleibt dann klein, und Ausschlussfilter sind gar nicht nötig.
Dateigröße
Filtert nach der Größe der Datei. Verfügbare Vergleichsoperatoren: - Kleiner als - Größer als - Zwischen
Einheiten: Bytes (B), Kilobytes (KB), Megabytes (MB)
Anwendungsfall: Sehr große Dateien (z.B. > 50 MB) in ein separates Profil zur Komprimierung leiten.
Erstellungsdatum / Änderungsdatum
Filtert nach dem Datum der Datei. Verfügbare Optionen: - Zwischen: Zwei feste Daten angeben - Älter als: X Tage/Wochen/Monate/Jahre - Jünger als: X Tage/Wochen/Monate/Jahre
Anwendungsfall: Nur Dateien verarbeiten, die in den letzten 7 Tagen erstellt wurden.
8.5.3 Registerkarte: PDF-Daten
Hier filtern Sie nach Inhalten und Eigenschaften der PDF-Datei selbst.
PDF-Dateien können Metadaten enthalten, die vom Ersteller-Programm gesetzt wurden.
| Filter |
Beschreibung |
| Autor enthält / enthält nicht |
Der Autor des Dokuments |
| Titel enthält / enthält nicht |
Der Dokumenttitel |
| Betreff enthält / enthält nicht |
Der Betreff |
| Schlüsselwörter enthalten / enthalten nicht |
Hinterlegte Schlüsselwörter |
| Ersteller enthält / enthält nicht |
Das Erstellungsprogramm |
| Erzeuger enthält / enthält nicht |
Das Konvertierungsprogramm |
Tipp: Sie können die Metadaten einer PDF-Datei in den Eigenschaften des Dokuments einsehen (Rechtsklick > Eigenschaften in vielen PDF-Viewern).
Anwendungsfall: Ein Scanner speichert seinen Namen als “Ersteller”. Sie können so Dateien von verschiedenen Scannern unterschiedlich verarbeiten.
Dokumenttext enthält / enthält nicht
Durchsucht den gesamten Text des PDF-Dokuments.
Beispiele: - Dokumententext enthält: Rechnung - Nur PDFs mit dem Wort “Rechnung” - Dokumententext enthält: Mustermann GmbH - Nur PDFs von diesem Absender
Seitenbereich: Optional können Sie den Suchbereich auf bestimmte Seiten einschränken: - Alle Seiten (Standard) - Nur erste Seite - Nur letzte Seite - Seitenbereich (z.B. “1-3”)
Seitenzahl
Filtert nach der Anzahl der Seiten. Vergleichsoperatoren: - Kleiner als - Größer als - Zwischen
Anwendungsfall: Einzelseiten-Dokumente anders verarbeiten als mehrseitige.
Zeichenzahl
Filtert nach der Anzahl der Zeichen im Dokument.
Anwendungsfall: PDFs ohne Text (Zeichenzahl = 0) zur OCR-Verarbeitung weiterleiten.
PDF-Anhänge
Manche PDF-Dateien enthalten eingebettete Anhänge.
Anhanganzahl: Filtert nach der Anzahl der eingebetteten Anhänge. Vergleichsoperatoren: - Kleiner als - Größer als - Zwischen
Anhangname enthält / enthält nicht: Filtert nach dem Namen der eingebetteten Anhänge.
Beispiel: ZUGFeRD-Rechnungen enthalten oft einen Anhang namens factur-x.xml: - Anhangname enthält: factur-x.xml
Anwendungsfall: PDFs mit Anhängen (z.B. ZUGFeRD-Rechnungen) gesondert verarbeiten.
Barcode
Filtert nach Barcode-Inhalten im PDF.
| Option |
Beschreibung |
| PDF muss Barcode enthalten |
Nur PDFs mit mindestens einem Barcode |
| PDF darf keinen Barcode enthalten |
Nur PDFs ohne Barcodes |
| Barcode-Wert enthält |
Filtert nach dem Inhalt des Barcodes |
| Barcode-Wert enthält nicht |
Schließt bestimmte Barcode-Werte aus |
Unterstützte Barcode-Typen: - 1D-Codes: Code128, Code39, EAN-13, EAN-8, UPC-A, ITF, Codabar - 2D-Codes: QR-Code, DataMatrix, PDF417, Aztec
Tipp: Die Barcode-Erkennung nutzt maschinelles Lernen für höhere Genauigkeit. Diese Option können Sie in den Programmoptionen unter Verarbeitung ein- oder ausschalten.
Auf dieser Registerkarte verwenden Sie die Ergebnisse Ihrer Extrahierungsregeln (Seite “Datenextrahierung”) als Filterkriterien. So können Sie beispielsweise nur Rechnungen eines bestimmten Lieferanten verarbeiten, Beträge über einer Grenze aussteuern oder Dateien überspringen, bei denen keine Rechnungsnummer gefunden wurde.
Für jede Extrahierungsregel wird ein eigener Bereich mit dem Regelnamen als Überschrift angezeigt.
Über die obere Auswahlliste legen Sie fest, ob die Extraktion selbst geprüft werden soll:
| Option |
Beschreibung |
| Extrahierung: ohne Auswertung |
Der Extraktionsstatus wird nicht geprüft (Standard) |
| Extrahierung: muss einen Wert liefern |
Die Datei wird nur verarbeitet, wenn die Regel erfolgreich einen Wert extrahiert |
| Extrahierung: darf keinen Wert liefern |
Die Datei wird nur verarbeitet, wenn die Regel KEINEN Wert liefert |
Anwendungsfall: Dateien, bei denen keine Rechnungsnummer erkannt wurde, sollen nicht automatisch abgelegt werden, sondern zur manuellen Prüfung liegen bleiben - wählen Sie “muss einen Wert liefern”.
Wertvergleich
Zusätzlich (oder stattdessen) können Sie den extrahierten Wert vergleichen. Die verfügbaren Vergleiche richten sich nach dem Datentyp der Regel:
| Datentyp |
Vergleiche |
| Text (auch Abfragen) |
enthält / enthält nicht - mit der vollen Filter-Syntax inkl. UND/ODER-Verknüpfungen, regulären Ausdrücken, Zahlenbereichen und dynamischen Listen |
| Datum |
Wert liegt zwischen zwei Daten, ist älter als bzw. jünger als X Tage/Wochen/Monate/Jahre |
| Zahl |
Wert ist kleiner als, größer als, gleich oder liegt zwischen zwei Zahlen |
Beispiele:
- Regel “Lieferant” (Text) - enthält:
Mustermann GmbH<ODER>Schmidt AG - nur Dokumente dieser Lieferanten werden verarbeitet
- Regel “Rechnungsbetrag” (Zahl) - Wert: ist größer als
500 - hochpreisige Rechnungen in einen gesonderten Freigabe-Ordner leiten
- Regel “Rechnungsdatum” (Datum) - Wert: ist älter als
30 Tage - überfällige Belege gesondert behandeln
Hinweis: Ein gesetzter Wertvergleich setzt automatisch voraus, dass die Extraktion erfolgreich war - schlägt die Extraktion fehl, gilt das Kriterium als nicht erfüllt.
Regeln mit gleichem Namen (Rückfallwerte)
Regeln mit demselben Namen bilden eine Gruppe: Es zählt das Ergebnis der ersten erfolgreichen Regel - genauso wie bei den Platzhaltern. Auf dieser Registerkarte erscheint pro Gruppe nur ein Bereich.
Wichtige Hinweise
- Eingescannte Dateien ohne Textebene: Der Filter wird VOR den Aufgaben geprüft. Extrahiert eine Regel aus dem Dokumententext, schlägt sie bei Scans ohne Textebene fehl, bevor die Aufgabe “Datei durchsuchbar machen” den Text erzeugen kann. Aktivieren Sie in diesem Fall die Kategorie Temp. OCR-Unterstützung der Profileinstellungen (Abschnitt 8.5) - oder arbeiten Sie alternativ mit 2 Profilen: Das erste Profil macht die Dateien nur durchsuchbar, das zweite filtert nach den extrahierten Daten.
- Fortlaufende Nummern: Regeln mit der Quelle “Fortlaufende Nummer” stehen als Filterkriterium nicht zur Verfügung, da jede Filterprüfung den Zähler erhöhen würde.
- Ergebnisvorschau nutzen: Auch die Kriterien dieser Registerkarte werden in der Ergebnisvorschau ausgewertet - so sehen Sie sofort, welche Beispieldateien den Filter erfüllen.
8.5.5 Registerkarte: Ergebnisvorschau
Die Ergebnisvorschau zeigt Ihnen, wie Ihre Filtereinstellungen auf die Beispieldateien wirken.
Voraussetzung
Fügen Sie auf der Registerkarte Beispieldateien mindestens 5 repräsentative PDF-Dateien hinzu, die den typischen zu verarbeitenden Dokumenten entsprechen.
Anzeige
Für jede Beispieldatei wird angezeigt: - Ja - Die Datei erfüllt alle Filterkriterien - Nein - Die Datei erfüllt mindestens ein Filterkriterium nicht (mit Angabe des nicht erfüllten Kriteriums)
So nutzen Sie die Vorschau effektiv
- Fügen Sie Dateien hinzu, die verarbeitet werden sollen (erwartetes Ergebnis: “Ja”)
- Fügen Sie Dateien hinzu, die NICHT verarbeitet werden sollen (erwartetes Ergebnis: “Nein”)
- Prüfen Sie, ob die Ergebnisse Ihren Erwartungen entsprechen
- Passen Sie die Filter bei Bedarf an
Tipp: Die Ergebnisvorschau ist besonders wichtig bei komplexen Filtern mit UND/ODER-Verknüpfungen oder regulären Ausdrücken.
8.5.6 Registerkarte: Prüfung auf Überschneidungen
Diese Registerkarte prüft, ob sich das aktuelle Profil mit anderen aktiven Profilen überschneidet, die denselben Ordner überwachen (oder über die Unterordner-Überwachung einen über- bzw. untergeordneten Ordner).
Funktionsweise
Grundlage der Prüfung sind die Beispieldateien der beteiligten Profile: Das Programm wendet die Filterkriterien jedes Profils testweise auf die Beispieldateien der jeweils anderen Profile an. Ohne hinterlegte Beispieldateien kann keine Überschneidung festgestellt werden.
Zwei Arten von Ergebnissen werden gemeldet:
| Ergebnis |
Bedeutung |
| Zu lockere Filterkriterien |
Die Beispieldateien eines anderen Profils erfüllen die Filterkriterien dieses Profils, die Datenextrahierung schlägt an ihnen jedoch fehl. Solche Dateien würden bei der Verarbeitung Fehler verursachen - die Filterkriterien sollten unbedingt verschärft werden. |
| Hinweis auf Doppelverarbeitung |
Die Beispieldateien eines anderen Profils erfüllen die Filterkriterien dieses Profils, und auch die Datenextrahierung gelingt. Solche Dateien würden von mehreren Profilen nacheinander verarbeitet, was zu doppelten Ausgabedateien führen kann. Handelt es sich um eine beabsichtigte Verarbeitungskette, können Sie diesen Hinweis ignorieren. |
Warum ist das wichtig?
Wenn mehrere Profile dieselben Dateien verarbeiten: - Ausgabedateien können doppelt entstehen (z.B. Kopien mit dem Zusatz “(1)”) - E-Mails können mehrfach versendet werden - Es können Konflikte bei Dateioperationen entstehen
Empfehlung: Stellen Sie die Filterkriterien so ein, dass für jede Datei immer nur ein Profil zuständig ist - etwa über den Barcode-Filter (z.B. “PDF muss Barcode enthalten” im einen, “PDF darf keinen Barcode enthalten” im anderen Profil) oder einen Ausschluss im Dateinamen-Filter. Hinterlegen Sie außerdem für jedes Profil typische Beispieldateien, damit die Prüfung aussagekräftig ist.
8.5.7 UND/ODER-Logik
Wenn Sie mehrere Begriffe in einem Filterfeld eingeben, können Sie diese mit logischen Operatoren verknüpfen.
UND-Verknüpfung
Alle Begriffe müssen vorhanden sein.
Syntax: <AND> oder <UND>
Beispiel: Rechnung<UND>Mustermann - Trifft zu bei: “Rechnung an Mustermann GmbH” - Trifft nicht zu bei: “Rechnung an Schmidt GmbH”
ODER-Verknüpfung
Mindestens einer der Begriffe muss vorhanden sein.
Syntax: <OR> oder <ODER>
Beispiel: Rechnung<ODER>Invoice<ODER>Faktura - Trifft zu bei jedem PDF, das “Rechnung”, “Invoice” oder “Faktura” enthält
Kombinationen
Sie können UND und ODER kombinieren. Dabei gilt: UND trennt die Ausdrücke, ODER wird innerhalb der Segmente ausgewertet.
Beispiel: Rechnung<AND>2024<OR>Invoice<AND>2024
Zur Verdeutlichung kann man <AND> wie einen Zeilenumbruch betrachten:
Rechnung
<AND>
2024<OR>Invoice
<AND>
2024
Dies bedeutet: (Rechnung) UND (2024 ODER Invoice) UND (2024)
Ergebnis: - Trifft zu bei: Text enthält “Rechnung” UND (“2024” ODER “Invoice”) UND “2024” - Trifft zu bei “Rechnung vom 15.12.2024” (enthält Rechnung, 2024, 2024) - Trifft zu bei “Rechnung Invoice 2024” (enthält Rechnung, Invoice, 2024) - Trifft nicht zu bei “Rechnung vom 15.12.2023” (enthält nicht “2024”)
Tipp: Testen Sie komplexe Filter immer mit der Ergebnisvorschau, um sicherzugehen, dass das gewünschte Ergebnis erreicht wird.
8.5.8 Reguläre Ausdrücke
Für fortgeschrittene Filterungen stehen reguläre Ausdrücke (Regex) zur Verfügung.
Syntax
Umschließen Sie den regulären Ausdruck mit: <BeginOfRegex>MUSTER<EndOfRegex>
Beispiele
| Regex |
Beschreibung |
Trifft zu bei |
<BeginOfRegex>RE-\d{5}<EndOfRegex> |
Rechnungsnummer mit 5 Ziffern |
RE-12345, RE-00001 |
<BeginOfRegex>^Rechnung<EndOfRegex> |
Beginnt mit “Rechnung” |
“Rechnung Nr. 123” |
<BeginOfRegex>\d{2}\.\d{2}\.\d{4}<EndOfRegex> |
Datum im Format TT.MM.JJJJ |
15.12.2024 |
<BeginOfRegex>€\s*\d+[,\.]\d{2}<EndOfRegex> |
Euro-Betrag |
€ 123,45 oder €99.00 |
Häufig verwendete Regex-Elemente
| Element |
Bedeutung |
\d |
Eine Ziffer (0-9) |
\d{5} |
Genau 5 Ziffern |
\d+ |
Eine oder mehr Ziffern |
\s |
Ein Leerzeichen |
\s* |
Beliebig viele Leerzeichen (auch keines) |
^ |
Anfang der Zeile/des Texts |
$ |
Ende der Zeile/des Texts |
. |
Ein beliebiges Zeichen |
.* |
Beliebig viele beliebige Zeichen |
[A-Z] |
Ein Großbuchstabe |
[a-zA-Z] |
Ein Buchstabe (groß oder klein) |
Tipp: Testen Sie Ihre regulären Ausdrücke auf Websites wie regex101.com, bevor Sie sie im Filter verwenden.
8.5.9 Zahlenbereiche
Mit der Syntax <NumberRange{MIN,MAX}> können Sie nach Zahlenbereichen filtern.
Syntax
<NumberRange{Minimum,Maximum}>
Beispiele
| Filter |
Beschreibung |
<NumberRange{1,99}> |
Zahlen von 1 bis 99 |
<NumberRange{2020,2025}> |
Jahre von 2020 bis 2025 |
<NumberRange{100,999}> |
Dreistellige Zahlen |
Anwendungsfall
Filtern nach Dokumenten mit bestimmten Kundennummern: - Dokumenttext enthält: Kundennummer: <NumberRange{5100000,5200000}>
Dies trifft auf alle PDFs zu, die eine Kundennummer zwischen 5100000 und 5200000 enthalten.
8.5.10 Dynamische Filterlisten
Mit dynamischen Listen können Sie Filter flexibel gestalten, ohne das Profil ändern zu müssen.
So funktioniert es
- Erstellen Sie unter Extras > Programmoptionen > Dynamische Listen eine neue Liste
- Fügen Sie die gewünschten Einträge hinzu (z.B. Mandantennamen, Projektnummern)
- Verwenden Sie die Liste im Filter mit der Syntax:
<EntryFromList{Listenname}>
Syntax
<EntryFromList{Name der Liste}>
Beispiel
Sie haben eine Liste “Wichtige Kunden” mit folgenden Einträgen: - Mustermann GmbH - Schmidt AG - Meyer & Co
Filter: Dokumenttext enthält: <EntryFromList{Wichtige Kunden}>
Das Programm prüft automatisch, ob einer der Listeneintrage im Dokument vorkommt.
Vorteile
- Flexibilität: Neue Einträge können jederzeit zur Liste hinzugefügt werden
- Zentrale Verwaltung: Eine Liste kann in mehreren Profilen verwendet werden
- Übersichtlichkeit: Lange Listen müssen nicht im Filter selbst stehen
Tipp: Listen können auch aus externen Quellen wie Excel-Dateien oder Datenbanken importiert werden.
8.5.11 Praktische Tipps
Filter schrittweise aufbauen
Beginnen Sie mit einem einfachen Filter und erweitern Sie ihn schrittweise: 1. Erst nur nach Dateiname filtern 2. Dann Textfilter hinzufügen 3. Komplexere Bedingungen ergänzen
Nicht zu restriktiv filtern
Zu strenge Filter können dazu führen, dass Dateien übersehen werden: - Achten Sie auf unterschiedliche Schreibweisen (Rechnung/RECHNUNG) - Berücksichtigen Sie Tippfehler in den Quelldokumenten - Nutzen Sie ODER-Verknüpfungen für Varianten
Groß-/Kleinschreibung
Die normale Textsuche unterscheidet nicht zwischen Groß- und Kleinschreibung - “Rechnung”, “RECHNUNG” und “rechnung” werden gleich behandelt.
Hinweis: Reguläre Ausdrücke unterscheiden standardmäßig zwischen Groß- und Kleinschreibung. Verwenden Sie das Flag (?i) für case-insensitive Regex-Suche:
<BeginOfRegex>(?i)rechnung<EndOfRegex> findet “Rechnung”, “RECHNUNG”, “rechnung” etc.
Mehrere Profile statt komplexer Filter
Manchmal ist es einfacher, mehrere Profile mit einfachen Filtern zu erstellen, als ein Profil mit sehr komplexen Filtern.
Beispiel: Statt eines komplexen Filters für verschiedene Dokumenttypen: - Profil 1: Rechnungen (Filter: Dokumenttext enthält “Rechnung”) - Profil 2: Lieferscheine (Filter: Dokumenttext enthält “Lieferschein”) - Profil 3: Bestellungen (Filter: Dokumenttext enthält “Bestellung”)