DE69838257T2 - Verfahren zum erweitern der hypertext markup sprache (html) zur unterstützung von unternehmungsanwendungsdatenbindung - Google Patents

Verfahren zum erweitern der hypertext markup sprache (html) zur unterstützung von unternehmungsanwendungsdatenbindung Download PDF

Info

Publication number
DE69838257T2
DE69838257T2 DE69838257T DE69838257T DE69838257T2 DE 69838257 T2 DE69838257 T2 DE 69838257T2 DE 69838257 T DE69838257 T DE 69838257T DE 69838257 T DE69838257 T DE 69838257T DE 69838257 T2 DE69838257 T2 DE 69838257T2
Authority
DE
Germany
Prior art keywords
data
host
web
server
scl
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
DE69838257T
Other languages
English (en)
Other versions
DE69838257D1 (de
Inventor
Eugene Otto San Clemente MUTSCHLER
Joseph Peter San Clemente STEFANIAK
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.)
Unisys Corp
Original Assignee
Unisys Corp
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
Application filed by Unisys Corp filed Critical Unisys Corp
Application granted granted Critical
Publication of DE69838257D1 publication Critical patent/DE69838257D1/de
Publication of DE69838257T2 publication Critical patent/DE69838257T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • 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/44Arrangements for executing specific programs
    • 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
    • G06F16/252Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application

Description

  • Ein Teil der Offenbarung dieses Patentdokuments enthält Material, das dem Urheberrechtsschutz unterliegt. Der Inhaber des Urheberrechts hat nichts einzuwenden gegen die Faksimile-Vervielfältigung der Patentoffenbarung, wie sie in den Akten oder Unterlagen des Patent- und Markenamts erscheint, durch irgendjemanden, behält sich jedoch ansonsten jegliche Urheberrechte vor.
  • GEBIET DER ERFINDUNG:
  • Die vorliegende Erfindung betrifft allgemein Client/Server-Verarbeitung in einer World Wide Web-("Web"-)Umgebung und im Speziellen ein Verfahren zur Unterstützung der Bindung einer Unternehmensanwendung innerhalb eines Webbrowsers.
  • HINTERGRUND DER ERFINDUNG:
  • Aufgrund der wachsenden Beliebtheit von Client/Server-Verarbeitung und dem Web suchen Unternehmen nach noch besseren Möglichkeiten, ihren Wettbewerbsvorteil zu erhöhen. Information ist eines der wertvollsten Güter von Unternehmen. Daher besteht die Notwendigkeit von Flexibilität, um Informationen auf eine Art und Weise zu platzieren, die Unternehmen und ihre Kunden am besten unterstützt.
  • Client/Server-Technologie bietet grafischen Benutzerschnittstellen (graphical user interfaces, GUIs) eine Auswahl an offenen Systemen, rapide Anwendungsentwicklung, erhöhte Endbenutzer-Produktivität und noch weit mehr. Durch eine Kombination dieser Technologie mit dem Internet und mit Intranets wird ein starkes System zur Verbreitung von Informationen in der Geschäftswelt und unter den Kunden verfügbar gemacht. Das World Wide Web ist eine reine Client/Server-Umgebung, die das Geschäft zum Kunden bringen kann. Selbst wenn ein Unternehmen über Informationen verfügt, die innerhalb der Organisation verbleiben müssen, ist die Web-Technologie weiterhin als Intranet verfügbar, d. h. als Website hinter einer Firewall, die nur den Angestellten des Unternehmens zur Verfügung steht. Der Begriff "Firewall", wie hierin verwendet, bezeichnet eine Kombination aus Hardware und Software, die den Zugriff auf gesicherte Daten über ein Netzwerk verhindert. Der Gedanke dahinter ist, eine Gruppe lose verwalteter Computer, die hinter der Firewall verborgen sind, vor Hackern zu schützen.
  • Es besteht auch die Notwendigkeit, Client/Server- und Internet-Technologien einzusetzen, ohne von bestehenden Host-Anwendungen migrieren zu müssen. Die beste Art, neue Client/Server-Anwendungen zu erstellen, die in bestehende Anwendungen integriert werden können, besteht darin, die Verlässlichkeit unternehmensweiter Rechnersysteme mit der Flexibilität verteilter Verarbeitung zu kombinieren.
  • Frühe Versuche, die Vorteile der Client/Server-Anwendungen zu kapitalisieren, beinhalteten die Nutzung des PCs als "dummes Terminal" oder Zeichen-orientiertes Netzwerk-Terminal, das direkt mit Altprogrammen interagierte, die auf einem Mainframe oder Hostrechner abliefen. Diese Vorgehensweise war unbefriedigend, da der Benutzer nur eine Zeichenmodus-Anzeige hatte. Spätere Versuche schlossen Lösungen wie das Designer Workbench-Produkt ein (ein Software-Tool, das heute als PowerClient bezeichnet wird und von der Unisys Corporation, Inhaberin dieses Patents, erhältlich ist). Das PowerClient-Produkt gibt dem Benutzer die Möglichkeit, Formular-Beschreibungen zu erfassen, die sich auf dem Hostrechner befinden, und Zeichen-orientierte Felder in Windows-basierte visuelle Elemente, wie Bearbeitungsfelder, Schaltflächen usw. umzuwandeln. Eine Sprache mit dem Namen SCL (Screen Control Language) wurde erfunden, um die visuellen Elemente und die Verarbeitung zu beschreiben, die auf den Client-PCs ausgeführt wird.
  • Was verschiedene Arten von Altprogrammen betrifft, die auf dem Host ausgeführt werden, so ermöglicht LINC (d. h. "Logical Information Network Compiler") eine direkte Erzeugung der Screen Control Language ("SCL"). SCL wird mit Verwendung des Power-Client-Produkts für Programmiersprachen der dritten Generation (third generation languages, 3GL), wie COBOL- oder ALGOL-Altprogrammen, erzeugt; im Falle von MAPPER, einem dritten System und einer dritten Sprache für Altprogramme, besteht keine Möglichkeit, SCL zu erstellen. Bei MAPPER muss der Benutzer ein Formular-Designerwerkzeug (wie z. B. das Development Studio-Produkt) zum Zeichnen visueller Elemente verwenden, um die erforderliche SCL zu erstellen, die der MAPPER-Anwendung entspricht.
  • In jüngerer Zeit war es möglich, SCL-Definitionen eines Formulars zu nehmen und sie in ein Visual Basic- oder Power-Builder-ausführbares Programm umzuwandeln. Für eine Erweiterung dieses Verfahrens wird verwiesen auf eine gleichzeitig anhängige Patentanmeldung mit dem Titel A METHOD FOR GENERATING CODE FOR MODIFYING EXISTING EVENT ROUTINES FOR CONTROLS ON A FORM, Seriennr. 08/803,137, eingereicht am 19. Februar 1997 von denselben Erfindern hiervon und übertragen an denselben Inhaber hiervon. PowerBuilder ist ein Produkt der Firma PowerSoft (die vor Kurzem mit Sybase, Inc., in Emeryville, CA, fusionierte), und Visual Basic ist ein Produkt der Microsoft Corporation in Redmond, Washington. Da jedoch die Visual Basic- und Power-Builder-Client-Builder-Produkte ausführbare Programme erzeugen, gibt es keine Möglichkeit, die Darstellungs-Funktionalität, die sie bereitstellen, in einen Webbrowser zu integrieren, da dieser ein Client-seitiges Softwaremodul für den Zugriff auf einen Webserver ist.
  • Das PowerClient-Produkt hat die Fähigkeit, Formulare aus Host-Altanwendungen in der PC-Umgebung darzustellen. Es ist möglich, Formulare in ihrem ursprünglichen, Zeichen-orientierten Format darzustellen; mit dem PowerClient Development Studio-Produkt ist es jedoch auch möglich, diesen Formularen moderne GUI-Steuerelemente, wie Befehlsschaltflächen, Listenfelder und Bilder, hinzuzufügen. Die so entwickelten Formulare werden in der PowerClient-Produktumgebung gespeichert, und ihre Anzeige und der Zugriff auf sie finden nach Bedarf statt, wenn der Benutzer mit der Altanwendung interagiert. Die ursprünglichen Daten, die von der Altanwendung für das Formular empfangen werden, werden angezeigt, und dann gibt der Benutzer der Altanwendung Daten in die im Formular enthaltenen GUI-Steuerelemente ein. Wenn der Benutzer die Interaktion abgeschlossen hat, sammelt das PowerClient-Produkt die Daten von diesen GUI-Steuerelementen in einen Puffer und formatiert sie zur Übertragung an den Host auf solche Art, dass die Host-Altanwendung ihre Zeichen-orientierte Schnittstelle weiter verwenden kann und diese Änderungen für sie nicht sichtbar sind. Die Host-Altanwendung liefert dann die ursprünglichen Daten für das nächste Formular, und der Vorgang wird wiederholt.
  • Um eine solche Altanwendung "Web-fähig" zu machen, d. h. um es ihr zu ermöglichen, in der World Wide Web-Internet- oder -Intranet-Umgebung zu arbeiten, ist es notwendig, dass: 1) für die Host-Anwendung weiterhin nicht sichtbar ist, dass ein Träger (Agentur) an der Darstellung ihrer Formulare beteiligt ist, und 2) diese Formulare ein Erscheinungsbild und Bedienmerkmale ähnlich der PC-Version haben, so dass Entwicklungs- und Schulungskosten minimiert werden.
  • Der aktuelle Stand der Technik für die Darstellung von Formularen im World Wide Web ist die Hypertext Markup Language (HTML). Diese Sprache ist eine Instanz von SGML (Standard Generalized Markup Language). HTML hat das Konzept des FORMULARS (FORM), die ein Mittel ist, um GUI-Steuerelemente für die Interaktion mit dem Benutzer darzustellen. Wenn der Benutzer das HTML-Formular versendet, werden die Inhalte dieser Steuerelemente vom Webbrowser erfasst und als Teil eines Universal Resource Locator (URL) in Form von Steuerelementnamen-/Steuerelementwert-Paaren an den Webserver gesendet.
  • Das HTML FORMULAR-Konstrukt war ursprünglich geplant zur Implementierung von PowerClient-Produkt-Formularen in der Web-Umgebung, und es wurden erhebliche Anstrengungen unternommen, damit es funktionierte. Zuletzt wurde jedoch festgestellt, dass diese Vorgehensweise zahlreiche Mängel hatte, darunter vor allem die fehlende Möglichkeit, gleichzeitig die Kennung für ein Steuerelement und den Namen des Host-Datenelements anzugeben, mit dem es verknüpft ist. Diese Beschränkung machte es unmöglich, das HTML FORMULAR-Konstrukt zur Unterstützung von Power-Client-Produkt-Altformularen in der Web-Umgebung zu verwenden. Weiterhin gab es, obwohl der Satz verfügbarer Komponenten den größten Teil des Satzes von GUI-Steuerelementen des PowerClient-Produkts einschloss, immer noch einige, die entweder nicht unterstützt wurden oder die eine begrenzte Funktionalität im Hinblick auf den PowerClient-Produktsatz hatten. Außerdem gab es keine Möglichkeit zu kontrollieren, wo auf dem Formular das Steuerelement positioniert wurde. Die HTML-Version 2.0 fügte das Konzept der FRAMEs hinzu, das eine gewisse Kontrolle über die Positionierung ermöglicht. Diese wurden im Hinblick auf die PowerClient-Produktumgebung bewertet und als unzureichend bei der Steuerung von Positionen auf dem PowerClient-Produkt-Formular erkannt.
  • ZUSAMMENFASSUNG DER ERFINDUNG:
  • Es ist daher ein Ziel des Verfahrens der vorliegenden Erfindung, der Client/Server-Technologie eine evolutionäre Verfahrensweise zu ermöglichen, so dass ein Benutzer seine vorhandene Informationstechnologie-Investition in Altanwendungen beibehalten und dennoch Client/Server-Verarbeitung im Web nutzen kann. Ein Benutzer kann seine Produktivität erhöhen und Entwicklungs- und Schulungskosten reduzieren, da die Anwendung der vorliegenden Erfindung keine Änderungen an den Altprogrammen erfordert.
  • Ein Merkmal der vorliegenden Erfindung ist, dass die erzeugte SCL für jedes Altformular dynamisch in die HyperText Markup Language (HTML) eingebettet wird.
  • Ein weiteres Merkmal der vorliegenden Erfindung ist, dass Formulardaten von einer Host-Altanwendung mit GUI-Steuerelementen auf einem Formular verknüpft werden können, das in der Web-Umgebung dargestellt wird.
  • Ein weiteres Merkmal der vorliegenden Erfindung ist, dass Formulardaten aus GUI-Steuerelementen in der Web-Umgebung gewon nen und an eine Host-Altanwendung zurückgegeben werden können.
  • Ein Vorteil der vorliegenden Erfindung ist, dass ein Benutzer die HTML-Darstellung vollständig abschalten und den Browser wirksam als Transportschicht für andere ClientBuilder-Produktanwendungen mit der Datenbindungs-Funktionalität verwenden kann. Weiter kann ein Benutzer den Browser ausblenden und eine Visual Basic-Anwendung ausführen, die mit dem Browser kommuniziert, ohne dass der Benutzer den Browser sieht.
  • Ein weiterer Vorteil der vorliegenden Erfindung ist, dass die SCL verschiedene Zustände der GUI-Steuerelemente festsetzen und Daten mit ihnen verknüpfen kann. Der aktuelle Zustand von HTML hat eine begrenzte Teilmenge von machbaren Aspekten im Hinblick auf Datenlogik-Handhabung.
  • Noch mehr Ziele, Merkmale und Vorteile der vorliegenden Erfindung werden für den Fachmann aus der folgenden detaillierten Beschreibung schnell ersichtlich, worin nur die bevorzugte Ausführungsform der Erfindung, einfach als Darstellung der besten erwogenen Möglichkeit, die Erfindung umzusetzen, dargestellt und beschrieben ist. Wie erkannt werden wird, sind andere verschiedene Ausführungsformen der Erfindung möglich, und ihre vielen Details sind für Modifikationen in verschiedenen offensichtlichen Punkten geeignet, ohne von der Erfindung abzuweichen. Daher sind die Zeichnungen und die Beschreibung als exemplarischer Natur und nicht als einschränkend zu betrachten, und was in der Patenturkunde geschützt werden soll, ist in den beigefügten Ansprüchen ausgeführt.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN:
  • 1 ist ein Blockdiagramm eines Systems, das verwendet werden könnte, um Dateien zu entwickeln und diese unter Anwendung der Schritte des Verfahrens der vorliegenden Erfindung auszuführen.
  • 2 ist ein Ausdruck einer Computer-Bildschirmanzeige von einem 3GL-Altanwendungs-Formular für TRIPS, einem Bericht zur Erfassung von Spesen, das mit dem Verfahren der vorliegenden Erfindung umgewandelt werden kann.
  • 3 ist ein Ausdruck einer Computer-Bildschirmanzeige desselben Formulars für TRIPS nach Hinzufügen visueller Steuerelemente mit dem Development Studio.
  • 4 ist ein Ausdruck einer Computer-Bildschirmanzeige nach Anwendung des Verfahrens der vorliegenden Erfindung.
  • Die 5A bis 5C stellen in kombinierter Form ein Flussdiagramm dar, das das Verfahren zur Entwicklung von Dateien zur Verwendung mit dem Verfahren der vorliegenden Erfindung zeigt.
  • Die 6A bis 6K ("6I" wurde absichtlich weggelassen) stellen einen Laufzeitprozess dar, der die Schritte einschließt, die mit dem Verfahren der vorliegenden Erfindung vorgenommen werden.
  • 7 ist ein Diagramm des Verfahrens der vorliegenden Erfindung.
  • DETAILLIERTE BESCHREIBUNG EINER AUSFÜHRUNGSFORM:
  • Die vorliegende Erfindung integriert die beliebten Webbrowser in Altanwendungen, um Formulardarstellungs-Kapazitäten bereitzustellen, die von HTML, der heutzutage beliebtesten Internetsprache, nicht unterstützt werden. Das bedeutet, dass selbst für die kompliziertesten Anwendungen ein einheitliches GUI-Benutzeroberflächen-Erscheinungsbild und entsprechende Bedienmerkmale erzeugt werden können. Das offenbarte Verfahren ist ideal, um leistungsstarke Desktop-Client-Anwendungen zu erstellen und mit 3GL- und LINC-Altanwendungen zu in Verbindung bringen.
  • Die SCL-Sprache wird vom PowerClient-Produkt verwendet, um die Anzeige von Formularen in der PC-Umgebung zu steuern. Da diese Sprache ein Altformular zum Zwecke der Darstellung in der normalen PC-Umgebung vollständig charakterisiert, einschließlich des Host-Altanwendungs-Datenfelds, mit dem jedes GUI-Element verknüpft ist, wurde entschieden, sie als das Mittel zu nutzen, mit dem das Formular in einem Webbrowser dargestellt wird. SCL-Text wird zur Darstellung in einer Webbrowser-Umgebung in eine HTML-Seite eingebettet, und die vom Benutzer eingegebenen Daten werden an die Altanwendung zurückgegeben.
  • Um eingebettete HTML darzustellen und mit der Altanwendung auf einem Host zu kommunizieren, sind zwei kooperierende Programme erforderlich. Für die Webbrowser-Umgebung wurde ein ActiveX-Steuerelement entwickelt und wird hierin als SCL Web Control-("SWC"-)Programm bezeichnet. Das SWC-Programm ist ein ActiveX-kompatibles Steuerelement, das verwendet wird, um entweder mit einem Netscape- oder mit einem Microsoft-Webbrowser zu kommunizieren. ActiveX ist eine Software-Technologie, die von der Microsoft Corporation gefördert wird.
  • ActiveX-Steuerelemente werden in der Browser-Umgebung durch ein spezielles HTML-Konstrukt (das OBJECT-Tag) aktiviert. Zur Erstellung einer HTML-Seite mit dem OBJECT-Tag wurde ein Programm entwickelt, das von einem Webserver aufgerufen werden kann und das hierin als Web Agent-Programm bezeichnet wird. Das Web Agent-Programm kommuniziert auch mit der Host-Altanwendung und wirkt als Vermittler für Daten, die von der Host-Anwendung an das SWC-Programm gehen, zur Darstellung gegenüber dem Benutzer, und vom SWC-Programm an die Host-Anwendung, wenn der Benutzer das Formular sendet.
  • Das OBJECT-Tag-Konstrukt ermöglicht die Weitergabe von Parametern an ein ActiveX-Steuerelement, wenn es aufgerufen wird. Daher wird SCL-Text für ein Altformular als einer der Parameter für das SWC-Programm eingeschlossen. Ein zweiter Parameter für das SWC-Programm sind die ursprünglichen Daten für das Formular, empfangen von der Host-Altanwendung. Der SCL-Text, der an das SWC-Programm geleitet wird, enthält GUI-Steuerelement-Spezifikationen. Ein Teil einer jeden solchen Spezifikation ist der Name des Host-Altanwendungs-Datenelements, mit dem das GUI-Steuerelement verknüpft ist.
  • Das SWC konstruiert einen Satz von GUI-Steuerelementen, der den GUI-Steuerelement-Spezifikationen im SCL-Text entspricht. Unter Anwendung des Teils jeder derartigen Spezifikation, der das Anwendungs-Datenfeld angibt, mit dem das Steuerelement verknüpft ist, stellt es Ausgangsdaten aus der Ausgangsdatenliste in das GUI-Steuerelement. Die Daten des Ausgangsformulars liegen in dem Format von Namen-/Wert-Paaren vor, worin der Name derjenige eines Altanwendungs-Datenelements ist; daher ist es erforderlich, dass das Steuerelement eine Verknüpfung zwischen diesem Datennamen und dem GUI-Steuerelement herstellt.
  • Wenn der Benutzer die Interaktion mit dem Formular abgeschlossen hat, arbeitet das SCL Web Control insofern sehr ähnlich wie in PowerClient, als es Daten von denjenigen GUI-Steuerelementen erfasst, die mit Datennamen verknüpft sind, und sie formatiert, um sie an die Host-Altanwendung zurückzugeben. In diesem Fall unterscheidet sich die Formatierung von derjenigen im PowerClient-Produkt, da die Umgebung das Web ist. Die GUI-Steuerelement-Datennnamen-Verknüpfungen dienen dazu, diejenigen Steuerelemente zu lokalisieren, die Daten für die Altanwendung enthalten. Diese Werte werden aus den GUI-Steuerelementen extrahiert. Es wird dann ein URL erstellt, der Namen-/Wert-Paare enthält und worin der Name der Anwendungs-Datenname ist. Der URL enthält auch Informationen über den Namen des Formulars und seine Host-Anwendung. Der URL wird an das Web Agent-Programm gesendet, das ihn in den normalen PowerClient-Produkt-Host-Anwendungs-Datenpuffer umformatiert, wie in einer Problemanweisung beschrieben.
  • An diesem Punkt in der Beschreibung werden mehrere Definitionen eingefügt, um das Verständnis der vorliegenden Erfindung zu erleichtern.
  • Anwendung soll ein Programm bezeichnen, das von einem Benutzer geschrieben wird und das eine Operation ausführt.
  • Befehl soll eine Anweisung bezeichnen, eine Operation auszuführen. Im Web-Agent-(im Folgenden definiert)-Kontext besteht die Befehls-Operation darin, ein Host-Formular zu erhalten ("Öffnen") oder die Ergebnisse einer Eingabe von Daten in das Formular an die Anwendung zurückzusenden ("Senden").
  • Datenname soll den Namen eines Host-Anwendungsdatums bezeichnen. Das heißt, er ist die Kennzeichnung, mit der ein Feld auf einem Host-Bildschirm versehen wird.
  • Datenwert soll den Wert eines Host-Anwendungsdatums bezeichnen. Das heißt, er ist der Wert, der mit einem Feld auf einem Host-Bildschirm verknüpft ist.
  • Formular soll die Elemente der optischen Anzeige einer Anwendung bezeichnen, Felder zur Eingabe und Darstellung der Anwendung enthaltend.
  • GUI-Steuerelement soll ein Bildelement einer GUI-Anzeige, wie z. B. ein Bearbeitungsfeld oder ein Listenfeld, bezeichnen. Andere Beispiele schließen Schaltflächen, Listenfelder, Kontrollkästchen und Kombinationsfelder ein.
  • Host Reply Definition (HRD) bezeichnet eine Datei, die in der PowerClient-3GL-Umgebung verwendet wird und Zeichen im Datenstrom vom Host auf die Felder und ihre Datennamen im modernisierten Formular abbildet.
  • Partition oder Partitionsname soll einen Platz in einem Repository bezeichnen, wodurch ein Mittel zur Kategorisierung von Daten im Repository bereitgestellt wird. Im Speziellen soll es einen Namen bezeichnen, der zur Darstellung einer Reihe von Formularen vergeben wird, die mit einer 3GL/LINC-(d. h. Alt-) Anwendung verknüpft sind.
  • Repository-Objekt soll Dinge bezeichnen wie SCL-Text (im Folgenden definiert), Listenfeld-Daten, ein Bild usw.
  • SCL-Konstrukt soll eine gültige Produktion der Grammatik der SCL-Sprache bezeichnen, d. h. eine SCL-Text-(im Folgenden definiert)-Anweisung.
  • SCL-Steuerelement soll ein SCL-Konstrukt bezeichnen, das ein bestimmtes GUI-Steuerelement, wie z. B. ein Bearbeitungsfeld, Listenfeld usw., beschreibt.
  • SCL Web Control soll ein Steuerelement auf ActiveX-Basis bezeichnen, das in einer PowerClient-Laufzeitumgebung verwendet wird.
  • SCL Text soll eine Sammlung von SCL-Konstrukten bezeichnen. SCL ist eine Unisys-proprietäre Sprache. SCL-Text wird verwendet, um GUI-Steuerelemente zu beschreiben, die in einem Browser gerendert werden sollen.
  • SCL-Dateien soll diejenigen Dateien bezeichnen, die SCL-Text enthalten und auf die als Objekt in einem Repository verwiesen wird.
  • Script soll eine Sequenz von Anweisungen bezeichnen, die verwendet werden, um Konnektivität mit einem Hostrechner und einer spezifischen Anwendung des Hosts herzustellen.
  • Uniform Resource Locator (URL) soll eine Kennung zur Lokalisierung einer Ressource im Web bezeichnen.
  • Web Agent soll das PowerClient-Modul bezeichnen, das spezielle URL-Anfragen interpretiert, die vom Webserver (im Folgenden definiert) an ihn gestellt werden. Er nutzt Informationen im speziellen URL, um Daten für ein bestimmtes Formular vom Host abzurufen, und liefert sie über den Webserver und den Webbrowser an das Web Control zurück. Er ist auch eine Reihe von sowohl Client- als auch Serverkomponenten, die LINC/3GL-Anwendungen Zugriff über das Internet ermöglichen.
  • Workstation Driver File (WDF) soll eine Datei bezeichnen, die in der PowerClient LINC-Umgebung verwendet wird und Zeichen im Datenstrom vom Host auf die Felder und ihre Datennamen im LINC-Formular abbildet.
  • In 1 ist eine Client/Server-Systemkonfiguration dargestellt, worin an einen Host oder Zentralrechner 10 Endgeräte 11 und 12 gekoppelt sind und eine Netzwerk-Verbindung 13 eine Kopplung zu den Clients 14, 15 und 16 herstellt. Die Netzwerk-Verbindung 13 kann typischerweise ein TCP/IP oder irgendein anderes proprietäres Protokoll umfassen. Der Host 10 könnte jedes Rechnersystem sein, das in einer Client/Server-Umgebung arbeiten kann, wie z. B. ein beliebiger Unisys- oder IBM-Computer. Der Host 10 ist mit einem Netzwerkserver-Repository 17 gekoppelt, der Client 14 (hierin auch als NT-Webserver bezeichnet) ist mit einem Client-Repository 18 verbunden, und der Client 16, der in der dargestellten Ausführungsform für die Entwicklung verwendet wird, ist mit einem Entwicklungs-Repository 19 gekoppelt. Die Clients 14, 15 und 16 könnten typischerweise jeder aktuell erhältliche PC sein, auf dem das Windows 95- oder -NT-Betriebssystem ausgeführt werden kann. Es ist jedoch erforderlich, dass Client 14 das Windows NT-Betriebssystem ausführen kann.
  • Der Host 10 ist in der Lage, Softwareprogramme einschließlich LINC- und 3GL-Altprogrammen auszuführen. Der Client 14 kann Softwareprogramme einschließlich INFOConnect (Übertragungen), PowerClient und Web Agents ausführen. Der Client 15 ist in der Lage, Softwareprogramme wie Z. B. SCL Web Control und Webbrowser auszuführen. Der Client 16 ist in der Lage, Softwareprogramme wie Z. B. PowerClient und INFOConnect auszuführen. Zusätzlich zu diesen hier erwähnten Programmen kann der Client 16 viele der beliebteren und weiter verbreiteten Programme wie PowerBuilder und Visual Basic ausführen.
  • Das Webserver-Repository 18 speichert Formulare, die mit Hilfe von Webbrowsern an Clients verteilt werden. Das Repository 18 ist die Datenbank, die LINC-Formular-Objekte, Bildobjekte, Script-Dateien und Datendateien enthält, die nach Bedarf vom Hostsystem heruntergeladen werden können.
  • Das Netzwerkserver-Repository 17 enthält Host-Anwendungs-Formulare und stellt eine Versionskontrolle für Development Studio-Formulare bereit.
  • Das Entwicklungs-Repository 19 wird als Datenbank für den Entwicklungsprozess verwendet und speichert im Speziellen LINC-Formular-Objekte, Bildobjekte, Datendateien und Scripts. Weiter enthält das Entwicklungs-Repository 19 die Objekte und Scripts, die notwendig sind, um Formulare im Webbrowser zu entwickeln und korrekt darzustellen. Wenn jemand beginnt, seine Anwendungen zu modernisieren, können Entwickler das Repository 19 verwenden, um Aufgaben gemeinsam zu nutzen. Wenn ein neues Formular in diesem Repository gespeichert wird, steht es sofort anderen Nutzern der Entwicklungsumgebung zur Verfügung.
  • Das INFOConnect-Programm schließt drei Teile einer Programmreihe ein, die unter PowerClient läuft: den Unisys MT Emulator, den UTE Emulator und den IBM 3270, alle erhältlich bei DCA, Inc., in Cincinnati, Ohio. PowerClient ist ein Programm, das bei der Unisys Corporation in Blue Bell, Pa., dem Inhaber der vorliegenden Erfindung, erhältlich ist. PowerClient schließt 10 Komponenten ein: Codeerzeugungs-Assistenten (zwei), 3GL Work Bench, LINC Work Bench, MAPPER, Development Studio, Repositories für den Hauptrechner (zwei), CBT und Web Agent.
  • In 2 ist ein Ausdruck einer Bildschirmanzeige eines Formulars für eine 3GL-Altanwendung dargestellt. Wenn ein Client-Benutzer INFOConnect aufruft und sich beim Server anmeldet und TRAVEL eingibt, erscheint dieses spezielle Formular mit dem Titel TRIPS auf dem Bildschirm. Es ist ein typisches Formular, das von einem Angestellten einer Organisation zwecks Rückerstattung von Reisespesen auszufüllen ist. Jedes Feld dieses Formulars wird durch eine Leerstelle zwischen entgegengesetzten Pfeilen dargestellt. Zum Beispiel ist das Feld mit dem Titel "Angestellten-Sozialversicherungsnr." der Raum 20 zwischen den gegenüberliegenden Pfeilen 21 und 22 und schließt einen Bildschirm-Cursor 23 ein. Das nächste Feld "Nachname" ist der Raum 24 zwischen den gegenüberliegenden Pfeilen 25 und 26.
  • Die übrigen Felder des Formulars sind ähnlich dargestellt. Es gibt insgesamt fünfzehn (15) Felder auf diesem Formular.
  • Vor der Modifikation des TRIPS-Formulars mit dem Verfahren dieser Erfindung erfasst der Benutzer dieses Formular mit den kombinierten Funktionen des INFOConnect Emulators und des PowerClient Development Studios (PDS). Der Benutzer erstellt dann Datennamen für jedes Feld des Formulars. Die SCL-Syntax wird jeden der erzeugten Datennamen enthalten. Zum Beispiel werden für das in 2 gezeigte Formular folgende Informationen erzeugt und im Entwicklungs-Repository 19 gespeichert und sollen im nächsten SCL-Erstellungsprozess verwendet werden. Der Benutzer gibt die Dateneingabefelder und den statischen Text im Formular an.
    SCL SCL-OFFSETS
    DATENNAMEN Zeile Spalte Länge
    EMPSSN 3 19 20
    LASTNAME 4 19 25
    CREATOR 5 19 10
  • Der Benutzer/Erzeuger hat viel Flexibilität und kann einen Druckkopf oder ein Fenster für ein bestimmtes Feld erzeugen; er kann Namen ändern oder früheren Text verwenden usw.
  • Die Ausgabe wird im Entwicklungs-Repository 19 gespeichert.
  • In 3 stellt ein Ausdruck eine Computer-Bildschirmanzeige einer modernisierten Version des 3GL-Formulars dar, das in 2 gezeigt und oben beschrieben ist. Es ist anzumerken, dass dieses modernisierte Formular Fenster zur Eingabe von Daten einschließt, worin Fenster 20 der Leerstelle 20 in 2 zur Eingabe der Sozialversicherungsnummer eines Angestellten entspricht. Fenster 24 entspricht der Leerstelle 24 in 2. Eine SENDEN-Schaltfläche 28 wird durch das Modernisierungsverfahren hinzugefügt.
  • In 4 ist nun das modernisierte Formular, das in 3 dargestellt ist, in eine Webbrowser-Anzeige eingebettet, nachdem es mit dem Verfahren dieser Erfindung im Repository 18 gespeichert und von einem Webbrowser am Client 15 abgerufen wurde. Gleiche Bezugszeichen stehen für gleiche Komponenten.
  • Es wird nun Bezug auf 5A genommen, die erste von drei Zeichnungen auf drei Blättern, die ein Flussdiagramm des Verfahrens zur Entwicklung von Dateien zur Verwendung mit dem Verfahren der vorliegenden Erfindung darstellen. Das Verfahren beginnt im Client 16 mit einer Start-Blase 50, gefolgt von einer Abfrage, ob Formulare für die Host-Anwendung im Entwicklungs-Repository 19 vorhanden sind oder nicht (Rhombus 51). Wenn die Antwort auf diese Abfrage Ja lautet, wird das Development Studio aufgerufen (Block 52). Wenn hingegen die Formulare nicht im Entwicklungs-Repository vorhanden sind, wird eine weitere Abfrage durchgeführt, ob Formulare für die Host-Anwendung im Host-Repository 17 vorhanden sind oder nicht (Rhombus 53). Wenn die Formulare nicht im Host existieren, wird das Development Studio aufgerufen (Block 54), und mit Verwendung des Development Studios wird die Host-Anwendung aufgerufen (Block 55).
  • Wenn das Host-Anwendungsformular im Host-Repository 17 vorhanden ist ("Ja"-Zweig des Rhombus 53), wird die PowerClient-Software verwendet, um ein Herunterladen der Formulare und der entsprechenden HRD/WDF-Dateien vom Host-Repository 17 anzufordern (Block 56). Als Nächstes werden die Formulare und die HRD/WDF-Dateien in das Entwicklungs-Repository 19 gestellt (Block 57). Danach wird das Development Studio aufgerufen (Block 58). Nach Abschluss des Schritts 52 oder des Schritts 58 wird eine Verzweigung zu einem späteren Punkt in dem Prozess an einer Verknüpfung A vorgenommen, die weiter unten beschrieben wird. Nach Abschluss des Schritts 55 wird eine Verzweigung zu 5B an einer Verknüpfung B vorgenommen.
  • In 5B an der Verknüpfung B besteht der nächste Schritt im Entwicklungsprozess darin, ein Formular durch Interaktion mit der Host-Anwendung zu erfassen (Block 60). Für das so erfasste Formular werden mit dem Development Studio ein SCL-Text und eine HRD-Datei erstellt (Block 61). Danach werden der SCL-Text und die HRD-Datei in das Entwicklungs-Repository 19 gestellt (Block 62). Anschließend wird eine Abfrage durchgeführt, ob es noch mehr Formulare gibt (Rhombus 63). Wenn die Antwort Ja lautet, findet ein Rücksprung zum Prozessblock 60 statt. Dieser Zyklus wird wiederholt, bis alle Formulare verarbeitet wurden, und die Verarbeitung wird auf dem "Nein"-Zweig des Rhombus 63 verlassen.
  • Das Verfahren der Aktualisierung und Modifizierung der Formulare beginnt, wenn eine Abfrage durchgeführt wird, ob sich noch mehr zu modifizierende Formulare in der Partition befinden oder nicht (Rhombus 64). Es ist anzumerken, dass die Verknüpfung A von der vorhergehenden 5A auch eine Eingabe in den Rhombus 64 ist. Wenn die Antwort auf die Abfrage im Rhombus 64 Ja lautet, öffnet der Entwickler oder Benutzer das Formular mit Hilfe des Development Studios (Block 65). Wenn hingegen keine weiteren zu modifizierenden Formulare in der Partition sind, wird eine Verzweigung zu einem späteren Punkt im Verfahren vorgenommen, dargestellt durch eine Verknüpfung C. Als Nächstes ändert der Entwickler die GUI-Steuerelemente nach Wunsch (Block 66). Danach wird die Prozess-Darstellung auf dem nächsten Blatt der Zeichnungen (genauer 5C) fortgesetzt wie durch eine Verknüpfung D dargestellt.
  • In 5C an der Verknüpfung D wird eine Abfrage durchgeführt, ob es noch mehr Datennamen im Formular gibt (Rhombus 68). Wenn die Antwort auf diese Abfrage Ja lautet, überprüft der Entwickler, ob es ein dazugehöriges GUI-Steuerelement gibt, und weist diesem einen Datennamen zu (Block 69). Sobald alle Datennamen in dem Prozess überprüft wurden, wird der Rhombus 68 über den Nein-Zweig verlassen, und der Prozess geht zu einem anderen Schritt, in welchem der Entwickler das Development Studio nutzt, um einen neuen SCL-Text zu erstellen (Block 70). Danach nutzt der Entwickler das Development Studio, um den neuen SCL-Text in das Entwicklungs- Repository 19 zu stellen (Block 71). Nach Abschluss dieses Schritts findet ein Rücksprung zu dem Teil des Verfahrens statt, der in 5B an der Verknüpfung A dargestellt ist, und im Speziellen zu der Abfrage im Rhombus 64. Sobald alle Formulare in der Partition modifiziert wurden, wird der Rhombus 64 über den "Nein"-Zweig an der Verknüpfung C verlassen, und der Prozess wird in 5C fortgesetzt, woraufhin die Partition, welche die SCL-Dateien und die HRD/WDF-Dateien enthält, aus dem Entwicklungs-Repository 19 exportiert wird (Block 72). Die exportierte Partition wird in das Webserver-Repository 18 importiert (Block 73), und der Prozess endet (Blase 74).
  • An diesem Punkt ist der SCL-Text für die Formulare in der letzten Anwendung gemäß den Anweisungen des Entwicklers/Benutzers entwickelt worden.
  • In 6A ist die erste von zehn Seiten einer Zeichnung dargestellt, die das Laufzeitverfahren zeigt, welches die Schritte der vorliegenden Erfindung einschließt. Das Verfahren beginnt im Client 15 mit einer Start-Blase 80, gefolgt von einem Prozess-Schritt, der als Reaktion auf die Eingabe oder Auswahl eines URL durchgeführt wird, welcher bestimmte Elemente enthält, darunter einen "Öffnen"-Befehl, einen Formularnamen, ein Script-Namen und einen Partition-Namen. Ein Webbrowser leitet den URL an den Webserver 14 weiter, ohne ihn zu interpretieren (Block 81). Als Nächstes wird im Webserver 14 der URL an den Web Agent weitergegeben (an den er adressiert ist), und er wartet auf eine Reaktion vom Web Agent (Block 82).
  • Der Web Agent analysiert dann den URL vom Webserver 14, um den Befehl zu erhalten, der in ihn eingebettet ist (Block 83). Als Nächstes wird eine Abfrage durchgeführt, ob der Befehl "Öffnen" lautet oder nicht (Rhombus 84). Wenn die Antwort auf diese Abfrage "Nein" lautet, führt ein Zweig zu einem späteren Punkt im Prozess, dargestellt durch eine Verknüpfung R. Wenn hingegen die Antwort auf diese Abfrage "Ja" lautet, analysiert der Web Agent den URL weiter (Block 85), um Folgendes zu erhalten:
    • 1.) die zu verwendende Partition im Repository 18 und
    • 2.) das Script, um mit dem Host zu kommunizieren. Die Prozess-Darstellung wird in 6B an der Verknüpfung G fortgesetzt.
  • In 6B an der Verknüpfung G wird eine Abfrage durchgeführt, ob eine offene Verbindung zu der Anwendung im Host 10 vorhanden ist (Rhombus 88). Lautet die Antwort auf diese Abfrage Ja, so nutzt der Web Agent die Script-Information, um eine offene Verbindung zur Anwendung im Host 10 zu lokalisieren (Block 89). Wenn hingegen die Antwort auf diese Abfrage Nein lautet, so nutzt der Web Agent die Script-Information, um eine Verbindung zum Host 10 zu öffnen (Block 90). Nach Beendigung von entweder Schritt 89 oder Schritt 90 fordert der Web Agent Formulardaten für das angeforderte Formular über die offene Verbindung an (Block 91). Danach ruft der Web Agent, unter Verwendung der Partitions-Information aus dem URL, den SCL-Text und die WDF- oder HRD-Datei aus seinem Repository 18 ab, die für das Anwendungs-Formular entwickelt wurden (Block 92). Die Prozess-Darstellung wird auf dem nächsten Blatt Zeichnungen fortgesetzt, dargestellt durch eine Verknüpfung H.
  • In 6C an der Verknüpfung H analysiert der Web Agent die WDF- oder HRD-Datei und verknüpft Datennamen aus ihr mit entsprechenden Datenwerten von den zurückgelieferten Anwendungs-Formular-Daten, um Datennamen-/Datenwert-Paare zu bilden (Block 93). Als Nächstes erzeugt der Web Agent eine HTML-Seite mit einem Objektverweis auf das SCL Web Control, deren Parameter Folgendes einschließen:
    • 1.)den SCL-Text selbst,
    • 2.)eine Liste der Datennamen-/Datenwert-Paare und
    • 3.)weitere Informationen, die für die Darstellung der SCL und Interpretation der Datennamen-/Datenwert-Paare notwendig sind (Block 94).
  • Der Web Agent liefert dann die generierte HTML-Seite an den Webserver zurück (Block 95). Danach liefert der Webserver, der auf die Antwort vom Web Agent gewartet hat, die HTML-Seite an den Webbrowser zurück (Block 96). Die Prozess-Darstellung wird auf dem nächsten Blatt Zeichnungen im PC 15 fortgesetzt, wie durch eine Verknüpfung I angezeigt.
  • In 6D an der Verknüpfung I analysiert der Webbrowser die HTML-Seite (Block 98). Nachdem der Objektverweis auf das SCL Web Control gefunden wurde, wird eine Abfrage durchgeführt, ob das SCL Web Control vorhanden ist (Rhombus 99). Wenn die Antwort Nein lautet, wird das SCL Web Control heruntergeladen (Block 100). Sobald das SCL Web Control vorliegt, ruft der Browser es auf und gibt ihm die Parameter von der HTML-Seite und andere notwendige Informationen, einschließlich Verweisen auf das Fenster des Webbrowsers (Block 101). Danach analysiert das SCL Web Control den SCL-Text-Parameter, der ihm zugeleitet wurde, um Informationen zu erhalten, welche die anzuzeigenden GUI-Steuerelemente betreffen (Block 102).
  • Als Nächstes wird eine Abfrage durchgeführt, ob es mehr SCL-Konstrukte mit einem anzuzeigenden GUI-Steuerelement gibt (Rhombus 103). Wenn die Antwort auf diese Abfrage Nein lautet, wird eine Abzweigung zu einem späteren Teil des Prozesses vorgenommen, der später beschrieben wird, gekennzeichnet durch eine Verknüpfung J. Wenn hingegen die Antwort auf diese Abfrage Ja lautet, nutzt das SCL Web Control die Informationen zur Art des Steuerelements und zur Positionierung aus dem SCL-Konstrukt, um ein GUI-Steuerelement der angegebenen Art an der angegebenen Position in dem Fenster darzustellen, dessen Referenz ihm als Parameter übergeben wurde (Block 104). Als Nächstes nutzt das SCL Web Control Schriftart-Information vom SCL-Konstrukt, um Schriftart-Eigenschaften des GUI-Steuerelements festzulegen (Block 105). Die Prozess-Darstellung wird auf dem nächsten Blatt Zeichnungen fortgesetzt wie durch eine Verknüpfung K angezeigt.
  • In 6E an der Verknüpfung K nutzt das SCL Web Control Vordergrund-/Hintergrund-Farbinformation aus dem SCL-Konstrukt, um Farbeigenschaften des GUI-Steuerelements festzulegen (Block 106). Nach diesem Schritt wird ein Rücksprung zum Rhombus 103 vorgenommen (über eine Verknüpfung T zur 6D), zwecks Verarbeitung des nächsten SCL-Konstrukts. Sobald alle SCL-Konstrukte verarbeitet wurden, wird eine Abzweigung über die Verknüpfung J zu einem Prozess-Schritt genommen, worin das SCL Web Control den ihm übermittelten SCL-Text-Parameter analysiert, um Informationen bezüglich Datennamen für die anzuzeigenden GUI-Steuerelemente zu erhalten (Block 107). Danach wird eine Abfrage durchgeführt, ob es mehr Konstrukte gibt, die einen Datennamen haben (Rhombus 108). Wenn die Antwort auf diese Abfrage Ja lautet, lokalisiert das SCL Web Control das entsprechende GUI-Steuerelement und stellt eine Verknüpfung zwischen dem Datennamen und dem GUI-Steuerelement her (Block 109).
  • Das SCL Web Control nutzt dann Informationen aus dem SCL-Text und einen Datenwert aus der Datennamen-/Datenwert-Liste, um Informationen zum Ausgangszustand und die Inhalte des dazugehörigen GUI-Steuerelements festzulegen (Block 110). Als Nächstes wird zwecks Verarbeitung des nächsten Konstrukts ein Rücksprung zum Rhombus 108 vorgenommen. Sobald alle Konstrukte verarbeitet wurden, wird eine Verzweigung zu einem Prozess-Schritt genommen, worin das SCL Web Control den ihm übermittelten SCL-Text-Parameter analysiert, um Verweise auf Objekte zu erhalten, die im Web Agent-Repository 18 gespeichert sind (Block 111). Die Prozess-Darstellung wird auf dem nächsten Blatt Zeichnungen fortgesetzt, wie durch eine Verknüpfung L gekennzeichnet.
  • In 6F an der Verknüpfung L wird eine Abfrage durchgeführt, ob es mehr Verweise auf ein Repository-Objekt gibt (Rhombus 113). Wenn die Antwort auf diese Abfrage Nein lautet, wird eine Verzweigung zu einem später beschriebenen Teil des Prozesses genommen, dargestellt durch eine Verknüpfung Q. Wenn hingegen die Antwort auf die Abfrage Ja lautet, konstruiert das SCL Web Control eine Nachricht an den Web Agent für das Objekt, die Folgendes enthält:
    • 1.) den Namen des Objekts vom SCL-Text und
    • 2.) den Partition-Namen vom ursprünglichen URL, der in Schritt 81, 6A, abgeleitet wurde.
  • Im Webserver 14 analysiert der Web Agent die empfangene Nachricht, um den Namen des angeforderten Objekts und den Namen der Partition zu erhalten, in der es sich befindet (Block 115). Als Nächstes benutzt der Web Agent den Namen des Objekts und die Partition, in der es sich befindet, um den Inhalt des Objekts aus dem Webserver-Repository 18 abzurufen (Block 116). Danach konstruiert der Web Agent eine Antwortnachricht, die den Inhalt des Objekts aus dem Webserver-Repository 18 enthält (Block 117).
  • Die Prozess-Darstellung wird auf dem nächsten Blatt Zeichnungen fortgesetzt, wie durch eine Verknüpfung M gekennzeichnet.
  • In 6G an der Verknüpfung M liefert der Web Agent die Antwortnachricht an das SCL Web Control, das auf diese Antwort gewartet hat (Block 120). Im Client 15 extrahiert das SCL Web Control den Inhalt des angeforderten Objekts aus der vom Web Agent empfangenen Antwortnachricht und verknüpft ihn mit seinem Datennamen (Block 121). Als Nächstes lokalisiert das SCL Web Control das GUI-Steuerelement, das mit dem Datennamen verknüpft ist (Block 122). Das SCL Web Control platziert dann den Inhalt des angeforderten Objekts in das so lokalisierte GUI-Steuerelement (Block 123). An diesem Punkt des Prozesses wird ein Rücksprung zum Rhombus 113 in 6F, gekennzeichnet durch eine Verknüpfung L, zwecks Verarbeitung des nächsten Verweises auf ein Repository-Objekt vorgenommen.
  • Die Verknüpfung Q vom Nein-Zweig des Rhombus 113 (6F) schneidet den Prozess an diesem Punkt. Als Reaktion auf Eingaben durch einen Benutzer des Clients 15 interpretiert das Web Control Benutzereingaben und nutzt sie, um von einem GUI-Steuerelement zum anderen zu navigieren (Block 124). Die Prozess-Darstellung wird auf dem nächsten Blatt Zeichnungen fortgesetzt, wie durch eine Verknüpfung N dargestellt.
  • In 6H an der Verknüpfung N interpretiert das Web Control, als Reaktion auf Eingaben durch einen Benutzer des Clients 15, die den Abschluss der Interaktion mit den dargestellten GUI-Steuerelementen anzeigen, solche Eingaben und ruft den Prozess auf, der die Daten an die Host-Anwendung sendet (Block 126). Dieser Prozess beginnt mit einem Prozess-Schritt, wo das SCL Web Control jedes GUI-Steuerelement untersucht, das es zuvor dargestellt hat (Block 127). Danach wird eine Abfrage durchgeführt, ob es mehr GUI-Steuerelemente gibt, die mit einem Datennamen verknüpft sind (Rhombus 128). Wenn die Antwort auf diese Abfrage Nein lautet, wird eine Verzweigung zu einem späteren Punkt im Prozess vorgenommen, wie durch eine Verknüpfung O dargestellt. Wenn hingegen die Antwort auf diese Abfrage Ja lautet, erhält das SCL Web Control den Inhalt des GUI-Steuerelements und stellt diesen Wert und den Datennamen in einen Puffer (Block 129). Nach Beendigung dieses Schritts findet ein Rücksprung zum Rhombus 128 statt zwecks erneuter Abfrage, ob mehr GUI-Steuerelemente mit einem Datennamen verknüpft sind. Wenn alle GUI-Steuerelemente verarbeitet wurden, geht der Prozess zum nächsten Blatt Zeichnungen, wie durch die Verknüpfung O dargestellt.
  • In 6J an der Verknüpfung O, immer noch im Client 15, konstruiert das SCL Web Control einen URL des Typs EINGABE, adressiert an den Webserver, der im ursprünglichen URL (abgeleitet in Schritt 81, 6A) genannt ist, Folgendes enthaltend:
    • 1.) die Puffer-Datennamen-/Datenwert-Paare,
    • 2.) den Host-Anwendungs-Formular-Namen,
    • 3.) einen Befehl (in diesem Fall "Senden"),
    • 4.) Partition-Namen und
    • 5.) Script-Namen (Block 131).
  • Das SCL Web Control liefert dann den URL an den Webbrowser (Block 132). Als Nächstes sendet der Webbrowser den URL an den Webserver 14 (Block 133). Im Webserver und als Reaktion auf den URL aus dem vorhergehenden Schritt liefert der Webserver den URL an den PowerClient-Web Agent (an den er adressiert ist) und wartet auf eine Antwort (Block 134). Als Nächstes analysiert der Web Agent den URL, um den Befehl zu erhalten (Block 135). Danach wird eine Abfrage durchgeführt, ob der Befehl "Senden" lautet (Rhombus 136). Wenn die Antwort auf diese Abfrage Nein lautet, wird eine Fehlermeldung ausgegeben (Blase 137). Es ist anzumerken, dass die Verknüpfung R, die vom Rhombus 84 (6A) stammt, und eine Meldung, dass der Befehl nicht "Öffnen" lautet, eine weitere Eingabe in den Rhombus 136 ist. Die Fehlermeldung wird ausgegeben, da der Befehl weder "Öffnen" noch "Senden" lautet, welches die einzigen zwei Möglichkeiten sind. Wenn hingegen die Antwort auf diese Abfrage Ja lautet, wird der Prozess auf dem nächsten Blatt Zeichnungen fortgesetzt, wie durch eine Verknüpfung P dargestellt.
  • In 6K an der Verknüpfung P analysiert der Web Agent, nachdem er ermittelt hat, dass der Befehl "Senden" lautet, weiter den URL, um Folgendes zu erhalten:
    • 1.) den Datennamen-/Datenwert-Puffer,
    • 2.) den Namen des Formulars, mit dem diese Daten verknüpft sind,
    • 3.) Partition-Namen und
    • 4.) Script-Namen (Block 140).
  • Der Web Agent benutzt dann den so erworbenen Namen des Host-Anwendungs-Formulars, um auf das HRD- oder WDF-Objekt für das Formular vom Web Agent-Repository 18 zuzugreifen (Block 141). Als Nächstes extrahiert der Web Agent, unter Verwendung der HRD- oder WDF-Dateien als Hilfsmittel, die Felder aus den Datennamen-/Datenwert-Puffern und erstellt einen Puffer zur Übertragung an die Host-Anwendung im Host 10 (Block 142). Danach sendet der Web Agent den Host-Datenpuffer an die Host-Anwendung unter Verwendung des in Schritt 140 erworbenen Scriptnamens. Da der Befehl "Senden" lautet, wird die Verbindung durch einen vorhergehenden "Öffnen"-Befehl hergestellt worden sein (Block 143). Er wartet auf eine Antwort vom Host 10, die den Namen des nächsten Host-Anwendungs-Formulars einschließt. Schließlich ruft der Web Agent den SCL-Text und die HRD- oder WDF-Datei, die für das nächste Host-Anwendungs-Formular entwickelt wurden, aus dem Repository 18 ab. Nach Abschluss dieses Schritts wird der Prozess wiederholt durch einen Rücksprung zum Prozess-Schritt 93 (6C) wie durch die Verknüpfung H dargestellt.
  • Das Verfahren der vorliegenden Erfindung ist nützlich in einem Rechnersystem mit mindestens einem Server und einer Vielzahl von Clients, die damit über ein Netzwerk verbunden sind. Der Server schließt eine Zentraleinheit ein, die ein Webserver-Programm ausführt, und hat ein damit gekoppeltes Repository zum Speichern von Beschreibungssprache eines anzuzeigenden Formulars. Der Webserver ist mit einem Host gekoppelt, der eine Zentraleinheit hat, die eine Altanwendung ausführt, welche das Formular enthält; all dies ist in 1 dargestellt und oben beschrieben. Mindestens einer der Clients führt ein Webbrowser-Programm aus. Das Verfahren der vorliegenden Erfindung arbeitet im Server und im Client, um die Datenbindung einer Unternehmensanwendung zu unterstützen. Wie oben beschrieben, wird das Programm, das im Client ausgeführt wird, als SCL Control bezeichnet, und das Programm, das im Webserver läuft, wird als Web Agent bezeichnet.
  • In 7 ist eine Zusammenfassung des Verfahrens dieser Erfindung dargestellt. Der Prozess beginnt mit einer Start-Blase 150, gefolgt von einem Schritt, in dem der Browser einen von einem Benutzer eingegebenen URL an den Web Agent weiterleitet, ohne ihn zu interpretieren (Block 151). Der Web Agent öffnet die Formulare und fordert ein erstes Formular an (Block 152). Als Nächstes wird eine Datenbindung erzeugt durch die Verknüpfung von Datennamen mit vom Host empfangenen Datenwerten, die an den Client gesendet wird (Block 153). Das SCL Control-Programm verarbeitet dann die Datenbindung durch Lokalisierung entsprechender GUI-Steuerelemente und Herstellung einer Verknüpfung zwischen jedem der Datennamen und entsprechenden GUI-Steuerelementen (Block 154). Nach der Benutzer-Interaktion mit den angezeigten GUI-Steuerelementen erwirbt das SCL Control-Programm den Inhalt jedes der entsprechenden GUI-Steuerelemente, verknüpft mit einem Datennamen, und stellt ein Datenwert-/Datennamen-Paar in einen Puffer (Block 155). Diese Ergebnisse werden an den Server geleitet, wo der Web Agent den Inhalt des Puffers verarbeitet und ihn an den Host sendet (Block 156). Der Server ruft dann ein nächstes Formular vom Host ab. Aus dem oben Stehenden geht hervor, dass die GUI-Steuerelemente als Werte und Zustände aus dem Formular enthaltend dargestellt werden.
  • Obwohl die Erfindung mit Bezug auf eine bestimmte Ausführungsform beschrieben wurde, ist diese Beschreibung nicht als einschränkend zu verstehen. Verschiedene Modifikationen der offenbarten Ausführungsform ebenso wie alternative Ausführungsformen der Erfindung werden für den Fachmann unter Bezugnahme auf die Beschreibung der Erfindung offensichtlich werden. Es ist daher beabsichtigt, dass die beigefügten Ansprüche alle derartigen Modifikationen von Ausführungsformen abdecken, die innerhalb des wahren Schutzumfangs der Erfindung liegen.

Claims (8)

  1. Ein Verfahren zur Bindung einer Unternehmensanwendung in einem Rechnersystem mit mindestens einem Server (14), einer Vielzahl von Clients (15, 16) und einem Host (10), wobei die Vielzahl von Clients (15, 16) mit dem Server (14) über ein Netzwerk (13) verbunden ist, wobei der Server (14) eine Zentraleinheit hat, die ein Webserver-Programm ausführt und ein Repository (18), das dazu gekoppelt ist, um Beschreibungssprache von Formularen zu speichern, die an den Clients (15, 16) angezeigt werden sollen, wobei der Host (10) eine Zentraleinheit hat, die eine Altanwendung ausführt, welche alte Beschreibungen der Formulare enthält, und wobei mindestens einer der Clients (15, 16) ein Webbrowser-Programm ausführt, wobei das Verfahren folgende Schritte umfasst: a. in dem Server (14), Öffnen der Beschreibungssprache eines ersten Formulars und Anfordern (152) von Datenwerten für das erste Formular vom Host (10); b. in dem Server (14), Erzeugen von Datenbindung (153) durch die Verknüpfung von Datennamen, die aus der Beschreibungssprache des ersten Formulars gewonnen werden, mit den Datenwerten, die vom Host (10) empfangen wurden, und Senden von diesen an den Client (15, 16); c. in dem Client (15, 16), Verarbeitung der Datenbindung (154) durch Darstellen von GUI-Steuerelementen von Typen und an Positionen, die den Datennamen entsprechen, Herstellung einer Verknüpfung zwischen jedem der Datennamen und einem entsprechenden GUI-Steuerelement und Anzeigen der Datenwerte, die den jeweiligen dazugehörigen Datennamen entsprechen, an den GUI-Steuerelementen, wobei die GUI-Steuerelemente visuelle Elemente einer GUI-Anzeige sind; d. in dem Client (15, 16), als Reaktion auf die Dateneingabe in die GUI-Steuerelemente durch einen Benutzer, Erhalten der Inhalte jedes der entsprechenden GUI-Steuerelements, das mit einem entsprechenden Datennamen verknüpft ist, und Stellen der Datenwerte, die der Dateneingabe durch den Benutzer entsprechen, und der entsprechenden Datennamen in einen Puffer (155); e. in dem Server (14), Verarbeitung (156) der Inhalte des Puffers und Senden (156) der Datenwerte, die der Dateneingabe durch den Benutzer entsprechen, von dort an den Host (10); f. in dem Server (14), Abrufen (156) eines nächsten Formulars vom Host (10); wodurch die GUI-Steuerelemente angezeigt werden, Werte und Zustände aus dem Formular enthaltend, zum Zwecke der Benutzer-Interaktion mit dem Formular enthalten.
  2. Das Verfahren nach Anspruch 1, worin Schritt a davon das Empfangen einer URL vom Webbrowser und die syntaktische Analyse der URL, um einen Befehl von einer Gruppe zu erhalten, die einen "Öffnen"-Befehl oder einen "Sende"-Befehl einschließt, einschließt.
  3. Das Verfahren nach Anspruch 2, das weiter als Reaktion auf den "Öffnen"-Befehl die weitere syntaktische Analyse der URL einschhließt, um eine Partition im Repository (18) und ein Script zur Kommunikation mit dem Host (10) zu erhalten, wobei die Partition einen Namen einschließt, der vergeben wird, um eine Reihe von Formularen darzustellen, die mit einer Altanwendung verknüpft sind, und das Script eine Sequenz von Anweisungen einschließt, die verwendet werden, um Konnektivität mit dem Host (10) und einer spezifischen Altanwendung auf dem Host (10) herzustellen.
  4. Das Verfahren nach Anspruch 3, das weiter den Schritt des Abrufens von Folgendem aus dem Repository (18) einschließt: Formular-Definitions-Sprach-Text und einer Datei, entwickelt für das Formular zum Zweck der Abbildung von Elementen eines Datenstroms aus der Altanwendung auf Anwendungs-Datennamen, die in dem Formular-Definitions-Sprach-Text enthalten sind.
  5. Das Verfahren nach Anspruch 4, das weiter den Schritt der syntaktischen Analyse der entwickelten Datei für das Formular und der Verknüpfung der Datennamen der Altanwendung mit entsprechenden Altanwendungs-Datenwerten aus einem Datenstrom einschließt, der vom Host zurückgegeben wird, wodurch Datennamen-/Datenwert-Paare gebildet werden.
  6. Das Verfahren nach Anspruch 5, das weiter den Schritt der Erstellung einer HTML-Objektreferenz an den Client einschließt, mit Parametern, welche die Datennamen-/Datenwert-Paare und den Formular-Beschreibungs-Sprach-Text einschließen.
  7. Das Verfahren nach Anspruch 6, das weiter den Schritt der Erzeugung einer HTML-Seite einschließt, welche die Objektreferenz auf den Client enthält.
  8. Das Verfahren nach Anspruch 7, das weiter den Schritt der Zurückgabe der HTML-Seite an das Webbrowser-Programm einschließt.
DE69838257T 1997-09-30 1998-09-30 Verfahren zum erweitern der hypertext markup sprache (html) zur unterstützung von unternehmungsanwendungsdatenbindung Expired - Lifetime DE69838257T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US941437 1997-09-30
US08/941,437 US5940075A (en) 1997-09-30 1997-09-30 Method for extending the hypertext markup language (HTML) to support enterprise application data binding
PCT/US1998/020500 WO1999017236A1 (en) 1997-09-30 1998-09-30 A method for extending the hypertext markup language (html) to support enterprise application data binding

Publications (2)

Publication Number Publication Date
DE69838257D1 DE69838257D1 (de) 2007-09-27
DE69838257T2 true DE69838257T2 (de) 2008-05-08

Family

ID=25476461

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69838257T Expired - Lifetime DE69838257T2 (de) 1997-09-30 1998-09-30 Verfahren zum erweitern der hypertext markup sprache (html) zur unterstützung von unternehmungsanwendungsdatenbindung

Country Status (6)

Country Link
US (1) US5940075A (de)
EP (1) EP1019853B1 (de)
AU (1) AU758965B2 (de)
CA (1) CA2304608C (de)
DE (1) DE69838257T2 (de)
WO (1) WO1999017236A1 (de)

Families Citing this family (158)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6088515A (en) 1995-11-13 2000-07-11 Citrix Systems Inc Method and apparatus for making a hypermedium interactive
US6950991B2 (en) * 1995-11-13 2005-09-27 Citrix Systems, Inc. Interacting with software applications displayed in a web page
US6370552B1 (en) * 1997-05-14 2002-04-09 Citrix Systems, Inc. Apparatus and method for displaying application output in an HTML document
US6480600B1 (en) 1997-02-10 2002-11-12 Genesys Telecommunications Laboratories, Inc. Call and data correspondence in a call-in center employing virtual restructuring for computer telephony integrated functionality
US6104802A (en) 1997-02-10 2000-08-15 Genesys Telecommunications Laboratories, Inc. In-band signaling for routing
US7031442B1 (en) 1997-02-10 2006-04-18 Genesys Telecommunications Laboratories, Inc. Methods and apparatus for personal routing in computer-simulated telephony
US6286033B1 (en) * 2000-04-28 2001-09-04 Genesys Telecommunications Laboratories, Inc. Method and apparatus for distributing computer integrated telephony (CTI) scripts using extensible mark-up language (XML) for mixed platform distribution and third party manipulation
US5941949A (en) 1997-05-14 1999-08-24 Citrix Systems, Inc. System and method for transmitting data from a server application to more than one client node
US6985943B2 (en) 1998-09-11 2006-01-10 Genesys Telecommunications Laboratories, Inc. Method and apparatus for extended management of state and interaction of a remote knowledge worker from a contact center
US6711611B2 (en) 1998-09-11 2004-03-23 Genesis Telecommunications Laboratories, Inc. Method and apparatus for data-linking a mobile knowledge worker to home communication-center infrastructure
USRE46528E1 (en) 1997-11-14 2017-08-29 Genesys Telecommunications Laboratories, Inc. Implementation of call-center outbound dialing capability at a telephony network level
US7907598B2 (en) 1998-02-17 2011-03-15 Genesys Telecommunication Laboratories, Inc. Method for implementing and executing communication center routing strategies represented in extensible markup language
US6332154B2 (en) 1998-09-11 2001-12-18 Genesys Telecommunications Laboratories, Inc. Method and apparatus for providing media-independent self-help modules within a multimedia communication-center customer interface
US6229534B1 (en) * 1998-02-27 2001-05-08 Sabre Inc. Methods and apparatus for accessing information from multiple remote sources
US6076108A (en) * 1998-03-06 2000-06-13 I2 Technologies, Inc. System and method for maintaining a state for a user session using a web system having a global session server
US6026437A (en) * 1998-04-20 2000-02-15 International Business Machines Corporation Method and system in a computer network for bundling and launching hypertext files and associated subroutines within archive files
US6496203B1 (en) * 1998-05-27 2002-12-17 Microsoft Corporation Standardized and application-independent graphical user interface components implemented with web technology
USRE46153E1 (en) 1998-09-11 2016-09-20 Genesys Telecommunications Laboratories, Inc. Method and apparatus enabling voice-based management of state and interaction of a remote knowledge worker in a contact center environment
US6170081B1 (en) * 1998-09-17 2001-01-02 Unisys Coporation Method and system for interfacing to a variety of software development tools
US7117433B1 (en) * 1998-09-29 2006-10-03 International Business Machines Corporation HTML mapping substitution graphical user interface for display of elements mapped to HTML files
US6487566B1 (en) 1998-10-05 2002-11-26 International Business Machines Corporation Transforming documents using pattern matching and a replacement language
US6569207B1 (en) 1998-10-05 2003-05-27 International Business Machines Corporation Converting schemas to component models
US6480865B1 (en) * 1998-10-05 2002-11-12 International Business Machines Corporation Facility for adding dynamism to an extensible markup language
US6928469B1 (en) 1998-12-29 2005-08-09 Citrix Systems, Inc. Apparatus and method for determining a program neighborhood for a client node in a client-server network using markup language techniques
US8438487B1 (en) * 1999-05-24 2013-05-07 Catherine Lin-Hendel Method and system for one-click navigation and browsing of electronic media and their category structure as well as tracking the navigation and browsing thereof
US6349404B1 (en) * 1999-06-08 2002-02-19 Unisys Corp. Object-oriented repository, a system and method for reusing existing host-based application assets for the development of business-centric applications
US6643825B1 (en) * 1999-07-14 2003-11-04 International Business Machines Corporation Methods, systems, and computer program products for applying styles to host screens based on host screen content
US6931623B2 (en) * 1999-08-30 2005-08-16 Touchnet Information Systems, Inc. Method of accessing data and logic on existing systems through dynamic construction of software components
US6209124B1 (en) * 1999-08-30 2001-03-27 Touchnet Information Systems, Inc. Method of markup language accessing of host systems and data using a constructed intermediary
US6889360B1 (en) * 1999-08-30 2005-05-03 International Business Machines Corporation Representing IMS transaction definitions as XML documents
US6549949B1 (en) 1999-08-31 2003-04-15 Accenture Llp Fixed format stream in a communication services patterns environment
US6571282B1 (en) 1999-08-31 2003-05-27 Accenture Llp Block-based communication in a communication services patterns environment
US6601234B1 (en) 1999-08-31 2003-07-29 Accenture Llp Attribute dictionary in a business logic services environment
US6615253B1 (en) 1999-08-31 2003-09-02 Accenture Llp Efficient server side data retrieval for execution of client side applications
US6715145B1 (en) 1999-08-31 2004-03-30 Accenture Llp Processing pipeline in a base services pattern environment
US6636242B2 (en) 1999-08-31 2003-10-21 Accenture Llp View configurer in a presentation services patterns environment
US6954220B1 (en) 1999-08-31 2005-10-11 Accenture Llp User context component in environment services patterns
US6640249B1 (en) 1999-08-31 2003-10-28 Accenture Llp Presentation services patterns in a netcentric environment
US6578068B1 (en) 1999-08-31 2003-06-10 Accenture Llp Load balancer in environment services patterns
US6640244B1 (en) 1999-08-31 2003-10-28 Accenture Llp Request batcher in a transaction services patterns environment
US6640238B1 (en) 1999-08-31 2003-10-28 Accenture Llp Activity component in a presentation services patterns environment
US6842906B1 (en) 1999-08-31 2005-01-11 Accenture Llp System and method for a refreshable proxy pool in a communication services patterns environment
US7289964B1 (en) 1999-08-31 2007-10-30 Accenture Llp System and method for transaction services patterns in a netcentric environment
US6742015B1 (en) 1999-08-31 2004-05-25 Accenture Llp Base services patterns in a netcentric environment
US6601192B1 (en) 1999-08-31 2003-07-29 Accenture Llp Assertion component in environment services patterns
US6332163B1 (en) * 1999-09-01 2001-12-18 Accenture, Llp Method for providing communication services over a computer network system
US6836780B1 (en) 1999-09-01 2004-12-28 Jacada, Ltd. Method and system for accessing data in legacy applications
US6880010B1 (en) * 1999-09-10 2005-04-12 International Business Machines Corporation Methods, systems, and computer program products that request updated host screen information from host systems in response to notification by servers
US6687745B1 (en) * 1999-09-14 2004-02-03 Droplet, Inc System and method for delivering a graphical user interface of remote applications over a thin bandwidth connection
US7246146B1 (en) * 1999-11-18 2007-07-17 International Business Machines Corporation Legacy host system hot link modeling and navigation
US7929978B2 (en) 1999-12-01 2011-04-19 Genesys Telecommunications Laboratories, Inc. Method and apparatus for providing enhanced communication capability for mobile devices on a virtual private network
US6864904B1 (en) * 1999-12-06 2005-03-08 Girafa.Com Inc. Framework for providing visual context to www hyperlinks
US7133873B1 (en) * 1999-12-14 2006-11-07 United Parcel Service Of America, Inc. System and method for modifying output of computer program without source code modifications
US6772413B2 (en) 1999-12-21 2004-08-03 Datapower Technology, Inc. Method and apparatus of data exchange using runtime code generator and translator
US6901377B1 (en) 2000-01-07 2005-05-31 General Electric Company Methods and systems for aviation parts, information and services
US6810429B1 (en) 2000-02-03 2004-10-26 Mitsubishi Electric Research Laboratories, Inc. Enterprise integration system
WO2001057651A2 (en) * 2000-02-07 2001-08-09 Attachmate Corporation System and method for user interface translation
US8397223B2 (en) * 2000-03-17 2013-03-12 Gutenberg Printing Llc Web application generator
US6985946B1 (en) * 2000-05-12 2006-01-10 Microsoft Corporation Authentication and authorization pipeline architecture for use in a web server
US6990653B1 (en) 2000-05-18 2006-01-24 Microsoft Corporation Server-side code generation from a dynamic web page content file
US6757900B1 (en) 2000-05-18 2004-06-29 Microsoft Corporation State management of server-side control objects
US7013340B1 (en) 2000-05-18 2006-03-14 Microsoft Corporation Postback input handling by server-side control objects
US6961750B1 (en) * 2000-05-18 2005-11-01 Microsoft Corp. Server-side control objects for processing client-side user interface elements
US6792607B1 (en) * 2000-05-18 2004-09-14 Microsoft Corporation Databinding using server-side control objects
US6795851B1 (en) 2000-06-19 2004-09-21 Path Communications Inc. Web-based client/server communication channel with automated client-side channel endpoint feature detection and selection
US7624356B1 (en) 2000-06-21 2009-11-24 Microsoft Corporation Task-sensitive methods and systems for displaying command sets
US7155667B1 (en) 2000-06-21 2006-12-26 Microsoft Corporation User interface for integrated spreadsheets and word processing tables
US6883168B1 (en) 2000-06-21 2005-04-19 Microsoft Corporation Methods, systems, architectures and data structures for delivering software via a network
US7000230B1 (en) 2000-06-21 2006-02-14 Microsoft Corporation Network-based software extensions
US6948135B1 (en) 2000-06-21 2005-09-20 Microsoft Corporation Method and systems of providing information to computer users
US7117435B1 (en) 2000-06-21 2006-10-03 Microsoft Corporation Spreadsheet fields in text
US6874143B1 (en) 2000-06-21 2005-03-29 Microsoft Corporation Architectures for and methods of providing network-based software extensions
US7346848B1 (en) 2000-06-21 2008-03-18 Microsoft Corporation Single window navigation methods and systems
US7191394B1 (en) 2000-06-21 2007-03-13 Microsoft Corporation Authoring arbitrary XML documents using DHTML and XSLT
US6782540B1 (en) * 2000-07-31 2004-08-24 Sprint Communications Company, L.P. COBOL/natural copybook to Java conversion Wizard
US6851087B1 (en) 2000-10-04 2005-02-01 International Business Machines Corporation System and method of processing computer form data
US6532471B1 (en) 2000-12-11 2003-03-11 International Business Machines Corporation Interface repository browser and editor
US20030189593A1 (en) * 2001-01-05 2003-10-09 Yarvin Curtis G. Method and apparatus for dynamically updating a markup language based user interface
US7493391B2 (en) * 2001-02-12 2009-02-17 International Business Machines Corporation System for automated session resource clean-up by determining whether server resources have been held by client longer than preset thresholds
US7380250B2 (en) 2001-03-16 2008-05-27 Microsoft Corporation Method and system for interacting with devices having different capabilities
US6950831B2 (en) * 2001-03-23 2005-09-27 Siemens Medical Solutions Health Services Corporation Processing system for use with a user interface display
US6948133B2 (en) * 2001-03-23 2005-09-20 Siemens Medical Solutions Health Services Corporation System for dynamically configuring a user interface display
US7493397B1 (en) 2001-06-06 2009-02-17 Microsoft Corporation Providing remote processing services over a distributed communications network
US6944797B1 (en) 2001-06-07 2005-09-13 Microsoft Corporation Method and system for tracing
US6915454B1 (en) 2001-06-12 2005-07-05 Microsoft Corporation Web controls validation
GB2377046A (en) * 2001-06-29 2002-12-31 Ibm Metadata generation
US6898604B1 (en) 2001-06-29 2005-05-24 Microsoft Corporation XML serialization and deserialization
US7162723B2 (en) 2001-06-29 2007-01-09 Microsoft Corporation ASP.NET HTTP runtime
US7594001B1 (en) 2001-07-06 2009-09-22 Microsoft Corporation Partial page output caching
US7120897B2 (en) * 2001-07-10 2006-10-10 Microsoft Corporation User control objects for providing server-side code generation from a user-defined dynamic web page content file
US7216294B2 (en) 2001-09-04 2007-05-08 Microsoft Corporation Method and system for predicting optimal HTML structure without look-ahead
US7428725B2 (en) 2001-11-20 2008-09-23 Microsoft Corporation Inserting devices specific content
US20060005165A1 (en) * 2004-07-02 2006-01-05 Kehinde Alabi System and method for managing the presentation and customization of web applications and web pages
US20030233477A1 (en) * 2002-06-17 2003-12-18 Microsoft Corporation Extensible infrastructure for manipulating messages communicated over a distributed network
EP1387279B1 (de) * 2002-07-31 2008-05-14 Texas Instruments Inc. Cachespeicherkohärenz in einem Multiprozessorsystem
US7386857B2 (en) 2002-09-17 2008-06-10 International Business Machines Corporation Application connector parallelism in enterprise application integration systems
US7461382B2 (en) * 2002-09-30 2008-12-02 Sap Ag Event handling with action instances for event-driven software application
US7574653B2 (en) 2002-10-11 2009-08-11 Microsoft Corporation Adaptive image formatting control
US7415672B1 (en) 2003-03-24 2008-08-19 Microsoft Corporation System and method for designing electronic forms
US7370066B1 (en) 2003-03-24 2008-05-06 Microsoft Corporation System and method for offline editing of data files
US7296017B2 (en) 2003-03-28 2007-11-13 Microsoft Corporation Validation of XML data files
US7913159B2 (en) 2003-03-28 2011-03-22 Microsoft Corporation System and method for real-time validation of structured data files
US7685515B2 (en) * 2003-04-04 2010-03-23 Netsuite, Inc. Facilitating data manipulation in a browser-based user interface of an enterprise business application
US7197515B2 (en) 2003-06-30 2007-03-27 Microsoft Corporation Declarative solution definition
US7451392B1 (en) 2003-06-30 2008-11-11 Microsoft Corporation Rendering an HTML electronic form by applying XSLT to XML using a solution
WO2005008480A2 (en) * 2003-07-10 2005-01-27 Computer Associates Think, Inc. System and method for generating a web-enabled graphical user interface plug-in
EP1652071A2 (de) * 2003-07-11 2006-05-03 Computer Associates Think, Inc. System und verfahren zur dynamischen erzeugung einer graphischen benutzeroberfläche
US7761842B2 (en) * 2003-07-11 2010-07-20 Computer Associates Think, Inc. System and method for generating a graphical user interface (GUI) element
US7406660B1 (en) 2003-08-01 2008-07-29 Microsoft Corporation Mapping between structured data and a visual surface
US7334187B1 (en) 2003-08-06 2008-02-19 Microsoft Corporation Electronic form aggregation
US7596782B2 (en) * 2003-10-24 2009-09-29 Microsoft Corporation Software build extensibility
US7904819B2 (en) * 2003-12-03 2011-03-08 International Business Machines Corporation Self-configuring component for recognizing and transforming host data
US8819072B1 (en) 2004-02-02 2014-08-26 Microsoft Corporation Promoting data from structured data files
US20050177525A1 (en) * 2004-02-06 2005-08-11 Apple John R. Sales and service offer method and apparatus
US7496837B1 (en) 2004-04-29 2009-02-24 Microsoft Corporation Structural editing with schema awareness
US7890604B2 (en) 2004-05-07 2011-02-15 Microsoft Corproation Client-side callbacks to server events
US8065600B2 (en) 2004-05-14 2011-11-22 Microsoft Corporation Systems and methods for defining web content navigation
US9026578B2 (en) 2004-05-14 2015-05-05 Microsoft Corporation Systems and methods for persisting data between web pages
US7464386B2 (en) 2004-05-17 2008-12-09 Microsoft Corporation Data controls architecture
US7849412B2 (en) * 2004-05-21 2010-12-07 Computer Associates Think, Inc. System and method for generating a web control in a Windows development environment
US7281018B1 (en) 2004-05-26 2007-10-09 Microsoft Corporation Form template data source change
US7774620B1 (en) 2004-05-27 2010-08-10 Microsoft Corporation Executing applications at appropriate trust levels
US7530058B2 (en) * 2004-05-28 2009-05-05 Microsoft Corporation Non-compile pages
US20060020883A1 (en) * 2004-05-28 2006-01-26 Microsoft Corporation Web page personalization
US8156448B2 (en) * 2004-05-28 2012-04-10 Microsoft Corporation Site navigation and site navigation data source
US7692636B2 (en) 2004-09-30 2010-04-06 Microsoft Corporation Systems and methods for handwriting to a screen
US20060090139A1 (en) * 2004-10-21 2006-04-27 Microsoft Corporation Collection view objects for displaying data collection items in user interface elements
US20060089941A1 (en) * 2004-10-21 2006-04-27 Microsoft Corporation Data source objects for producing collections of data items
US8487879B2 (en) 2004-10-29 2013-07-16 Microsoft Corporation Systems and methods for interacting with a computer through handwriting to a screen
US7712022B2 (en) 2004-11-15 2010-05-04 Microsoft Corporation Mutually exclusive options in electronic forms
US7721190B2 (en) 2004-11-16 2010-05-18 Microsoft Corporation Methods and systems for server side form processing
US7904801B2 (en) 2004-12-15 2011-03-08 Microsoft Corporation Recursive sections in electronic forms
US7937651B2 (en) 2005-01-14 2011-05-03 Microsoft Corporation Structural editing operations for network forms
US7725834B2 (en) 2005-03-04 2010-05-25 Microsoft Corporation Designer-created aspect for an electronic form template
US8010515B2 (en) 2005-04-15 2011-08-30 Microsoft Corporation Query to an electronic form
US8200975B2 (en) 2005-06-29 2012-06-12 Microsoft Corporation Digital signatures for network forms
US8001459B2 (en) 2005-12-05 2011-08-16 Microsoft Corporation Enabling electronic documents for limited-capability computing devices
US9008075B2 (en) 2005-12-22 2015-04-14 Genesys Telecommunications Laboratories, Inc. System and methods for improving interaction routing performance
US7779343B2 (en) 2006-01-30 2010-08-17 Microsoft Corporation Opening network-enabled electronic documents
US8255883B2 (en) * 2007-04-20 2012-08-28 Microsoft Corporation Translating late bound LINQ expressions into database queries
US8037039B2 (en) * 2007-04-20 2011-10-11 Microsoft Corporation Runtime class database operation
US8250169B2 (en) * 2007-09-24 2012-08-21 Sap Ag Business context data companion tool
US8127237B2 (en) 2007-09-24 2012-02-28 Sap Ag Active business client
US8782530B2 (en) * 2009-03-25 2014-07-15 Sap Ag Method and system for providing a user interface in a computer
US8712953B2 (en) * 2009-03-25 2014-04-29 Sap Ag Data consumption framework for semantic objects
US8880420B2 (en) 2011-12-27 2014-11-04 Grubhub, Inc. Utility for creating heatmaps for the study of competitive advantage in the restaurant marketplace
US9710779B1 (en) 2011-12-27 2017-07-18 Grubhub Holdings, Inc. System, method and apparatus for receiving bids from diners for expedited food delivery
US8595050B2 (en) 2011-12-27 2013-11-26 Grubhub, Inc. Utility for determining competitive restaurants
US20130246977A1 (en) * 2012-03-16 2013-09-19 Microsoft Corporation Multi-context data binding
US10360543B2 (en) 2012-04-23 2019-07-23 Grubhub Holdings Inc. Scraping resistant system and method for placing orders through an internet shopping service
US9009067B1 (en) 2012-04-30 2015-04-14 Grubhub Holdings Inc. System, method and apparatus for managing made-to-order food tickets for a restaurant service
US20130290830A1 (en) * 2012-04-30 2013-10-31 Salesforce.Com, Inc. System and method for managing a viewstate of a web application
US9824410B1 (en) 2013-04-29 2017-11-21 Grubhub Holdings Inc. System, method and apparatus for assessing the accuracy of estimated food delivery time
JP6115293B2 (ja) * 2013-05-02 2017-04-19 株式会社リコー 機器、情報処理端末、情報処理システム、表示制御方法、及びプログラム
US11205153B1 (en) 2013-11-15 2021-12-21 Grubhub Holdings, Inc. System and method for determining time of delivery of order
US9754331B1 (en) 2014-01-30 2017-09-05 Grubhub Holdings Inc. System and method for managing group orders
US10366434B1 (en) 2014-10-22 2019-07-30 Grubhub Holdings Inc. System and method for providing food taxonomy based food search and recommendation
US10762546B1 (en) 2017-09-28 2020-09-01 Grubhub Holdings Inc. Configuring food-related information search and retrieval based on a predictive quality indicator

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5774123A (en) * 1995-12-15 1998-06-30 Ncr Corporation Apparatus and method for enhancing navigation of an on-line multiple-resource information service
US5821937A (en) * 1996-02-23 1998-10-13 Netsuite Development, L.P. Computer method for updating a network design
US5812134A (en) * 1996-03-28 1998-09-22 Critical Thought, Inc. User interface navigational system & method for interactive representation of information contained within a database
US5754830A (en) * 1996-04-01 1998-05-19 Openconnect Systems, Incorporated Server and web browser terminal emulator for persistent connection to a legacy host system and method of operation
US5835712A (en) * 1996-05-03 1998-11-10 Webmate Technologies, Inc. Client-server system using embedded hypertext tags for application and database development
US5760771A (en) * 1996-07-17 1998-06-02 At & T Corp System and method for providing structured tours of hypertext files
US5844552A (en) * 1997-01-23 1998-12-01 Zenith Electronics Corporation Communication of character data in a web television
US5877744A (en) * 1997-02-07 1999-03-02 Seiko Communication Systems Inc. Single button control for information display
US5864866A (en) * 1997-03-26 1999-01-26 International Business Machines Corporation Apparatus and method for providing externalization in an object-oriented environment
US6262729B1 (en) * 1997-04-14 2001-07-17 Apple Computer, Inc. Method and apparatus for binding user interface objects to application objects
US5877766A (en) * 1997-08-15 1999-03-02 International Business Machines Corporation Multi-node user interface component and method thereof for use in accessing a plurality of linked records

Also Published As

Publication number Publication date
WO1999017236A1 (en) 1999-04-08
CA2304608C (en) 2008-12-16
EP1019853B1 (de) 2007-08-15
CA2304608A1 (en) 1999-04-08
AU758965B2 (en) 2003-04-03
DE69838257D1 (de) 2007-09-27
US5940075A (en) 1999-08-17
AU9674598A (en) 1999-04-23
EP1019853A1 (de) 2000-07-19

Similar Documents

Publication Publication Date Title
DE69838257T2 (de) Verfahren zum erweitern der hypertext markup sprache (html) zur unterstützung von unternehmungsanwendungsdatenbindung
DE60126016T2 (de) Serverseitige Kontrollobjekte zur Verarbeitung von kundenseitigen Benutzerschnittstellenelementen
DE60121987T2 (de) Zugreifen auf Daten, die bei einer Zwischenstation gespeichert sind, von einem Dienst aus
DE10135445B4 (de) Integriertes Verfahren für das Schaffen einer aktualisierbaren Netzabfrage
DE60108158T2 (de) Onlineentwicklung von applikationen
DE69729926T2 (de) Netzwerkbrowser
EP2350873B1 (de) Erfassung des visuellen inhalts von browserfenstern
DE69832354T2 (de) Netzwerkverwaltungsrahmenwerk
DE60131683T2 (de) Verfahren und system zur verwaltung von mehreren netzwerk-betriebsmitteln
DE10236188B4 (de) Verfahren, System und Programmprodukt zum Bereitstellen eines Inhalts einer Quellwebsite an eine Verbraucherwebsite durch einen Bildumwandlungsdienst
DE10121790B4 (de) Softwarekonfigurationsverfahren zur Verwendung in einem Computersystem
US6157936A (en) Method for extending the hypertext markup language (HTML) to support a graphical user interface control presentation
DE10348337A1 (de) Inhaltsverwaltungsportal und Verfahren zum Kommunizieren von Informationen
DE10052313B4 (de) Verfahren und Vorrichtung zur Beschränkung des freien Verweisens (Hyperlinking) auf Webseiten der ursprünglichen Inhaltserzeuger (Content producers) durch Internet-Inhaltsverteiler (Content distributors)
DE10048940A1 (de) Erzeugen von Dokumenteninhalten durch Transcodierung mit Hilfe von Java Server Pages
EP1240592A1 (de) Verfahren und system zur verteilung von objekten über ein netzwerk
MXPA01012818A (es) Metodo y aparato para crear servicios de red.
EP1369790A2 (de) Verfahren zur dynamischen Generierung strukturierter Dokumente
EP1241603A1 (de) Internet-Banner
DE10236189A1 (de) Verfahren zum Zugreifen auf Bilderzeugungsinformationen auf einer Bedarfsbasis unter Verwendung einer Web-basierten Bilderzeugung
US7158967B1 (en) XML output definition table for transferring internal data into XML document
DE60032403T2 (de) Speziell adaptierte Wiedergabe und Darstellung von Datenbankinformationen
DE202006021112U1 (de) Vorrichtung zum Bearbeiten von Geschäftsgegenständen, elektronischen Formaten und Arbeitsabläufen
EP1189149A1 (de) Verfahren und Anordnung zur Modifikation einer Webpage
US7124135B1 (en) Step to access native script in a legacy database management system using XML message

Legal Events

Date Code Title Description
8364 No opposition during term of opposition