-
Die
Erfindung betrifft ein Verfahren zum Umwandeln eines Eingangs-Dokumentendatenstroms mit
einem oder mehreren Dokumenten in eine strukturierte Datendatei
zur Erzeugung eines Ausgangs-Dokumentendatenstroms und ein Computerprogramm-Produkt
zum Erstellen eines Regelsatzes für ein solches Verfahren.
-
Aus
der WO 2004/040432 A1 ist ein Verfahren und eine Vorrichtung zum
Verarbeiten eines Dokumentendatenstromes eines Eingangsformates
zu einem Ausgangsformat bekannt. Der Eingangs-Dokumentendatenstrom
wird mittels eines Übersetzungsstufenmoduls
in normierte Daten umgesetzt. Das Übersetzungsstufenmodul wird
von einer Regeldatei gesteuert. Die Regeldatei enthält Mapping-Regeln,
die aus dem Eingangs-Dokumentendatenstrom und/oder
einem gegebenenfalls neu zu erstellenden Design-Datensatzes und/oder
aus eingangsdatenspezifischen Hilfsdateien gebildet werden. Sowohl der
Design-Datensatz
als auch die Regeldatei können
frei editierbar sein. Der Design-Datensatz kann aus dem Eingangs-Dokumentendatenstrom und/oder
aus eingangsdaten-spezifischen Hilfsdateien gebildet werden und
zusätzlich
bei der Bildung eines Dokumenten-Templates verwendet werden, das die
Formatierung der normierten Daten steuert. Alternativ dazu kann
die Regeldatei auch direkt aus dem Eingangs-Dokumentendatenstrom oder anderen Datei-Informationen
aus Hilfsdateien gewonnen werden.
-
Die
in der Regeldatei angegebenen Mapping-Regeln sind spezifisch für den Eingangs-Dokumentendatenstrom.
Sie geben an, welches Element des Eingangs-Dokumentendatenstroms
zu welchen Elementen des Design-Datensatzes zuzuordnen ist. Der
Design-Datensatz enthält
die Strukturdefinition der normierten Daten, wobei für verschiedene
Strukturelemente, zum Beispiel für
Kundennummern, Namen, Logos usw., Typ-Deklarationen vorgesehen sind. In den
normierten Rohdaten können
dann auch Datengruppen gebildet werden, die zusammengehören, insbesondere
all diejenigen Daten, die zu einem Dokument gehören. Somit sind für jedes
Dokument alle zugehörigen
Daten im normierten Rohdatenstrom verfügbar. Ein Dokumenten-Template
dient als Strukturvorlage für
die zu erzeugenden Dokumente und beschreibt, welche Formatierungsanweisungen im
normierten Datenstrom hinzuzufügen
sind. Es kann Elemente aus dem Design-Datensatz enthalten und/oder
frei programmierte statische oder dynamische Elemente enthalten.
Das Dokumenten-Template dient dazu, die Formatbildungseinrichtung
(Formatter oder document composition engine) zu steuern. Aus dem
normierten Rohdatenstrom wird durch die Formatbildungseinrichtung
dokumentenweise ein ressourcen-orientierter Datenstrom gebildet.
Soweit bereits in den Rohdaten Formatierungen enthalten waren, werden
diese beibehalten und soweit die Rohdaten unformatiert sind und
im Dokumenten-Template zu den entsprechenden Datenfeldern Formatierungsangaben
enthalten sind, werden diese ressourcen-orientiert in der Formatbildungseinrichtung
hinzugefügt,
wobei Ressourcen, die mehrfach innerhalb eines Datenstromes benötigt werden,
weiter verarbeitet werden, d.h. im ressourcen-orientierten Datenstrom
hauptsächlich
durch Aufrufen der Ressourcen eingefügt werden, wobei die Ressourcen
selbst nur einmal intern vorhanden sind oder extern von einer Ressourcen-Datei
geladen oder auch nur referenziert werden können.
-
Bei
diesem Verfahren ist das Erstellen der Regeldatei aufwändig und
erfordert erhebliche Softwarekenntnisse.
-
Die
Adobe Systems, Inc., USA bietet unter der Produktbezeichnung Adobe
Central Pro Output Server ein Produkt an, mit dem es auch möglich ist, einen
Eingangs-Dokumentendatenstrom
in eine Datendatei automatisch umzusetzen. Die hierbei verwendeten
Regeln können
von einem Benutzer mittels einer grafischen Benutzeroberfläche eingegeben werden,
wobei ein Vorlagedokument auf der Benutzeroberfläche dargestellt wird. Einzelne
Felder des Vorlagedokumentes können
vom Benutzer ausgewählt
und ihnen kann irgendeine Typ-Deklaration zugeordnet werden. Es
können
auch bestimmte Abschnitte im Dokument definiert werden, die wiederholt
vorkommen. Diese Abschnitte werden anhand eines Regelsatzes festgelegt,
der den Abschnitttyp im Eingangs-Dokumentendatenstrom
erkennt und dann die entsprechenden Felder ausliest. Diese Abschnitte
erstrecken sich jeweils über
die gesamte Seitenbreite.
-
Beim
Ausführen
der automatischen Umsetzung des Eingangs-Dokumentendatenstroms in die Datendatei
werden aus dem Eingangs-Dokumentendatenstrom alle nicht-auszulesenden
Daten entfernt und die auszulesenden Daten werden in der gleichen Reihenfolge
wie im Eingangs-Dokumentendatenstrom in der Datendatei abgespeichert,
wobei den einzelnen Daten jeweils eine Typ-Deklaration hinzugefügt ist.
Bei diesem bekannten Verfahren erhält man somit eine Datendatei,
in der die einzelnen Daten in der gleichen Reihenfolge wie im Eingangs-Dokumentendatenstrom
aufeinander folgend aufgeführt sind.
-
Es
besteht ein erheblicher Bedarf, Eingangs-Dokumentendatenströme von seit langem benutzten
Systemen, die jedoch aus sicherheitsrelevanten Gründen weiter
benutzt werden sollen, möglichst
flexibel in Ausgangs-Dokumentendatenströme umzuwandeln.
Derartige seit langem eingesetzte Systeme werden vor allem bei Banken
und Versicherungen verwendet und allgemein als Legacy-Anwendungen
bezeichnet. Diese Systeme besitzen oftmals nur sehr beschränkte Formatierungsmöglichkeiten und
die Daten werden häufig
als sogenannte ASCII Zeilendatenstrom ausgegeben, der im wesentlichen nur
Schriftzeichen sowie Zeilen- und Seitenumbrüche enthält. Man möchte jedoch diese Daten gegenüber dem
Kunden in einem zeitgemäßen Format
darstellen.
-
Bei
dem Produkt Adobe Central Pro Output Server wird eine allgemeine
Datendatei erstellt, die für
unterschiedliche Ausgangs-Dokumentendatenströme geeignet ist. Es hat sich
jedoch gezeigt, dass die hierbei erstellte Datenliste nur bedingt
für die
Weiterverarbeitung geeignet ist, da das Auffinden einzelner Daten,
die in der gleichen Reihenfolge im Ursprungsdokument angeordnet
sind, sich sehr schwierig gestalten kann.
-
Ferner
ist das Erstellen der Regelsätze,
insbesondere wenn die Dokumente des Eingangs-Dokumentendatenstroms
komplexe Strukturen, wie zum Beispiel Tabellen, besitzen, bei dem
oben genannten Verfahren sehr aufwändig.
-
Einem
ersten Aspekt der Erfindung liegt die Aufgabe zugrunde, ein Verfahren
und ein Computerprogramm-Produkt zum Umwandeln eines Eingangs-Dokumentendatenstroms
mit einem oder mehreren Dokumenten in eine Datendatei zur Erzeugung
eines Ausgangs-Dokumentendatenstroms
zu schaffen, das eine sehr flexibel und einfach in einen beliebig
formatierten Ausgangs-Dokumentendatenstrom
umsetzbare Datendatei ergibt.
-
Die
Aufgabe des ersten Aspekts der Erfindung wird durch ein Verfahren
mit den Merkmalen des Anspruchs 1 und durch ein Coputerprogramm mit
den Merkmalen des Anspruchs 58 gelöst.
-
Einem
zweiten Aspekt der Erfindung liegt die Aufgabe zugrunde, ein Verfahren
und ein Computerprogramm-Produkt zu schaffen, das eine einfache Eingabe
von Regeln zur Umsetzung eines Eingangs-Dokumentendatenstroms in
eine strukturierte Datendatei ermöglicht. Insbesondere liegt
dem zweiten Aspekt der Erfindung die Aufgabe zugrunde, ein Verfahren
und ein Computerprogramm-Produkt zum einfachen Erzeugen eines Regelsatzes
für eine
Regeldatei für
ein Verfahren des ersten Aspekts der Erfindung anzugeben.
-
Die
Aufgabe des zweiten Aspekts der Erfindung wird durch ein Verfahren
mit den Merkmalen des Anspruchs 24 und durch ein Computerprogramm-Produkt
mit den Merkmalen des Anspruchs 59 gelöst.
-
Vorteilhafte
Ausgestaltungen der Erfindung sind in den jeweiligen Unteransprüchen angegeben.
-
Beim
erfindungsgemäßen Verfahren
zum Umwandeln eines Eingangs-Dokumentendatenstroms mit einem oder
mehreren Dokumenten in eine strukturierte Datendatei zur Erzeugung
eines Ausgangs-Dokumentendatenstroms gemäß dem ersten Aspekt der Erfindung
werden aus dem Eingangs-Dokumentendatenstrom Daten gemäß einem
vorbestimmten Regelsatz extrahiert und in die strukturierte Datendatei
gespeichert, wobei in der strukturierten Datendatei den einzelnen
Datenfeldern Feldnamen bzw. Typ-Deklarationen zugeordnet sind, die
Datenfelder in mehrere Datenebenen strukturierbar sind, und der
Regelsatz derart ausgebildet ist, dass beliebige Daten aus dem Eingangs-Dokumentendatenstrom
auf ein beliebiges Datenfeld der strukturierten Datendatei abbildbar
sind. Dabei wird insbesondere eine in einem Computersystem abgespeicherte
Prozesslogik berücksichtigt.
-
Mit
dem erfindungsgemäßen Verfahren
können
insbesondere im Rahmen der Prozesslogik beliebige Daten des Eingangs-Dokumentendatenstroms
eines Dokumentes auf beliebige Datenfelder der strukturierten Datendatei
abgebildet werden. Die strukturierte Datendatei enthält somit
nach beliebigen vom Benutzer vorgegebenen Gesichtspunkten geordnete
Daten, die auch in mehreren Datenebenen strukturiert sein können. Diese
strukturierte Datendatei stellt somit eine Art Datenbank dar, bei
der die Daten in einer vom Benutzer vorgegebenen Baumstruktur angeordnet
sind.
-
Verfahren
zum Drucken von Daten aus Datenbanken sind hinlänglich bekannt und hierbei
können
beliebige Formate eingesetzt werden.
-
Durch
das Erzeugen einer strukturierten Datendatei wird aus dem Eingangs-Dokumentendatenstrom
eine in einem Druckprozess sehr flexibel weiter verarbeitbare Datenbank
zur Verfügung
gestellt.
-
Die
Erfindung beruht auf der Erkenntnis, dass durch das Schaffen von
Strukturdefinitionen zur Verarbeitung von Eingangs-Dokumentendatenströmen der
oben genannten Art, insbesondere von sogenannten Line Data Datenströmen, die
ASCII codiert sein können,
oder auch von Advanced Function Presentation (AFP) Datenströmen, ein
zum Erzeugen der Daten korrespondierender Umkehrprozess beschrieben
und gesteuert werden kann, wodurch die ursprüngliche Datenstruktur, insbesondere
die Struktur von Datenbankdaten, wiedergewonnen werden kann. Der
Umkehrprozess gibt dann an, wie die aus einem Formatierungsprozess
erzeugten Seiten- und Dokumentenstrukturen interpretiert werden
müssen,
um die dem Formatierungsprozess insbesondere in einer Legacy Anwendung
zugrunde liegenden Nutzdaten einschließlich ihrer übergeordneten
Gruppenstrukturen wiederzugewinnen. Zur Definition der Struktur
dient als grafisches Hilfsmittel insbesondere eine Baumstruktur,
die gemäß dem zweiten
Aspekt der Erfindung erzeugt und vorteilhaft ausgenutzt wird.
-
Das
erfindungsgemäße Verfahren
des zweiten Aspekts der Erfindung, der in Kombination oder auch
unabhängig
vom ersten Aspekt der Erfindung ausgeführt werden kann, ist derart
ausgebildet, dass einzelne Regeln des Regelsatzes erstellt werden,
indem auf einer graphischen Benutzeroberfläche in einem Fenster ein Vorlagedokument
und in einem anderen Fenster Datenfelder in einer Baumstruktur dargestellt
werden und durch Markieren von insbesondere logisch zusammengehörigen Daten
im Vorlagedokument jeweils ein Markierungsbereich und/oder ein Quelldatenfeld
definiert wird. Dem Markierungsbereich bzw. dem Quelldatenfeld wird
dabei ein ihm entsprechendes Strukturelement zugewiesen und dieses
insbesondere in der Baumstruktur wiedergegeben und/oder mit dieser
verknüpft.
Beim Verknüpfen
eines solchen Quelldatenfeldes bzw. einer solchen Markierung des
Vorlagendokumentes mit einem Datenfeld wird weiterhin insbesondere
automatisch eine Regel erstellt, mit welcher ein Quelldatenfeld
bzw. eine der Markierung entsprechende Gruppe von Quelldatenfeldern
aus dem Eingangs-Dokumentendatenstrom ausgelesen und deren Inhalt
gemäß der strukturierten
Datendatei in dem korrespondierenden Datenfeld bzw. Strukturelement
abgespeichert wird.
-
Mit
den Strukturelementen der Baumstruktur lassen sich Variablen wie
z.B. Felder oder Tabellenvariablen für die strukturierte Datendatei
angeben, in die Quelldatenfelder des Eingangs-Dokumentendatenstroms
einlesbar sind zur Bildung der strukturierten Datendatei.
-
Das
erfindungsgemäße Computerprogramm-Produkt
zum Erstellen eines Regelsatzes für das Verfahren gemäß dem zweiten
Aspekt der Erfindung umfasst eine graphische Benutzeroberfläche mit
mehreren Fenstern, wobei in einem Fenster ein Vorlagedokument darstellbar
ist, das dem Format der im Eingangs-Dokumentendatenstrom enthaltenen Dokumente
entspricht, und in einem weiteren Fenster die Datenfelder in einer
Baumstruktur, die mehrere Ebenen umfassen kann, anordenbar sind.
Gemäß dem zweiten
Aspekt der Erfindung wird mit grafischen Mitteln ein Quelldatum
des Vorlagedokuments markiert oder logisch zusammengehörige Quelldaten des
Vorlagedokuments gemeinsam als zusammengehöriger Bereich markiert und
mindestens ein dem Markierungsbereich entsprechendes Strukturelement
dem Markierungsbereich zugewiesen.
-
Gemäß dem zweiten
Aspekt der Erfindung sind insbesondere Mittel zum Definieren von
einem oder mehreren Quelldatenfeldern und zum Verknüpfen derselben
mit einem oder mehreren Strukturelementen, insbesondere mit den
Datenfeldern vorgesehen. Bei einer solchen Verknüpfung wird insbesondere automatisch
eine Regel erstellt, zum Auslesen eines oder mehrerer Quelldatenfelder
aus dem Eingangs-Dokumentendatenstrom
und zum Abspeichern deren Inhalte in die strukturierte Datendatei
in dem bzw. den korrespondierenden Datenfeldern. Die dem Markierungsbereich
zugewiesenen Strukturelemente werden insbesondere auch der Baumstruktur zugewiesen.
-
Das
dem zweiten Aspekt der Erfindung entsprechende Computerprogramm-Produkt
stellt dem Benutzer auf der grafischen Benutzeroberfläche zumindest
zwei Fenster zur Verfügung,
wobei in einem Fenster das Vorlagendokument dargestellt ist und
im anderen Fenster die Baumstruktur, deren Strukturelemente wie
z.B. Datenfelder der Benutzer computergestützt darstellen, einfügen, verändern und/oder
löschen
kann. Der Benutzer kann hierbei die Baumstruktur selbst erstellen,
ihre Strukturelemente können
automatisch oder teilautomatisch erstellt werden. Es kann aber auch
eine bereits vorhandene Struktur übernommen werden und insbesondere eine
Struktur aus mehreren vorgegebenen Vorlagenstrukturen ausgewählt werden.
Die Quelldatenfelder im Vorlagedokument sind mit einfachen Mitteln
mit den als strukturierte Datenfelder ausgebildeten Strukturelementen
verknüpfbar,
wobei jeweils automatisch eine Regel erstellt wird.
-
Dieses
Computerprogramm-Produkt erlaubt somit eine schnelle und einfache
Erstellung eines Regelsatzes zum Umsetzen eines Eingangs-Dokumentendatenstromes
in eine erfindungsgemäß strukturierte
Datendatei.
-
Eine
Baumstruktur im Sinne der vorliegenden Erfindung ist jede Struktur,
bei welcher ein oder mehrere Datenfelder jeweils einem Oberbegriff,
d.h. einem übergeordneten
Strukturelement, untergeordnet werden können. Diese Oberbegriffe sind
wiederum weiteren Oberbegriffen unterordenbar. Eine solche Baumstruktur
umfasst somit Zweige, wobei an den Verzweigungspunkten (Knoten)
der Zweige jeweils Oberbegriffe als übergeordnete Strukturelemente
angeordnet sind und die Endpunkte der Zweige durch Datenfelder als
untergeordnete Strukturelemente dargestellt sind. Eine solche Datenstruktur kann
mehrere Verzweigungsebenen umfassen, wobei in jeder Ebene Strukturelemente
wie z.B. Datenfelder angeordnet sein können.
-
Vorteilhaft
am zweiten Aspekt der Erfindung ist, dass mit den grafischen Elementen
wie der Baumstruktur und/oder den Mitteln zur Markierung von Bereichen
des Vorlagedokuments eine entsprechende, einfach und intuitiv zu
bedienende Benutzeroberfläche
angegeben werden kann, mit der strukturelle Informationen der ursprünglichen
Nutzdaten wie z.B. ihre Herkunft aus ein- und demselben Feld einer
Datenbank wiedergewonnen werden können.
-
Strukturelemente
gemäß dem zweiten
Aspekt der Erfindung sind insbesondere einem Zweig in der Baumstruktur
zugeordnet und stellen insbesondere einen Verzweigungspunkt in der
Baumstruktur dar. Dem Strukturelement können somit mehrere weitere
Strukturelemente (Unterzweige) untergeordnet sein. Datentechnisch
kann ein derartiger Zweig als Objekt mit mehreren untergeordneten
Instanzen abgebildet werden. Dabei kann als Strukturelement ein
einem Seitentyp, einem Datenfeld, einer Tabelle oder einem mehrere
Datenfelder umfassenden Bereich entsprechendes Element zugeordnet
werden.
-
In
einem bevorzugten Ausführungsbeispiel des
zweiten Aspekts der Erfindung wird das Vorlagedokument zeilen- und spaltenweise
dargestellt, wobei der Markierungsbereich zeilen- und spaltenweise frei
auswählbar
ist.
-
In
einem weiteren, bevorzugten Ausführungsbeispiel
des zweiten Aspekts der Erfindung wird im Vorlagedokument ein Wiederholelement,
wie z. B. ein Aufzählungspunkt
in einer numerischen Aufzählung
ausgewählt,
das charakteristisch für
eine in dem Vorlagedokument wiederkehrende Struktur, eine sogenannte
Wiederholstruktur, ist und charakteristische Daten des Wiederholelements,
insbesondere charakteristische formatbezogene Daten wie Zeilen-
und/oder Spaltenposition innerhalb eines vorgegebenen Bereiches
im Vorlagedokument und/oder ein Textinhalt manuell, teilautomatisch
menügeführt oder
automatisch erfasst. Mit den charakteristischen Daten kann dann
eine Wiederholregel gebildet werden, mit der im Vorlagedokument
und/oder im Eingangs-Dokumentendatenstrom alle zugehörigen Daten
einer Wiederholstruktur erkannt werden können.
-
Zur
Auswahl eines Elementes, wie z. B. eines Quelldatenfeldes oder eines
Bereiches innerhalb des Vorlagedokuments, ist eine Zeigeeinrichtung, wie
z. B. eine Maus oder ein Cursor, vorgesehen. Weiterhin können bei
Betätigung
einer ersten Taste, wie z. B. der rechten Maustaste der Eingabeeinrichtung,
automatisch kontextbezogen zu diesem Element oder Bereich verfügbare Zuweisungsmöglichkeiten,
wie z. B. das Strukturelement „Bereich" oder ein Wiederholelement,
angezeigt werden. Abhängig von
der Position einer solchen Zeigeeinrichtung und insbesondere vom
Betätigen
einer zweiten Taste einer solchen Eingabeeinrichtung im Vorlagedokument kann
weiterhin automatisch mindestens ein zuordenbares Element und/oder
mindestens ein zurodenbarer Bereich im Vorlagedokument hervorgehoben
angezeigt werden. Dadurch wird die Benutzerfreundlichkeit des Verfahrens
bzw. des Computerprogramm-Produkts weiter erhöht.
-
Wenn
im Vorlagedokument ein mehrere Daten umfassender Wiederholbereich
markiert wird, dann kann diesem insbesondere in Abhängigkeit
einer von einer Bedienperson menügeführt getroffenen Auswahl
ein der Auswahl entsprechendes Strukturelement, wie z. B. ein mehrere
Datenfelder und insbesondere zu den Datenfeldern mehrere Einträge umfassendes
Feld (ARRAY) zugeordnet werden. Wenn ein Feld (ARRAY) mehrere Datenfelder,
z.B. für Rechnungsposten
umfasst, dann enthält
es insbesondere zu allen Datenfeldern gleich viele Einträge, nämlich zu
jedem Rechnungsposten einen Eintrag in allen seinen Datenfeldern.
-
Für den markierten
Bereich und/oder einen Wiederholbereich kann eine ENDE-Bedingung
automatisch, teilautomatisch menügeführt oder
manuell festgelegt werden. Als Strukturelement kann insbesondere
ein Zweig in der Baumstruktur angelegt werden und ein dem Zweig
entsprechendes Feld vom Typ ARRAY in der strukturierten Datendatei.
Einem Zweig in der Baumstruktur sind insbesondere mehrere Datenfelder
als untergeordnete Strukturelemente zugeordnet. Zur Erstellung und/oder
Erweiterung der Baumstruktur können
insbesondere wahlweise zuerst neue Datenfelder festgelegt werden
und dann der übergeordnete
Zweig zugeordnet werden oder zuerst der Zweig festgelegt werden
und dann neue untergeordnete Datenfelder zugeordnet werden.
-
Ein
Wiederholelement kann insbesondere durch ein oder mehrere Zeichen,
eine Tabelle, eine Dokumentenzeile oder eine Dokumentenspalte gebildet
werden. Das Wiederholelement kann im markierten Bereich liegen und
insbesondere den gesamten markierten Bereich umfassen. Es kann vor
oder nach dem Erstellen des zusammengehörigen Bereichs festgelegt werden.
Anhand der strukturell charakteristischen Merkmale des Wiederholelements
können automatisch
Daten der Wiederholungsstruktur im Wiedervorlagedokument und/oder
im Eingangs-Dokumentendatenstrom ermittelt und/oder markiert angezeigt
werden. Wenn der Markierungsbereich Quelldatenfelder enthält und diese
mit mindestens einem als Datenfeld ausgebildeten Strukturelement der
Baumstruktur verknüpft
werden, kann bei einer solchen Verknüpfung automatisch eine Regel
erstellt werden zum Auslesen eines Quelldatenfeldes aus dem Eingangs-Dokumentendatenstrom
und zum Abspeichern dessen Inhaltes in die strukturierte Datendatei
in dem korrespondierenden Datenfeld.
-
Bei
Festlegung einer Wiederholstruktur oder eines Wiederholelements
in dem Vorlagedokument kann insbesondere automatisch oder manuell
auswählbar
entschieden werden, ob nachträglich
ein der Wiederholstruktur oder dem Wiederholelement entsprechendes
neues Strukturelement in einer bestehenden Baumstruktur hinzugefügt wird.
Datenfelder der Baumstruktur, die der Wiederholstruktur zugeordnet
sind, werden insbesondere dem neuen Strukturelement als Unterstrukturelemente
zugeordnet.
-
Die
Erfindung ermöglicht
insbesondere, in dem Vorlagedokument mehrere Markierungsbereiche
zu markieren, die insbesondere ebenenweise ineinander verschachtelt
sind. Die Verschachtelung kann dabei insbesondere ebenenübergreifend
erfolgen.
-
Zum
Finden von Wiederholungsstrukturen kann zu dem Markierungsbereich
eine insbesondere in zeilen- und/oder spaltenweisen Positionskoordinaten
angegebene Fundregel erstellt werden, in der insbesondere ein Wiederholelement
und/oder eine Wiederholbedingung angegeben sind. In Wiederholungsstrukturen
tritt die im Markierungsbereich enthaltene Datenstruktur erneut
im Vorlagedokument auf. Die Fundregel gibt an, an welchen Positionen
Daten des Vorlagedokuments dem Markierungsbereich zuzuordnen sind.
Eine Fundregel kann z. B. zum Inhalt haben, dass ein Punkt in einer
bestimmten Spalte gesucht wird, dass eine Zeichenkette mit einem
bestimmten Inhalt und/oder einer bestimmten Länge in bzw. ab einer bestimmten
Zeile bzw. Spalte auftritt oder dergleichen.
-
Die
Zuweisung des Strukturelements zur Markierung kann insbesondere
automatisch unter Verwendung eines im Vorlagedokument vorhandenen
Strukturelements, wie z. B. Angaben/Variablen des Typs Seitentyp
(page type), Tabelle (table), Feld (field) oder Bereich (area),
erfolgen.
-
Für einen
markierten Bereich kann eine ENDE-Bedingung insbesondere automatisch
erzeugt werden. Wenn zwei Bereiche ineinander verschachtelt sind
und insbesondere ein zweiter markierter Bereich einem ersten markierten
Bereich untergeordnet ist, dann kann die ENDE-Bedingung des übergeordneten
zweiten Bereichs insbesondere automatisch für den ersten markierten Bereich übernommen
werden. Weiterhin kann eine ENDE-Bedingung für einen markierten Bereich über eine
datengetriebene Bedingung, insbesondere über eine Steuervariable oder eine
von einer Bedienperson insbesondere menügeführt teilautomatisch festgelegte
Bedingung erzeugt und/oder verändert
werden. Eine solche Bedingung kann z. B. beinhalten, dass der markierte
Bereich nach N Zeilen endet. Eine Bedienperson hat insbesondere
teilautomatisch und insbesondere im Rahmen geltender gespeicherter
systemimmanenter logischer Regeln über eine Menüführung über alle
Regeln des Regelsatzes und/oder die Baumstruktur Erstellungs,- Änderungs-
und Löschungsbefugnis.
-
Wenn
gemäß einem
bevorzugten Ausführungsbeispiel
anhand der in der Baumstruktur erzeugten Strukturelemente innerhalb
eines im ersten Fenster gleichzeitig oder nacheinander angezeigten Datenstroms,
der zumindest ein vollständiges
Vorlagedokument enthält,
alle zu einem gemeinsamen Strukturelement gehörenden Bereiche des Datenstroms
gleichartig, insbesondere mit gleicher Farbe, markiert werden, dann
kann die Baumstruktur und die mit ihr zusammenhängenden Regeln vom Benutzer
leicht und anschaulich überprüft werden.
Zum Überprüfen des
Regelsatzes für
die im ersten Fenster dargestellten Daten werden die Regeln des
Regelsatzes insbesondere auf diese Daten angewandt. Auch die Anwendung
der Regeln an den im ersten Fenster dargestellten Daten kann insbesondere
grafisch veranschaulicht werden. In den im ersten Fenster dargestellten
Daten können
dabei Bereiche verschiedener Ebenen und/oder Typen verschieden, insbesondere
mit verschiedenen Farben, markiert werden.
-
Zur Überprüfung der
Korrektheit eines Strukturelements kann insbesondere ein in der
Baumstruktur des zweiten Fensters angezeigtes Strukturelement ausgewählt werden
und automatisch alle im ersten Fenster dargestellten Bereiche, die
diesem Strukturelement zugeordnet sind, angezeigt werden. In einem
weiter verbesserten Ausführungsbeispiel werden
zu einem im zweiten Fenster ausgewählten Strukturelement automatisch
die ebenenweise übergeordneten
und/oder untergeordneten, dem Strukturelement zugeordneten Strukturelemente
oder der hierarchischen Ordnung entsprechende Symbole angezeigt.
-
Die
Erfindung wird nachfolgend beispielhaft anhand der beigefügten Zeichnungen
näher erläutert. Die
Zeichnungen zeigen in:
-
1 ein
Hochleistungsdrucksystem,
-
2 schematisch
die Zuordnung von Quelldatenbereichen und Quelldatenfeldern in einem Eingangsdokument
auf Oberbegriffe und Datenfelder in der Baumstruktur,
-
3 schematisch
Daten eines Eingangsdokumentes, die zum Detektieren eines Seitentypes geeignet
sind,
-
4 schematisch
Daten eines Eingangsdokumentes, die zum Detektieren von Dokumentengrenzen
geeignet sind,
-
5 zu
extrahierende Daten eines Eingangsdokumentes, die innerhalb von
Quelldatenbereichen und auch außerhalb
von Quelldatenbereichen angeordnet sein können,
-
6 schematisch
ein Eingangsdokument, in dem bei absoluter Adressierung von Quelldatenfeldern möglicherweise
auftretende Probleme dargestellt sind,
-
7 ein
Eingangsdokument, bei dem bestimmte Quelldatenbereiche mittels Anfangspositionselementen
adressiert sind,
-
8 ein
Ausschnitt eines Ausgangsdokuments,
-
9 ein Ausschnitt des Eingangsdokuments
der Datei „Lieferschein.txt", nämlich die
Seiten 1, 2 und 6 bis 8,
-
10 eine
Bildschirmdarstellung für
eine erste Seite eines Vorlagedokuments und eine entsprechende Baumstruktur
und
-
11 eine
Bildschirmdarstellung entsprechend der 10 mit
einer Folgeseite des Vorlagedokuments.
-
In 1 ist
ein Dokumenten-Druckproduktionssystem 1 gezeigt, das zum
einen eine Main-Frame-Architektur 2 umfasst und zum anderen
eine Netzwerk-Architektur 5, in denen jeweils Dokumentendaten
bzw. Dokumentendruckdatenströme
mittels Anwenderprogrammen (Tools) erzeugt werden. In der Main-Frame-Architektur 2 werden
diese Druckdaten von einem Host-Computer zum Beispiel als Zeilendruckdatenstrom
(ASCII-Line Data), erzeugt. Vom Host-Computer 3 können die
Druckdaten wahlweise über
einen sog. S/370-Kanal 14a direkt an ein oder mehrere Druckgeräte 6a, 6b übertragen
werden. Alternativ zu diesem Ausgabekanal können die Druckdaten auch vom
Host-Computer 3 über
ein Netzwerk 13 oder eine direkte Datenverbindung 14b zu
einem Bearbeitungscomputer 4 übertragen werden, in dem die
Druckdaten zwischengespeichert (z.B. einem zugehörigen File Server) und für nachfolgende
Ausgabeschritte bearbeitet werden. In derartigen Host-Computern 3 werden
insbesondere Druckdatenströme
erzeugt, die aus größeren Datenbeständen (Datenbanken)
regelmäßig Listen-Ausdrucke, Rechnungen,
Verbrauchsübersichten
(für Telefonrechnungen,
Gasrechnungen, Bankkonten) etc. zusammenstellen. Derartigen Anwendungen
sind häufig
bereits seit vielen Jahren im Einsatz und werden nach wie vor in
mehr oder weniger unveränderter Weise
benötigt
(sog. Legacy-Anwendungen).
-
Innerhalb
der Main-Frame-Architektur 2 wird der Druckproduktionsablauf
von einem Überwachungssystem 7 überwacht.
Es umfasst einen Überwachungscomputer 7a,
der mit einer Datenbank 7b gekoppelt ist und verschiedene
Computerprogrammmodule 7c enthält.
-
Das Überwachungssystem 7 ist über ein
Gerätesteuerungsnetzwerk 15 und
ein Print Manager-Modul 8 mit dem Host-Computer 3 verbunden, sowie über einen
Konverter 9 mit z.B. einer V24-Datenleitung, die an die
beiden Druckgeräte 6a, 6b ankoppeln.
Der Konverter 9 setzt die V24-Signale in DMT-Protokollsignale des
Gerätesteuerungsnetzwerkes 15 um.
SNMP-Protokollsignale können
einem Device-Manager DM als DMT-Protokollsignale umgesetzt bereit
gestellt werden bzw. direkt als SNMP-Protokollsignale übergeben werden.
-
Druckgut 19,
das in den Druckern 6a, 6b aus dem Dokumenten-Druckdatenstrom erzeugt
wurde und auf dem Barcods aufgedruckt sind, kann jeweils mit einem
manuell bewegbaren, funkgesteuerten Barcodleser 11a abgescannt
werden. Signale werden per Funk an die Lesestation 10a übertragen
und in das Gerätesteuerungsnetzwerk 15 bzw.
an das Überwachungssystem 7 übermittelt.
-
In
der Netzwerk-Architektur 5 werden Dokumentendaten mittels
Anwenderprogrammen in Client-Computern 12, 12a erzeugt,
die über
ein Client-Netzwerk 13 untereinander sowie mit dem Bearbeitungscomputer
(File-Server) 4 verbunden sind. Der File-Server dient damit
als zentrale Verarbeitungs- und Bearbeitungsschnittstelle für Druckdaten des
gesamten Druckproduktionssystems 1. Auf ihm laufen diverse
Steuerungsmodule (Softwareprogramme), durch die der gesamte Druckproduktionsablauf
bzw. die gesamte Dokumentenbearbeitung anwendungsspezifisch, produktionstechnisch
und gerätesteuerungsseitig
an die jeweiligen Gegebenheiten optimal angepasst wird. Aus der
WO 2004/040432 ist es bekannt, dass am File-Server insbesondere
folgenden Funktionen ausgeführt
werden:
- – converting,
indexing, sorting
- – Einfügen von
Steuerungsinformationen
- – Datenreduktion
- – Extraktion
zur Erzeugung eines komprimierten Datenstroms, insbesondere zur Überwachung
der beteiligten Geräte
in Echtzeit,
- – Wiederholungsdruck
(reprint)
-
In
der WO-A1-2004/040432 sind diese Funktionen näher erläutert. Es wird deshalb auf
die WO-A1-2004/040432 voll inhaltlich Bezug genommen. Diese Patentanmeldung
wird in die vorliegende Patentanmeldung inkorporiert.
-
Druckdaten,
die vom Bearbeitungscomputer 4 fertiggestellt wurden, werden über die
Druckdatenleitung 14c an einen Druckserver 16 geleitet.
Dessen Aufgabe ist es im wesentlichen, den Bearbeitungscomputer 4 zu
entlasten. Der Druckserver 16 weist einen Bildschirm 16a auf.
Der Druckserver 16 ist in erster Linie aus Gründen der
Performance (Geschwindigkeit) im Gesamtsystem integriert. Bei Systemen,
deren Druckgeschwindigkeit weniger groß ist, kann auf den Druckserver 16 auch
verzichtet werden.
-
Die
gedruckten Dokumente werden auf ihrem Verarbeitungsweg zwischen
dem Druckgerät 6 und
einem Nachbearbeitungsgerät 18 hinsichtlich verschiedener
Kriterien mit einem Testsystem 17 getestet, nämlich durch
ein optisches Testsystem hinsichtlich ihrer optischen Druckqualität, mit einem
Barcode-Testsystem hinsichtlich ihres Vorhandenseins, ihrer Konsistenz
und/oder ihrer Reihenfolge sowie mit einem MICR-Testsystem, sofern
der Druck mittels magnetisch lesbarem Toner (magnetic ink character recognition
toner) gedruckt wurde. Die vom Testsystem 17 gelieferten
Daten werden von einem seriellen Datenerfassungsmodul an das Gerätesteuerungsnetz 15 übermittelt
und dem Überwachungssystem 7 zugeführt.
-
Das
erfindungsgemäße Verfahren
zum Umwandeln eines Eingangs-Dokumentendatenstroms mit
einem oder mehreren Dokumenten in eine strukturierte Datendatei
zur Erzeugung eines Ausgangs-Dokumentendatenstroms
kann auf dem Host-Computer 3 ausgeführt werden, an dem der Eingangs-Dokumentendatenstrom
erzeugt wird. Zweckmäßiger ist
es jedoch, das erfindungsgemäße Verfahren
zum Umwandeln eines Eingangs-Dokumentendatenstroms in eine strukturierte
Datendatei an einem dem Host-Computer nachgeschalteten Rechner,
wie z.B. dem File-Server 4 oder dem Drucksserver 16 auszuführen, da
hierdurch in das bisherige System, das eine große Menge sensitiver Daten verarbeitet,
nicht eingegriffen werden muss.
-
Mit
dem erfindungsgemäßen Verfahren
wird ein Eingangs-Dokumentendatenstrom
mit einem oder mehreren Dokumenten in eine strukturierte Datendatei
zur Erzeugung eines Ausgangs-Dokumentendatenstroms
umgewandelt. Eine aus einem Eingangs-Dokumentendatenstrom erzeugte strukturierte
Datendatei ist in der deutschen Patentanmeldung 10 2004 021 269.4
beschrieben, die den Titel „Verfahren,
Vorrichtung und Computerprogramm zum Erzeugen eines seiten- und/oder
bereichsstrukturierten Datenstroms aus einem Zeilendatenstrom" trägt. Auf diese
Patentanmeldung wird vollinhaltlich Bezug genommen und sie wird
in die vorliegenden Patentanmeldung inkorporiert.
-
2 zeigt
einen Ausschnitt eines Vorlagedokumentes 20 sowie einen
Ausschnitt einer Baumstruktur 21 mit Datenfeldern 22.
-
Das
Vorlagedokument 20 ist ein Dokument, das so formatiert
ist wie die Dokumente eines zu bearbeitenden Eingangs-Dokumentendatenstroms.
-
Dieses
Vorlagedokument 20 und der entsprechende Eingangs-Dokumentendatenstrom
stellen einen Zeilendatenstrom dar, der auch Zeilendaten basierter
Druckdatenstrom genannt wird. Ein solcher Zeilendatenstrom umfasst
lediglich Zeichen, die mittels einer oder mehrerer Zeichentabellen
(Code pages) codiert (ASCII, EBCDIC, Unicode, DBCS, ...) sind und
Zeilenumbrüche
und Seitenumbrüche
umfassen. Sie können
auch noch weitere Formatierungselemente umfassen. Derartige Zeilendatenströme sind
im digitalen Druckbereich vielfach verbreitet und insbesondere als
Advanced Function Presentation Datenstrom (AFP) Line data stream,
der von der International Machine Corporation (IBM) entwickelt wurde
oder als Line coded data stream (LCDS), der von der Xerox Corporation
entwickelt wurde, ausgebildet. Die Zeilen- und Seitenumbrüche können durch eine
bestimmte Zeichenfolge am Zeilenende bzw. Seitenende, Steuerzeichen
am Zeilen- bzw. Seitenanfang oder durch eine fest definierte Zeichenzahl
innerhalb einer Zeile bzw. Zeilenzahl innerhalb einer Seite festgelegt
sein.
-
Für das vorliegende
Ausführungsbeispiel
ist wesentlich, dass die Formatierung, d.h. die Anordnung der einzelnen
Zeichen im Dokument, lediglich durch die Position des einzelnen
Zeichens in einer Zeile, Zeilenumbrüche und Seitenumbrüche bestimmt
wird. Bei derartigen Dokumenten wird eine nicht proportionale Schrift
verwendet, wie z.B. Courier, bei der der Mittenabstand zweier benachbarter Zeichen
immer identisch unabhängig
von der Art des jeweiligen Zeichens ist.
-
Die
Baumstruktur 21 ist eine vom Benutzer editierbare Datei,
die zumindest für
ein Dokument (hier: „Invoice") alle Datenfelder 22 in
einer strukturierten Anordnung enthält. Die Datei Baumstruktur dient
als Vorlage zum Erzeugen einer strukturierten Datendatei. Dies bedeutet,
dass in der Datei Baumstruktur keine aus dem Eingangs-Dokumentendatenstrom
extrahierten Daten gespeichert werden, sondern in der strukturierten
Datendatei werden die aus dem Eingangs-Dokumentendatenstrom extrahierten Daten
in der gleichen Struktur wie in der Datei Baumstruktur gespeichert,
wobei den extrahierten Daten die Bezeichnung des korrespondierenden
Datenfeldes der Baumstruktur als Typ-Deklaration zugeordnet wird.
-
Die
Baumstruktur des vorliegenden Ausführungsbeispiels ist zunächst in
zwei Äste
unterteilt, die mit „Value" bzw. „Count" bezeichnet sind.
Der Zweig „Count" enthält lediglich
ein einziges Datenfeld, das als „Count" bezeichnet wird und in dem in der strukturierten
Datendatei die Nummer des Dokumentes innerhalb eines Eingangs-Dokumentendatenstroms abgespeichert
wird. So ist es möglich,
dass in einer strukturierten Datendatei Daten mehrerer Dokumente
strukturiert abgespeichert werden können. Im Zweig „Value" sind die Datenfelder
enthalten, in die die aus dem Eingangs-Dokumentendatenstrom zu extrahierenden
Daten geschrieben werden. Eine Reihe von Datenfeldern 22/I sind
in der Baumstruktur unmittelbar unter dem Oberbegriff „Value" angeordnet. Diese
Datenfelder 22/I dienen zum Abspeichern eines Datums des
Eingangs-Dokumentendatenstroms, das in jedem Dokument lediglich
ein einziges Mal auftritt. In dem vorliegenden Beispiel lautet der
Name der Lieferadresse im Vorlagedokument 20 „Music Box
Ltd", der auf das
Datenfeld „DeliveryAddrCustomerName" abgebildet wird,
d.h. dass in der strukturierten Datendatei dieser Name der Lieferadresse
an der entsprechenden Stelle gespeichert und mit der Typ-Deklaration „DeliveryAddrCustomerName" versehen wird.
-
In
der Strukturebene, die die Datenfelder 22/I enthält, ist
ein weiterer Zweig enthalten, der als „Items" bezeichnet ist. Dieser Zweig ist wiederum
in einen Zweig „Value" und in einen Zweig „Count" verzweigt. Diese
untergeordneten Zweige dienen dazu, Gruppen von Datenfeldern 22/II zu
strukturieren, auf die mehrfach Daten eines einzelnen Dokumentes
abgebildet werden. So ist im vorliegenden Beispiel das Dokument
eine Rechnung, in der mehrere abzurechnende Gegenstände (items)
aufgeführt
sind, für
welche jeweils die Datenmenge, Codenummer, Beschreibung, Einzelpreis
und Wert im Dokument enthalten sind. Für einen jeden solchen Gegenstand muss
in der strukturierten Datendatei ein entsprechender Satz Datenfelder
erzeugt werden, in den die jeweiligen Werte abgespeichert werden.
Die Anzahl dieser Sätze
von Datenfeldern wird im Datenfeld „Count" abgespeichert, das dem Oberbegriff „Items" untergeordnet ist.
-
Mit
dem erfindungsgemäßen Verfahren
werden aus dem Eingangs-Dokumentendatenstrom
Daten gemäß einem
vorbestimmten Regelsatz extrahiert und in die strukturierte Datendatei
gespeichert, wobei der Regelsatz derart ausgebildet ist, dass beliebige
Daten aus dem Eingangs-Dokumentendatenstrom auf ein beliebiges Datenfeld
der strukturierten Datendatei abbildbar sind.
-
Zum
Erzeugen eines solchen Regelsatzes werden Mittel bereit gestellt,
mit welchen im Vorlagedokument Quelldatenfelder 23 und
Quelldatenbereiche 24 definiert werden können. In 2 sind
zur Vereinfachung der Darstellung lediglich zwei Quelldatenfelder 23 und
ein Quelldatenbereich 24 gezeigt.
-
Der
Inhalt der Quelldatenfelder 23 wird auf die Datenfelder 22 abgebildet
und Quelldatenbereiche 24 können – müssen aber nicht – Oberbegriffen, das
heißt
Datenfeldern übergeordneten
Strukturelementen in der Baumstruktur 21 entsprechen. Aber
für jeden
Oberbegriff der Baumstruktur 21 auf dessen Datenfelder 22/II Daten
mehrfach abgebildet werden, muss im Vorlagedokument ein entsprechender
Quelldatenbereich 24 vorgesehen sein, der dann im tatsächlichen
Dokument eines Eingangs-Dokumentendatenstroms ein- oder mehrfach
zur Abbildung der Daten verwendet wird.
-
Wird
im Eingangs-Dokumentendatenstrom innerhalb eines Dokumentes ein
Quelldatenbereich 24 mehrfach erkannt, so wird in der strukturierten
Datendatei entsprechend oft ein Datensatz als Instanz mit den entsprechenden
Datenfeldern erzeugt. Der diesen Quelldatenbereich definierende
Regelsatz wird somit mehrfach auf das jeweilige Dokument angewandt,
um Daten zu extrahieren und in der strukturierten Datendatei abzuspeichern.
-
Die
Quelldatenfelder 23 und die Quelldatenbereiche 24 werden
im Vorlagedokument beispielsweise durch Markieren der entsprechenden
Zeichenfolge bzw. des entsprechenden Bereiches definiert. Dieses
Markieren kann grafisch durch das Aufziehen von Kästchen,
wie es in 2 gezeigt ist, mittels einer
Computermaus erfolgen. Das Markieren dieser Quelldatenfelder 23 bzw.
Quelldatenbereiche 24 kann auch, wie es von Textverarbeitungsprogrammen
bekannt ist, durch Markieren der entsprechenden Zeichen im Vorlagedokument
mittels Drücken
einer vorbestimmten Taste und Betätigen einer entsprechenden
Pfeil-Taste einer Tastatur erfolgen. Für die Erfindung ist wesentlich,
dass ein Benutzer beliebige Zeichenfolgen als Quelldatenfelder 23 im
Vorlagedokument markieren kann und Bereiche, die ein oder mehr Quelldatenfelder 23 enthalten,
als Quelldatenbereiche 24 markieren kann.
-
Das
Markieren eines Quelldatenfeldes 23 bzw. eines Quelldatenbereichs 24 kann
computerunterstützt
insbesondere auch dadurch erfolgen, dass abhängig von der Position eines
Cursors oder eines Mauszeigers im Vorlagedokument automatisch das dem
Cursor bzw. Mauszeiger nächstgelegene
Quelldatenfeld 23 und/oder ein nächstgelegener Quelldatenbereich 24 in
geeigneter Weise hervorgehoben wird, beispielsweise durch Anzeigen
des Quelldatenfeldes 23 bzw. des Quelldatenbereichs 24 in
einer Hervorhebungsfarbe. Diese Hervorhebung kann entweder automatisch
in Abhängigkeit
von der Position der Zeigeeinrichtung (Cursor, Maus) erfolgen oder teilautomatisch
bei betätigen
einer entsprechenden Taste, wie z. B. einer rechten Maustaste oder
einer Funktionstaste auf einer Tastatur.
-
Beim
Erzeugen der Regeln erfolgt die Zuordnung der Quelldatenfelder 23 auf
die korrespondierenden Datenfelder 22 beispielsweise durch
aufeinanderfolgendes Anklicken eines Quelldatenfeldes 23 und
eines korrespondierenden Datenfeldes 22 mit der Computermaus
oder durch Ziehen einer insbesondere imaginären, d.h. nicht am Bildschirm
angezeigten Verbindungslinie. Eine solche Zuordnung kann selbstverständlich auch über die
Tastatur eingegeben werden und/oder kontextbezogen bzw. menügeführt sein.
Dabei kann abhängig
von der Position einer Cursor- bzw. Mauszeigeeinrichtung und insbesondere
vom Betätigen
einer zweiten Taste auf der Tastatur bzw. Maus automatisch ein dem
Quelldatenfeld 23 bzw. dem Quelldatenbereich 24 entsprechendes
Strukturelement für
die Baumstruktur 21 angezeigt und zur Auswahl angeboten
werden.
-
Das
erfindungsgemäße Verfahren
arbeitet seitenweise, d.h. dass zum Umwandeln einer bestimmten Seite
jeweils ein bestimmter Regelsatz herangezogen werden muss. Damit
die Auswahl des jeweiligen Regelsatzes automatisch erfolgen kann, sind
bei der Erzeugung desselben eine oder mehrere Bedingungen anzugeben,
die einen bestimmten Regelsatz jeweils einer bestimmten Seite eines
Dokumentes zuordnen. 3 zeigt zwei Seiten eines Vorlagedokumentes,
die in ihrer Kopfzeile jeweils den Begriff „Invoice" enthalten, wobei ein paar Zeilen unterhalb
die Seitennummer und die Gesamtzeilenzahl jeweils getrennt durch
einen „/" angeordnet sind.
Diese Elemente stellen Seitentypfelder 25 dar, die wie die
Quelldatenfelder 23 im Vorlagedokument vom Benutzer definierbar
sind. Gibt es z.B. für
Rechnungen drei Regelsätze,
einen für
die erste Seite, einen für
die letzte Seite und einen für
weitere Seiten, so würden
die Bedingungen für
die erste Seite lauten, enthält
die Seite in einem Seitentypfeld 25 das Datum „Invoice" und in einem weiteren
Seitentypfeld die Seitennummer „1", so verwende den Regelsatz für die erste
Seite. Die Bedingungen für
die letzte Seite würden
lauten, dass eines der Seitentypfelder 25 das Datum „Invoice" enthalten muss und
dass in einem weiteren Seitentypfeld 25 die Seitenzahl
und die Gesamtseitenzahl enthalten sind und wenn beide gleich sind
handelt es sich um die letzte Seite, so dass der korrespondierende
Regelsatz herangezogen werden muss. Weiterhin ist es möglich, entsprechende
zeichen- und/oder strukturbezogene Funktionen für Bereiche vorzusehen mit denen
eine Regel oder ein Regelsatz erzeugt, angewandt und/oder verändert wird. Bei
der Anwendung einer Exchange-Funktion könnte ein Regelsatz verändert werden
oder ein anderer Regelsatz angewandt werden, wenn sich innerhalb
eines Bereiches der Inhalt wie z.B. ein Zeichen oder eine Zeichenfolge
eines Quelldatenfeldes gegenüber dem
entsprechenden Quelldatenfeld desselben, Bereiches der bisher verarbeiteten
Eingangs-Dokumentendaten verändert
hat. Bei der Anwendung einer Contain-Funktion könnte ein vorbestimmter Regelsatz
für einen
Bereich verwendet werden, wenn ein Zeichen oder eine Zeichenfolge
eines bestimmten Quelldatenfeldes einen bestimmten Inhalt hat. Es lassen
sich natürlich
ohne weiteres noch andere mögliche
Funktionen angeben.
-
Mit
dem Verfahren gemäß dem zweiten
Aspekt der Erfindung werden ein Computerprogramm-Produkt und ein
System mit insbesondere grafischen Mitteln zum Eingeben derartiger
Bedingungen bereitgestellt. Diese Mittel umfassen ein Fenster auf
der graphischen Benutzeroberfläche,
in dem Inhalte von Seitentypfeldern 25 mittels logischer Verknüpfung verknüpfbar sind.
Ist das logische Ergebnis der Verknüpfung „wahr" so bedeutet dies, dass dieser Regelsatz
für die
jeweilige Seite heranzuziehen ist. Die Mittel zum Eingeben der Bedingungen
umfassen vorzugsweise auch typische logische Verknüpfungsstrukturen
wie z.B. den Vergleich der Seitenzahl mit der Gesamtseitenzahl,
wobei diesen Verknüpfungsstrukturen
dann lediglich nur noch die entsprechenden Seitentypfelder 25 zuzuordnen
sind, die alleine oder in Verbindung mit weiteren logischen Verknüpfungen
einsetzbar sind. Weiterhin können die Mittel
zum Eingeben von Bedingungen für
Wiederholstrukturen und/oder Regeln des Regeldatensatzes Zeichenfunktionen
umfassen, wie z. B. die Funktion CONTAIN, mit der in einem Quelldatenfeld oder
Quelldatenbereich eine bestimmte Zeichenfolge gesucht wird oder
die Funktion EXCHANGE, mit der überprüft wird,
ob sich in einem Quelldatenfeld und/oder Quelldatenbereich ein bestimmter
Datenwert gegenüber
einem entsprechenden, bisher geltenden Datenwert verändert hat.
Die zuletzt genannte Funktion ist insbesondere bei der Abarbeitung
von Folgeseiten und/oder Wiederholstrukturen nützlich.
-
Da
ein Eingangs-Dokumentendatenstrom mehrere Dokumente enthalten kann
und eine strukturierte Datendatei für ein jedes Dokument einen
vollständigen
Satz Datenfelder enthalten soll, ist es zweckmäßig, den Anfang und das Ende
eines jeden Dokumentes zu ermitteln, damit bei der Umwandlung automatisch
der Anfang und das Ende eines Dokumentes erkannt werden. Hierzu
werden Dokumentenbegrenzungsfelder 26 definiert (4)
und Dokumentenbegrenzungsbedingungen eingegeben. Die Dokumentenbegrenzungsfelder
sind typischerweise typische Elemente eines Briefkopfes, Seitenzahlen, oder
Abschlusselemente bei Rechnungen oder dergleichen. Die Dokumentenbegrenzungsfelder 26 können die
gleichen Daten wie die Seitentypfelder 25 oder die Quelldatenfelder 23 betreffen.
Von diesen weiteren Feldern unterscheiden sie sich dadurch, dass
sie in Bedingungen zum Bestimmen des Anfangs bzw. des Endes eines
Dokumentes verwendet werden. Diese Bedingungen können gleichermaßen eingegeben
werden wie die Bedingungen zum Bestimmen des Seitentyps.
-
Bei
der Festlegung von ENDE-Bedingungen für ineinander verschachelte
und/oder hierarchisch strukturierte Bereiche ist es insbesondere
nützlich, die
ENDE-Bedingung eines ersten Bereichs vollständig an die ENDE-Bedingung
eines zweiten Bereiches zu koppeln, insbesondere die ENDE-Bedingung
eines untergeordneten Bereiches an die ENDE-Bedingung eines übergeordneten
Bereiches zu koppeln.
-
Innerhalb
eines Eingangs-Dokumentendatenstroms können auch unterschiedliche
Dokumententypen, wie z.B. Mahnungen, Lieferscheine, Rechnungen,
etc., enthalten sein. Die Regelsätze
der einzelnen Dokumententypen können
derart ausgebildet sein, dass für
einen jeden Dokumententyp eine separate strukturierte Datendatei
erzeugt wird. Die Daten unterschiedlicher Dokumententypen können auch
in einer gemeinsamen strukturierten Datendatei abgespeichert werden.
-
Die
Quelldatenfelder können
in Zeilendatenströmen
grundsätzlich
absolut adressiert werden, d.h. z.B. mittels der Zeilennummer, der
Zeichennummer innerhalb der jeweiligen Zeile, und der Länge, d.h.
der Anzahl der Zeichen. Eine derartige Adressierung ist einfach
festlegbar und wird vom System automatisch übernommen, sobald ein Quelldatenfeld im
Vorlagedokument definiert wird.
-
5 zeigt
mehrere Quelldatenfelder 23, wobei auch zwei Quelldatenfelder 23/III dargestellt sind,
die für
eine solche absolute Adressierung nicht geeignet sind.
-
6 zeigt
ein weiteres Dokument des Dokumententyps aus 5, bei dem
jedoch die Quelldatenfelder 23/III bezüglich der Daten, die sie auf
die Datenfelder abbilden sollen, versetzt angeordnet sind. Dies
beruht darauf, dass der Ort bestimmter Daten von im Dokument enthaltenen
vorhergehenden Daten abhängig
ist. So hat sich in 6 z. B. die Angabe der Summe
(„Subtotal") gegenüber dem
Dokument aus 5 verschoben, da weniger Gegenstände in dieser
Rechnung enthalten sind, als dies im Vorlagedokument der Fall war.
-
Zur
Beseitigung dieses Problems werden Quelldatenbereiche 24 definiert,
die jeweils ein Positionselement 27 enthalten, dessen Ort
relativ definiert ist. Dieses Positionselement 27 ist typischerweise
aber nicht notwendigerweise ein Quelldatenfeld 23. Bei
dem in 7 gezeigten Vorlagedokument ist für die einzelnen
Gegenstände
der Rechnung jeweils ein Quelldatenbereich 24 definiert.
Innerhalb eines solchen Quelldatenbereichs 24 ist der erste
Posten die Anzahl der entsprechenden Gegenstände, der immer eine ganze Zahl
ist. Es kann deshalb eine Bedingung eingegeben werden, gemäß der der
Quelldatenbereich 24 positioniert wird, die im vorliegenden Beispiel
eine Zeichenfolge sucht, indem eine ganze Zahl gesucht wird und
im Bereich der Zeichen (das heißt
Spalten) 4 bis 8 einer Zeile angeordnet ist. Wird eine solche Zeichenfolge
im Dokument gefunden, so wird dieser Quelldatenbereich 24 entsprechend
positioniert. Innerhalb des Quelldatenbereichs sind die einzelnen
Quelldatenfelder 23 absolut adressiert. Bei diesem Beispiel
ist die Anzahl der Gegenstände
nicht fest vorgegeben. Daher ist es möglich, dass dieser Quelldatenbereich 24 unterschiedlich
oft anzuwenden ist. Es handelt sich hiermit somit um einen wiederholt
anwendbaren Quelldatenbereich 24. Dies ist in der Bedingung
entsprechend festzulegen.
-
Bei
diesem Beispiel sind noch zwei weitere Quelldatenbereiche 24/II und 24/III aufgeführt, die
relativ adressiert sind. Die Bedingung zum Auffinden des Quelldatenbereichs 24/II lautet:
Wird an einer beliebigen Stelle auf der aktuell bearbeiteten Seite
die Zeichenfolge „Subtotal" gefunden (CONTAIN-Funktion), so stellt
sie ein Positions- und Wiederholelement des eine Wiederholstruktur
bildenden Quelldatenbereichs 24/II dar, der die Zeile,
in dem diese Zeichenfolge enthalten ist sowie alle weiteren Zeilen
bis zur fünfzigsten
Zeile umfasst.
-
Die
Bedingung für
den Quelldatenbereich 24/III lautet: Wird innerhalb des
Quelldatenbereichs 24/II eine Zeichenfolge im Bereich des
einundsechzigsten bis siebenundsechzigsten Zeichens einer Zeile
gefunden, so umfasst der Quelldatenbereich 24/III diese
Zeile und alle weiteren hierauf folgenden Zeilen innerhalb des Quelldatenbereichs 24/II.
Die weiteren Quelldatenfelder 23 sind innerhalb der Quelldatenbereiche 24 adressiert.
Die Adressierung kann sich auf einen beliebigen Bezugspunkt, wie
z.B. die erste oder letzte Zeile innerhalb des Quelldatenbereichs 24 beziehen.
-
Die
Quelldatenbereiche 24/II und 24/III treten innerhalb
eines Dokuments lediglich einmal auf, das heißt sie sind keine Wiederholstrukturen,
was bei der Erstellung der entsprechenden Bedingung zum Positionieren
der Quelldatenbereiche 24 berücksichtigt werden kann.
-
Die
mit einem solchen Regelsatz erstellbare strukturierte Datendatei
enthält
Daten, die z.B. wie in der Deutschen Patentanmeldung 10 2004 021
269.4 in 12 dargestellt sind und seiten-
und bereichsstrukturiert sind. Quelldatenfelder 23 können an
beliebiger Stelle im Vorlagedokument beliebigen korrespondierenden
Datenfeldern 22 in der Baumstruktur 21 zugeordnet
werden.
-
Die
strukturierte Datendatei bildet somit eine Datenbank, deren Inhalt
einfach und mit üblichen
Mitteln ausgelesen und in beliebige Layouts bzw. Formulare eingetragen
werden können.
Die so erzeugten Ausgangsdokumente können beliebig formatiert sein
und enthalten die im ursprünglichen
Zeilendatenstrom aufgeführten
Daten. Ein Ausschnitt eines solchen Ausgangsdokuments ist in 8 gezeigt.
-
Nachfolgend
werden die Regeln und Bedingungen zum Extrahieren der Daten des
ausschnittsweise in 9 gezeigten Dokumentes „Lieferschein" beispielhaft erläutert. Die
einzelnen Regeln und Bedingungen sind in einer Anlage aufgeführt.
-
Am
Ende der Anlage ist auf Seite 10 die Baumstruktur der Abbildungs-
bzw. Strukturelemente zum Extrahieren der Daten aus dem Dokument „Lieferschein" aufgeführt. Auf
Seite 11 der Anlage ist die Baumstruktur, die als Vorlage zum Erzeugen
der strukturierten Datendatei dient und der in 2 gezeigten
Baumstruktur entspricht, dargestellt.
-
Die
Baumstruktur der Abbildungselemente enthält die Quelldatenfelder und
Quelldatenbereiche, gemäß welcher
Daten aus den Dokumenten extrahiert werden.
-
Die
Bedingungen und Regeln sind entsprechend der Baumstruktur der Abbildungselemente
geordnet. Zunächst
sind, (Seite 1 der Anlage) die Strukturelemente und Eigenschaften
definiert, die im gesamten Dokument gelten, d.h., die sich auf das
Abbildungselement „Dokument" beziehen.
-
Die
Strukturelemente umfassen einer Wiederholstruktur entsprechende
Wiederhol-Quelldatenbereiche, Quelldatenfelder, Seitentypen und
Steuerelemente. Als Steuerelemente werden alle Daten und sonstige
Informationen bezeichnet, die bei Bedingungen logisch verknüpft werden
können.
Steuerelemente sind insbesondere Seitentypenfelder, Dokumentenbegrenzungsfelder
und Positionselemente, die jeweils ein Datum im Dokument definieren,
sowie Zeilennummern bestimmter Zeilen. Im vorliegenden Ausführungsbeispiel
sind zwei Seitentypen „Lieferschein
erste Seite" und „Lieferschein
Folgeseite" definiert,
für die
jeweils ein separater Regelsatz angegeben ist. Ferner ist ein Wiederhol-Quelldatenbereich „Tabelle" definiert, der mehrfach
im Dokument auftreten kann, wobei dies hier unabhängig vom
Seitentyp ist, da er auf beiden Seitentypen jeweils mit dem dort
definierten Quelldatenbereich „Tabellenbereich" verknüpft ist.
Ein solcher Wiederhol-Quelldatenbereich enthält Quelldatenfelder und/oder
Quelldatenbereiche. Er enthält
jedoch keine Elemente zur eigenen Positionierung. Die Positionierung
erfolgt über
die mit ihm verknüpften
Quelldatenbereiche (hier: „Tabellenbereich").
-
Als
Eigenschaften des Dokumentes sind der Zeichencode für den Zeilenumbruch,
der Zeichencode für
den Seitenumbruch und die Zeichentabelle sowie eine Bedienungsliste
zur Erkennung von Seitentypen definiert. Der Seitentyp „Lieferschein
erste Seite" wird
anhand der Bedingung erkannt, dass ein Seitentypenfeld 1 26/1 (Zeile
2 der aktuell bearbeiteten Seite, Zeichen 66–88) die Zeichenfolge „Lieferschein" und ein Seitentypenfeld
2 26/2 (Zeile 87 der aktuell bearbeiteten Seite, Zeichen
83–84)
das Zeichen „1" enthält. Die
Seitentypenfelder 26/1 und 26/2 sind auf Seite
1 und 2 von 9 eingezeichnet. Aus Gründen der Übersichtlichkeit
sind in 9 lediglich eine kleine Auswahl
aller Steuerelemente und Quelldatenbereiche dargestellt.
-
Die
Bedingung zur Erkennung des Seitentyps „Lieferschein Folgeseite" lautet, dass das
Seitentypenfeld 1 26/1 die Zeichenfolge „Lieferschein" enthält und das
Seitentypenfeld 2 ungleich „1" ist.
-
Die
Definition der Seitentypen umfasst wieder Strukturelemente und Eigenschaften.
Die Strukturelemente weisen wiederum Quelldatenbereiche, Quelldatenfelder
und Steuerelemente auf. Zur ersten Seite sind drei Quelldatenbereiche „Versender" 24/1, „Versandanschrift" 24/2 und
der Quelldatenbereich „Tabellenbereich" 24/3 enthalten.
dieser ist mit dem im „Dokument" enthaltenen Wiederhol-Quelldatenbereich „Tabelle" verknüpft. Ferner
sind eine Reihe von Quelldatenfelder, die in keinem dieser Quelldatenbereiche
angeordnet sind, mittels absoluter Adressierung definiert. Beispielhaft
sind hier die Quelldatenfelder „Kundennummer" 23/1, „Bestellnummer" 23/2, „Auftragsnummer" 23/3 und „Tel/Faxnummer" 23/4 aufgeführt. Diese
Quelldatenfelder sind durch Angaben der Zeilennummern und durch Angabe
der Zeichen, die sie innerhalb der jeweiligen Zeile umfassen, eindeutig
definiert.
-
Unter
den Eigenschaften dieses Seitentyps sind Bedingungen zur Positionierung
der Quelldatenbereiche und eine Bedingung zur Erkennung der Dokumentgrenze
angegeben. In diesem Ausführungsbeispiel
sind die Quelldatenbereiche alle absolut durch die Zeilennummer
der ersten Zeile des Quelldatenbereiches positioniert, nämlich in
den Zeilen 3, 9 bzw. 43. Im Rahmen der Erfindung ist es selbstverständlich auch
möglich,
die Position der Quelldatenbereiche auch relativ, beispielsweise
durch Detektion einer Zeichenfolge, festzulegen.
-
Das
Ende eines Dokumentes wird dann detektiert, wenn ein Dokumentenbegrenzungsfeld 25/1, das
unmittelbar anschließend
an eine Seitennummer (Seitentypenfeld 26/2) angeordnet
ist, das Zeichen „-„ enthält. Dies
ist im vorliegenden Ausführungsbeispiel
auf Seite 1 nicht der Fall, daher umfasst das Dokument mehrere Seiten.
-
Die
Definition der Folgeseiten ist ähnlich
wie die Definition der ersten Seite ausgebildet, wobei sich die
Folgeseiten dadurch unterscheiden, dass sie lediglich einen einzigen
Quelldatenbereich, nämlich den „Tabellenbereich" 24/3 umfassen.
-
Die
Wiederhol-Quelldatenbereiche sind auf Seite 4 der Anlage definiert.
Im vorliegenden Anwendungsbeispiel gibt es lediglich einen Wiederhol-Quelldatenbereich „Tabelle". Dieser ist mit
dem Quelldatenbereich „Tabellenbereich" verknüpft und umfasst
drei Quelldatenbereiche „Anlieferung" 24/4, „Versandhinweise" 24/5 und „Lieferposten" 24/6. Dies
zeigt die sehr vorteilhafte Eigenschaft eines Ausführungsbeispiels
der Erfindung, dass mehrere Quelldatenbereiche ineinander verschachtelt
anordbar sind, wobei insbesondere die Positionierung eines Quelldatenbereiches,
der innerhalb eines weiteren Quelldatenbereiches angeordnet ist,
bezüglich des
weiteren Quelldatenbereiches erfolgt, d.h. dass die Zeilennummerierung
im weiteren Quelldatenbereich für
die hierin angeordneten Quelldatenbereiche mit der Zahl „1" beginnt. So kann
die Positionierung der Quelldatenbereiche innerhalb eines „übergeordneten
Quelldatenbereiches" unabhängig vom
Inhalt des Dokumentes außerhalb
des übergeordneten Quelldatenbereiches
erfolgen.
-
Im
Wiederhol-Quelldatenbereich „Tabelle" wird das Vorhandensein
der einzelnen Quelldatenbereiche „Anlieferung" 24/4, „Versandhinweise" 24/5 und „Lieferposten" 24/6 anhand
der Detektion bestimmter Zeichenfolgen mit einer CONTAIN-Funktion wie „Anlieferung", „Anzahl" bzw. mit einer numerischen
Funktion zur Detektion eines ganzen Zahlwertes in den Positionselementen
1 bis 3 detektiert.
-
Nachfolgend
wird kurz die Definition der einzelnen Quelldatenbereiche erläutert.
-
Der
Quelldatenbereich „Versender" 24/1 beinhaltet
vier Quelldatenfelder 23/5 bis 23/8, die innerhalb
des Quelldatenbereichs „Versender" absolut adressiert
sind. Ferner ist die Bedingung zur Erkennung des Quelldatenbereichsende
dadurch definiert, dass die Zeilennummer gleich „4" ist. Dies bedeutet, dass der Quelldatenbereich „Versender" vier Zeilen umfasst.
In ähnlicher
Weise ist auch der Quelldatenbereich „Versandanschrift" 24/2 definiert,
der jedoch sieben Zeilen umfasst.
-
Ein
Quelldatenbereich „Tabellenbereich" 24/3 ist
mit dem Wiederhol-Quelldatenbereich „Tabelle" verknüpft und enthält die Bedingung
zur Erkennung des Quelldatenbereichsende.
-
Der
Quelldatenbereich „Anlieferung" 24/4 umfasst
lediglich eine einzige Zeile, hier nämlich die erste Zeile des Quelldatenbereiches „Tabellenbereich" 24/3 mit
zwei Quelldatenfeldern „Lieferdatum" 23/9 und „Lieferuhrzeit" 23/10.
-
Der
Quelldatenbereich „Versandhinweis" enthält eine
Reihe von Quelldatenfeldern, in welchen beispielhaft auf der letzten
Seite in 9 als Felddatenfeld „Anzahl
Packstücke" 23/11 und
das Quelldatenfeld „Auftragsabwicklung" 23/12 eingezeichnet sind.
-
Der
Quelldatenbereich „Lieferposten" 24/6 umfasst
weitere Quelldatenbereiche „Postenbeschreibung" 24/8 und „Unterposten" 24/9. Im
Quelldatenbereich „Lieferposten" ist eine Bedingungsliste zur
Erkennung der beinhalteten Quelldatenbereiche „Postenbeschreibung" 24/8 und „Unterposten" 24/9 aufgeführt. Der
Quelldatenbereich „Postenbeschreibung" 24/8 beginnt
in der zweiten Zeile des übergeordneten
Quelldatenbereiches „Lieferposten" 24/6. Der
Quelldatenbereich „Postenbeschreibung" ist somit absolut
adressiert. Der Quelldatenbereich „Unterposten" 24/9 ist
relativ adressiert, wobei das Positionselement 27/1 mit
dem Positionselement 27/2 verglichen wird und bei Übereinstimmung
festgestellt wird, dass der Quelldatenbereich „Unterposten" 24/9 vorliegt.
Die Erkennung dieser Quelldatenbereiche definiert auch den Anfang
dieser Quelldatenbereiche.
-
Weiterhin
ist eine Bedingung zur Erkennung des Endes des Quelldatenbereiches „Lieferposten" angegeben, mit welchen
das Ende durch Detektion eines weiteren Lieferpostens oder durch
Detektion des Tabellenendes erkannt wird.
-
Weiterhin
sind die Quelldatenbereiche „Postenbeschreibung" 24/8 und „Unterposten" 24/9 näher definiert,
wobei der Quelldatenbereich „Unterposten" einen weiteren Quelldatenbereich „Unterpostenbeschreibung" 24/10 beinhaltet.
-
Das
obige Ausführungsbeispiel
zeigt, wie die Quelldatenfelder 23 in einem Eingangsdokument
mittels absoluter und relativer Adressierung, die auch mittels der
Quelldatenbereiche beliebig kombiniert und verschachtelt werden
kann, positioniert werden, um die in dem Eingangsdokument enthaltenen
Daten zu extrahieren. Diese extrahierten Daten werden automatisch
in einer strukturierten Datendatei entsprechend der auf Seite 11
der Anlage dargestellten Baumstruktur abgespeichert.
-
Das
oben gezeigte Ausführungsbeispiel zeigt
die Regelsätze
für die
beiden Seitentypen und die Bedingungen zum Detektieren der Dokumenten- bzw.
Seitengrenzen. Die grundsätzliche
Struktur zur Definition der einzelnen Elemente, wie Dokument, Seitentyp
und Quelldatenbereich umfassen Quelldatenbereiche, Quelldatenfelder
und Steuerelemente. Lediglich das Element „Dokument" enthält die Definition von Wiederhol-Quelldatenbereiche,
Seitentypen und Definitionen zu grundsätzlichen Eigenschaften des
Dokumentes. Im Rahmen der vorliegenden Erfindung können die
Seitentypen auch als Quelldatenbereiche betrachtet werden, da sie
mit der gleichen Struktur definiert werden, wie der eigentliche
Quelldatenbereich.
-
Weiterhin
zeigt das obige Ausführungsbeispiel,
dass bestimmten Typen von Quelldatenbereichen, wie zum Beispiel
dem Quelldatenbereich „Tabelle" bestimmte weitere
Quelldatenbereiche, wie z. B. die Quelldatenbereiche „Anlieferung", „Versandhinweise" und „Lieferposten" derart zugeordnet sind,
dass die weiteren Quelldatenbereiche nur im übergeordneten Quelldatenbereich
(hier „Tabelle") auftreten.
-
Beim
Extrahieren der Daten wird mittels eines Quelldatenbereichszeigers
erfasst, aus welchen Quelldatenbereiche aktuell Daten extrahiert
werden. Dieser Zeiger entspricht somit auch einer Anzeige der Ebene
der Baumstruktur der Abbildungselemente (Seite 10 der Anlage). Der
größte Quellbereich
entspricht hierbei dem gesamten Dokument. Am Ende einer Seite wird
der Quelldatenbereichszeiger derart verändert, dass er auf das gesamte
Dokument zeigt. Falls ein Quelldatenbereich, der mit einem Wiederhol-Quelldatenbereich
verknüpft
ist und sich somit über
ein Seitenende hinaus auf eine nachfolgende Seite erstrecken kann,
d.h., dass dieser Quelldatenbereich sich über das Seitenende hinaus auf
eine Nachfolgeseite erstreckt, wird in einem zusätzlichen Seitenwechselzeiger
der Wert des Quelldatenbereichszeigers gespeichert, mit welchem
dieser auf diesen Quelldatenbereich gezeigt hat. Beim Abarbeiten
der Folgeseite wird bei Erreichen dieses Quelldatenbereiches, d.h.,
dass der Quelldatenbereichszeiger wieder den gleichen Wert, wie
der Seitenwechselzeiger annimmt, der entsprechende Datensatz in der
strukturierten Datendatei ergänzt
und kein neuer Datensatz für
diesen Quelldatenbereich angefangen.
-
Die
Erfindung ist oben anhand eines Beispieles näher erläutert, bei welchem sich die
Quelldatenbereiche immer über
die gesamte Seitenbreite erstrecken. Im Rahmen der Erfindung ist
es jedoch auch möglich,
Quelldatenbereiche zu definieren, die sich lediglich über einen
Teil einer oder mehrerer aufeinanderfolgender Zeilen erstrecken.
Diese Quelldatenbereiche bilden somit Spalten im jeweiligen Dokument,
wobei mehrere derartige spaltenförmige
Quelldatenbereiche nebeneinander angeordnet werden können. Diese
spaltenförmigen
Quelldatenbereiche sind vor allem zum Auslesen von Tabellen geeignet.
-
In 10 ist
der durch ein Computerprogramm-Produkt gemäß dem zweiten Aspekt der Erfindung
bewirkte Aufbau einer Bildschirmanzeige dargestellt. Das Vorlagedokument 20 wird
dabei in einem ersten Bildschirmfenster 28 wiedergegeben,
die Baumstruktur 21 in einem zweiten Bildschirmfenster 29.
Im Fenster 29 ist aktuell das Datenfeld „field0" 32 unter
dem Datenfeld „invoiceitem" markiert. Dementsprechend
sind im Vorlagedokument 20 alle unter der Überschrift „Item NO" stehenden Quelldatenfelder 33 durch
eine doppelte Umrandung im Vorlagedokument 20 hervorgehoben.
Im dritten Fenster 30 sind strukturelle Informationen zu
dem markierten Datenfeld 32 (field0) angezeigt. Diese strukturellen
Zuordnungen, wie z. B. Variablentyp (character, integer, flow),
können über das
Fenster 30 eingestellt werden.
-
Im
Fenster 31 sind alle Variablen angezeigt, die zur Prozesssteuerung
verwendet werden, beispielsweise Variablen für Wiederholelemente oder zum
Erkennen von ENDE-Bedingungen. Im Fenster 32 können auch
neue Variablen definiert werden und Zuweisungen zu Quelldatenfeldern
im Vorlagedokument 20 (ebenfalls mit gedachten Linien)
vorgenommen werden. Beispielsweise ist Variable2 dem Inhalt des
Bereichs 41 zugeordnet. Diese Variable wird verwendet umd
die Wiederholgruppenregel zu überprüfen, d.h.
ob der Inhalt der Variable2 identisch mit einem Punkt ist.
-
Im
Fenster 30 werden alle typspezifischen Eigenschaften von
Markierungsbereichen bzw. Datenfeldern angezeigt. Sie sind über Fenster 30 im Rahmen
der der Prozesslogik entsprechenden, gespeicherten Regeln auch veränderbar.
Da im Fenster 29 gerade das field0 markiert ist, werden
im Fenster 30 alle zum field0 gehörenden Eigenschaften angezeigt.
-
Im
Ausführungsbeispiel
der 10 werden der Struktur des im Fenster 28 angezeigten
Vorlagedokuments 20 auf einer ersten hierarchischen Strukturebene
vier Bereiche bzw. Quelldatenfelder zugeordnet, nämlich dem
im Vorlagedokument 20 markierten Bereich 35 das
Datenfeld „Delivery
address", dem in
der strukturierten Datei eine Zeichen-Variable zugeordnet ist, die
mehrere Zeichen inklusive Zeilenumbruchs-Steuerzeichen umfassen kann, dem Quelldatenfeld 36 mit
dem Inhalt „Healthway
Limited", das Datenfeld „invoiceaddrline
1" in der Baumstruktur 21 und
dem Datenfeld 37 des Vorlagedokuments 20, das
Datenfeld „invoceno" in der Baumstruktur 21.
Dem im Vorlagedokument 20 markierten Bereich 38,
in dem wiederum drei Datenfelder 33, 39 und 40 markiert
sind, ist in der Baumstruktur 21 als Strukturelement das
ARRAY „invoiceitem" zugeordnet, dem
wiederum als untergeordnete Strukturelemente die Datenfelder field0, field1
und field2 zugeordnet sind. Field0 entspricht dem Quelldatenfeld 33,
field1 dem Quelldatenbereich 39 und field2 dem Quelldatenfeld 40.
-
Dem
markierten Bereich 38 ist weiterhin die Eigenschaft zugewiesen,
dass er eine Wiederholgruppe darstellt, das heißt, dass seine Struktur in dem
Vorlagedokument 20 mehrfach vorkommt und dass die entsprechenden
Daten des Eingangs-Dokumentendatenstroms
jeweils dem selben Datenfeld in der Baumstruktur 21 zugeordnet
werden. Die entsprechenden Wiederholgruppen des Vorlagedokuments 20 sind
in den 10 und 11 mit
den Bezugszeichen 34a, 34b, 34c, 34d, 34e, 34f und 34g bezeichnet.
Im vorliegenden Fall ist die Bedingung für eine Wiederholgruppe, dass
in einer Zeile jeweils an der dritte Stelle (Spalte) ein Punkt steht.
Im Vorlagedokument 20 sind dies die in der Auftragstabelle 42 aufgeführten Bestellzeilennummern
(order line number) mit den Werten 1., 2., 3., usw. Die Wiederholgruppe
wird in der in einer x-y-Matrix
dargestellten Weise des Vorlagendokuments 20 somit in der
dritten Spalte gesucht, die in 10 mit
dem Bezugszeichen 41 versehen ist. In allen Folgeseiten
des Vorlagedokuments 20 werden die entsprechenden Folgeeinträge aufgrund
der Wiederholregel und der dem Wiederholbereich 38 bzw. 34 zugeordneten
Datenfeldstruktur automatisch erkannt, was z. B. in 11 für die Folgeeinträge 5. bis
8. (Wiederholgruppen 34d bis 34g) ersichtlich
ist. Aus dem Eingangs-Datenstrom bzw. dem Vorlagendokument 20 können somit die
dem Eingangs-Datenstrom zugrunde liegenden variablen Daten, wie
z. B. die in den Datenfeldern 33, 39 und 40 enthaltenen
Daten, von statischen, das heißt
wiederkehrenden Daten unterschieden und gegebenenfalls getrennt
werden. Im vorliegenden Fall werden beispielsweise die Daten der
Quelldatenfelder bzw. Bereiche 35, 36, 37,
die mit gleichem Inhalt auf Folgeseiten des Vorlagedokuments 20 wieder
erscheinen, die jedoch zur Aufbereitung eines Eingangs-Datenstroms gemäß dem ersten
Aspekt der Erfindung nur einmal benötigt werden, als statisch erkannt
und deren erneutes Auftauchen bei der Reformatierung des Datenstroms
ignoriert.
-
Aufgrund
der Möglichkeit,
computergestützt anhand
grafikorientierter Hilfsmittel, wie insbesondere der Möglichkeit,
ein oder mehrere Quelldatenfelder mit einem Rechteck zeilen- und
spaltenweise beliebig festzulegen, können ohne weiteres automatisch
die entsprechenden Regeln erstellt werden. Zur Festlegung des Bereichs 38 als
Wiederholgruppe wird zunächst
ein Rechteck um alle in 10 gezeigten
Daten des markierten Bereichs unter Benützung einer Computermaus am
Bildschirm im Fenster 28 gezogen. Dann werden die relevanten
Quelldatenfelder 33, 39 und 40 jeweils
einzeln markiert und ihnen jeweils zugeordnet sowie ihre korrespondierenden Datenfelder
in der Baumstruktur 21 dem als Feld (ARRAY) definierten
Objekt invoiceitem als Unterstruktur zugeordnet. Weiterhin wird
invoiceitem als Wiederholgruppe definiert und als Wiederholregel, wie
bereits oben beschrieben, das Auffinden eines Punktes in der dritten
Spalte einer Zeile festgelegt. Als Ende für die Wiederholgruppe kann
einerseits definiert werden, dass ein Dokumentenende (dem Bereich 38 übergeordnete
Struktur „Dokument" bzw. in der Baumstruktur „Records") auftritt und/oder
eine das Auftreten der Wiederholungsgruppe beendende Bedingung erfüllt ist,
z.B. dass im Quelldatenfeld 36 und einer damit verbundenen
Variable des Fensters 31 ein neuer Name (Inhalt) auftritt.
-
Der
Bereich 39, dem die Variable field1 zugeordnet ist, stellt
einen ebenenübergreifend
mit dem Bereich 38 verschachtelten Markierungsbereich dar. Bei
farbiger Anzeige der Fenster 28 und 29 werden gleichartige
Strukturelemente, wie z. B. der markierte Bereich 38 und
seine Wiederholgruppen 34a bis 34g, sowie das
entsprechende Strukturelement invoiceitem in der Baumstruktur 21 in
einer ersten Farbe z. B. rot dargestellt. Der Bereich 39 und
die ihm entsprechenden Wiederholgruppen im Fenster 28 werden wahlweise
in einer zweiten Farbe angezeigt, z. B. blau, oder, wie in 10 und 11 ersichtlich,
grafisch durch durchgezogene Linien abgesetzt von den gestrichelten
Linien des markierten Bereichs 38 und seiner Wiederholgruppen 34a bis 34g.
-
Im
Fenster 30 der 11 ist
angezeigt, dass die im Fenster 28 angezeigten Daten des
Vorlagedokuments 20 einem zweiten Seitentyp (page typ 2)
zuzuordnen sind. Diese Anzeige und Zuordnung kann entweder automatisch
aufgrund entsprechender Daten des Eingangs-Dokumentendatenstroms
erfolgen oder, insbesondere menügeführt, durch
den Benutzer über
Fenster 30 eingestellt werden.
-
Wie
in 11 zu sehen, kann im Vorlagedokument 20 mit
einem Mauszeiger 43 durch das Vorlagedokument 20 navigiert
werden. Wenn sich der Mauszeiger 43 in die Nähe einer
Information bewegt, so wird automatisch ein Bereich 44 angezeigt,
der computerunterstützt
als zusammengehöriger
Bereich erkannt wird. Dabei kann insbesondere berücksichtigt
werden, dass Daten, wie im Falle der 11, ein zusammengehöriges Gebiet
bilden, das vollständig von
Leerzeichen umgeben ist. Weiterhin kann die Historie der Bearbeitung
des Vorlagedokuments 20 berücksichtigt werden, das heißt, Daten,
die bereits vorher markiert werden oder als Wiederholgruppen erkannt
werden, werden nicht erneut automatisch zur Markierung vorgeschlagen.
Auf Knopfdruck z. B. mit der rechten Maustaste kann zu dem vorgeschlagenen
markierten Bereich ein weiterer Vorschlag hinsichtlich des Strukturelements
in der Baumstruktur 21 gemacht werden, beispielsweise ob
ein ARRAY angelegt werden soll oder nur ein Datenfeld. Entsprechend
kann eine Auswahl angeboten werden, ob eine Wiederholungsgruppe
angelegt werden soll oder ein nicht wiederkehrendes Datenfeld.
-
Nachfolgend
wird die Erfindung kurz zusammengefasst:
Mit dem erfindungsgemäßen Verfahren
werden Quelldatenfelder im Eingangs-Dokumentendatenstrom zum Auslesen
von zu extrahierenden Daten automatisch positioniert, wobei deren
Positionierung mittels absoluter oder relativer Adressierung erfolgt. Insbesondere
können
die Quelldatenfelder mittels Quelldatenbereiche positioniert werden,
mit welchen Abschnitte der einzelnen Dokumente erfasst werden. Diese
Quelldatenbereiche können
verschachtelt angeordnet sein und selbst wiederum absolut oder relativ
positioniert werden.
-
Die
entsprechenden Regeln können
einfach durch Markieren der entsprechenden Quelldatenbereiche und
Quelldatenfelder in einem Vorlagedokument erstellt werden.
-
Die
Erfindung ist insbesondere dazu geeignet, als Computerprogramm (Software)
realisiert zu werden. Sie kann damit als Computerprogramm-Modul
als Datei auf einem Datenträger
wie einer Diskette, DVD- oder CD-ROM oder als Datei über ein
Daten- bzw. Kommunikationsnetz verbreitet werden. Derartige und
vergleichbare Computerprogramm-Produkte oder Computerprogramm-Elemente
sind Ausgestaltungen der Erfindung. Der erfindungsgemäße Ablauf
kann in einem Computer, in einem Druckgerät oder in einem Drucksystem
mit vorgeschalteten oder nachgeschalteten Datenverarbeitungsgeräten Anwendung
finden. Dabei ist klar, daß entsprechende
Computer, auf denen die Erfindung angewandt wird, weitere, an sich
bekannte technische Einrichtungen wie Eingabemittel (Tastatur, Mouse,
Touchscreen), einen Mikroprozessor, einen Daten- bzw. Steuerungsbus,
eine Anzeigeeinrichtung (Monitor, Display) sowie einen Arbeitsspeicher,
einen Festplattenspeicher und eine Netzwerkkarte enthalten können.
-
- 1
- Dokumenten-Produktionssystem
- 2
- Main-Frame-Architektur
- 3
- Host-Computer
- 4
- Bearbeitungscomputer
(File-Server)
- 5
- Netzwerkarchitektur
- 6a,
6b
- Druckgerät
- 7
- Überwachungssystem
- 7a
- Überwachungscomputer
- 7b
- Datenbank
- 7c
- Computerprogrammmodul
- 8
- Print
Manager-Modul
- 9
- Konverter
- 10a,
10b
- Lesestation
- 11a,
11b
- Barcodleser
- 12,
12a
- Client
Computer
- 13
- Client
Netzwerk
- 14a,
b, c, d
- Druckdatenleitung
- 15
- Gerätesteuerungsnetzwerk
- 16
- Druckserver
- 16a
- Bildschirm
- 17
- Testsystem
- 18
- Nachbearbeitungsgeräte
- 19
- Druckgut
- 20
- Vorlagedokument
- 21
- Baumstruktur
- 21a
- Zweig
der Baumstruktur
- 22
- Datenfeld
- 23
- Quelldatenfeld
- 24
- Quelldatenbereich
- 25
- Seitentypfeld
- 26
- Dokumentenbegrenzungsfeld
- 27
- Positionselement
- 28
- erstes
Fenster (Vorlagedolument)
- 29
- zweites
Fenster (Baumstruktur)
- 30
- drittes
Fenster (Strukturerläuterungen)
- 31
- viertes
Fenster (Variablenübersicht)
- 32
- Markierung
in Baumstruktur
- 33
- Markiertes
Quelldatenfeld
- 34
- Wiederholgruppe
- 35
- Quelldatenbereich
- 36
- Erstes
Quelldatenfeld
- 37
- Zweites
Quelldatenfeld
- 38
- Markierter
Bereich einer Wiederholgruppe
- 39
- Quelldatenfeld
der Wiederholgruppe
- 40
- Quelldatenfeld
der Wiederholgruppe
- 41
- Spalte,
in der eine Wiederholgruppe gesucht wird
- 42
- Auftragstabelle
des Vorlagedokuments
- 43
- Mauszeiger
- 44
- Automatisch
angezeigter Bereich