DE69636128T2 - Telefon/transaktionseingabegerät und system zum eingeben von transaktionsdaten - Google Patents

Telefon/transaktionseingabegerät und system zum eingeben von transaktionsdaten Download PDF

Info

Publication number
DE69636128T2
DE69636128T2 DE69636128T DE69636128T DE69636128T2 DE 69636128 T2 DE69636128 T2 DE 69636128T2 DE 69636128 T DE69636128 T DE 69636128T DE 69636128 T DE69636128 T DE 69636128T DE 69636128 T2 DE69636128 T2 DE 69636128T2
Authority
DE
Germany
Prior art keywords
data
transaction
database
user
menu
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE69636128T
Other languages
English (en)
Other versions
DE69636128D1 (de
Inventor
L. Rocco Villanova MARTINO
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
CYBERFONE TECHNOLOGIES Inc
Original Assignee
CYBERFONE TECHNOLOGIES Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=23772991&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=DE69636128(T2) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by CYBERFONE TECHNOLOGIES Inc filed Critical CYBERFONE TECHNOLOGIES Inc
Publication of DE69636128D1 publication Critical patent/DE69636128D1/de
Application granted granted Critical
Publication of DE69636128T2 publication Critical patent/DE69636128T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/04Payment circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/466Transaction processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/10Payment architectures specially adapted for electronic funds transfer [EFT] systems; specially adapted for home banking systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/305Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wired telephone networks
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H10/00ICT specially adapted for the handling or processing of patient-related medical or healthcare data
    • G16H10/60ICT specially adapted for the handling or processing of patient-related medical or healthcare data for patient-specific data, e.g. for electronic patient records
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/289Intermediate processing functionally located close to the data consumer application, e.g. in same machine, in same home or in same sub-network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/564Enhancement of application control based on intercepted application data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/566Grouping or aggregating service requests, e.g. for unified processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/487Arrangements for providing information services, e.g. recorded voice services or time announcements
    • H04M3/493Interactive information services, e.g. directory enquiries ; Arrangements therefor, e.g. interactive voice response [IVR] systems or voice portals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/50Centralised arrangements for answering calls; Centralised arrangements for recording messages for absent or busy subscribers ; Centralised arrangements for recording messages
    • H04M3/53Centralised arrangements for recording incoming messages, i.e. mailbox systems
    • H04M3/533Voice mail systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • H04N7/141Systems for two-way working between two video terminals, e.g. videophone
    • H04N7/147Communication arrangements, e.g. identifying the communication as a video-communication, intermediate storage of the signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99943Generating database or data structure, e.g. via user interface

Description

  • HINTERGRUND DER ERFINDUNG
  • Gebiet der Erfindung
  • Die vorliegende Erfindung betrifft ein System zum automatischen Erfassen von Daten am Punkt einer Transaktion und Speichern dieser Daten in der/den geeigneten Datenbank(en), und insbesondere ein Datentransaktionsverarbeitungssystem mit einer Transaktionseingabevorrichtung, die wahlweise in einem Telefonmodus und einem Transaktionseingabemodus arbeiten kann. Im Telefonmodus funktioniert die Transaktionseingabevorrichtung als ein herkömmliches Telefon. Im Transaktionseingabemodus werden jedoch Menüs verwendet, um den Nutzer zu Formularen zu navigieren, welche die Eingabe der Daten vereinfachen. Die eingegebenen Daten und die Formulare bilden zusammen Datentransaktionen, die zu einer oder mehreren Datenbanken zur Bearbeitung und Speicherung übertragen werden. Die Datenbank(en) „zerlegt/zerlegen" auch die Datentransaktionen in ihre Bestandteile und überträgt/übertragen diese Bestandteile an noch weitere Datenbanken zum Bearbeiten und Speichern, sodass die Daten in den Datentransaktionen automatisch alle aktuellen, durch solche Daten beeinflussten Datenbankpositionen aktualisieren.
  • Beschreibung des Standes der Technik
  • Das Telefon ist zu einem immer vielseitigeren Instrument geworden. Die Funktionalität von Telefonen wurde durch das Integrieren der Funktionen von Anrufbeantwortern, Faxgeräten und dergleichen erweitert. Es wurden auch „Point-of-Entry" – Systeme entwickelt, die Computerverarbeitungsfähigkeiten in herkömmliche Telefone integrieren. Zum Beispiel ist in den US-Patenten 5,195,130, 5,008,927 und 4,991,199 eine Computer/Telefon-Vorrichtung beschrieben, welche durch die 12-Tasten-Standardtastatur des Telefons betätigt wird. Ein programmierbares Gate Array ist umgestaltet, um verschiedene Arten von Software aufzunehmen, die unterschiedliche Hardware-Konfigurationen erfordern, aber ohne die Hardware tatsächlich umzugestalten. Die Rekonfigurationsdaten werden von einem Netzhauptrechner empfangen und von dem programmierbaren Mikrocomputer verwendet, um die Hardware irgendeiner von mehreren Servicestellen, welche mit dem Netzhauptrechner kommunizieren, zu emulieren. Auf diese Weise wird die Telefon/Computer-Vorrichtung konfiguriert, um Daten zu/von irgendeiner Anzahl von unterschiedlichen Servicestellen über herkömmliche Telefonleitungen zu kommunizieren.
  • Jedoch sind Telefon/Computersysteme der in den vorgenannten Patenten beschriebenen Art typischerweise ziemlich kompliziert und teuer und sind durch die Arten von Betriebssoftware, die von dem Netzhauptcomputer heruntergeladen werden können, begrenzt. Auch sind solche Telefon/Computersysteme relativ langsam, da der Mikrocomputer rekonfiguriert werden muss, bevor er eine Kommunikation mit der angeforderten Servicestelle ermöglicht. Wegen dieser charakteristischen Merkmale werden solche Telefon/Computersysteme typischerweise an öffentlichen Orten verwendet und sind nicht effizient zum Erzeugen von „Point-of-Entry"-Transaktionen in typischen kommerziellen oder privaten Plätzen. Es ist ein „Point-of-Entry"-Transaktionssystem erwünscht, das solche Einschränkungen nicht hat und das betriebssystem-unabhängig ist.
  • Die Beseitigung der Anforderung eines herkömmlichen Betriebssystems und der zugehörigen Anwendungsprogramme für den Mikrocomputer einer Dateneingabevorrichtung würde die Kosten eines solchen Geräts stark verringern. Jedoch ist dies bisher nicht möglich gewesen, weil das Betriebssystem benötigt wird, um die Anwendungsprogramme auszuführen, welche die Datenkommunikationen steuern und zusammen diskrete Teile des Systems bearbeiten. Unglücklicherweise erfordern solche Anwendungsprogramme wesentliche Mengen lokalen Speichers und wesentliche Verarbeitungsleistung zum Durchführen der gewünschten Funktionen. Auch neigen die Betriebssysteme selbst dazu, zum Erwerben und zur Instandhaltung ziemlich teuer zu sein.
  • Demgemäß ist ein Dateneingabesystem erwünscht, welches die inhärenten Einschränkungen herkömmlicher „Point-of-Entry"-Systeme, wie beispielsweise das Erfordernis eines Standard-Betriebssystems zur Kommunikation mit einer entfernten Servicestelle oder einem Datenserver, nicht haben. Eine Dateneingabevorrichtung und ein zugehöriges System sind erwünscht, die eine minimale Verarbeitungsmenge an der Dateneingabevorrichtung durchführen, sodass die Dateneingabevorrichtung so einfach und kostengünstig wie möglich sein kann, wodurch die Kosten einer solchen Vorrichtung in einen für die meisten kommerziellen und privaten Nutzungen geeigneten Bereich gebracht werden. Es ist auch bevorzugt, dass eine solche Dateneingabevorrichtung einen weiten Funktionalitätsbereich vorsieht, ohne ein lokales Betriebssystemprogramm und mehrere Anwendungsprogramme zum Implementieren jeder Funktion zu erfordern. Die vorliegende Erfindung wurde entwickelt, um diese Bedürfnisse zu erfüllen.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Das System, das die obigen Bedürfnisse in der Technik erfüllt, enthält eine Transaktionseingabevorrichtung, die es dem Nutzer erlaubt, alle Aspekte seiner oder ihrer persönlichen Transaktionen sowie irgendwelcher Transaktionen, die in einer Büroumgebung auftreten können, zu organisieren und zu steuern. In einfachsten Worten formatiert die Transaktionseingabevorrichtung eingegebene Daten in eine Datentransaktion mit einem Inhalt, der von der Art der Anwendung abhängt, zu der die zugehörigen Daten gehören. Diese Datentransaktionen werden dann zu einem lokalen oder entfernten Datenbankserver übertragen, der jede Datentransaktion in ihre Bestandteile „zerlegt", um alle Datenbanken zu aktualisieren, die Daten enthalten, zu welche die Daten in den Bestandteilen gehören. In diesem „Transaktionseingabemodus" funktioniert die Transaktionseingabevorrichtung als ein Mehrzweck-Arbeitsplatz. Da jedoch die Datentransaktionen ohne die Verwendung eines Betriebssystems oder von Anwendungsprogrammen erzeugt werden, ist die Transaktionseingabevorrichtung ziemlich einfach und kostengünstig und kann einfach mit dem Tischtelefon oder tragbaren Telefon des Kunden integriert werden.
  • Die vorliegende Erfindung kombiniert Computertechnologie und Telefontechnologie, um das Erfassen von Transaktionsdaten am Ausgangspunkt der Transaktion zu ermöglichen. Die Transaktionseingabevorrichtung ist in ein gewöhnliches Telefon integriert, das entweder als normales Telefon in einem Telefonmodus oder als eine Transaktionseingabevorrichtung in einem Transaktionseingabemodus arbeitet. Im Telefonmodus funktioniert das Telefon in einer herkömmlichen Weise. Im Transaktionseingabemodus wird die Transaktionseingabevorrichtung jedoch durch einen Mikroprozessor angetrieben, der seinerseits durch einen betriebssystemunabhängigen Transaktionsassembler- (oder -anwendungs-) Server (TAS) angetrieben wird, welcher aus in einem Flash-PROM gespeicherten Datenströmen besteht. Der TAS ist in seiner Beziehung zur Hardware der Transaktionseingabevorrichtung absolut in sich geschlossen und führt im Allgemeinen die zwei Grundfunktionen (1) des Erzeugens einer Schablone oder eines Formulars aus einem Datenstrom und (2) des Entwickelns einer Datentransaktion, wenn der Benutzer als Reaktion auf Eingabeaufforderungen in der Schablone oder dem Formular Daten eingibt, durch. Die Schablone ist eine Reihe von aus einem lokalen Flash-Speicher gelesenen oder direkt von einer externen Quelle wie beispielsweise einem Datenbank-Datenserver übertragenen Datenströmen.
  • Während des Betriebs werden die durch den Benutzer als Reaktion auf Eingabeaufforderungen in der Schablone eingegebenen Daten in Datentransaktionen gesammelt, welche unmittelbar zu einem externen Datenbankserver übertragen werden. Anders als typische Systeme des Standes der Technik, werden die Datentransaktionen zur Verarbeitung durch den lokalen Mikroprozessor nicht lokal gespeichert, wenn die Datentransaktion einmal abgeschlossen ist. Im Gegenteil ist der einzige erforderliche Speicher in der Transaktionseingabevorrichtung ein Flash-PROM zum Speichern der TAS-Firmware, ein Flash-Speicher zum Speichern der durch die TAS-Firmware zum Vervollständigen eines Formulars verwendeten Datenströme und der Modemnummern für die entfernten Datenbankserver, und ein kleiner RAM, der als ein Eingangs/Ausgangs-Transaktionspuffer zum Speichern der Datenströme der Schablone und der Nutzerantworten auf die Eingabeaufforderungen in der Schablone während des Zusammenbaus einer Datentransaktion arbeitet. Der Transaktionspuffer muss nur so groß sein wie die größte Datentransaktion, da er nur das Formular speichert, bis die gesamte Datentransaktion abgeschlossen ist. In diesem Sinne dient die Transaktionseingabevorrichtung als ein Montagepunkt für bestimmte Transaktionen, bis sie für die Übertragung an einen externen Datenbankserver zur Verarbeitung und Speicherung bereit sind.
  • Die durch die Transaktionseingabevorrichtung gebildete Datentransaktion wird über ein Modem zu einem lokalen oder einem entfernten Datenbankserver zur Bearbeitung und Speicherung übertragen. Die Datentransaktion wird über Standartprotokolle an dem Datenbankserver empfangen, der in Abhängigkeit von der Anwendung die gesamte Datentransaktion speichert, die Datentransaktion zerlegt, um Sekundärdatensätze zu erzeugen, die dann gespeichert werden, und/oder die Datentransaktion oder einige oder alle der Sekundärdatensätze zu weiteren Datenbankservern zum Aktualisieren weiterer diesen Datenbankservern zugeordneter Datenbanken weiterleitet. Auch können als Reaktion auf Anfragen von der Transaktionseingabevorrichtung einige der Datenbankserver Datenströme zurück zur Transaktionseingabevorrichtung zur Verwendung beim Komplettieren der Felder in der Datentransaktion oder beim Anzeigen neuer Formulare oder Menüs zur Auswahl schicken.
  • So weist das Datentransaktionssystem der Erfindung wenigstens drei Ebenen auf: eine erste Ebene zum Erfassen der Datentransaktion vom Nutzer, wobei die Datentransaktion eine mehrdeutige Beziehung zu Dateistrukturen besitzt; eine zweite Ebene zum Zerlegen der Datentransaktion in ihre Bestandteile auf einer systemspezifischen Basis, sodass jeder Bestandteil eine eindeutige Entsprechung zu einer Datei hat; und eine dritte Ebene zum Vorsehen zusätzlicher Zerlegungen der Datentransaktionen auf einer anwendungsspezifischen Basis, sodass jede Anwendung ihren eigenen Satz von Datentransaktionen hat.
  • Ein bevorzugtes Ausführungsbeispiel der Transaktionseingabevorrichtung der Erfindung ähnelt einem gewöhnlichen Telefon, außer dass sie einen Touch Screen und eine optionale Tastatur für eine Dateneingabe zusätzlich zu den herkömmlichen Zahlen- und Funktionstastatureingaben enthält. Ein Telefon-Handapparat oder Headset ist optional und kann durch ein Mikrofon und einen Lautsprecher ersetzt werden. Die Transaktionseingabevorrichtung der Erfindung enthält auch RS-232 und andere Eingangs/Ausgangs-Anschlüsse zum Aufnehmen weiterer Optionen, wie beispielsweise einen Drahtlos- (RF-) Empfänger, einen Magnetkarten- und/oder Smart Card – Leser, eine Videokamera und ein Videodisplay, Infrarotsteuerungen und dergleichen. Das Telefon besitzt normale Tastenfunktionen sowie mobile und zellulare Optionen.
  • Vorzugsweise enthält die Transaktionseingabevorrichtung einen Mikroprozessor wie beispielsweise einen Intel 80386SX oder höher und ist als Daten implementiert, ein Megabyte Flash-Speicher zum dynamischen Speichern der Datenströme für die Schablonen, ein Megabyte Flash-PROM wird zum Speichern der TAS-Firmware, und einen 128 kB – RAM, der als ein Transaktionspuffer funktioniert, zum Speichern der Datenströme der Schablonen und der Nutzerantworten bis zur Beendigung der Datentransaktion. Ein Grafikbildschirm kann ebenfalls zum Anzeigen der Schablonen für den Benutzer für die Eingabe der Daten, die die Datentransaktion bilden werden, vorgesehen sein. Vorzugsweise liegt der Grafikbildschirm in der Größenordnung von 24 Zeilen auf 40 Zeichen für eine Desktop-Einheit und 12 Zeilen auf 40 Zeichen für eine Zellular-Einheit.
  • Der Transaktionsassembler(anwendungs)server (TAS) leitet den Benutzer über Menüauswahlen zu der gewünschten Schablone, wobei die Menüs und Schablonen in dem Flash-Speicher als Datenströme gespeichert sind und durch die TAS-Firmware aufgerufen werden, wenn sie durch den Benutzer ausgewählt werden. Allgemein werden die Menüs als eine spezielle Art von Schablone oder Formular behandelt. Die in dem Flash-Speicher gespeicherten Schablonen können zu einer beliebigen Zeit aktualisiert werden, um besondere Anwendungen zu behandeln, indem ein neuer Datensatz gelesen wird, der offline erzeugt und über ein Modem oder eine direkte Verbindung auf den Flash-Speicher der Transaktionseingabevorrichtung heruntergeladen worden ist. Alternativ können die Daten über einen RS-232-Eingang heruntergeladen werden. Die gleichen Verbindungen können benutzt werden, um ein automatisches Lesen von einer entfernten Datenbank oder ein automatisches Schreiben auf eine entfernte Datenbank vorzusehen. Neue Anwendungen können hinzugefügt werden, indem einfach zusätzliche Flash-Speicherelemente mit den notwendigen Schablonen für die neue Anwendung hinzugefügt werden.
  • Die Telefon/Transaktionseingabevorrichtung und das zugehörige System zum Speichern von Transaktionsdaten gemäß der Erfindung ist dahingehend einzigartig, dass es den Nutzer von der Datenbank trennt und einen einfachen, nutzerfreundlichen Weg bereitstellt, um Transaktionsdaten einzugeben, ohne ein lokales Betriebssystem zu benötigen, um verschiedene Anwendungsprogramme laufen zu lassen. Da alle Daten als Datentransaktionen eingegeben werden, die durch auf spezielle Anwendungen zugeschnittene Schablonen bestimmt werden, können die Nutzeranwendungen so generalisiert werden, dass keine einzigartigen Nutzeranwendungsprogramme geschrieben werden müssen, wenn eine neue Anwendung hinzugefügt wird. Falls jedoch ein Code benötigt wird oder falls ein Multimedia-Element in eine Datentransaktion integriert werden soll, kann er/es an eine Datentransaktion als ein zusätzlicher Parameterstrom in dem die Datentransaktion bildenden Datenstrom angehängt werden. Da die Natur der Daten in den jeweiligen Feldern der Schablonen für spezielle Anwendungen im Voraus bekannt ist, wird auch die Schnittstelle zu einem Datenbankserver, um ein Speichern der Datentransaktionen und ihrer Bestandteile in den geeigneten Datenbanken in den geeigneten Formaten für die jeweilige Datenbank zu erlauben, trivial.
  • In einer alternativen Ausführungsform der Erfindung kann ein Prozess aus dem Menü der Transaktionseingabevorrichtung, die ein „sichtbares" Menü entsprechend einem Sprachmailmenü eines entfernten Telefonmailsystems erzeugt, ausgewählt werden. Wenn ein solcher Prozess ausgewählt wird, stellt die Telefon- oder Modemschnittstelle eine Telefonverbindung mit dem entfernten Telefonmailsystem her, und wenn die Verbindung einmal hergestellt ist, sendet der Datentransaktionsassembler eine Datenanforderung für eine visuelle Darstellung des Telefonmailmenüs des entfernten Telefonmailsystems über die Telefonverbindung an das entfernte Telefonmailsystem. Ein die visuelle Darstellung des Telefonmailmenüs enthaltender Datenstrom von dem entfernten Telefonmailsystem wird dann über die Telefonverbindung zurückgegeben und in einem Speicher der Transaktionseingabevorrichtung zur Präsentation des Bildschirms der Transaktionseingabevorrichtung 12 gespeichert. Wenn die gewünschte Telefonmailmenü-Option aus dem „sichtbaren" Sprachmailmenü ausgewählt wird, erzeugt der Datentransaktionsassembler eine Datentransaktion, die angibt, welcher Menüpunkt ausgewählt wurde, und sendet die Datentransaktion über die Telefonverbindung an das entfernte Telefonmailsystem. Basierend auf der Menüauswahl gibt das entfernte Telefonmailsystem dann über die Telefonverbindung einen eine visuelle Darstellung des nächsten Telefonmailmenüs enthaltenden Datenstrom zur Speicherung und Anzeige zurück. Dieser Prozess wird wiederholt, bis die anrufende Partei eine Nachricht hinterlassen muss oder die angerufene Partei erreicht ist.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • Die oben genannten kennzeichnenden Merkmale der Erfindung werden dem Fachmann in Anbetracht der folgenden detaillierten Beschreibung der Erfindung besser verständlich werden. Es zeigen:
  • 1 eine schematische Darstellung eines Systems zu Eingeben von Datentransaktionen in Datenbanken gemäß der Erfindung;
  • 2 eine allgemeine Schablone zur Verwendung beim Erzeugen einer Datentransaktion gemäß der Erfindung;
  • 3 eine „zerlegte" Datentransaktion, bei welcher die Bestandteile einer Datentransaktion an datenbankspezifischen und dateispezifischen Stellen gespeichert werden;
  • 4 die „zerlegte" Transaktion von 3 im Kontext des in 1 gezeigten Systems;
  • 5A und 5B zusammen ein bevorzugtes Ausführungsbeispiel einer Transaktionseingabevorrichtung gemäß der Erfindung;
  • 6 eine schematische Darstellung der Elektronik der in 5A und 5B dargestellten Transaktionseingabevorrichtung;
  • 7 ein Flussdiagramm eines menügesteuerten Transaktionsassembler(anwendungs)servers (TAS) gemäß der Erfindung;
  • 8 ein Flussdiagramm einer Technik zum Bearbeiten eines Formulars, das zum Bilden einer Datentransaktion benutzt wird, gemäß der Erfindung;
  • 9A und 9B zusammen ein Flussdiagramm einer Technik zum Vervollständigen und Editieren einer Datentransaktion gemäß der Erfindung;
  • 10 ein Flussdiagramm, wie der TAS die Felder jeder Datentransaktion validiert.
  • DETAILLIERTE BESCHREIBUNG DES DERZEIT BEVORZUGTEN AUSFÜHRUNGSBEISPIELS
  • Ein System und ein Verfahren, die die oben genannten Aufgaben erfüllen und weitere vorteilhafte Merkmale vorsehen, gemäß dem derzeit bevorzugten beispielhaften Ausführungsbeispiel der Erfindung werden nun unter Bezug auf 110 beschrieben. Der Fachmann wird leicht erkennen, dass die hier bezüglich dieser Figuren gegebene Beschreibung nur beispielhaften Zwecken dient und den Schutzumfang der Erfindung in keiner Weise einschränken soll. Zum Beispiel wird der Fachmann erkennen, dass das Telefon/Transaktionseingabegerät und -system zum Eingeben von Datentransaktionen in entfernte Datenbanken gemäß der Erfindung in zahlreichen Einrichtungen in zahlreichen Anwendungen benutzt werden kann. Demgemäß sollten alle Fragen bezüglich des Schutzumfangs durch Bezugnahme auf die Ansprüche gelöst werden.
  • A. SYSTEMBESCHREIBUNG
  • 1. Überblick
  • Das System der Erfindung sieht das automatische Erfassen und Computerisieren von zu auftretenden Datentransaktionen gehörenden Daten vor. Eine Datentransaktion in dem hier benutzten Sinne ist die Kombination eines Formulars oder einer Schablone oder einer Reihe von Formularen oder Schablonen, die Dateneingabeaufforderungen enthalten, und der als Reaktion auf diese Aufforderungen eingegebenen Daten. In der weiteren Beschreibung werden die Begriffe „Formular" und „Schablone" austauschbar verwendet.
  • Die Datentransaktionen werden durch eine Transaktionseingabevorrichtung durch einen interaktiven Prozess zwischen dem Nutzer und dem Formular eingegeben. Die Datentransaktion wird in einem Transaktionspufferspeicher in der Datentransaktionseingabevorrichtung assembliert und dann an eine externe Datenbank zum Speichern übertragen. Es steht kein lokaler Speicher für Datentransaktionen zur Verfügung. Die Datentransaktion wird extern durch die Datenbank dahingehend definiert, dass alle Anwendungen aus einer Reihe von kundenspezifischen Formularen und Eingabe aufforderungen zum Erbitten einer Eingabe der Daten bestehen, die zum Aktualisieren der Datenbanken benötigt werden, die Daten bezüglich der speziellen Anwendung enthalten. Im Allgemeinen wird die Datentransaktion eine mehrdeutige Beziehung zu den Dateistrukturen der Daten für diese Anwendung enthaltenden Datenbank haben.
  • Die Datentransaktionen werden mittels der Transaktionseingabevorrichtung eingegeben. Vorzugsweise ist die Transaktionseingabevorrichtung mit einer Telefonelektronik kombiniert, sodass die resultierende Vorrichtung wahlweise als ein herkömmliches Telefon oder als eine Datentransaktionseingabevorrichtung arbeiten kann. Die resultierende Transaktionseingabevorrichtung enthält vorzugsweise einen Touch Screen und/oder eine Tastatur, der/die eine Eingabe in einen Transaktionsassembler(anwendungs)server (TAS) vorsieht, der seinerseits Auswahloptionen über Menüs und Formulare zur Vervollständigung durch den Nutzer präsentiert. Die Menü- und Formularauswahl und die Formularvervollständigung erfolgen durch Berühren, durch Tastenauswahl von der Tastatur, durch Bewegen eines Cursors zu dem geeigneten Auswahlpunkt und Drücken einer Taste, oder sogar durch einen Sprachbefehl. Wann immer eine Dateneingabe (anders als eine bloße Auswahl) erwünscht ist, wird dies über einen menügesteuerten Auswahlprozess und/oder durch eine direkte Dateneingabe mittels einer Tastatur, eins Tastenfeldes, eines Touch Screens und dergleichen erreicht. Im menügesteuerten Fall wird ein Satz von Optionen dem Bildschirm durch die TAS-Firmware präsentiert. Falls dieser Satz von Optionen die Kapazität des Bildschirms übersteigt, dann wird die Liste durch die Verwendung von Scroll-Tasten an dem Gerät, durch einen Sprachbefehl oder durch Berührung an Scroll-Befehlspunkten nach oben oder unten gescrollt. Wenn die Auswahl einmal gemacht ist, werden die zu dieser Auswahl gehörenden Daten automatisch von einer lokalen oder entfernten Datenbank in das Formular eingegeben, oder die Daten werden durch den Nutzer eingegeben. Im Fall einer Tastatureingabe kann die TAS-Firmware eine Tastatur am unteren Ende des Bildschirms zur Berührungseingabe präsentieren; alternativ kann eine optionale Tastatur, die an der Basis der Transaktionseingabevorrichtung positioniert ist, verwendet werden.
  • Wenn die Daten unabhängig von einem Auswahlprozess eingegeben werden, können solche Daten auch mittels einer Magnetstreifenkarte eingegeben werden, falls die Daten auf der Magnetstreifenkarte liegen, oder die Daten können über ein Modem von einer externen Quelle in die Datentransaktion übertragen werden. Die von der Magnetstreifenkarte gelesenen Daten können benutzt werden, um ein Formular auszufüllen, oder können zu einer/einem externen Datenbank oder Computer übertragen werden. Die von der/dem externen Datenbank oder Computer über das Modem zurückgegebenen Daten können auch benutzt werden, um die Felder in dem Formular auszufüllen. Falls erwünscht, können die Daten in einer Datentransaktion auch auf eine Magnetstreifenkarte, eine Speicherkarte und dergleichen geschrieben werden.
  • Die TAS-Firmware der Erfindung speichert die Optionen sowie Steuerprogramme (Mikrocode) für den Prozessor zur Verwendung mit den Schablonen beim Erzeugen der Datentransaktionen. Die TAS-Firmware enthält auch ein Programm, das eine Verbindung über ein Modem zu einem/einer oder mehreren externen Computern und Datenbanken erlaubt. Vorzugsweise stehen zwei Betriebmodi zur Verfügung: Transaktionseingabemodus (mit oder ohne Modemverbindung) und Telefonmodus. Eine Auswahl entweder des Transaktionseingabemodus oder des Telefonmodus erfolgt durch eine Schaltauswahl an der Transaktionseingabevorrichtung.
  • Wenn die Transaktionseingabevorrichtung in den Transaktionseingabemodus gesetzt ist, präsentiert die TAS-Firmware sofort ein Auswahlmenü für alle Optionen, für die das System zum Abwickeln programmiert ist. Im Telefonmodus ist dagegen ein Wählton vorgesehen und das Telefontastenfeld freigeschaltet. Im Telefonmodus können eine oder mehrere Leitungen verbunden werden, um so die gleichzeitige Benutzung der Transaktionseingabevorrichtung ohne Störung der Modemverbindung zu erlauben. Falls jedoch eine einzelne Telefonleitung benutzt wird, steht die Telefonleistung zu allen Zeiten oder intermittierend über ein Modem zur Verfügung, wie es durch die spezielle Anwendung spezifiziert ist. Im intermittierenden Modus steuert die Transaktionseingabevorrichtung bei einem „Sichern" einen Verbindungsaufbau und eine Datenübertragung zu einem entfernten Datenbankserver. Falls dagegen das Telefon mit einem automatischen Wählmechanismus benutzt wird, der eine Telefonliste benutzt, kann die Transaktionseingabevorrichtung automatisch vom Telefonmodus zum Transaktionseingabemodus wechseln. In diesem Fall kann eine Anzeige am Telefon benutzt werden, um eine Namens- und Telefonliste zu präsen tieren, aus der entsprechend den nachfolgend beschriebenen Menüauswahltechniken eine Auswahl gemacht werden kann.
  • 2. Datentransaktionssystem (14)
  • 1 ist eine schematische Darstellung eines Systems 10 zum Eingeben von Datentransaktionen in Datenbanken gemäß der Erfindung. Wie veranschaulicht, weist das System 10 eine erste Ebene bzw. Stufe zum Erfassen einer Datentransaktion mit einer mehrdeutigen Beziehung zu Dateistrukturen, eine zweite Ebene bzw. Stufe zum Zerlegen der Datentransaktion in Bestandteile mit einer eindeutigen Beziehung zu Dateistrukturen, und eine dritte Stufe bzw. Ebene zum Bereitstellen eines zusätzlichen Zerlegens der Datentransaktionen für spezielle Anwendungen auf.
  • Die erste Stufe weist ein Transaktionseingabegerät 12 auf, das die Datentransaktion von dem Nutzer als Reaktion auf irgendeine von mehreren Eingaben vom Nutzer erfasst. Das Transaktionseingabegerät 12 enthält eine herkömmliche Telefonelektronik 14 und einen Lautsprecher 16 und einen Datentransaktionsassembler 18 zum Erzeugen einer Datentransaktion gemäß der Erfindung. Ein Bildschirm 20 ist vorzugsweise dem Datentransaktionsassembler 18 zugeordnet, sodass der Nutzer die Erzeugung der jeweiligen Datentransaktion überwachen kann. Die Telefonelektronik 14 ist über eine herkömmliche Sprachverbindung 24 über die Telefonleitungen mit einem Telefonschaltnetz 22 verbunden, während der Datentransaktionsassembler 18 über Telefonleitungen 26 mit einem oder mehreren Datenbankservern 28 verbunden ist. Wie in 1 dargestellt, können die Telefonleitungen 24 und 26 separate Leitungen sein, wodurch eine gleichzeitige Benutzung der Telefon- und der Dateneingabefunktionen ermöglicht wird, oder die Telefonelektronik 14 und der Datentransaktionsassembler 18 können mit einer einzelnen Leitung verbunden sein, wie in Phantomlinien in 1 veranschaulicht. Natürlich wird, wenn die Telefonelektronik 14 und der Datentransaktionsassembler 18 mit einer einzelnen Leitung verbunden sind, ein Modusschalter ihre jeweiligen ausschließlichen Funktionsweisen freigeben, oder alternativ kann eine beliebige Anzahl von herkömmlichen Übertragungsmodellen verwendet werden, um eine gleichzeitige Übertragung der Sprache von der Telefonelektronik 14 und der Daten von dem Datentransaktionsassembler 18 über die gleiche Leitung zu ermöglichen.
  • Während eines Betriebs im Transaktionseingabemodus reagiert das Transaktionseingabegerät 12 auf Nutzereingabegeräte wie beispielsweise einen Touch Screen, ein Telefontastenfeld, eine Tastatur, ein Mikrofon, eine Magnetstreifenkarte, eine Speicherkarte, einen Videoeingang und dergleichen, um mittels des Datentransaktionsassembler 18 Datentransaktionen zu bilden. Alternativ arbeitet das Transaktionseingabegerät 12 in einem Telefonmodus als ein herkömmliches Telefon und empfängt Eingänge von einem Mikrofon und/oder einem Hörer, einem Touch-Tone-Tastenfeld und dergleichen. Mehr Einzelheiten des Transaktionseingabegeräts 12 und des Datentransaktionsassembler 18 werden in den nächsten Abschnitten unter Bezug auf 510 bereitgestellt.
  • Die zweite Stufe weist einen oder mehrere Datenbankserver 28 und ihre zugehörigen Datenbanken 30 auf. Im Allgemeinen empfängt jeder Datenbankserver 28 Datentransaktionen von einem oder mehreren Transaktionseingabegeräten 12 und „zerlegt" die empfangenen Datentransaktionen in ihre Bestandteile zur Speicherung in den geeigneten Dateien der zugehörigen Datenbank 30. Mit anderen Worten wird die mehrdeutige Dateistruktur der Datentransaktionen von einem oder mehreren Transaktionseingabegeräten 12 in viele eindeutige Datentransaktionen zur Speicherung in einzelnen Dateien der Datenbank 30 umgewandelt.
  • Jeder Datenbankserver 28 enthält ein Modem 32 zum Senden/Empfangen von Daten von den Telefonleitungen 26, insbesondere der Datentransaktionen von einem oder mehreren Transaktionseingabegeräten 12. Vorzugsweise werden die Datentransaktionen über die Telefonleitungen 26 als Datenpakete mit zum Beispiel 128 Bytes übertragen, wobei 120 Bytes Informationen und 8 Bytes Steuerdaten enthalten. Eine Transaktionswarteschlange 34 dient als ein Eingangspuffer für die empfangenen Datentransaktionen und steuert die Präsentationsrate der Datentransaktionen zu der Transaktionssteuerung 36. Die Transaktionssteuerung 36 bearbeitet die empfangenen Datentransaktionen, um die physikalischen Dateibeziehungen der Bestandteile der Datentransaktionen zu extrahieren, und speichert die Bestandteile und verschiedene Kombinationen davon in den geeigneten Dateien der zugehörigen Datenbank 30. Alternativ kann die Transaktionssteuerung 36 eine Datenanforderung von dem Datentransaktionsassembler 18 bearbeiten, der Informationen von der Datenbank 30 zum Vervollständigen bestimmter Felder einer durch das Transaktions eingabegerät 12 vorbereiteten Datentransaktion anfordert. Die Datenbank 30 stellt dann die angeforderten Informationen dem Datenbankserver 28 bereit, der über das Modem 32 einen Datenstrom zurück zum Datentransaktionsassembler 18 zur Verwendung beim Vervollständigen der Datentransaktionen oder Präsentieren zusätzlicher Menüs und Formulare gemäß der Erfindung bereitstellt. Typischerweise werden eine Nutzer-ID und ein Passwort zu der Transaktionssteuerung 36 übertragen, um das Einrichten einer Verbindung durch den Datentransaktionsassembler 18 zu erlauben. Somit prüft und speichert die Transaktionssteuerung 36 auch Anmelde- und Abmeldeinformationen zusätzlich zum Speichern von Datentransaktionen und Leiten von wiederhergestellten Datentransaktionen zu weiteren Datenbankservern, wie hier beschrieben. Außerdem kann der Datenbankserver 28 ein herkömmliches Telefonmail-System mit einer zugehörigen Datenbank zum Speichern von Sprachmail-Nachrichten enthalten. In diesem Fall kann die Datentransaktion Sprachdaten zur Speicherung in dem entfernten Sprachmail-System enthalten.
  • Wie in 1 dargestellt, können mehrere Datenbankserver 28 vorgesehen sein. Vorzugsweise hat jedes Transaktionseingabegerät 12 einen zugehörigen Datenbankserver 28 zum Durchführen irgendeiner gewünschten Bearbeitung seiner Datentransaktionen, obwohl es bevorzugt ist, dass die Datentransaktionen zu wenigstens einem weiteren Datenbankserver 28 kopiert werden, wie in 1 dargestellt. Diese Redundanz minimiert die Möglichkeit des Verlierens von Daten im Fall eines Stromausfalls und dergleichen. Vorzugsweise enthält jeder Datenbankserver 28 im Wesentlichen die gleiche Hardware, obwohl das Modem 32, die Transaktionswarteschlange 34 und die Transaktionssteuerung 36 zur Vereinfachung der Darstellung nicht für alle Datenbankserver 28 dargestellt worden sind.
  • Im Transaktionseingabemodus erzeugt der Datentransaktionsassembler 18 des Transaktionseingabegeräts 12 eine Datentransaktion, die zu einer zugehörigen Transaktionssteuerung 36 eines zugeordneten Datenbankservers 28 übertragen wird. Mit „zugehörig" ist gemeint, dass der Datenbankserver 28 funktioniert, um irgendeine Bearbeitung durchzuführen, die in Zusammenhang mit der Speicherung einer Datentransaktion von einem speziellen Transaktionseingabegerät 12 angefordert wird oder notwendig ist. Natürlich kann ein spezieller Datenbankserver 28 mehrere ihm zugeordnete Transaktionseingabegeräte 12 haben. Damit keine Daten verloren gehen, kann ein spezieller Datenbankserver 28 auch als eine Datensicherung für einen anderen Datenbankserver 28 im Fall des Versagens irgendeines Datenbankservers 28 dienen.
  • Wie nachfolgend in mehr Einzelheiten bezüglich 24 erläutert, „zerlegt" der Datenbankserver 28 die von dem Datentransaktionsassembler 18 empfangenen Datentransaktionen und stellt die Bestandteile der zerlegten dateiabhängigen Datentransaktionen über das Modem 32 weiteren Datenbankservern 28 bereit, wie es zum Aktualisieren der weiteren Datenbanken notwendig ist. Alternativ kann das „Zerlegen" der Datentransaktionen durch den Datentransaktionsassembler 18 an dem Transaktionseingabegerät 12 durchgeführt werden, und die Bestandteile können allen geeigneten Datenbanken 28 zum Aktualisieren der Daten darin übertragen werden. Zu diesem Zweck muss der Datentransaktionsassembler 18 auch die Modemnummern für alle Datenbankserver 28, die durch die zerlegten Datentransaktionen aktualisiert werden sollen, kennen. Der Fachmann wird jedoch erkennen, dass diese letztgenannte Alternative einen Zugriff auf zahlreiche Telefonleitungen durch das Transaktionseingabegerät erfordert und dass solche Telefonleitungen dem Nutzer nicht immer zur Verfügung stehen.
  • Schließlich enthält die dritte Stute des Systems 10 zusätzliche Datenbankserver 38 und Datenbanken 40, die dateiabhängige Datentransaktionen für spezielle Anwendungen unterstützen. Diese zusätzliche Stufe von Datenbankservern 38 und Datenbanken 40 ermöglicht das Weiterleiten der Daten in den Datentransaktionen zu anwendungsspezifischen Datenbanken zur Speicherung anwendungsspezifischer Daten und einen Zugriff durch diese Transaktionseingabegeräte 12, die Daten bezüglich dieser speziellen Anwendung anfordern.
  • Das Erzeugen und Speichern einer Datentransaktion gemäß der Erfindung wird nun Bezug nehmend auf 24 beschrieben.
  • Die Datentransaktionen werden durch den Datentransaktionsassembler 18 als ein Datenstrom eines bekannten Formats erzeugt. Eine allgemeine Datentransaktion ist in 2 veranschaulicht. Wie hier definiert, wird eine Datentransaktion mittels eines Formulars erzeugt, das ein oder mehrere Elemente der folgenden enthält: An weisungen, Eingabeaufforderungen, Menüauswahloptionen und eine Schablone mit Feldern zur Dateneingabe. Im Allgemeinen besteht das Menüformular aus Eingabeaufforderungen zum Auswählen eines Formulars, eines weiteren Menüs oder eines Prozesses, und einem einzelnen Platz zum Eingeben einer Auswahl, während das Dateneingabeformular aus Eingabeaufforderungen und Anweisungen zusammen mit Feldern zum Eingeben von Daten besteht, wie in 2 dargestellt. Das Dateneingabeformular kann entweder ein einzelnes oder mehrere Felder zum Eingeben von Daten haben.
  • Im Transaktionseingabemodus navigiert der Nutzer durch Menüs des Datentransaktionsassemblers 18, bis ein Formular ausgewählt ist, das sich auf eine spezielle Art eines Dateneingabevorgangs bezieht. Einmal ausgewählt, wird das Datentransaktionsformular 42 dem Nutzer auf dem Anzeigegerät 20 präsentiert. Das Datentransaktionsformular 42 ist eine Sammlung von Daten, die die optische Präsentation auf dem Anzeigegerät 20 definieren, und eine Liste der Felder, durch welche Verbindungen mit externen Datenbankdateien definiert sind.
  • Wie in 2 dargestellt, enthält ein Datentransaktionsformular 42 ein Formatfeld 44, das die Art der Datentransaktionen, die dieses Formular betrifft, die Länge des Formulars, die Anzahl von Seiten in dem Formular, die Anzahl von Bytes in jedem Feld, Speichertasten und dergleichen identifiziert. Der Aufbau des Datentransaktionsformulars 42 weist eine vorbestimmte Reihe von Eingabeaufforderungen 46 auf, die dem Bildschirm 20 als ein Datenstrom bereitgestellt werden. Die Eingabeaufforderungen enthalten vorzugsweise beschreibende Daten, welche alphanumerisch, ein Symbol oder eine Liste, die erforderlichenfalls scrollt, sein können. Felder 48 sind leere Räume vorbestimmter Größe, die zum Annehmen einer Nutzereingabe als Reaktion auf jede Eingabeaufforderung vorgesehen sind. Im Allgemeinen ist die Größe jedes Feldes 48 ebenfalls im Strom der das Datentransaktionsformular 42 definierenden Daten gespeichert. Da die Eingabeaufforderungen maßgeschneidert sind, um die notwendigen Daten für die Anwendung zu eruieren, für welche das Datentransaktionsformular 42 erzeugt wurde, enthalten die Felder 48 die zum Bearbeiten einer Datentransaktion für diese spezielle Art von Anwendung notwendigen Nutzerdaten. Die Nutzerantworten werden Teil des Datenstroms, der die Datentransaktion bildet. Typischerweise enthält das Datentransaktionsformular 42 auch ein sonstiges Bearbeitungsfeld 50, das ein Anhängen von diesem Formular eigenen Verarbeitungsdaten an die Datentransaktion zur Übertragung ermöglicht. Solche Verarbeitungsdaten können zum Beispiel Gleichungen, die die Beziehungen der Daten in bestimmten Feldern der Datentransaktion definieren, oder an eine Multimedia-Datentransaktion angehängte Audio- oder Videodaten enthalten. Außerdem können mit der Zeit der Dateneingabe, dem Datum der Dateneingabe, der Nutzer-ID und dergleichen zusammenhängende Nichtanzeigedaten in dem sonstigen Verarbeitungsfeld 50 gespeichert werden.
  • 3 und 4 zeigen das „Zerlegen" des Stroms der die unter Verwendung des Datentransaktionsformulars 42 von 2 erzeugten Datentransaktion bildenden Daten. Wie in 3 dargestellt, enthält jede Datentransaktion Daten, die für eine spezielle Datenbank spezifisch und/oder für spezielle Dateien in einer oder mehreren Datenbanken spezifisch sind. Die Daten in der Datentransaktion werden dementsprechend „zerlegt". Zum Beispiel wird die komplette Datentransaktion von 2 (Formular A) in einer speziellen Datei (Datei 110) der dem Transaktionseingabegerät 12, welches die Datentransaktion erzeugte, zugeordneten Datenbank 30 (Datenbank 11 in 1) gespeichert. Das Speichern der gesamten Datentransaktion ist erwünscht, sodass im Fall eines Systemfehlers, eines Stromausfalls und dergleichen Aufzeichnungen erhalten bleiben können. Dann extrahiert die Transaktionssteuerung 36 Daten aus diesen Feldern der Datentransaktion, bei welchen sie weiß, dass sie Formulare dieser speziellen Art betreffen. Zum Beispiel können die Daten in den Feldern 1, 2, 6, 10 und eine Funktion der Daten in Feld 11 eine spezielle Anwendung betreffen, die in der Datei 111 der Datenbank 11 gespeichert ist. In ähnlicher Weise können die Daten in den Feldern 3, 6, 10, 12 und 14 eine Anwendung betreffen, die in der Datei 112 der Datenbanken 11 gespeichert ist, während die Daten in den Feldern 1, 2, 7, 8, 9 und eine Funktion der Daten in den Feldern 10, 11 und 12 eine in der Datei 113 der Datenbank 11 gespeicherte Anwendung betreffen können. Diese Felder werden aus der empfangenen Datentransaktion durch die Transaktionssteuerung 36 extrahiert, in einen Dateieintrag des geeigneten Formats (wie benötigt) wiederhergestellt und in der zugehörigen Datenbank 30 gespeichert.
  • Alle Daten in der empfangenen Datentransaktion oder ein Untersatz davon können auch zu einer oder mehreren weiteren anwendungsspezifischen Datenbanken neu übertragen werden, wie beispielsweise zur Datenbank 21 der Datenbanken 40 in Stufe 3. Wie in 3 veranschaulicht, werden die datenbankspezifischen Daten der Felder 1, 4, 5, 13 und 14, die den Untersatz (Formular B) der ursprünglichen Transaktion (Formular A) bilden, in der Datei 210 der Datenbank 21 gespeichert, sodass man eine komplette Aufzeichnung erhalten kann. Untersätze der Daten in Formular B werden dann in speziellen Dateien der Datenbank 21 gespeichert, wie angegeben. Auf diese Weise werden die Daten der ursprünglichen Datentransaktion (Formular A) automatisch zu allen Datenbanken geschickt, die Dateien enthalten, die durch irgendwelche oder alle der Daten in Formular A aktualisiert werden müssen.
  • 4 zeigt das Zerlegen der Datentransaktion in 3 für das in 1 dargestellte System 10. Wie dargestellt, werden die Daten in der Datentransaktion (Formular A) extrahiert, um Dateien 110–113 der Datenbank 11 sowie Dateien 210–212 der Datenbank 21 zu aktualisieren. Eine redundante Kopie des Formulars A wird ebenfalls in der Datenbank 12 gehalten.
  • Wie nachfolgend vollständiger erläutert, ist das System von 14 darin bezeichnend, dass die Daten in einer Datentransaktion eine oder mehrere Datenbanken aktualisieren können, die durch Dateiserver gepflegt werden, die unter der Steuerung zahlreicher Arten von Betriebssystemen betrieben werden, ohne die Anforderung einer Emulation eines Endgeräts oder eines Betriebssystems durch das Transaktionseingabegerät 12. Im Gegenteil ermöglicht das Transaktionseingabegerät 12 der Erfindung eine Datenerfassung und -speicherung mit einer minimalen Verarbeitungsmenge an dem Transaktionseingabepunkt (Stufe 1), was natürlich die Systemkosten minimiert.
  • B. Transaktionseingabegerät 12 (510)
  • Wie oben erwähnt, ist das Transaktionseingabegerät 12 insbesondere durch den Datentransaktionsassembler 18 gekennzeichnet, der die verschiedenen Funktionen des Transaktionseingabegeräts 12 in seinem Transaktionseingabemodus steuert. Vorzugsweise benutzt der Datentransaktionsassembler 18 einfache Menüstrukturen und vorbestimmte Formulare, die als Datenströme in einem Flash-Speicher gespeichert sind, um die Dateneingabe zu vereinfachen. Die Menüs werden als eine spezielle Art von Formular behandelt und werden benutzt, um weitere Menüs, Formulare oder Prozesse aufzurufen. Die Formulare werden dagegen benutzt, um Datentransaktionen zu erzeugen, die zu einem oder mehreren Dateiservern, die unter verschiedenen Betriebssystemen arbeiten, geschickt werden, wobei die Datentransaktion in ihre Komponenten zur Speicherung in einer eindeutigen Dateistruktur zum Aktualisieren aller Aufzeichnungen, die durch die Daten in dieser Datentransaktion beeinflusst werden, in ihre Bestandteile „zerlegt" wird. Die „zerlegten" Datentransaktionen können ihrerseits zu einer weiteren anwendungsspezifischen Datenbank (Stufe 3) zur Speicherung übertragen werden. Prozesse werden dagegen ausgewählt, um eine begrenzte Verarbeitung der Werte in den Feldern der Formulare durchzuführen. Eine solche Verarbeitung kann lokal durchgeführt werden, aber sie wird vorzugsweise durch den zugehörigen Datenbankserver 28 durchgeführt.
  • 1. Hardware
  • Ein bevorzugtes Ausführungsbeispiel eines Transaktionseingabegeräts 12, das in ein herkömmliches Telefon integriert ist, ist in 5 und 6 dargestellt. Wie in 5A dargestellt, enthält ein bevorzugtes Desktop-Ausführungsbeispiel eines Transaktionseingabegeräts 12 ein Gehäuse 52 in der Größenordnung einer Breite von 8 Inch auf eine Länge von 12 Inch zum Aufnehmen der Telefonelektronik 14 und der Hardware des Datentransaktionsassemblers 18. Das Transaktionseingabegerät 12 enthält ein optionales Handgerät (oder Headset) 54, eine Gabel 56 (5B), ein numerisches Tastenfeld 58, Telefonfunktions/Leitungstasten 60, ein Mikrofon 62 und einen Lautsprecher 16, welche die Bedienung des Transaktionseingabegeräts im Telefonmodus erleichtern. Wie dem Fachmann bekannt, können die durch die Telefonfunktionstasten 60 zugänglichen Telefonfunktionen Stummschaltung, Lautsprecher, Leitungsauswahl, Konferenz, Halten, Übertragung, Lautstärkeregelung und dergleichen enthalten.
  • Das Transaktionseingabegerät 12 ist jedoch weiter durch eine Anzeige 20 mit Touch Screen 64, Modusschalt/Computerfunktionstasten 66, einer optionalen herausziehbaren Tastatur 68 und einem optionalen Magnetkartenleser/Smart Card – Leser 70 gekennzeichnet, was die Bedienung des Transaktionseingabegeräts 12 im Transaktionseingabemodus erleichtert. Ein Speicherkartenleser kann ebenfalls über eine Klappe (nicht dargestellt) wie in einem Laptop-Computer zugänglich sein. Vorzugsweise ist die Anzeige 20 eine reflektierende Supertwist-Flüssigkristallanzeige (LCD) mit hohem Kontrast mit minimal 20 Zeichen je Zeile und 16 Zeilen (vorzugsweise 40 Spalten auf 25 Zeilen), wobei ein Touch Screen 64 vorzugsweise eine klare druckempfindliche Tastatur bestehend aus 224 Tasten (16 Reihen von 14 Tasten), die auf der Fläche der LCD angebracht sind, ist. Vorzugsweise steht die LCD auch als eine hintergrundbeleuchtete Einheit zur Verfügung. Natürlich ist der Touch Screen 64 nicht notwendig, falls die optionale Tastatur 68 vorgesehen ist. Außerdem kann eine Sicherheitsbatterie (6) vorgesehen sein; alternativ kann die Batterie 71 die Primärstromquelle für ein tragbares (zellulares) Ausführungsbeispiel des Transaktionseingabegeräts 12 gemäß der Erfindung sein.
  • 5B zeigt einige der Anschlüsse des Transaktionseingabegeräts 12. Typischerweise enthält das Transaktionseingabegerät 12 eine Handapparat- (Headset-) Buchse 72 zum Anschließen eines optionalen Handapparats (Headsets) 54 an die Telefonelektronik 14, wenn es erwünscht ist, mehr privat zu kommunizieren als wenn nur das Mikrofon 62 und der Lautsprecher 16 benutzt werden. Ein Videoeingangsanschluss 74 ist ebenfalls zum Verbinden einer herkömmlichen Datenkompressionsschaltung 75 in dem Transaktionseingabegerät 12 (6) mit einer optionalen Videokamera, die ein Video des Bildtelefontyps vorsieht, oder mit einem Faxgerät oder Scanner vorgesehen. Solche Videodaten können rahmenweise an das Ende einer Datentransaktion in dem sonstigen Verarbeitungsfeld 50 angehängt werden, um eine Multimedia-Datentransaktion zu erzeugen, wie oben unter Bezugnahme auf 2 beschrieben. Ein Videoausgangsanschluss 76 ist ebenfalls zum Bereitstellen dekomprimierter Video- oder Faxdaten von der Datendekompressionsschaltung 77 (6) an einen Videoempfänger, einen hochqualitativen Computerbildschirm, ein Faxgerät und dergleichen vorgesehen. Solche Daten können ebenfalls einem Druckeranschluss 82 oder 84 bereitgestellt werden, falls erwünscht. Eine Mehrleitungstelefonbuchse (Modemschnittstelle) 78 ist ebenfalls vorgesehen. Vorzugsweise sieht die Modemschnittstelle 78 separate Modemverbindungen für die Telefonelektronik 14 und den Datentransaktionsassembler 18 vor, obwohl nur eine einzelne Modemverbindung notwendig ist.
  • Ein optionaler Infrarot-Transceiver 80 ist ferner zum Ermöglichen eines Fernsteuerbetriebs einer Fernseh- und Stereoausrüstung und dergleichen als Reaktion auf durch das Transaktionseingabegerät 12 gesendete/empfangene Datentransaktionen vor gesehen. Der Infrarot-Transceiver 80 enthält einen internen Signalgeneratorchip, der in dem Datentransaktionsassembler 18 gespeicherte Parameter zum Bestimmen der geeigneten Übertragungsfrequenzen für die Infrarotsignale liest. Eine Steuerung der Infrarotvorrichtungen ist dann durch Menüs auf der Anzeige 20 vorgesehen. Weitere Infrarot-Transceiver 80 können ebenfalls an jeder Ecke des Gehäuses 52 vorgesehen sein, sodass das Infrarotsignal mehr Bereich abdeckt (jeder Sender deckt typischerweise etwa 60° Umfang ab). Alle solche Geräte sind dem Fachmann bekannt und werden daher hier nicht im Detail beschrieben.
  • Ein serieller Anschluss 82 einer Computerschnittstelle (RS-232) und ein paralleler Anschluss 84 sind ebenfalls zum Senden/Empfangen von Daten zu/von einem weiteren Computergerät bzw. zum Bereitstellen eines Ausgangs zu einem Drucker vorgesehen. Ein Stromeingangsanschluss 86 und ein Tastatureingang 88 sind ebenfalls vorgesehen. Der Tastatureingang 88 nimmt eine Verbindung von einer Standard-Tastatur oder einer ausklappbaren Tastatur (nicht dargestellt) an, die zusätzlich zu oder anstelle der herausziehbaren Tastatur 68 benutzt werden können. Eine optionale entfernbare PCMCIA-Speicherkartenschnittstelle 89 (6) zum Aktualisieren der Betriebsanweisungen des Datentransaktionsassemblers 18 und ein optionaler RF-Transceivers 90 (6) für ein drahtloses Netzwerk mit einer anderen elektronischen Ausrüstung können ebenfalls an dem Transaktionseingabegerät 12 vorgesehen werden, falls erwünscht.
  • 6 ist eine schematische Darstellung der Elektronik des in 5A und 5B dargestellten Transaktionseingabegeräts. Entsprechende Bezugsziffern für entsprechende Elemente sind in 5A und 5B und 6 benutzt. Wie in 6 dargestellt, kann das Transaktionseingabegerät 12 zusätzlich zu den oben unter Bezug auf 5A und 5B beschriebenen Elementen eine einfache Spracherkennungsschaltung 91 enthalten, die eine Sprachauswahl von Menüoptionen und dergleichen ermöglicht. Im „Sprachauswahl"-Modus würde der Nutzer in Abhängigkeit von der gewünschten Menüauswahl „1 ", „2" oder „3" sprechen, und die Sprache würde durch das Mikrophon 62 an dem Gehäuse 52 des Transaktionseingabegeräts 12 aufgenommen und durch die Spracherkennungsschaltung 91 erkannt werden. Das richtige Auswahlsignal würde dann an den Datentransaktionsassembler 18 geschickt werden. Analog kann der Datentransaktionsassembler 18 mittels eines herkömmlichen Sprach synthesizers 92, der dem Nutzer über einen Lautsprecher 16 und einem Anrufer über die Modemschnittstellen/Telefonleitungs-Verbindung 78 den Audioausgang bereitstellt, einen hörbaren Ausgang vorsehen. Der Sprachsynthesizer 92 kann zum Beispiel bestimmte Datentransaktionen für eine blinde Person, die keine Auswahl von einer herkömmlichen Videoanzeige machen kann, hörbar werden lassen. Außerdem kann ein Sprachaufzeichnungsgerät 93 so vorgesehen werden, um Abschnitte von Telefonanrufen, Abschnitte von Sprachdatentransaktionen oder eine Anrufermitteilung wie bei der Benutzung eines herkömmlichen digitalen Anrufbeantworters aufzuzeichnen. Andererseits kann das Sprachaufzeichnungsgerät 93 in dem Datenbankserver 28 zur Verwendung beim Speichern/Weiterleiten von hörbaren Nachrichten an die Datenbank 30 vorgesehen sein.
  • Wie oben erwähnt, ist das Transaktionseingabegerät 12 durch den Datentransaktionsassembler 18 gekennzeichnet, der die Erzeugung von Datentransaktionen im Transaktionseingabemodus steuert. Wie in 6 dargestellt, ist der Datentransaktionsassembler 18 durch einen herkömmlichen Mikroprozessor 94, wie beispielsweise einen Intel 80386SX (20 MHz oder höher) oder äquivalent, einen TAS-PROM 95, einen Formular/Menüspeicher 96 und einen Transaktionspufferspeicher RAM 97 in Hardware implementiert. In einem bevorzugten Ausführungsbeispiel ist der TAS-PROM 95 ein Flash-PROM, der 1 MB Steuerdaten (Firmware) für den Mikroprozessor 94 (beispielsweise den Mikrocode für die Algorithmen der 710 unten) hält, während der Formular/Menüspeicher 96 ein Flash-Speicher ist, der 1 MB Datentransaktionsmenüs und -formulare hält. Der Transaktionspufferspeicher 97 muss dagegen nur so groß wie die größte Datentransaktion sein und kann zum Beispiel bis zu 128 kB Transaktionsdaten einschließlich Anwendungs- und Betriebssystemvariablen halten. Vorzugsweise werden der TAS-PROM 95 und der Formular/Menüspeicher 96 durch Herunterladen von Datenströmen, die neue Anweisungen und/oder Formulare und Menüs enthalten, über einen herkömmlichen Datenbus 98 über ein Modem 78, eine Magnetkartenschnittstelle 70 oder über eine durch die Speicherkartenschnittstelle 89 gelesene entfernbare Speicherkarte aktualisiert, falls erforderlich. Alternativ können zusätzliche Flash-Speicherelemente hinzugefügt werden, wenn zusätzliche Anwendungen dem Transaktionseingabegerät 12 hinzugefügt werden. Der Transaktionspufferspeicher 97 kann auch erweitert werden, um Transaktionen irgendeiner Größe oder Art, einschließlich Multimedia-Anwendungen, bei denen Video- und/oder Audiodaten an die Datentransaktionen angehängt werden, zu behandeln.
  • Der Fachmann wird erkennen, dass das Transaktionseingabegerät 12 an eine Dockstation eines Netzwerks angedockt werden kann. Der RF-Transceiver 90 kann für drahtlose Kommunikationen in einer solchen Umgebung verwendet werden. Außerdem wird der Fachmann erkennen, dass das Transaktionseingabegerät 12 als ein batteriebetriebenes tragbares Gerät, das eine Kreuzung zwischen einem Laptop-Computer und einem Zellulartelefon des zum Beispiel durch Paajanen et al. im US-Patent Nr. 5,189,632 dargestellten Typs ist, implementiert sein. In einem solchen Ausführungsbeispiel kann ein optionales Kopfstück sowie eine Mikrofon- und Lautsprecheranordnung in der Klappe vorgesehen werden. Natürlich würde der Flüssigkristallbildschirm 20 in der Größe auf zum Beispiel 40 Spalten auf 12 Reihen verkleinert werden, und der Touch Screen 64 kann weggelassen werden. Die meisten der anderen Optionen des Ausführungsbeispiels der 5A und 5B würden jedoch vorzugsweise bleiben, sodass die tragbare Einheit auch an einem Tisch benutzt werden kann, falls erwünscht. Die Elektronik des Transaktionseingabegeräts 12 würde sonst wie in 6 dargestellt sein, außer was bestimmte Größen- und Formenüberlegungen angeht, die im Bereich des Wissens eines Fachmanns liegen.
  • 2. Software
  • Wie aus der folgenden Beschreibung offensichtlich, benutzt der Datentransaktionsassembler 18 kein herkömmliches Betriebssystem, um den Betrieb des Mikroprozessors 94 zu steuern. Dagegen speichert der TAS-PROM 95 einfache Firmware-Algorithmen (710), die in einer Kernweise zum Navigieren eines Nutzers durch Menüs und Formulare, die von dem Formular/Menüspeicher 96 für spezielle Anwendungen bereitgestellt werden, arbeiten, und es sind die resultierenden Datenströme, die den Mikroprozessor 94 zu jedem Zeitpunkt steuern. Mit anderen Worten rekonfigurieren die Datenströme von dem TAS-PROM 95 und die Datenströme von dem Formular/Menüspeicher 96 zusammen den Mikroprozessor 94 in einen Spezialprozessor für jede durch die Formulare bestimmte Anwendung. Der Mikrocode des TAS-PROM 95 und die Parameterströme von dem Formular/Menüspeicher 96 arbeiten so als ein einfaches formulargesteuertes Betriebssystem für den Mikroprozessor 94 für alle Anwendungen zusammen und sind der einzige Code, der zum Steuern des Mikroprozessors 94 benutzt wird (d.h. keine herkömmlichen Betriebssysteme oder Anwendungsprogramme werden bereitgestellt). Als Ergebnis kann der Mikroprozessor 94 in einen neuen Spezialcomputer mit jedem neuen aus dem Formular/Menüspeicher 96 gelesenen Formular rekonfiguriert werden, und solche Formulare/Menüs können zu einer beliebigen Zeit durch Einlesen der geeigneten Datenströme von einer Speicherkarte oder von einem Datenbankserver 28 oder durch Hinzufügen eines zusätzlichen PROM hinzugefügt werden. Eine spezielle Ausführungsform der in dem TAS-PROM 95 gespeicherten TAS-Firmware wird nun Bezug nehmend auf 710 beschrieben.
  • So enthält der TAS-PROM 95 enthält Steuerdaten (Firmware) für den Mikroprozessor 94, und er ist in jedem Transaktionseingabegerät 12 zum Erzeugen einer Schablone für eine Datentransaktion aus einem in dem Formular/Menüspeicher 96 gespeicherten (oder direkt von einer Speicherkarte oder einem externen Datenbankserver empfangenen) Datenstrom und aus durch einen Nutzer eingegebenen oder von einer externen Datenbank oder Magnetkarte, Smart Card und dergleichen abgerufenen Daten vorhanden. Die TAS-Firmware und die ausgewählte Schablone steuern zusammen das Verhalten des Mikroprozessors 94 durch logisches Definieren einer Tabelle von Menüoptionen und/oder Datenbankschnittstellen, durch welche der Nutzer navigiert. Wie oben erwähnt, navigiert der Nutzer durch eine Reihe von Menüauswahlen durch Auswählen eines weiteren Menüs, eines Formulars oder eines Prozesses. Wenn die Datentransaktion für eine gewünschte Anwendung einmal abgeschlossen ist, wird sie zum „Zerlegen" in alle ihre Bestandteile zur Speicherung ausgesendet. In dieser Form ersetzen die TAS-Firmware von dem TAS-PROM 95 und die Menüs und Formulare aus dem Formular/Menüspeicher 96 der Erfindung zusammen ein herkömmliches Betriebssystem und einzelne Anwendungsprogramme. Tatsächlich ermöglicht die Erfindung, dass das Transaktionseingabegerät 12 vollständig betriebssystem-unabhängig ist.
  • Der Datentransaktionsassembler 18 der Erfindung ist über ein vorbestimmtes Protokoll, das als Anweisungen in dem TAS-PROM 95 gespeichert ist, mit einem Datenbankserver 28 und seiner zugehörigen Datenbank 30 verbunden. Wie oben erwähnt, arbeitet der dem speziellen Transaktionseingabegerät 12 zugeordnete Datenbankserver als ein Aufbewahrungsort der durch das Transaktionseingabegerät 12 er zeugten Datentransaktionen und als Lieferant von Daten zu dem Transaktionseingabegerät 12 zum Vervollständigen der Formulare und Bereitstellen zusätzlicher Formulare, Menüs, Prozesse und dergleichen. Da das System der Erfindung ein betriebssystem-unabhängig ist, gibt es keine Hardware- oder Softwarebeschränkungen bezüglich der Eigenschaften des Datenbankservers 28.
  • Der die einzelnen Formulare bildende Parametersatz wird typischerweise durch den Datenbankserver 28 als ein Datenstrom über das Modem bereitgestellt und in dem Formular/Menüspeicher 96 gespeichert, während irgendwelche heruntergeladenen Anweisungen in dem TAS-PROM 95 gespeichert werden. Eine Verbindung zwischen dem Datentransaktionsassembler 18 und seinem Datenbankserver 28 wird bevorzugt über ein für jeden Datenbankserver 28 spezifisches Dateilistenprogramm vorgesehen. Dieses Dateilistenprogramm kennt die Eigenschaften jedes Feldes jedes Formulars für die jeweilige Datentransaktion und wird vom Datenbankserver 28 benutzt, um die empfangenden Datentransaktionen in ihre Bestandteile zu „zerlegen".
  • Vorzugsweise fordert der Datentransaktionsassembler 18 beim Einschalten automatisch den Nutzer mit einem Befehl „Download Parameter Streams" auf, dass der Nutzer die gewünschten Ströme von Menü- und Formulardaten für die gewünschte Anwendung von einer externen Quelle in den Formular/Menüspeicher (Flash-Speicher) 96 laden kann. Der Prozess „Download Parameter" wird dann durch Wählen des externen Datenbankservers 28 initiiert, der die Verbindung über die Modemschnittstelle 78 initiiert. Einmal verbunden wird die Transaktionssteuerung 36 des Datenbankservers 28 den angeforderten Parameterstrom übertragen. Der Datentransaktionsassembler 18 wird den empfangenen Datenstrom in den Formular/Menüspeicher 96 laden, und bei Abschluss wird auf dem Bildschirm 20 das Kommando „Executive Menu Ready" präsentiert. Das Ausführungsmenü wird dann automatisch dem Nutzer zur Auswahl des gewünschten Menüs, Formulars oder Prozesses präsentiert.
  • Bei Initiierung des Transaktionseingabemodus durch den Nutzer ruft der Datentransaktionsassembler 18 einen Satz von Tafelparametern aus dem Formular/Menüspeicher 96 ab und zeichnet ein Formular auf den Bildschirm 20. Diese Formulare sind entweder Menüs zum Navigieren zu speziellen Formularen oder ein Formular, in das Daten durch den Nutzer eingetragen werden. Wie nachfolgend erläutert, stellen die Menüs eine Funktionalität durch eine einfache Menüauswahl bereit. Das Formular auf dem Bildschirm 20 wird durch den Nutzer durch Eintragen der geeigneten Daten mittels Touch Screen 64 oder optionaler Tastatur 68 vervollständigt. Alternativ können die angeforderten Daten von einer Speicherkarte über die Speicherkartenschnittstelle 90, von einem Magnetstreifen auf einer Magnetstreifenkarte oder einer Smart Card über die Magnetkartenschnittstelle 70 oder die Speicherkartenschnittstelle 89, oder Spracheingabe über die Spracherkennungsschaltung 91 eingelesen werden. Außerdem kann eine Abfrage zu dem zum Transaktionseingabegerät 12 gehörenden Datenbankserver 28 für benötigte Daten geschickt werden, um gewisse Felder in dem aktuellen Formular auszufüllen. Die Art des Dateneintrags wird von einem Untersatz von dem Benutzer beim Drücken einer „?"-Taste oder eines Knopfes „Request for More Information" präsentierten Optionen angefordert. Diese Anfrage wird dem Nutzer mehrere Optionen zum Auswählen geben, wie beispielsweise Dateneingabe mittels Tastatur 68, Touch Screen 64, Magnetstreifenkarte über die Magnetkartenschnittstelle 70, Speicherkarte über die Speicherkartenschnittstelle 89, durch Sprachanzeige der Nummer der Position in dem Menü über die Spracherkennungsschaltung 91, oder über Modem von einer Datenbank 30. Daher kann die durch den Datentransaktionsassembler 18 erzeugte Datentransaktion Gebrauch von den gespeicherten Daten machen oder nicht, um die Menge der vom Nutzer geforderten Dateneingabe zu reduzieren.
  • Wenn eine Dateneingabeoption ausgewählt ist, tut der Datentransaktionsassembler 18 eines der folgenden Dinge: ein weiterer Satz von Parametern wird aufgerufen und ein weiteres Formular wird gezeichnet, die Korrektheit der Auswahl wird verifiziert und ein Satz von Optionen für die Auswahlen wird basierend auf Wechselwirkungen mit gespeicherten Daten präsentiert, die komplettierte Datenbanktransaktion wird über ein Modem an einen Datenbankserver 28 zur Speicherung in der Datenbank 30 übertragen, oder Datenwerte werden von der Datenbank 30 zur Integration in den Transaktionspufferspeicher 97 angefragt. In einem bevorzugten Ausführungsbeispiel erfolgen die Auswahlen aus dem Menü durch Berühren der richtigen Stelle auf dem Menü mittels Touch Screen 64; durch Sprachanzeige der Nummer der Menüposition über das Mikrofon 62 und die Spracherkennungsschaltung 91; durch Verwenden einer der Computerfunktionstasten 66, um einen Cursor das Menü hochlaufen zu lassen, einer weiteren Taste, um den Cursor das Menü herunterlaufen zu lassen, und einer dritten Taste, um eine Auswahl in einer herkömmlichen Weise zu machen; oder durch Benutzen einer Tastatur 68 als eine Auswahlvorrichtung. Wenn die Tastatur 68 benutzt wird, können die Tastaturtasten benutzt werden, um einen Cursor zu steuern, wobei die „Enter"-Taste zum Vornehmen einer Auswahl benutzt wird; alternativ kann die Nummer der ausgewählten Position eingegeben und die „Enter"-Taste gedrückt werden, um die Auswahl vorzunehmen. Wenn die Auswahl einmal vorgenommen ist, wird das geeignete Formular aus dem Formular/Menüspeicher 96 als ein Strom von Daten extrahiert.
  • Alternativ kann der Datentransaktionsassembler 18 zusätzlich zum Präsentieren eines Menüs zur Auswahl oder Vervollständigung eines Formulars auch eine Menüauswahl zum Initiieren eines Prozesses wie beispielsweise einer Berechnung einer interessierenden Rate unter Verwendung eines oder mehrerer Felder in dem Formular, des Findens eines Mittelwerts, des Findens eines Namens oder des Suchens nach Einträgen für ein spezielles Datum präsentieren. Diese Prozesse können in dem TAS-PROM 95, in dem Formular/Menüspeicher 96, in einem Offline-Server, wo sie initiiert werden, oder an irgendeiner anderen Stelle, wo sie zu dem Betriebsabschnitt des Transaktionseingabegeräts 12 heruntergeladen werden können, gespeichert werden. In einem bevorzugten Ausführungsbeispiel werden die Prozesse im Allgemeinen in dem Datenbankserver 28 durch Senden einer Datenanfrage an den Datenbankserver 28, Bearbeiten der Daten in dem Datenbankserver 28 und dann Zurückgeben der Antwort als einen Datenstrom oder Rückbericht an das Transaktionseingabegerät 12 initiiert.
  • Ein Prozess initiiert typischerweise eine Datenkette, die einen Prozess an einer externen Maschine aufruft. Zum Beispiel kann das Transaktionseingabegerät 12 benutzt werden, um Steuersignale für eine Infrarotsteuerung verschiedener Geräte mittels des Infrarot-Transceivers 80 herunterzuladen und zu speichern (5 und 6). Das Formular der Steuersignale wird von der Signalspeicherung in einem optionalen Infrarot-Chip abhängen, der durch den Datentransaktionsassembler 18 oder durch ein Offline-Gerät über das Modem oder durch die Luft mittels des RF-Transceivers 90 für einen direkten digitalen Transfer in drahtloser Form abhängen. Außerdem kann in dem Fall, wenn das Transaktionseingabegerät 12 zum Beispiel in einem Arztbüro benutzt wird, der Prozess benutzt werden, um ein Rezept an eine Apotheke oder ein Email-Auftragshaus unter Verwendung vorgespeicherter Modemnummern zu übertragen, oder kann es dem Arzt ermöglichen, eine Liste von für den Tag zu machenden Telefonanrufen oder eine Liste der kommenden Termine für ein spezielles Datum aufzurufen. Mit anderen Worten kann die TAS-Firmware auch die Datentransaktion in alle ihre Zusatzteile zur Übertragung zu zahlreichen Aufzeichnungen in einer oder mehreren Datenbanken „zerlegen".
  • Ein bevorzugtes Ausführungsbeispiel der TAS-Firmware wird nun unter Bezug auf 710 beschrieben.
  • Wie oben erwähnt, ist der Transaktionsassembler(anwendungs)server TAS ein Datenstrom, der in dem TAS-PROM 95 gespeichert ist, der zusammen mit den Formularen aus dem Formular/Menüspeicher 96 ein einfaches formulargesteuertes Betriebssystem erzeugt, welches die notwendigen Steuerdaten (Firmware) dem Mikroprozessor 94 bereitstellt, sodass kein herkömmliches Betriebssystem notwendig ist. 7 ist ein Flussdiagramm eines menügesteuerten TAS 18 gemäß einem bevorzugten Ausführungsbeispiel der Erfindung. Wie veranschaulicht, startet die TAS-Firmware in Schritt 100 und ruft in Schritt 102 ein Startmenü aus dem Formular/Menüspeicher 96 ab. Das Startmenü wird innerhalb weniger Sekunden nach dem Booten der TAS-Firmware nach dem Systemlogo veranlasst. Das Startmenü präsentiert typischerweise die Optionen des Herunterladens eines Parameterstroms vom Datenbankserver 28 zum Ermöglichen zusätzlicher Funktionen oder des Druckens eines Ausführungsmenüs. Falls das Ausführungsmenü ausgewählt wird, wird das Ausführungsmenü aus dem Formular/Menüspeicher 96 abgerufen. Das Ausführungsmenü enthält zahlreiche Anwendungsoptionen für den Nutzer, nämlich die Auswahl eines Formulars, eines weiteren Menüs, eines Prozesses oder eines automatischen Schaltens in den Telefonmodus, von denen eine in Schritt 104 ausgewählt wird. Die Datenströme im Formular/Menüspeicher 96 können hinsichtlich des Typs (Formular, Menü oder Prozess) durch Anhängen eines Codes wie beispielsweise „F" für Formular, „M" für Menü und „P" für Prozess und hinsichtlich der Nummer durch Anhängen einer Formular-, Menü- oder Prozessnummer an den Beginn des folgenden Datenstroms unterschieden werden. Diese Codes werden durch die TAS-Firmware erkannt, und sie agiert dementsprechend.
  • Falls die in Schritt 104 ausgewählte Option ein Formular ist, wird das richtige Formular (Datenstrom für das Formular Fxy) in Schritt 106 aus dem Formular/Menüspeicher 96 abgerufen, ein Transaktionspufferspeicher 97 einer Länge gleich der Größe der zu dem Formular Fxy gehörenden Aufzeichnung wird in dem RAM gebildet, das Formular wird in dem Transaktionspufferspeicher 97 gespeichert, und eine Verbindung wird mit dem/den geeigneten Datenbankserver(n) 28 hergestellt. Der Datenstrom für das ausgewählte Formular besteht aus Eingabeaufforderungen, Druckstellen für die Eingabeaufforderung, Dateneingabepunkten, Druckstellen für den Dateneingabestart, der Dateneingabelänge und einem Code bezüglich der Natur der Dateneingabe. Dieser Code kann numerisch, alphanumerisch, ein Querverweis zu gespeicherten Daten oder zuvor eingegebenen Daten, eine Formel für die interne Erzeugung des Ergebnisses aus zuvor eingegebenen Daten an den Datentransaktionsassembler 18 oder eine externe Anfrage für Daten, Hilfe oder neu formulierte Werte sein. Der in die Felder des Formulars eingegebene Datenstrom zeigt nicht nur die Stelle für das Drucken der Eingabeaufforderung und das Feld für die Dateneingabe an, sondern auch die Größe des Feldes und der Speicherung, einen Startpunkt in dem Transaktionspuffer für das gespeicherte Element, und die Art der Daten: alphanumerisch, numerisch (Fließpunkt oder ganzzahlig), Datum und dergleichen.
  • Falls in Schritt 108 bestimmt wird, dass das angeforderte Formular tatsächlich ein Menü (Mxy) ist, wird ein versteckter Satz von Codes gelesen, die auf das Formular Fxy zeigen, zu dem die Auswahl führen wird, und die Steuerung verzweigt zurück zu Schritt 104 zur Auswahl eines weiteren Menüs oder Formulars. Wenn ein Menü gewählt wird, hat jede Position ihre Sequenznummer, ihren Deskriptor und einen Code, für was sie „steht" (ein weiteres Menü, Formular oder Prozess). Mit anderen Worten steht jede Auswahl mit einer Reihe von Positionscodes in Zusammenhang, die zu einem weiteren Formular, Menü oder Reihen von Tests an den eingegebenen Daten abzweigen. Ein Menü hat auch einen numerischen Code für jeden der Speicherbereiche und einen speziellen Code einschließlich eines Sicherheitscodes für bestimmte Menüpunkte, Prozesscodes von Formularen in dem Menü, oder einen Pointer zu dem Prozesscode. Ein Pointer kann auch in dem Menü für offline durchzuführende Prozesse (d.h. in einem zugehörigen Datenbankserver 28) vorgesehen sein.
  • Falls in Schritt 104 ein Prozess (Pxy) ausgewählt wird, wird dem Datenbankserver 28 gemeldet, dass etwas von seiner Datenbank 30 angefordert wird oder dass eine Verarbeitung von Daten angefordert wird. Zum Beispiel kann der Datentransaktionsassembler 18 eine „?"-Anfrage an den Datenbankserver 28 senden, sodass Optionen an den Datentransaktionsassembler 18 zur Präsentation an den Nutzer zur Auswahl zurückgegeben werden. Der Prozess löst einen externen Prozess des Datenbankservers 30 mit einem Parameterstrom aus, und eine Steuerung wird entweder zum Datentransaktionsassembler 18 zurückgegeben oder eine Steuerung wird gehalten, bis der Prozess abgeschlossen ist, in welchem Fall dem Datentransaktionsassembler 18 eine Mitteilung zurückgeschickt wird. Diese Mitteilung kann ein Bericht, ausgewählte Daten, ein aus einer Berechnung resultierender Wert und dergleichen sein. Eine Verarbeitung wie beispielsweise das Überprüfen von Sensoren und dergleichen kann ebenfalls lokal durch den Datentransaktionsassembler 18 durchgeführt werden.
  • Wenn das gewünschte Formular einmal für die Nutzeranwendung ausgewählt ist, wird das Formular in Schritt 110 entsprechend den in 810 dargestellten Schritten bearbeitet. Wenn eine Eingabe in jedem Feld gemacht ist, wird sie automatisch in dem Eingangspufferbereich des Transaktionspufferspeichers 97 an ihrer zugeordneten Stelle und in dem vorgeschriebenen Format gespeichert. Jederzeit kann das gesamte Formular mit einer automatischen Rückkehr zu dem Menü, welches es aufgerufen hat, verlassen werden oder das Formular kann zur Datenneueingabe gelöscht werden. Wenn das Formular einmal bearbeitet und zu dem/den geeigneten Datenbankserver(n) 28 übertragen worden ist, wird die Datenbankserververbindung beendet und dem Nutzer wird in Schritt 112 das letzte Menü präsentiert, aus dem der Nutzer seine oder ihre Auswahl getroffen hat. Alternativ wird das Ausführungsmenü als ein Vorgabemenü aufgerufen.
  • Falls der Nutzer in Schritt 114 anzeigt, dass er oder sie wünscht, mit der Vervollständigung eines neuen Formulars fortzufahren, zweigt die Steuerung zurück zu Schritt 104 zur Menüauswahl ab, und gegebenenfalls erfolgt eine neue Datenbankserververbindung. Dieser Prozess wird für jedes Formular wiederholt. Wenn keine weiteren Auswahl gewünscht sind, wird die TAS-Firmware in Schritt 116 verlassen.
  • 8 ist ein Flussdiagramm, das eine Technik zum Bearbeiten eines Formulars (Schritt 110) veranschaulicht, um eine Datentransaktion gemäß der Erfindung zu erzeugen. Wie dargestellt, startet der Prozess von 8 in Schritt 118 und initialisiert in Schritt 120 einen Transaktionspufferspeicher 97 zur Speicherung der Datentransaktion, wenn sie erzeugt wird. Mit anderen Worten wird ein Formular, falls es eines für die angeforderte Anwendung gibt, aus dem Formular/Menüspeicher 96 zum Transaktionspufferspeicher 97 bewegt. Falls das angeforderte Formular im Formular/Menüspeicher 96 nicht vorhanden ist, wird eine Fehlermeldung gesendet oder es kann eine Anfrage an den Datenbankserver 28 geschickt werden, um einen Datenstrom mit den Parametern für das angeforderte Formular herunterzuladen. Vorzugsweise ist der Transaktionspufferspeicher 97 wenigstens so groß wie die größte Datentransaktion und dient als ein Assemblerbereich für die Datentransaktion. Vorzugsweise sind Lese- und Schreibpuffer gebildet, sodass Sende- und Empfangspufferspeicher zu/von einer Modemschnittstelle 78 zur Verfügung stehen. Natürlich kann der Transaktionspufferspeicher 97 für diesen Zweck größer gemacht werden.
  • Wenn der Transaktionspufferspeicher 97 in Schritt 120 einmal initiiert ist, wird der Bildschirm 20 gelöscht, und in Schritt 122 wird das ausgewählte Formular zu seiner ersten Seite initialisiert. Die erste Seite des Formulars wird dann in Schritt 124 dem Bildschirm 20 präsentiert. In Schritt 126 vervollständigt der Nutzer die Formularseite auf einer feldweisen Basis unter Verwendung irgendeiner der oben beschriebenen Dateneingabetechniken und der Feldsteuerungen von 9 und 10.
  • Der Transaktionspufferspeicher 97 sammelt die Daten, die zu dem dem Nutzer auf dem Bildschirm 20 präsentierten Formular gehören, und enthält geeignete Stellen für jedes separate Datenelement. Bei Abschluss der Datentransaktion werden die Inhalte des Transaktionspufferspeichers 97 über das Modem oder drahtlos zu dem/den geeigneten Datenbankserver(n) 28 übertragen, mit einem vorangestellten Satz von Codes (Feld 44, 2), welche die Art der Datentransaktion identifizieren, und gefolgt von einer Kette von Prozessidentifikatoren für den/die Datenbankserver 28 zur Verwendung in ihren Programmen beim Erzeugen zusätzlicher Transaktionen und beim Speichern der Daten und aller Hilfsdatentransaktionen in dem regulären Dateiformat der zu dem/den Datenbankserver(n) 28 gehörenden Datenbank 30. Als Ergebnis kann die in dem Transaktionspufferspeicher 97 erzeugte Datentransaktion eine mehrdeutige Beziehung zu den in der Datenbank 30 gespeicherten Daten haben.
  • Falls der Nutzer sich irgendwann entscheidet, die Bearbeitung eines Formulars zu verlassen (Schritt 128), wird die Formularbearbeitungsroutine in Schritt 129 verlassen. Sonst wird in Schritt 130 bestimmt, ob der Nutzer eine Seite zurückgehen will (für ein mehrseitiges Formular), um eine Dateneingabe zu korrigieren. Falls dies so ist, kehrt die Steuerung zu Schritt 124 zur Präsentation der früheren Seite zurück. Falls der Nutzer nicht wünscht, eine vorherige Seite zu überprüfen oder zu editieren, wird in Schritt 132 bestimmt, ob das aktuelle Formular eine weitere Seite besitzt, die noch nicht zur Vervollständigung durch den Nutzer angezeigt worden ist. Falls das Formular mehrere Seiten hat, bewegt sich die Routine in Schritt 134 zur nächsten Seite, und in Schritt 136 wird bestimmt, ob die Bewegung zur nächsten Seite erfolgreich war. Falls dem so ist, kehrt die Steuerung zu Schritt 124 zur Präsentation der nächsten Seite zurück. Natürlich kann der Prozess des Aufrufens einer nachfolgenden Seite in einem Formular oder eines weiteren Formulars bei Vervollständigung eines Formulars in Abhängigkeit von einem automatischen Aufruf dieser Seite oder Formularfolge oder der Möglichkeit einer Sprungsequenz (d.h. Seiten überspringen) in Abhängigkeit von einem Wert in irgendeinem Feld, der eingegeben worden ist, sein. In jedem Fall wird, falls es nicht mehrere Seiten in dem Formular gibt oder falls die Bewegung zur nächsten Seite nicht erfolgreich war, das Ende des Formulars mit einem Code markiert und die Transaktion wird in Schritt 138 durch Übertragen der Datentransaktion zu dem/den geeigneten Datenbankserver(n) 28 zur Speicherung in seiner zugehörigen Datenbank 30 und/oder zum „Zerlegen" zur Speicherung der Daten in weitere Datenbanken 40 gesichert. Falls in Schritt 140 bestimmt wird, dass die Sicherung wegen eines Modemfehlers und dergleichen nicht erfolgreich war, kehrt die Steuerung zu Schritt 122 zurück und der Prozess wird wiederholt. Falls die Datentransaktion erfolgreich gesichert wurde, wird die Formularbearbeitungsroutine in Schritt 129 verlassen, und das zuletzt benutzte Menü wird präsentiert (Schritt 112).
  • Optional werden gespeicherte Prozesse in einem Datentransaktionsformular (Feld 50, 2) zur geeigneten Zeit im Ablauf der Formularbearbeitungsroutine vor ihrem Verlassen ausgeführt. Diese Prozesse können jedoch vertagt und durch den Datenbankserver 28 bei Bedarf durchgeführt werden.
  • 9A und 9B zeigen zusammen ein Ablaufdiagramm einer Technik zum Vervollständigen und Editieren der Felder eines Formulars (Schritt 126 von 8). Die Feldvervollständigungsroutine startet in Schritt 142 und bestimmt zuerst in Schritt 144, ob eine Anfrage zum Abbruch oder zum Bewegen zu einer gültigen Seite anhängig ist. Falls dem so ist, wird die Feldvervollständigungsroutine in Schritt 146 verlassen. Falls jedoch keine Anfrage zum Abbruch oder zur Seitenbewegung anhängig ist, werden die Felddaten für das erste Feld des Transaktionspufferspeichers 97 in Schritt 148 eingegeben. Wie oben erwähnt, können diese Felddaten über die Tastatur 68 oder den Touch Screen 64 eingegeben, über die Magnetkartenschnittstelle 70 eingelesen, von einer Speicherkarte über die Speicherkartenschnittstelle 89 eingelesen, über die Modemschnittstelle 78 von einem Datenbankserver 28 eingelesen, oder durch eine Spracheingabe bestimmt werden. Eine Voreditierverarbeitung der Felddaten wird dann in Schritt 150 ausgeführt. Eine solche Voreditierverarbeitung kann zum Beispiel das Einstellen von Vorgabewerten, das Durchführen von Berechnungen, das Einrichten von Verbindungen zu Daten in anderen Dateien, das Nachschauen und Schreiben von Daten in bereits mit dem aktuellen Formular verbundene(n) Dateien, das Hervorbringen eines weiteren Formulars, das Durchführen spezieller Aktualisierungen des Bildschirms 20, das Verstecken von Feldern aus der Sicht des Nutzers und dergleichen enthalten. Eine solche Voreditierverarbeitung kann auch benutzt werden, um zu bestimmen, ob Modifikationen oder Aktionen in dem aktuellen Feld einen Eintrag in einem weiteren damit verbundenen Feld ungültig machen können. Falls dem so ist, werden geeignete Maßnahmen getroffen, um alle beeinflussten Felder zu aktualisieren oder solche Probleme durch Setzen geeigneter Vorgabewerte zu verhindern.
  • Die Feldvervollständigungsroutine prüft dann nach Feldfehlern in Schritt 152 auf der Basis der in Schritt 150 gesetzten Vorgabewerte und dergleichen. Falls es in Schritt 152 keinen Feldfehler gibt, wird in Schritt 154 bestimmt, ob der Operator das Feld in Abwesenheit eines Feldfehlers editieren darf. Falls dem so ist oder falls ein Feldfehler in Schritt 152 gefunden wurde, editiert der Operator das Feld in Schritt 156. Falls das Editieren durch den Operator umgangen wird, geht die Steuerung direkt weiter zu einer Nacheditierverarbeitung in Schritt 158, welche im Wesentlichen die gleichen Funktionen wie der Voreditierverarbeitungsschritt 150 durchführt, außer dass die Daten speziell validiert werden können. Das Feld wird dann noch einmal in Schritt 160 auf einen Feldfehler überprüft. Falls in Schritt 160 ein Feldfehler gefunden wird, kehrt die Steuerung zu Schritt 144 zum Bearbeiten des nächsten Feldes oder ggf. zum Verlassen zurück.
  • Falls in Schritt 160 kein Feldfehler gefunden wird, wird in Schritt 162 bestimmt, ob die allgemeine Feldvalidierungsroutine von Schritt 164 (10) übersprungen werden soll. Falls dem so ist, geht die Steuerung zu Schritt 166, wo das Feld noch einmal auf einen Feldfehler überprüft wird. Falls jedoch die allgemeinen Feldvalidierungen gewünscht werden, gelangt die Steuerung zu der Routine von Schritt 164 (10). Falls in Schritt 166 kein Feldfehler gefunden wird, wird das Feld in Schritt 168 in den Transaktionspufferspeicher 97 gesichert, und der aktualisierte Feldwert wird in Schritt 170 auf den Bildschirm 20 gezeichnet. Falls der Nutzer dann wünscht, in Schritt 172 ein vorheriges Feld zu überprüfen, geht die Steuerung in Schritt 174 zu einem vorherigen Feld, und die Feldvervollständigungsroutine wird für das vorherige Feld wiederholt. Falls jedoch kein vorheriges Feld überprüft werden soll und falls in Schritt 176 bestimmt wird, dass ein weiteres Feld vorhanden ist, geht die Steuerung in Schritt 178 zum nächsten Feld, und die Feldvervollständigungsroutine wird für das nächste Feld wiederholt. Dieser Prozess wird wiederholt, bis das letzte Feld vervollständigt ist, und die Routine wird in Schritt 180 verlassen. Die Steuerung kehrt dann zu 8 zum Bearbeiten einer anderen Seite des Formulars zurück.
  • Jedes Formular kann in einem oder mehreren Modi bearbeitet werden. In dem oben beschriebenen Eingabemodus wird die Datentransaktion erzeugt und zum Datenbankserver 28 übertragen. Im Editiermodus wird jedoch beim Eingeben der ID einer speziellen Aufzeichnung diese Aufzeichnung von einer externen Datenbank 30 oder 40 in den Transaktionspufferspeicher 97 zum Editieren gelesen. Vorzugsweise wird eine Aufzeichnung der Editierungen beibehalten, um einen Prüflauf vorzusehen. Im Betrachtungsmodus wird beim Eingeben der ID einer speziellen Aufzeichnung diese Aufzeichnung in ähnlicher Weise aus einer externen Datenbank 30 oder 40 in den Transaktionspufferspeicher 97 gelesen, aber nur zur Anzeige. Schließlich kann in einem Löschmodus eine gesamte Aufzeichnung aus der Datenbank 30 oder 40 gelöscht werden, falls der Nutzer die richtige Sicherheitsfreigabe hat.
  • 10 zeigt, wie die TAS-Firmware die Felder jeder Datentransaktion validiert. Wie dargestellt, startet die Feldvalidierungsroutine in Schritt 182 und bestimmt zuerst in Schritt 184, welcher Feldtyp vorhanden ist. Falls das aktuelle Feld ein alphanumerisches Feld ist, geht die Steuerung zu Schritt 186, wo die Feldvorgaben bearbeitet werden. Es wird dann in Schritt 188 bestimmt, ob der Nutzer die für dieses Feld erlaubten Werte kennt. Falls nicht und falls Daten in dieses Feld einzusetzen sind, wird in Schritt 190 eine Einsetztabelle gesucht. Ein „?" kann durch den Operator verwendet werden, um anzuzeigen, dass er oder sie nicht die für dieses Feld erlaubten Werte kennt und die Einsetztabelle zu suchen wünscht. Eine Liste möglicher Werte wird dann aufgerufen, die zu den bisher eingetragenen Daten passen. Aus dieser Liste kann der Operator die Liste durchblättern und den Wert auswählen, der den Dateneintrag vervollständigt. Falls jedoch der Wert nicht in der Liste gefunden wird, wird in Schritt 192 ein Feldfehler erzeugt, und die Feldvalidierungsroutine wird in Schritt 194 verlassen. Falls der Wert in der Liste gefunden wird, geht die Steuerung weiter zu Schritt 200.
  • Falls dagegen in Schritt 188 bestimmt wird, dass keine Daten in das aktuelle Feld hinzugefügt (eingesetzt) werden müssen, springt die Steuerung zu Schritt 196, wo bestimmt wird, ob der aktuelle Feldtyp ein Feld ist, der einen Fall bildet, in welchem das aktuelle Feld (zusammen mit seinem Formular) mit irgendeiner Aufzeichnung irgendeiner Datei oder irgendwelcher Dateien (eine bis viele) irgendeiner Datenbank zum Zweck einer Datenverifizierung und/oder Datenextraktion verbunden werden kann. Falls dem so ist, geht die Steuerung zu Schritt 198, wo die Daten aus dem aktuellen Feld zusammen mit irgendwelchen weiteren vorher gesammelten Daten benutzt werden, um die gewünschte Verbindung herzustellen. Wie in dem oben genannten Dateneinsetzschritt 188 kann der Nutzer ein „?" eingeben, um die zum Herstellen dieser Verbindung benötigten Informationen zu bekommen. Falls die Daten für die Verbindung nicht gefunden werden, wird in Schritt 192 ein Feldfehler ausgegeben, und die Feldvalidierungsroutine wird in Schritt 194 verlassen. Falls jedoch die Daten für die Verbindung gefunden werden, wird das Feld in Schritt 200 auf Leerstellen überprüft, und ein Feldfehler wird in Schritt 192 ausgegeben, falls Leerstellen im Feld vorhanden, aber nicht erlaubt sind. Falls in dem aktuellen Feld keine Leerstellen gefunden werden, oder falls Leerstellen gefunden werden, aber erlaubt sind, wird die Feldvalidierungsroutine in Schritt 202 verlassen.
  • Falls in Schritt 184 bestimmt wird, dass das aktuelle Feld ein numerisches Feld ist, wird das Feld in Schritt 204 überprüft, um zu bestimmen, ob der Zeichensatz gültig ist. Falls dem so ist, wird erforderlichenfalls die Genauigkeit der Zahlen in Schritt 206 eingestellt, und der Bereich und Umfang der Zahlen wird in Schritt 208 überprüft, um sicherzustellen, dass die Feldeinträge den Grenzbedingungen (z.B. kein Teilen durch Null) genügen. Falls der Zeichensatz in Schritt 204 nicht gültig ist oder der Bereich und Umfang der Zahlen in Schritt 208 nicht gültig ist, wird in Schritt 210 ein Feldfehler ausgegeben, und die Datenvalidierungsroutine wird in Schritt 212 verlassen. Andernfalls wird die Feldvalidierungsroutine in Schritt 214 verlassen.
  • Falls in Schritt 184 bestimmt wird, dass das aktuelle Feld ein Datum/Zeitfeld ist, wird das Feld in Schritt 216 überprüft, ob der Zeichensatz gültig ist. Falls nicht, wird in Schritt 210 ein Feldfehler ausgegeben, und die Feldvalidierungsroutine in Schritt 212 verlassen. Andernfalls überprüft eine Routine der TAS-Firmware in Schritt 218 den Datum/Zeiteintrag, um durch Durchführen einer Bereichsüberprüfung und dergleichen zu bestimmen, ob er das korrekte Format besitzt. Falls der Datum/Zeiteintrag nicht das korrekte Format hat, wird in Schritt 210 ein Feldfehler ausgegeben, und die Feldvalidierungsroutine in Schritt 212 verlassen. Andernfalls wird in Schritt 220 bestimmt, ob das aktuelle Feld ein Datum enthält. Falls nicht, wird die Datenvalidierungsroutine in Schritt 221 verlassen. Falls dem so ist, wird das Datum in Schritt 222 überprüft, um zu sehen, ob es ein Wochenende enthält, und falls dem so ist, wird in Schritt 224 überprüft, ob ein Wochenenddatum eine akzeptable Antwort auf dieses Feld ist. Es wird dann in Schritt 226 bestimmt, ob die Kalenderdatei zu überprüfen ist, und falls dem so ist, wird in Schritt 228 die Kalenderdatei überprüft, um zu sehen, ob das Datum gültig ist (z.B. kein 30. Februar und dergleichen). Schließlich wird in Schritt 230 bestimmt, ob ein Warndatum überschritten worden ist, und falls dem so ist, wird in Schritt 210 ein Feldfehler ausgegeben, bevor die Feldvalidierungsroutine in Schritt 212 verlassen wird. Sonst wird die Feldvalidierungsroutine in Schritt 221 verlassen.
  • Der Fachmann wird erkennen, dass, um die Sicherheit zu gewährleisten, die TAS-Firmware auch ein Sicherheitsformular für eine Passworteingabe durch den Nutzer bereitstellen kann. Das Sicherheitsformular und die ID des Transaktionseingabegeräts 12 werden dann verschlüsselt und an den zu dem speziellen Datentransaktionsassembler 18 gehörenden Datenbankserver 28 übertragen. Die Transaktionssteuerung 36 dieses Datenbankservers 28 wird dann als Transaktionssteuerung für diesen Datentransaktionsassembler 18 arbeiten und Passwörter und dergleichen während des Betriebs überprüfen, um sicherzustellen, dass die Datensicherheit nicht verletzt wird. Die Datenbankserver 28 können einen Datentransaktionsassembler 18 deaktivieren, falls eine nicht-autorisierte Benutzung versucht wird. Auf diese Weise kann nur die richtige Person das jeweilige Menü betrachten. Natürlich können eine unterschiedliche Anzahl von Sicherheitsstufen und unterschiedliche Ausführungsmenüs präsentiert werden, falls erwünscht, alle unter der Steuerung der Transaktionssteuerung 36.
  • C. Datenbankserver 28
  • Wie oben erwähnt, kann der Datenbankserver 28 als ein Vehikel zum Trennen von durch den Datentransaktionsassembler 18 erzeugten Datentransaktionen in deren Bestandteile wirken, die dann direkt in eine oder mehrere Datenbanken 30 und 40 gespeichert werden können. Mit anderen Worten zerlegt der Datenbankserver 28 die ursprüngliche Datentransaktion in Datentransaktionen für viele verschiedenen Dateien zum Aktualisieren von Aufzeichnungen in den Dateien und dergleichen. Auch kann der Datenbankserver 28 virtuell sein sowie real, in einer einzelnen Maschine oder in mehreren Maschinen existieren, als Ganzes oder teilweise.
  • Im Allgemeinen wickelt der Datenbankserver 28 beliebige und alle empfangenen Datentransaktionen ab, verarbeitet Daten in den Datentransaktionen, erzeugt oder startet durch eine Datentransaktionen angeforderte Prozesse oder Berichte, und zerlegt die empfangenen Datentransaktionen in alle Sorten von Datentransaktionen, die durch die ursprüngliche Datentransaktion hervorgebracht würden. Der Datenbankserver 28 kann auch Werte in existierenden Aufzeichnungen aktualisieren und kann zu einem Prozess zum Bearbeiten von Werten in den Aufzeichnungen schalten, falls notwendig. Auf diese Weise kann eine einzelne Datentransaktion Aktionen definieren, die eine Aktualisierung mehrerer Dateien bewirken. Der Datenbankserver 30 behandelt auch Anfragen von dem Datentransaktionsassembler 18 und bearbeitet sie bei Bedarf. Solche Anfragen können Dateneingabe/ausgabeanforderungen, Datenverriegelung und -freigabe, Berichtverarbeitungen und Anfragen nach neuen Formularen oder Menüs enthalten. Der Fachmann wird erkennen, dass der Datenbankserver 28 die mehrdeutigen Beziehungen, die zwischen dem Nutzer und dem System der Erfindung existieren, die mehrdeutigen Präsentationen zu dem Benutzer und den Dateien in den Datenbanken 30 und 40, die mehrdeutigen Datentransaktionen zu den Hilfsaufzeichnungen, sowie die Aktualisierungen und Sendungen, wie sie für diverse Computerdateien zahlreicher Datenbanken 40 erforderlich sein können, über das Transaktionseingabegerät 12 und die Datenbankserver 28 beibehält.
  • Wie oben erwähnt, sammelt der Transaktionspufferspeicher 97 die zu dem dem Nutzer über den Bildschirm 20 präsentierten Formular gehörenden Transaktionsdaten. Der Transaktionspufferspeicher 97 ist das Bild der Datentransaktion mit geeigneten Stellen für jedes separate Datenelement. Die Inhalte des Transaktionspufferspeichers 97 werden dem Datenbankserver 28 über die Modemschnittstelle 78 oder über den RF-Transceiver 90 übertragen, mit einem vorangestellten Satz von Codes 44 (2), die den Typ der Transaktion identifizieren, gefolgt von einer Kette von Prozessidentifikatoren für den Datenbankserver 28 zur Verwendung in seinen Programmen, beim Erzeugen zusätzlicher Datentransaktionen und beim Speichern der Daten und aller Hilfstransaktionen in der Datenbank 30 in dem normalen Dateiformat der Datenbank 30. Mit anderen Worten bestimmt der Datenbankserver 28, welche Art von Aktion vorzunehmen ist, basierend auf der Art der empfangenen Datentransaktion, „zerlegt" gegebenenfalls eine Datentransaktion in mehrere weitere Datentransaktionen zur Übertragung an weitere Datenbanken, und setzt die Daten für seine zugehörige Datenbank 30 in das geeignete Dateiformat um. Natürlich unterscheidet sich jeder Datenbankserver 28 von jedem anderen Datenbankserver 28, da er unterschiedliche Arten von Datentransaktionen abwickelt, unterschiedliche Betriebssystemeigenschaften hat und unterschiedliche Dateiumsetzungen entsprechend den Dateiformaten seiner zugehörigen Datenbank 30 vornimmt. Zum Beispiel kann der Datenbankserver 28 unter einem Betriebssystem wie beispielsweise Unix, Windows oder DOS arbeiten, wobei das Betriebssystem dem Datenbankserver 28 Verbindungen zu den normalerweise durch ein Betriebssystem behandelten Hardwarefunktionen bereitstellt. Vorzugsweise arbeitet der Datenbankserver 28 auch mit Menüs, Formularen und dergleichen in der gleichen Weise wie der Datentransaktionsassembler 18, außer dass er die Datentransaktionen in seiner zugehörigen Datenbank 30 als Transaktionsdateien speichert.
  • Wie gerade erwähnt, besteht der Zweck des Datenbankservers 28 darin, die Datentransaktion vom Datentransaktionsassembler 18 zu bearbeiten und die Datentransaktion entweder in alle ihre zugehörigen Bestandteile zur Speicherung zu zerlegen, die Speicherung von Positionen aus dem Zerlegungsprozess abzuwickeln, die Datentransaktion selbst für Referenzzwecke zu speichern, und als Lieferant von Informationen, Menüs und/oder Formularen zu dem Datentransaktionsassembler 18 als Reaktion auf Anfragen während der Erzeugung der Datentransaktion und während des Herunterladens von Parametern für Menüs und Formulare zu dem Datentransaktionsassembler 18 zu wirken. Falls erwünscht, kann der Datenbankserver 28 auch dem Datentransaktionsassembler 18 Informationen zurückliefern, nachdem eine Datentransaktion empfangen ist, oder kann einen Prozess initiieren, der zur Abgabe eines Berichts, von Daten oder eines Menüs an den Datentransaktionsassembler 18 führt. Außerdem können der Datenbankserver 28 und der Datentransaktionsassembler 18 sich an der gleichen Maschine befinden, solange das Betriebssystem des Datenbankservers die TAS-Firmware erkennt oder die TAS-Firmware zur Benutzung mit dem Betriebssystem des Datenbankservers 28 modifiziert ist.
  • D. Anwendungen der Erfindung
  • Wie oben skizziert, enthält die vorliegende Erfindung einen Punkt eines Transaktionsgeräts, das ein oder mehrere Menüs einem Nutzer präsentiert, aus denen eine Option ausgewählt wird. Ein auf die ausgewählte Option maßgeschneidertes Formular erscheint zum Leiten des Nutzers durch die Dateneingabe. Die vollen Einzelheiten der Datentransaktion werden erfasst, wenn sie durch den Nutzer eingegeben werden. Eine Modemwechselwirkung mit einer zentralen Datenbank oder einer Nutzerdatenbank erlaubt eine Wechselwirkung zur Hilfe und zur Validierung bestimmter eingegebener Daten. Die komplette Transaktion wird dann an die zentrale oder die Nutzerdatenbank zur weiteren Verarbeitung und Speicherung übertragen. Die Dateneingabe kann auch über eine Magnetstreifenkarte oder eine Smart Card, aus von irgendeiner über die Modemschnittstelle zugänglicher Datenbank empfangenen Daten oder andere bekannte Verfahren vorgesehen werden.
  • Ein Datentransaktionssystem dieser Art kann für viele Anwendungen verwendet werden. Zum Beispiel ist in einer ersten, derzeit bevorzugten Anwendung das Datentransaktionseingabegerät 12 in einem Arztbüro zum Eintragen von Patientendaten positioniert. Bei dieser Anwendung identifiziert eine Magnetstreifenkarte den Patienten, eine Smart Card identifiziert den Arzt, und die Modemverbindung erlaubt die Eingabe und Übertragung der gesamten Forderungstransaktion an die Versicherungsunternehmen zur Bearbeitung. Die Patientendatensätze können auch automatisch aktualisiert werden, und Rezepte können erzeugt, dem Patienten gegeben, an den Apotheker übertragen und an den Zahlenden und den Patientendatensatz übertragen werden. Patientenanweisungen, wie beispielsweise spezielle Diäten, Übungen, Behandlungen, Termine und dergleichen, können aus dem Datentransaktionsformular am Zentralrechner des Arztes gedruckt werden. Außerdem ermöglicht ein Videobild, das über einen Videoeingang 74 bereitgestellt und durch eine Datenkompressionsschaltung 75 komprimiert wird, das Anhängen eines Bildes eines medizinischen Zustandes wie beispielsweise eines Ausschlages an die Datentransaktion (in dem sonstigen Bearbeitungsfeld 50 von 2) zur Übertragung mit dem Patientennamen, dem Datum, einer Beschreibung der Patientensymptome und dergleichen. In analoger Weise kann ein aufgezeichneter Herzschlag an das Ende der Datentransaktion zur Übertragung mit den Patientendaten angehängt werden.
  • Das Datentransaktionseingabesystem der Erfindung hat auch zahlreiche Heimanwendungen. In einer bevorzugten Heimanwendung wird das Transaktionseingabegerät zum Durchführen von Banküberweisungen von zu Hause benutzt. In diesem Fall würden Formulare durch die Bank für verschiedene Arten von Banktransaktionen bereitgestellt werden. Diese Formulare würden dann auf die Transaktionseingabevorrichtung im Haus des Kunden heruntergeladen und beim erzeugen und Übertragen von Datentransaktionen an den Bankcomputer für eine Offline-Bearbeitung verwendet werden.
  • Als ein weiteres Beispiel kann der Benutzer eine 900er Nummer anrufen, um eine Schnittstelle zu einer zentralen Datenbank zu bekommen, die Codes in den TAS- PROM 95 oder den Formular/Menü-Speicher 96 herunterlädt, die die Erzeugung von Infrarotsignalen bei bestimmten Frequenzen ermöglichen. Der Nutzer muss nur die Art, die Marke und das Modell irgendeines zu steuernden elektronischen Geräts bestimmen, um den gewünschten Code zu erhalten. Dann würde der Nutzer, um irgendein elektronisches Gerät zu Hause zu betreiben, durch Eingabeaufforderungen von Menüs geleitet werden. Das Transaktionseingabegerät 12 würde dann ein Infrarotsignal über (einen) Infrarot-Transceiver 80 aussenden, um das elektronische Gerät zu betreiben, einen Anruf über ein Modem für ein Fernsehprogramm initiieren, oder rechtzeitige Anfragen zur Videoaufzeichnung zum Ein- und Ausschalten des Videorecorders initiieren, und dergleichen
  • Für andere Hausanwendungen kann das Transaktionseingabegerät 12 auch über Eingabeaufforderungen von Menüs Sequenzen zum Ein- und Ausschalten verschiedener Haushaltsgeräte einschließlich Alarmsysteme, Kaffeemaschinen und dergleichen initiieren. In diesem Modus kann das Transaktionseingabegerät 12 ein RF- oder Infrarot-Signal empfangen, das anzeigt, dass ein Einbruch- oder Feueralarm aktiviert worden ist, und gegebenenfalls ein Formular zum Anrufen der Polizei oder Feuerwehr aufrufen. Ein Aufrufen des Transaktionseingabegeräts 12 kann dann benutzt werden, um den Einbruch- oder Feueralarm durch Verändern eines Feldes in einem Formular, das dem Infrarot-Transceiver 80 oder dem RF-Transceiver 90 befiehlt, ein geeignetes Steuersignal an die Alarmvorrichtung zu senden, auszuschalten. Dieses Merkmal kann auch von einem Autotelefon über eine Ferninitiierung des diese Funktion durchführenden Formulars veranlasst werden.
  • Das Transaktionseingabegerät 12 kann auch alle Haushaltstelefonnutzungen sowie die Steuerung des Anrufbeantworters und das Unterhalten eines Telefontransaktionsprotokolls steuern. Der Nutzer kann auch Haushaltsrechnungen durch Vervollständigen eines geeigneten Formulars und Übertragen des Formulars an einen Zahlungsempfänger wie beispielsweise eine Kreditkartenfirma, eine Bank oder dergleichen, bezahlen. Kurz gesagt, ermöglicht es das Transaktionseingabegerät dem Eigentümer, eine entfernte Datenbank ohne Erwerb eines herkömmlichen Computersystems mit einem Betriebssystem und dergleichen anzuschließen.
  • Für persönliche Anwendungen kann das Transaktionseingabegerät 12 benutzt werden, um eine Faxübertragung zu initiieren, Telefonlisten mit automatischem Anruf bei Auswahl bereitzustellen, Spesenkonten, persönliche Terminplanung, Steuererfassung, und dergleichen bereitzustellen, und einen direkten Zugriff auf Reiseinformationen bereitzustellen. Zum Beispiel kann der Datenbankserver 28 ein Flugreservierungssystem sein. Bei dieser Anwendung ruft der Datentransaktionsassembler 18 das Modem des Flugreservierungssystems an, wenn der Benutzer eine Dateneingabe in ein Flugreservierungsformular anfordert, das am Transaktionseingabegerät 12 des Nutzers verfügbar ist. das Datentransaktionsgerät 18 stellt eine Modemverbindung zum Datenbankserver 28 her, und das Betriebssystem des Datenbankservers 28 wählt Schnittstellenprogramme für die Flugreservierungssysteme aus. Die Schnittstellenprogramme rufen die Datenbankserver 38 der Fluglinien an, rufen das geeignete Menü von der Datenbank 40 ab, und senden das Menü an den Datentransaktionsassembler 18. Der Datentransaktionsassembler 18 zeigt dann das Flugreservierungsmenü auf seinem Bildschirm 20 zur Vervollständigung und Rückübertragung an den Flugreservierungs-Datenbankserver zur Bearbeitung an. Die Magnetstreifenkarte kann benutzt werden, um Kreditkartenzahlungsinformationen bereitzustellen, und kann aktualisiert werden, indem der Datentransaktionsassembler 18 auf die Magnetstreifenkarte schreiben kann. Der Nutzer kann auch auf Vielfliegerclub- und Meilendaten, spezielle Angebote in Hotels, Kreuzfahrten und andere Reisen, und dergleichen zugreifen.
  • In einer weiteren Heim- (oder Geschäfts-) Anwendung kann das Transaktionseingabegerät 12 benutzt werden, um herkömmliche Telefonmail-Grüße zu beseitigen, indem das Transaktionseingabegerät 12 des Anrufers einen Satz von sichtbaren Menüs aus dem Sprachmail-Menü der angerufenen Partei einlesen kann, sodass die anrufende Partei die gewünschten Optionen mittels eines sichtbaren Menüs anstelle eines sprachlichen Menüs auswählen kann. Mit anderen Worten müsste der Anrufer nicht durch die Litanei von sprachlichen Telefonmail-Optionen warten, bevor er eine Auswahl trifft, und könnte die gewünschte Auswahl direkt von seinem oder ihrem eigenen Display machen. Dies würde durch Auswählen eines Prozesses aus dem Menü des Transaktionseingabegeräts 12 erreicht werden, das ein „sichtbares" Menü erzeugt. Wenn ein solcher Prozess ausgewählt wird, stellt die Telefonelektronik 14 oder die Modemschnittstelle 78 eine Telefonverbindung zu einem entfernten Telefon mail-System her. Wenn die Verbindung einmal hergestellt ist, sendet der Datentransaktionsassembler 18 eine Datenanfrage für eine visuelle Darstellung des Telefonmail-Menüs des entfernten Telefonmail-Systems über die Telefonverbindung an das entfernte Telefonmail-System. Ein Datenstrom mit der visuellen Darstellung des Telefonmail-Menüs von dem entfernten Telefonmail-System wird dann über die Telefonverbindung zurückgegeben und in dem Formular/Menü-Speicher 96 gespeichert und dem Bildschirm 20 des Transaktionseingabegeräts 12 zur Auswahl mittels der hier beschriebenen Techniken präsentiert. Wenn die Menüpunkte aus dem „sichtbaren" Sprachmail-Menü ausgewählt werden, erzeugt der Datentransaktionsassembler 18 eine Datentransaktion, die angibt, welcher Menüpunkt ausgewählt wurde, und sendet die Datentransaktion über die Telefonverbindung an das entfernte Telefonmail-System. Basierend auf der Menüauswahl gibt das entfernte Telefonmail-System dann einen Datenstrom mit einer visuellen Darstellung des nächsten Telefonmail-Menüs über die Telefonverbindung zur Speicherung in dem Formular/Menü-Speicher 96 und zur Anzeige auf dem Bildschirm 20 zurück. Dieser Prozess wird wiederholt, bis die anrufende Partei eine Nachricht hinterlassen muss oder die angerufene Partei erreicht wird. Ein solches System wäre insbesondere hilfreich zur Wechselwirkung mit Sprachmail-Systemen wie beispielsweise in Regierungsbüros, wo zahlreiche Optionen zur Auswahl angeboten werden.
  • Der Fachmann wird erkennen, dass die Erfindung aufgrund ihrer Fähigkeit, Anwendungen auf Formulare zu verallgemeinern, sodass kein Code geschrieben werden muss, um eine bestimmte Funktion zu implementieren, einzigartig ist. Falls jedoch ein Code benötigt wird oder falls Multimedia-Daten Teil einer Datentransaktion sein sollen, können sie an ein Formular, das gespeichert wird, als ein Parameterstrom in einem Strom von Daten angehängt werden. Auch kann, obwohl das Transaktionseingabegerät 12 als eine Computer-Workstation beschrieben worden ist, es ebenso in Zusammenhang mit einem optionalen Offline-Speichergerät als eine in sich geschlossene Workstation- und Datenbankeinheit unabhängig von herkömmlichen Betriebssystemen benutzt werden. Das Transaktionseingabegerät 12 kann auch mit einem zusätzlichen optionalen Steckanschluss wie ein Netzwerkserver oder wie eine Nutzerschnittstelle in einer Netzwerkdockstation benutzt werden.
  • Der Fachmann wird auch erkennen, dass die obigen Ausführungen die derzeit bevorzugten Ausführungsbeispiele der Erfindung erläutert hat, aber dass zahlreiche alternative Ausführungsbeispiele ohne Verlassen der neuen Lehren und Vorteile der Erfindung möglich sind. Demgemäß sollen alle solchen Modifikationen im Schutzumfang der anhängenden Ansprüche enthalten sein.

Claims (15)

  1. Datentransaktionsgerät (12) zum Bereitstellen von Datentransaktionen an einen entfernten Datenbankserver (28), der zum Speichern von Datensätzen in einer zugehörigen Datenbank (30) ausgebildet ist, mit einer Dateneingabevorrichtung (54, 58, 60, 70, 78, 80, 89, 90); einer Anzeige (20); und einem Datentransaktionsassembler (18) mit einem Mikroprozessor (94) und einem Formularspeicher (96), dadurch gekennzeichnet, dass der Datentransaktionsassembler ein formulargesteuertes Betriebssystem (7), das ausgebildet ist, um den Mikroprozessor so zu steuern, dass er der Anzeige wenigstens ein in dem Formularspeicher gespeichertes Formular als Datenströme präsentiert, wobei das Formular eine Dateneingabe eines gewünschten Transaktionstyps in die Dateneingabevorrichtung durch einen Benutzer auslöst, das wenigstens eine Formular wenigstens eine für den gewünschten Transaktionstyp spezifische Eingabeaufforderung (46) enthält, und eine Einrichtung zum Formatieren wenigstens der Dateneingabe durch den Benutzer als Reaktion auf die wenigstens eine Eingabeaufforderung in eine Datentransaktion zur Übertragung an den entfernten Datenbankserver enthält.
  2. Gerät nach Anspruch 1, bei welchem das formulargesteuerte Betriebssystem einen Transaktionsassemblerserver (TAS) aufweist, der ausgebildet ist, um die Datenströme dem Mikroprozessor zur Anzeige auf der Anzeige zu präsentieren, und die Formatierungseinrichtung einen Transaktionspuffer (97) aufweist, der ausgebildet ist, um die Dateneingabe in die Dateneingabevorrichtung durch den Benutzer als Reaktion auf die wenigstens eine Eingabeaufforderung zu speichern, bis die Datentransaktion zur Übertragung an den entfernten Datenbankserver abgeschlossen ist.
  3. Gerät nach Anspruch 2, bei welchem der Formularspeicher ferner ausgebildet ist, um mehrere Menüs zur Präsentation an den Benutzer zu speichern, um den Benutzer zum Navigieren zu dem wenigstens einen Formular Optionen aus einem der Menüs mittels der Dateneingabevorrichtung auswählen zu lassen.
  4. Gerät nach Anspruch 3, bei welchem das eine Menü ausgebildet ist, um den Benutzer mit einer Option des Auswählens wenigstens eines des wenigstens einen Formulars, eines weiteren Menüs und eines Prozesses zum Bearbeiten von Daten in einer Datentransaktion zu versehen.
  5. Gerät nach Anspruch 4, bei welchem das eine Menü weiter ausgebildet ist, um eine Fernbearbeitungsoption zu enthalten, und das Gerät ausgebildet ist, um, wenn ein Benutzer die Fernbearbeitungsoption aus dem einen Menü auswählt, Datenströme zu dem Formularspeicher herunterzuladen, wobei die Datenströme Steuerdaten zum Ausführen von durch die ausgewählte Fernbearbeitungsoption bestimmten Optionen enthalten.
  6. Gerät nach Anspruch 1, ferner mit einer Telefonschaltung (14) und einem Modusschalter (66), der zum wahlweisen Verbinden der Telefonschaltung mit einem Telefonnetz (22) in einem Telefonmodus und des Datentransaktionsassemblers mit dem entfernten Datenbankserver in einem Datentransaktionseingabemodus ausgebildet ist.
  7. System zum Eingeben von Transaktionsdaten in eine Datenbank, mit dem Datentransaktionsgerät nach Anspruch 1; und einem entfernten Datenbankserver (28), der zu der Datenbank gehört, und ausgebildet ist, die Datentransaktion zu empfangen, wobei der Datenbankserver ausgebildet ist, aus der Datentransaktion wenigstens eine zusätzliche Datentransaktion mit Daten für einen speziellen Datensatz in der Datenbank in Abhängigkeit von dem gewünschten Transaktionstyp zu erzeugen, und ausgebildet ist, um die wenigstens eine zusätzliche Datentransaktion in dem speziellen Datensatz zu speichern.
  8. System nach Anspruch 7, ferner mit mehreren Datenbanken (40), wobei der entfernte Datenbankserver weiter ausgebildet ist, um aus der Datentransaktion in Abhängigkeit von dem gewünschten Transaktionstyp wenigstens eine zusätzliche Datentransaktion mit Daten für einen speziellen Datensatz in einer der mehreren Datenbanken neben der Datenbank zu erzeugen, und ausgebildet ist, die wenigstens eine zusätzliche Datentransaktion in dem speziellen Datensatz zu speichern.
  9. System nach Anspruch 8, bei welchem das formulargesteuerte Betriebssystem eine Einrichtung (78) zum Senden einer Datenanforderung an den entfernten Datenbankserver enthält und der entfernte Datenbankserver eine Einrichtung zum Zugreifen auf Daten entsprechend der Datenanforderung in wenigstens einer der Datenbanken und eine Einrichtung zum Zurückgeben von Daten als Reaktion auf die Datenanforderung, einer Liste von Optionen zur Auswahl durch den Benutzer, einen aus den in der Datenanforderung enthaltenen Daten berechneten Wert, und einen Datenbericht enthält.
  10. System zum Eingeben von Transaktionsdaten in eine Datenbank, mit dem Datentransaktionsgerät (12) nach Anspruch 1; einem Übertragungsmedium (26); und einem Server (28), der mit dem Datentransaktionsgerät über das Übertragungsmedium verbunden ist, das den Server Datentransaktionen von dem Datentransaktionsgerät, die ein einem durch den Server transportierten Transaktionstyp spezifisches Formular (42) enthalten, bearbeiten lässt, indem die Datentransaktion einem weiteren Server (38) zum Bearbeiten kommuniziert werden und/oder indem die Datentransaktionen bearbeitet und wenigstens eines von zusätzlichen Formularen, von Antworten auf Eingabeaufforderungen (46) in den für den durch den Server zugeführten Transaktionstyp spezifischen Formular und von bearbeiteten Daten zu dem Datentransaktionsgerät als Datentransaktionen zurückgegeben werden.
  11. Verfahren zum Eingeben von Transaktionsdaten in einen entfernten Datenbankserver (28), der ausgebildet ist, um Datensätze in einer zugehörigen Datenbank (30) zu speichern, mittels eines Datentransaktionsgeräts (12) mit den Schritten: Laden wenigstens eines vorbestimmten Formulars mit wenigstens einer Eingabeaufforderung (46), das für einen gewünschten Transaktionstyp spezifisch ist, in einen Formularspeicher (96) eines formulargesteuerten Betriebssystems des Datentransaktionsgeräts, wobei das formulargesteuerte Betriebssystem einen Mikroprozessor (94) des Datentransaktionsgeräts steuert, um Eingabedaten des gewünschten Transaktionstyps von einem Benutzer anzunehmen; Präsentieren des wenigstens einen vorbestimmten Formulars durch das formulargesteuerte Betriebssystem auf einer Anzeige (20) zum Auslösen einer Dateneingabe des gewünschten Transaktionstyps von dem Benutzer; Eingeben von Daten durch den Benutzer als Reaktion auf die wenigstens eine Eingabeaufforderung mittels einer Dateneingabevorrichtung (54, 58, 60, 70, 78, 80 89, 90); Formatieren wenigstens der Eingabedaten von dem Benutzer in eine Datentransaktion zur Übertragung an die Datenbank; und Übertragen der Datentransaktion an die Datenbank.
  12. Verfahren nach Anspruch 1, mit den zusätzlichen Schritten: Empfangen der Datentransaktion an der Datenbasis; Erzeugen wenigstens einer zusätzlichen Datentransaktion mit Daten für einen speziellen Datensatz in der Datenbank aus der Datentransaktion in Abhängigkeit von dem gewünschten Transaktionstyp; und Speichern der wenigstens einen zusätzlichen Datentransaktion in dem speziellen Datensatz.
  13. Verfahren nach Anspruch 12, mit den zusätzlichen Schritten: Erzeugen wenigstens einer zusätzlichen Datentransaktion mit Daten für einen speziellen Datensatz in einer zusätzlichen Datenbank (40) verschieden von der Datenbank aus der Datentransaktion in Abhängigkeit von dem gewünschten Transaktionstyp; und Speichern der wenigstens einen zusätzlichen Datentransaktion in dem speziellen Datensatz in der zusätzlichen Datenbank.
  14. Verfahren nach Anspruch 11, mit den zusätzlichen Schritten: Senden einer Datenanforderung an einen Datenbankserver (28) der Datenbank; und Zugreifen auf Daten entsprechend der Datenanforderung in der Datenbank und Zurückgeben von Daten als Reaktion auf die Datenanforderung, einer Liste von Optionen zur Auswahl durch den Benutzer, eines aus den in der Datenanforderung enthaltenen Daten berechneten Werts und eines Datenberichts durch den Datenbankserver.
  15. Verfahren nach Anspruch 11, mit den zusätzlichen Schritten: Speichern mehrerer Menüs zur Präsentation an den Benutzer; und Auswählen des wenigstens einen Formulars aus einem der Menüs mittels der Dateneingabevorrichtung durch den Benutzer.
DE69636128T 1995-05-19 1996-05-16 Telefon/transaktionseingabegerät und system zum eingeben von transaktionsdaten Expired - Lifetime DE69636128T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US446546 1982-12-03
US08/446,546 US5805676A (en) 1995-05-19 1995-05-19 Telephone/transaction entry device and system for entering transaction data into databases
PCT/US1996/007015 WO1996037070A1 (en) 1995-05-19 1996-05-16 Telephone/transaction entry device and system for entering transaction data into databases

Publications (2)

Publication Number Publication Date
DE69636128D1 DE69636128D1 (de) 2006-06-14
DE69636128T2 true DE69636128T2 (de) 2006-12-28

Family

ID=23772991

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69636128T Expired - Lifetime DE69636128T2 (de) 1995-05-19 1996-05-16 Telefon/transaktionseingabegerät und system zum eingeben von transaktionsdaten

Country Status (4)

Country Link
US (3) US5805676A (de)
EP (2) EP0886954B1 (de)
DE (1) DE69636128T2 (de)
WO (1) WO1996037070A1 (de)

Families Citing this family (118)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6748318B1 (en) 1993-05-18 2004-06-08 Arrivalstar, Inc. Advanced notification systems and methods utilizing a computer network
US6278936B1 (en) * 1993-05-18 2001-08-21 Global Research Systems, Inc. System and method for an advance notification system for monitoring and reporting proximity of a vehicle
US6749586B2 (en) * 1994-11-25 2004-06-15 I-Flow Corporation Remotely programmable infusion system
FI99071C (fi) * 1995-02-15 1997-09-25 Nokia Mobile Phones Ltd Menetelmä sovellusten käyttämiseksi matkaviestimessä ja matkaviestin
US6771981B1 (en) 2000-08-02 2004-08-03 Nokia Mobile Phones Ltd. Electronic device cover with embedded radio frequency (RF) transponder and methods of using same
US20070299808A1 (en) * 1995-05-19 2007-12-27 Cyberfone Technologies, Inc. Telephone/Transaction Entry Device and System for Entering Transaction Data into Databases
US6973477B1 (en) * 1995-05-19 2005-12-06 Cyberfone Technologies, Inc. System for securely communicating amongst client computer systems
US20050119992A1 (en) * 1995-05-19 2005-06-02 Martino Rocco L. Telephone/transaction entry device and system for entering transaction data into databases
US6044382A (en) * 1995-05-19 2000-03-28 Cyber Fone Technologies, Inc. Data transaction assembly server
US7334024B2 (en) * 1995-05-19 2008-02-19 Cyberfone Technologies, Inc System for transmission of voice and data over the same communications line
GB2305821B (en) * 1995-06-06 2000-02-23 Hitachi Telecomm Tech Telephone terminal and telephone exchange system housing the terminal
US6003007A (en) * 1996-03-28 1999-12-14 Dirienzo; Andrew L. Attachment integrated claims system and operating method therefor
US9619841B2 (en) 1996-03-28 2017-04-11 Integrated Claims Systems, Llc Systems to assist in the creation, transmission, and processing of health insurance claims
US6266328B1 (en) 1996-08-26 2001-07-24 Caritas Technologies, Inc. Dial up telephone conferencing system controlled by an online computer network
US5978840A (en) * 1996-09-26 1999-11-02 Verifone, Inc. System, method and article of manufacture for a payment gateway system architecture for processing encrypted payment transactions utilizing a multichannel, extensible, flexible architecture
US5978833A (en) * 1996-12-31 1999-11-02 Intel Corporation Method and apparatus for accessing and downloading information from the internet
US6169734B1 (en) 1996-12-31 2001-01-02 Mci Communications Corporation Internet phone set
US7447738B1 (en) * 1997-03-14 2008-11-04 International Business Machines Corporation Component download selection mechanism for web browsers
US6850890B1 (en) * 1997-08-12 2005-02-01 Roger R Roff System and method for reinforcing regular chiropractic treatment
US7536309B1 (en) 1997-11-12 2009-05-19 I-Flow Corporation Method and apparatus for monitoring a patient
US7487101B1 (en) 1997-11-12 2009-02-03 I-Flow Corporation Method and apparatus for monitoring a patient
NZ504578A (en) * 1997-11-12 2003-11-28 I Flow Corp Method and apparatus for monitoring a patient
JP3055514B2 (ja) * 1997-12-05 2000-06-26 日本電気株式会社 電話回線用音声認識装置
US6295342B1 (en) * 1998-02-25 2001-09-25 Siemens Information And Communication Networks, Inc. Apparatus and method for coordinating user responses to a call processing tree
US6473805B2 (en) * 1998-06-08 2002-10-29 Telxon Corporation Method and apparatus for intergrating wireless and non-wireless devices into an enterprise computer network using an interfacing midware server
US6344968B2 (en) * 1998-06-24 2002-02-05 Samsung Electronics Co., Ltd. Controller for electronic goods
IL127569A0 (en) 1998-09-16 1999-10-28 Comsense Technologies Ltd Interactive toys
US6607136B1 (en) 1998-09-16 2003-08-19 Beepcard Inc. Physical presence digital authentication system
JP2002527012A (ja) 1998-10-02 2002-08-20 コムセンス・テクノロジーズ・リミテッド コンピュータとの相互作用のためのカード
US7415102B2 (en) * 1999-01-22 2008-08-19 Pointset Corporation Method and apparatus for setting programmable features of an appliance
US7232064B1 (en) * 1999-01-29 2007-06-19 Transcore, Inc. Digital video audit system
US6745177B2 (en) * 1999-04-09 2004-06-01 Metro One Telecommunications, Inc. Method and system for retrieving data from multiple data sources using a search routing database
AU762775B2 (en) * 1999-04-26 2003-07-03 Ronald Katz Point of sale terminal for the visually impaired
US7069226B1 (en) 1999-07-07 2006-06-27 Synetic, Incorporated Prescription data processing system for determining new therapy starts
WO2001004821A1 (en) * 1999-07-13 2001-01-18 Hogan Brian F Method and apparatus for settling claims between health care providers and third party payers using a smart card id card
US6973435B1 (en) 1999-07-13 2005-12-06 Sioufi Habib A Method and system for ordering services or products, including prescriptions
US20010027439A1 (en) * 1999-07-16 2001-10-04 Holtzman Henry N. Method and system for computerized form completion
WO2001009863A1 (en) 1999-07-31 2001-02-08 Linden Craig L Method and apparatus for powered interactive physical displays
WO2001013315A1 (fr) * 1999-08-16 2001-02-22 Fujitsu Limited Appareil de transaction automatique
US7062544B1 (en) * 1999-09-27 2006-06-13 General Instrument Corporation Provisioning of locally-generated prompts from a central source
US8019609B2 (en) 1999-10-04 2011-09-13 Dialware Inc. Sonic/ultrasonic authentication method
US7280970B2 (en) * 1999-10-04 2007-10-09 Beepcard Ltd. Sonic/ultrasonic authentication device
US6987756B1 (en) * 1999-10-07 2006-01-17 Nortel Networks Limited Multi-mode endpoint in a communication network system and methods thereof
US6876991B1 (en) 1999-11-08 2005-04-05 Collaborative Decision Platforms, Llc. System, method and computer program product for a collaborative decision platform
US6460028B1 (en) * 1999-12-03 2002-10-01 T4Mupj2, Llc System and method for data organization
US6816724B1 (en) * 1999-12-28 2004-11-09 Nokia Corporation Apparatus, and associated method, for remotely effectuating a transaction service
AU780943B2 (en) * 1999-12-30 2005-04-28 International Business Machines Corporation Method of payment by means of an electronic communication device
WO2001059569A2 (en) * 2000-02-09 2001-08-16 Apriva, Inc. Communication systems, components, and methods with programmable wireless devices
US7788339B1 (en) * 2000-03-02 2010-08-31 Qwest Communications International Inc. System and method for automated download of multimedia files
US6335859B1 (en) * 2000-03-13 2002-01-01 Compal Electronics, Inc. Optical disk drive assembly having a control panel mounted movably thereon
CA2404286A1 (en) * 2000-03-24 2002-09-24 Sanae Sakamoto Processing apparatus and method for electronic document
US6405061B1 (en) 2000-05-11 2002-06-11 Youngbo Engineering, Inc. Method and apparatus for data entry in a wireless network access device
KR100767513B1 (ko) 2000-06-07 2007-10-17 사이버폰 테크놀러지, 인크. 클라이언트 컴퓨터 시스템과 안전하게 통신하기 위한 시스템
EP1180741A3 (de) * 2000-08-15 2004-01-02 Rohm And Haas Company Flexibles System und Verfahren zur Standardisierung von Datenflüssen und Entscheidungsfindungen, die mehrere Geschäftsprozesse übergreifen
US8516047B2 (en) 2000-11-06 2013-08-20 Rick Castanho System and method for service specific notification
AU2002230648A1 (en) * 2000-11-06 2002-05-15 Envoy Worlwide, Inc. System and method for service specific notification
US20020069057A1 (en) * 2000-12-05 2002-06-06 Kapust Gregory J. Methods for peer to peer sharing of voice enabled document templates
US9219708B2 (en) 2001-03-22 2015-12-22 DialwareInc. Method and system for remotely authenticating identification devices
US7127679B2 (en) * 2001-06-29 2006-10-24 Softrek, Inc. Method for generating and navigating a plurality of menus using a database and a menu template
US7119832B2 (en) 2001-07-23 2006-10-10 L-3 Communications Mobile-Vision, Inc. Wireless microphone for use with an in-car video system
JP2003046500A (ja) * 2001-08-03 2003-02-14 Nec Corp 個人情報管理システム及び個人情報管理方法、並びに情報処理サーバ
US6704193B2 (en) * 2001-12-11 2004-03-09 Koninklijke Philips Electronics N.V. Space-saver design for personal computer keyboard
US7346522B1 (en) 2002-01-08 2008-03-18 First Access, Inc. Medical payment system
US20030151663A1 (en) * 2002-01-23 2003-08-14 Mobile-Vision, Inc. Video storage and delay device for use with an in-car video system
US7003316B1 (en) * 2002-02-22 2006-02-21 Virtual Fonlink, Inc. System and method for wireless transactions
US7957401B2 (en) * 2002-07-05 2011-06-07 Geos Communications, Inc. System and method for using multiple communication protocols in memory limited processors
US7119716B2 (en) 2003-05-28 2006-10-10 Legalview Assets, Limited Response systems and methods for notification systems for modifying future notifications
US7606217B2 (en) * 2003-07-02 2009-10-20 I2 Telecom International, Inc. System and method for routing telephone calls over a voice and data network
US7446669B2 (en) * 2003-07-02 2008-11-04 Raanan Liebermann Devices for use by deaf and/or blind people
US20050010575A1 (en) * 2003-07-09 2005-01-13 Arthur Pennington Transactional processing system
US20050097122A1 (en) * 2003-08-29 2005-05-05 Thierry Schafflutzel Redundancy-free provision of multi-purpose data
US8350907B1 (en) 2003-09-12 2013-01-08 L-3 Communications Mobile-Vision, Inc. Method of storing digital video captured by an in-car video system
US7882024B2 (en) * 2003-09-24 2011-02-01 Routeone Llc System and method for efficiently processing multiple credit applications
US7389236B2 (en) * 2003-09-29 2008-06-17 Sap Aktiengesellschaft Navigation and data entry for open interaction elements
US20050088521A1 (en) * 2003-10-22 2005-04-28 Mobile-Vision Inc. In-car video system using flash memory as a recording medium
US7023333B2 (en) * 2003-10-22 2006-04-04 L-3 Communications Mobile Vision, Inc. Automatic activation of an in-car video recorder using a vehicle speed sensor signal
GB0325497D0 (en) * 2003-10-31 2003-12-03 Vox Generation Ltd Automated speech application creation deployment and management
US7676599B2 (en) 2004-01-28 2010-03-09 I2 Telecom Ip Holdings, Inc. System and method of binding a client to a server
US20050194456A1 (en) 2004-03-02 2005-09-08 Tessier Patrick C. Wireless controller with gateway
US20050216625A1 (en) * 2004-03-09 2005-09-29 Smith Zachary S Suppressing production of bus transactions by a virtual-bus interface
US8804758B2 (en) 2004-03-11 2014-08-12 Hipcricket, Inc. System and method of media over an internet protocol communication
CA2559891A1 (en) 2004-03-11 2005-09-22 Ali Awais Dynamically adapting the transmission rate of packets in real-time voip communications to the available bandwidth
US20050228926A1 (en) * 2004-04-05 2005-10-13 Smith Zachary S Virtual-bus interface and associated system and method
US7240836B2 (en) * 2004-04-23 2007-07-10 Virtual Fonlink, Inc. Enhanced system and method for wireless transactions
US20060023694A1 (en) * 2004-07-30 2006-02-02 Paul Wilson Financial transaction processing via combined voice/data financial transaction communications device and call control and service logic system
US20060026108A1 (en) * 2004-07-30 2006-02-02 Paul Wilson Voice/data financial transaction monitoring methods and systems
US20060026099A1 (en) * 2004-07-30 2006-02-02 Barry Danz Voice/data financial transaction communications device
US7782878B2 (en) * 2004-08-16 2010-08-24 I2Telecom Ip Holdings, Inc. System and method for sharing an IP address
US20060055521A1 (en) * 2004-09-15 2006-03-16 Mobile-Vision Inc. Automatic activation of an in-car video recorder using a GPS speed signal
US20070100834A1 (en) * 2004-09-15 2007-05-03 John Landry System and method for managing data in a distributed computer system
US7336654B2 (en) * 2004-10-20 2008-02-26 I2Telecom International, Inc. Portable VoIP service access module
US8296162B1 (en) 2005-02-01 2012-10-23 Webmd Llc. Systems, devices, and methods for providing healthcare information
US7716193B2 (en) * 2005-10-13 2010-05-11 Oracle International Corporation Ensuring timely servicing of desired transactions in a database server
US7761536B2 (en) 2005-11-17 2010-07-20 Ebay Inc. Method and system to transmit data
US20070118503A1 (en) * 2005-11-22 2007-05-24 Connelly Stephen P Methods and systems for providing data to a database
US8380530B2 (en) 2007-02-02 2013-02-19 Webmd Llc. Personalized health records with associative relationships
US20090068628A1 (en) * 2007-09-07 2009-03-12 Rocco Martino Apparatus and Method for Cyber Healthcare Monitoring, With Calibration Using Thin Client Communicating Techniques
US20090066519A1 (en) * 2007-09-07 2009-03-12 Rocco Martino Apparatus and Method for Cyber Healthcare Monitoring, Diagnosis and Treatment Using Thin Client Communicating Techniques
US8504048B2 (en) 2007-12-17 2013-08-06 Geos Communications IP Holdings, Inc., a wholly owned subsidiary of Augme Technologies, Inc. Systems and methods of making a call
US8234658B2 (en) * 2007-12-31 2012-07-31 Honeywell International Inc. Device for coordinating displays on a security system
WO2009105170A1 (en) * 2008-02-19 2009-08-27 Cardiac Pacemakers, Inc. Multimedia presentation for use with implantable medical device
US8903073B2 (en) 2011-07-20 2014-12-02 Zvi Or-Bach Systems and methods for visual presentation and selection of IVR menu
US8548135B1 (en) 2010-02-03 2013-10-01 Tal Lavian Systems and methods for visual presentation and selection of IVR menu
US8879698B1 (en) 2010-02-03 2014-11-04 Tal Lavian Device and method for providing enhanced telephony
US8406388B2 (en) 2011-07-18 2013-03-26 Zvi Or-Bach Systems and methods for visual presentation and selection of IVR menu
US8553859B1 (en) 2010-02-03 2013-10-08 Tal Lavian Device and method for providing enhanced telephony
US8594280B1 (en) 2010-02-03 2013-11-26 Zvi Or-Bach Systems and methods for visual presentation and selection of IVR menu
US8548131B1 (en) 2010-02-03 2013-10-01 Tal Lavian Systems and methods for communicating with an interactive voice response system
US9001819B1 (en) 2010-02-18 2015-04-07 Zvi Or-Bach Systems and methods for visual presentation and selection of IVR menu
US8625756B1 (en) 2010-02-03 2014-01-07 Tal Lavian Systems and methods for visual presentation and selection of IVR menu
US8681951B1 (en) 2010-02-03 2014-03-25 Tal Lavian Systems and methods for visual presentation and selection of IVR menu
US8537989B1 (en) 2010-02-03 2013-09-17 Tal Lavian Device and method for providing enhanced telephony
US8687777B1 (en) 2010-02-03 2014-04-01 Tal Lavian Systems and methods for visual presentation and selection of IVR menu
US8572303B2 (en) 2010-02-03 2013-10-29 Tal Lavian Portable universal communication device
US9218129B2 (en) * 2011-08-29 2015-12-22 Ncr Corporation User interface
US8867708B1 (en) 2012-03-02 2014-10-21 Tal Lavian Systems and methods for visual presentation and selection of IVR menu
US8731148B1 (en) 2012-03-02 2014-05-20 Tal Lavian Systems and methods for visual presentation and selection of IVR menu
USD905059S1 (en) 2018-07-25 2020-12-15 Square, Inc. Card reader device

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4549047A (en) * 1982-07-22 1985-10-22 Voicemail International, Inc. Digitized voice message storage system
FR2548494B1 (fr) * 1983-06-30 1985-10-31 Horlogerie Photograph Fse Ensemble poste telephonique-terminal d'ordinateur a clavier decimal unique et alimentation locale commutable
US4598171A (en) * 1983-09-12 1986-07-01 Fortel Corporation Voice operated telephone answering system
US4689478A (en) * 1984-12-24 1987-08-25 Ncr Corporation System for handling transactions including a portable personal terminal
US4835372A (en) * 1985-07-19 1989-05-30 Clincom Incorporated Patient care system
JPS6224364A (ja) * 1985-07-24 1987-02-02 Yamamoto Sohei 財務,在庫等の管理のための装置
US4776016A (en) * 1985-11-21 1988-10-04 Position Orientation Systems, Inc. Voice control system
JPH07118642B2 (ja) * 1986-01-08 1995-12-18 株式会社東芝 レベル変換回路
US4858121A (en) * 1986-12-12 1989-08-15 Medical Payment Systems, Incorporated Medical payment system
US4860342A (en) * 1987-04-09 1989-08-22 Danner David L Computer-telephone interface method and apparatus
JP2602847B2 (ja) * 1987-09-29 1997-04-23 株式会社日立製作所 マルチメディアメールシステム
US5572421A (en) * 1987-12-09 1996-11-05 Altman; Louis Portable medical questionnaire presentation device
US4991199A (en) * 1988-05-05 1991-02-05 Transaction Technology, Inc. Computer and telephone apparatus with user friendly computer interface and enhanced integrity features
US5195130A (en) * 1988-05-05 1993-03-16 Transaction Technology, Inc. Computer and telephone apparatus with user friendly computer interface and enhanced integrity features
US5008927A (en) * 1988-05-05 1991-04-16 Transaction Technology, Inc. Computer and telephone apparatus with user friendly computer interface integrity features
US4984155A (en) * 1988-08-29 1991-01-08 Square D Company Order entry system having catalog assistance
US4975942A (en) * 1989-07-21 1990-12-04 The Boston Communications Group Credit/calling card pay telephone method and system employing telephone unit local card-checking and other intelligence cooperative with local personal host computer
CA2025142A1 (en) * 1989-09-28 1991-03-29 John W. White Portable and dynamic distributed applications architecture
US5157717A (en) * 1989-11-03 1992-10-20 National Transaction Network, Inc. Portable automated teller machine
US5195086A (en) * 1990-04-12 1993-03-16 At&T Bell Laboratories Multiple call control method in a multimedia conferencing system
FI85776C (fi) * 1990-08-20 1992-05-25 Nokia Oy Ab Transportabel personlig arbetsstation.
US5365577A (en) * 1990-09-27 1994-11-15 Radish Communications Systems, Inc. Telecommunication display system
US5253285A (en) * 1990-12-13 1993-10-12 Alheim Curtis C Automated interactive telephone communication system for TDD users
US5221838A (en) * 1990-12-24 1993-06-22 Motorola, Inc. Electronic wallet
JPH05303531A (ja) * 1991-01-31 1993-11-16 Fields Software Group Inc 電子書式処理システム及び方法
US5301105A (en) * 1991-04-08 1994-04-05 Desmond D. Cummings All care health management system
EP0514231A2 (de) * 1991-05-10 1992-11-19 Intellinomics Corporation Rechnersystem für Arbeitsverwaltung
JPH0549024A (ja) * 1991-08-09 1993-02-26 Fujitsu Ltd パソコン連携式テレビ電話装置
US5396417A (en) * 1991-11-01 1995-03-07 Capitol Cities/Abc, Inc. Product distribution equipment and method
US5333266A (en) * 1992-03-27 1994-07-26 International Business Machines Corporation Method and apparatus for message handling in computer systems
US5416831A (en) * 1993-04-15 1995-05-16 Bellsouth Corporation System for communicating with an ADSI-compatible telephone via a service circuit node
US5799157A (en) * 1994-12-13 1998-08-25 Elcom Systems, Inc. System and method for creating interactive electronic systems to present information and execute transactions
US5802526A (en) * 1995-11-15 1998-09-01 Microsoft Corporation System and method for graphically displaying and navigating through an interactive voice response menu

Also Published As

Publication number Publication date
DE69636128D1 (de) 2006-06-14
MX9708955A (es) 1998-06-30
US6574314B1 (en) 2003-06-03
EP0886954A1 (de) 1998-12-30
EP0886954A4 (de) 2001-06-27
EP0886954B1 (de) 2006-05-10
EP1720334A1 (de) 2006-11-08
WO1996037070A1 (en) 1996-11-21
US5805676A (en) 1998-09-08
US5987103A (en) 1999-11-16

Similar Documents

Publication Publication Date Title
DE69636128T2 (de) Telefon/transaktionseingabegerät und system zum eingeben von transaktionsdaten
DE69832383T2 (de) Datentransaktionsassemblerserver
US7334024B2 (en) System for transmission of voice and data over the same communications line
US8019060B2 (en) Telephone/transaction entry device and system for entering transaction data into databases
US7778395B2 (en) Telephone/transaction entry device and system for entering transaction data into databases
EP0814611B1 (de) Kommunikationssystem und Verfahren zur Aufnahme und Verwaltung digitaler Bilder
DE69834410T2 (de) Verfahren und vorrichtung zur erzeugung physischer sicherheit eines benutzerkontos und zugangsermöglichung zur umgebung und zu den präferenzen eines benutzers
DE69636157T2 (de) Verfahren und System zum graphischen Anzeigen und zur Navigation durch ein interaktives Sprachantwortmenü
DE60132464T2 (de) Mobil-telekommunikationsdatendienst
DE60131183T2 (de) System und verfahren zur übertragung von referenzinformation durch ein drahtloses endgerät
DE60029334T2 (de) Selbstbedienungsterminals zum anbieten von fremdanwendungen
DE202006021123U1 (de) Mobiles Kommunikationsgerät zur Nachrichtenanzeige
DE10019385A1 (de) Anrufpfadanzeige-Telefonsystem und Verfahren
EP1062790B1 (de) Verfahren zum ermitteln und verarbeiten von für den aufbau einer telefonverbindung in einem cti-system relevanten informationen und entsprechendes cti-system
DE60019345T2 (de) Elektronische glückwunschkarte
KR100767513B1 (ko) 클라이언트 컴퓨터 시스템과 안전하게 통신하기 위한 시스템
CA2221853C (en) Telephone/transaction entry device and system for entering transaction data into databases
EP1266483A2 (de) Mobile fernsteuereinheit zur fernsteuerung eines netzwerkrechners
WO1996033453A1 (de) Rückantwort-faxgerät
DE10131734A1 (de) Gerätetechnische Einrichtung und ein Verfahren für eine von Laut- und/oder Schriftsprache weitgehend unabhängige Kommunikation
DE10034882A1 (de) Benutzerschnittstelle

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8328 Change in the person/name/address of the agent

Representative=s name: WALLINGER RICKER SCHLOTTER FOERSTL, 80331 MUENCHEN