AT5857U1 - METHOD FOR COMMUNICATING SYSTEMS OF INFORMATION OR CONTROL TECHNOLOGY - Google Patents

METHOD FOR COMMUNICATING SYSTEMS OF INFORMATION OR CONTROL TECHNOLOGY Download PDF

Info

Publication number
AT5857U1
AT5857U1 AT0805802U AT80582002U AT5857U1 AT 5857 U1 AT5857 U1 AT 5857U1 AT 0805802 U AT0805802 U AT 0805802U AT 80582002 U AT80582002 U AT 80582002U AT 5857 U1 AT5857 U1 AT 5857U1
Authority
AT
Austria
Prior art keywords
systems
partial
target
functions
request
Prior art date
Application number
AT0805802U
Other languages
German (de)
Original Assignee
Notes Consulting G M B H
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 Notes Consulting G M B H filed Critical Notes Consulting G M B H
Priority to AT0805802U priority Critical patent/AT5857U1/en
Publication of AT5857U1 publication Critical patent/AT5857U1/en

Links

Landscapes

  • Computer And Data Communications (AREA)

Abstract

Die Erfindung betrifft ein Verfahren zur Kommunikation von Systemen (1, 2, 3) der Informations- oder Steuerungstechnik, wobei zum Zwecke der Kommunikation von einem System (1) eine Anfrage an zumindest ein anderes System (2) gerichtet wird, worauf von zumindest einem Zielsystem (2) auf die Anfrage eine Rückantwort an das Sendesystem (1) übermittelt wird. Zur Schaffung eines derartigen Verfahrens, durch welches die Anbindung von insbesondere heterogenen Systemen (1, 2, 3) in einfacher Weise möglich wird, ist vorgesehen, dass die Anfrage des Sendesystems (1) für das jeweilige Zielsystem (2) spezifische, gespeicherte Teilfunktionen umgesetzt wird, welche Teilfunktionen an das zumindest eine Zielsystem (2) übertragen werden, und dass die zu den Teilfunktionen Teilantworten des zumindest einen Zielsystems (2) zusammengefasst und vor der Übermittlung an das Sendesystem (1) in eine für dieses Sendesystem spezifische Rückantwort umgesetzt werden. Die Umsetzung der Anfrage des Sendesystems (1) erfolgt dabei vorzugsweise entsprechend den Eintragungen einer Tabelle (18) oder dergl.The invention relates to a method for the communication of systems (1, 2, 3) of information or control technology, wherein for the purpose of communication a system (1) sends a request to at least one other system (2), followed by at least one Target system (2) to the request a response to the sending system (1) is transmitted. In order to create a method of this type, by means of which the connection of, in particular, heterogeneous systems (1, 2, 3) is possible in a simple manner, it is provided that the request from the transmission system (1) for the respective target system (2) implements specific, stored partial functions which sub-functions are transferred to the at least one target system (2), and that the partial responses to the sub-functions of the at least one target system (2) are combined and converted into a response specific to this transmission system before being transmitted to the transmission system (1). The request from the transmission system (1) is preferably implemented in accordance with the entries in a table (18) or the like.

Description

       

   <Desc/Clms Page number 1> 
 



   Die Erfindung betrifft ein Verfahren zur Kommunikation von
Systemen der Informations- oder Steuerungstechnik, wobei zum
Zwecke der Kommunikation von einem System eine Anfrage an zumindest ein anderes System gerichtet wird, worauf von zumindest einem Zielsystem auf die Anfrage eine Rückantwort an das Sendesystem übermittelt wird. 



   Ferner betrifft die Erfindung eine Vorrichtung zur Durchführung dieses Verfahrens sowie ein Computerprogrammprodukt, das direkt in den internen Speicher eines digitalen Computers geladen werden kann und Softwarecodeabschnitte umfasst, wobei mit dem Computer die Schritte des obigen Verfahrens abgearbeitet werden können. 



   Eine Anbindung von Systemen der Informations- oder Steuerungstechnik geschieht heutzutage meist über sog. Interfaces, welche die Kommunikation zwischen den Systemen ermöglichen. Da es keine allgemein gültigen Standards für die Verbindung verschiedener Systeme gibt, müssen die Interfaces auf die Systeme abgestimmt sein. Dadurch sind lediglich die Verbindungen zwischen Systemen des selben Herstellers einfach und kostengünstig zu realisieren. Die Verbindung von Systemen der Informations- oder Steuerungstechnik unterschiedlicher Hersteller muss in der Regel durch eigens dafür hergestellte Interfaces durchgeführt werden. 



  Darüber hinaus wächst natürlich mit der Anzahl der zu verbindenden Systeme auch die Anzahl der notwendigen Interfaces überproportional. Bei Veränderungen eines der beteiligten Systeme müssen auch die beteiligten Interfaces jeweils angepasst werden, was einen hohen Aufwand, insbesondere einen hohen Software-Aufwand, bedeutet. 



   Die Aufgabe der vorliegenden Erfindung besteht in der Schaffung eines oben genannten Verfahrens, durch welches die Anbindung von insbesondere heterogenen Systemen in einfacher Weise möglich wird. Darüber hinaus soll das Verfahren möglichst rasch und einfach auf Änderungen zumindest eines der Systeme angepasst werden können. 



   Gelöst wird die erfindungsgemässe Aufgabe dadurch, dass die Anfrage des Sendesystems in für das jeweilige Zielsystem spezifische, gespeicherte Teilfunktionen umgesetzt wird, welche Teilfunktionen an das zumindest eine Zielsystem übertragen werden, und dass die zu den Teilfuntionen gehörenden Teilantworten des zumindest einen Zielsystems zusammengefasst und vor der Über- 

 <Desc/Clms Page number 2> 

 mittlung an das Sendesystem in eine für dieses Sendesystem spezifische Rückantwort umgesetzt werden. Durch die erfindungsgemä- ssen Verfahrensmerkmale wird eine Kommunikation insbesondere zwischen heterogenen Systemen in einfacher und schneller Weise ermöglicht und somit eine Einbindung verschiedener Systeme der Informations- und Steuerungstechnik in einem gewissen Prozess ermöglicht. Im Gegensatz zu herkömmlichen Interfaces werden nicht die Daten bzw.

   Parameter zwischen den Systemen ausgetauscht sondern die Anfragen des Sendesystems in bestimmte Teilfunktionen für das oder die Zielsysteme umgesetzt. Es werden daher im Gegensatz der Übersetzung von Daten Prozesse bzw. Teilprozesse ausgelöst. Der Benutzer des Sendesystems muss die Art und Weise des Zustandekommens der Rückantwort auf die Anfrage nicht kennen. 



  Somit werden die beteiligten Systeme in ihrer grösstmöglichen Tiefe benutzt, so dass sich Änderungen der Systeme nicht auf das vorliegende Verfahren auswirken müssen. 



   Die Umsetzung der Anfrage des Sendesystems sowie der zusammengefassten Teilantworten des zumindest einen Zielsystems werden vorzugsweise entsprechend den Eintragungen einer Tabelle oder dergl. vorgenommen. Die Tabellen oder Datenbankeintragungen wurden dabei unter Berücksichtigung des zumindest einen Zielsystems angelegt, so dass eine Anfrage des Sendesystems in entsprechende auf die Zielsysteme angepasste Funktionen umgesetzt werden kann. 



  Die Tabelle oder dergl. enthält daher die Information wie die Teilfunktionen abgearbeitet werden sollen und an welches Zielsystem die Teilfunktionen geschickt werden sollen. 



   Vorteilhafterweise sind die Eintragungen der Tabelle oder dergl. frei konfigurierbar. Somit kann das Verfahren auf Änderungen leicht und rasch reagieren und entsprechend umkonfiguriert werden. 



   Bei der Konfiguration der Eintragungen der Tabelle oder dergl. hat sich besonders eine graphische Schnittstelle bewährt, über die auch Personen mit geringeren Programmierkenntnissen eine Konfigurationsänderung vornehmen können. 



   Unterstützend dabei können auch Mustereintragungen sein, welche beispielsweise in einer Datenbank gespeichert sind und anhand derer die Eintragungen der Tabelle oder dergl. konfigurierbar sind. Somit können vom erfindungsgemässen Verfahren für verschiedene Anwendungsfälle Musterkonfigurationen angeboten werden, die unverändert oder durch eigene Abänderungen erweitert 
3 

 <Desc/Clms Page number 3> 

 eingesetzt werden können. zur weiteren Erhöhung der Flexibilität kann vorgesehen sein, dass die Konfiguration der Eintragungen der Tabelle oder dergl. zwischen den Anfragen des Sendesystems an das zumindest eine Zielsystem erfolgt. Somit kann die Konfiguration der Tabelleneintragungen zwischen Anfragen auf unterschiedliche Randbedingungen geändert werden.

   Während einer Anfrage bleiben die Eintragungen der Tabelle immer gleich, um Fehlantworten auf Anfragen zu vermeiden. 



   Es kann vorgesehen sein, dass die Anfrage des Sendesystems die Teilfunktionen, die Teilantworten des zumindest einen Zielsystems oder die Rückantwort umgeformt werden, so dass diese durch das jeweilige angeschlossene System verstanden werden. 



   Diese Umformung kann in sog. Konnektoren erfolgen, welche an den Schnittstellen der Systeme bzw. der erfindungsgemässen Einrichtung zur Durchführung des Verfahrens angeordnet sind. Es sind dabei bekannte Konnektoren verwendbar, welche beispielsweise Anfragen im Extensible Mark-up Language (XML)-Format umsetzen. 



   Um Fehlantworten zu vermeiden, ist vorgesehen, dass die Rückantwort an das Sendesystem erst bei Vorliegen aller Teilantworten der Zielsysteme an das Sendesystem übermittelt wird. Es wird seine sog. Transaktionsklammer um alle Teilfunktionen gelegt und erst bei Vorliegen aller Teilantworten der Vorgang durch das Übermitteln der Rückantwort abgeschlossen. 



   Im Falle einer fehlenden Antwort des zumindest einen Zielsystems auf die Teilfunktionen wird die Anfrage des Sendesystems zweckmässigerweise wiederholt. 



   Um zusätzliche Funktionen realisieren zu können, werden gemäss einem weiteren Merkmal der Erfindung Teilfunktionen an zumindest ein Hilfssystem übertragen und die Teilantworten des zumindest einen Hilfssystems auf diese Teilfunktionen mit den Teilantworten des zumindest einen Zielsystems zusammengefasst und sodann die Rückantwort an das Sendesystem gebildet und an dieses übermittelt. Mit solchen Hilfssystemen können zusatzfunktionen realisiert werden, welche durch ein Zielsystem nicht realisiert werden könnten. Beispielsweise können im Falle eines Warenwirtschaftssystems als Zielsystem im Hilfssystem Produkte geschaffen werden, welche im Warenwirtschaftssystem des Zielsystems nicht vorhanden sind.

   Andererseits könnten beispielsweise in einem solchen Hilfssystem Bilder zur Ansicht von Produkten, welche in 

 <Desc/Clms Page number 4> 

 einem Zielsystem zusammengefasst sind angelegt sein, welche somit dem Sendesystem zur Verfügung gestellt werden. Der Anwender des Sendesystems merkt dabei die Aufteilung der Teilantworten auf verschiedene Systeme nicht sondern erhält die optimale Antwort auf seine Anfrage. Dadurch können beispielsweise veraltete Systeme mit Hilfe der Hilfssysteme in geeigneter Weise erweitert werden, ohne dass das gesamte System erneuert werden muss. 



   Ein derartiges Hilfssystem ist normalerweise durch eine Datenbank gebildet, in der beispielsweise die virtuellen Artikel, welche im Zielsystem nicht vorhanden sind, abgebildet sind. 



   Weiters besteht die Möglichkeit die Teilfunktionen und bzw. oder Teilantworten der zielsysteme oder Hilfssysteme auszuwerten, um dadurch wichtige Informationen während der Kommunikation von Systemen zu erhalten. Derartige Auswertungen können statistische Analysen umfassen oder die Auslösung bestimmter Prozesse bei Auftreten bestimmter Resultate der Auswertungen der Teilfunktionen und bzw. Teilantworten beinhalten. Darüber hinaus können aufgrund der Auswertungen auch Vorschläge für konkrete Abläufe von Prozessen gegeben werden. Bei derartigen Auswertungen wird insbesondere Expertenwissen wie eine Wahl einer Methode, die Aufbereitung der Daten oder das algorithmische Vorgehen bei der Durchführung einer Auswertung oder die Form der Präsentation von Ergebnissen miteinbezogen.

   Die Auswertungen können dabei in Form von selbständigen Modulen eingesetzt werden, welche dann für die Anwendung zur Verfügung stehen. Unter derartige Auswertungen fallen auch sog. Grenzwertwarnungen, bei denen bei Überschreiten definierter Grenzwerte Nachrichten an den Benutzer oder dergl. gesendet werden können, welche dann entsprechende Schritte veranlassen können. Beispielsweise könnten in einem Warenwirtschaftssystem bei Bestellung einer bestimmten Anzahl von Produkten automatisch Nachbestellungen beim Lieferanten abgesandt werden. Darüber hinaus können derartige Auswertungen von Teilfunktionen und bzw. Teilantworten der Zielsysteme oder Hilfssysteme auch Verbesserungsvorschläge oder Warnungen beinhalten. 



   Gelöst wird die erfindungsgemässe Aufgabe auch durch eine Vorrichtung zur Durchführung des obigen Verfahrens mit zumindest einem Rechner mit Schnittstellen zur Verbindung mit dem Sendesystem und dem zumindest einen Zielsystem und allenfalls zumindest einem Hilfssystem. Ein derartiger Rechner kann durch einen üblichen Computer gebildet sein oder in einem Rechner der ange- 

 <Desc/Clms Page number 5> 

 schlossenen Systeme implementiert sein. 



   Zur Lösung der erfindungsgemässen Aufgabe dient auch ein Computerprogrammprodukt, das direkt in den internen Speicher eines digitalen Computers geladen werden kann und Softwarecodeabschnitte umfasst, wobei mit dem Computer die Schritte des oben beschriebenen Verfahrens abgearbeitet werden, wenn das Produkt auf dem Computer läuft. 



   Dabei ist das Computerprogrammprodukt vorzugsweise auf einem computerlesbaren Medium gespeichert. 



   Die vorliegende Erfindung wird anhand von bevorzugten Ausführungsbeispielen und unter Bezugnahme auf die Zeichnungen noch weiter erläutert. Dabei zeigen : Fig. 1 eine schematische Darstellung der Kommunikation verschiedener Systeme nach dem Stand der Technik ; Fig. 2 eine schematische Darstellung der Kommunikation verschiedener Systeme gemäss der vorliegenden Erfindung ; Fig. 3 eine Blockschaltung einer erfindungsgemässen Einrichtung zur Verbindung verschiedener Systeme ; Fig. 4 ein Flussdiagramm der Abarbeitung einer Anfrage eines Systems unter Verwendung des erfindungsgemässen Verfahrens und Fig. 5 eine Blockschaltung einer gegenüber Fig. 3 erweiterten Einrichtung zur Verbindung verschiedener Systeme. 



   Fig. 1 zeigt ein Blockschaltbild der Kommunikation verschiedener Systeme der   Informations- oder Steuerungstechnik   nach dem Stand der Technik. Im dargestellten Beispiel sind drei Sys- 
 EMI5.1 
 formations-oder Steuerungstechnik sein und werden in der Regel durch Prozesse, welche auf verschiedenen Rechnern ablaufen, rea- 
 EMI5.2 
 können bzw. über welche Eingaben von aussen oder Ausgaben nach aussen erfolgen können. Zur Umsetzung von Anfragen und Funktionsaufrufen der Systeme 1, 2,3 untereinander dienen sog. Interfaces 7,8, 9, welche zwischen den Schnittstellen 4,5, 6 der Systeme 1, 2,3 angeordnet werden. Die Interfaces 7,8, 9 ermöglichen die Kommunikation der Systeme 1, 2,3 untereinander.

   Hersteller verschiedener Systeme der Informations- oder Steuerungstechnik bieten üblicherweise fertige Interfaces zur Verbindung verschiedener Systeme ihrer Produktpalette an. Bei der Verbindung von Systemen unterschiedlicher Hersteller stösst man in der Regel allerdings 

 <Desc/Clms Page number 6> 

 auf Probleme, da fertige Interfaces nicht verfügbar sind. Somit ist die Verbindung derartiger Systeme und somit deren Kommunikation nur durch mehr oder weniger aufwendig hergestellte Verbindungsglieder möglich. Als Folge dessen sind die Betreiber bestimmter Systeme meist gezwungen, für neue Funktionen Systeme des selben Herstellers einzusetzen, so dass die Kommunikation zwischen den Systemen gewährleistet ist.

   Wie aus Fig. 1 leicht ersichtlich ist, steigt natürlich die Anzahl der Interfaces 7,8, 
 EMI6.1 
 hörigen Interfaces an die Veränderung angepasst werden, was in der Regel einen Programmieraufwand bedeutet. Aus diesem Grunde sind derartige bekannte Anordnungen von Systemen sehr unflexibel und eine Anpassung an geänderte Voraussetzungen nur durch relativ grossen Aufwand und oftmals auch erst nach längerer Zeit möglich. 



  Die verschiedenen Systeme 1, 2,3 können, wie bereits erwähnt, durch verschiedene Prozesse auf einem oder unterschiedlichen Rechnern realisiert sein, wobei die Rechner an beliebigen Standorten lokalisiert sein können. Die Verbindung der Rechner untereinander geschieht häufig über Datennetze, insbesondere über das weltweite Internet. 



   Fig. 2 zeigt ein Blockschaltbild der Verbindung verschiedener Systeme 1, 2,3 über eine Einrichtung 10 zur Durchführung des erfindungsgemässen Verfahrens. Die erfindungsgemässe. Einrichtung 10 
 EMI6.2 
 entsprechenden Anzahl von Schnittstellen 11,12, 13. Die Einrichtung 10 ermöglicht die Kommunikation zwischen den Systemen 1, 2 und 3 untereinander. Bei der Einrichtung 10 zur Durchführung des erfindungsgemässen Verfahrens handelt es sich in der Regel um einen Rechner, auf dem ein bestimmter Prozess abläuft. Der Rechner kann mit einem Rechner der Systeme 1, 2,3 identisch sein. Im Falle eines Beispiels aus dem Bereich des elektronischen Warenverkehrs, des sog. e-commerce, könnte es sich beispielsweise beim System 1 um ein sog. Webshop handeln über das der Benutzer Produkte oder Dienstleistungen über das Internet bestellen kann. 



  Beim System 2 kann es sich um ein Warenwirtschaftssystem eines Anbieters von Produkten bzw. Dienstleistungen handeln. Schliesslich kann das System 3 Hilfsdaten enthalten, welche vom Anbieter der Produkte und Dienstleistungen oder von einem Dritten zur Verfügung gestellt werden. Bei der Bestellung von Produkten bzw. 



   7 

 <Desc/Clms Page number 7> 

 Dienstleistungen über das System 1 ist eine Verbindung zum Warenwirtschaftssystem 2 und eine Kommunikation zwischen den Systemen 1 und 2 erforderlich. Viele derartige Warenwirtschaftssysteme 2 beruhen noch auf älteren Technologien und sind daher nicht ohne weiteres an das Internet anbindbar. Um nun eine Kommunikation zwischen den Systemen 1 und 2 zu ermöglichen muss meist in sehr aufwendiger Weise eine Anpassung des Warenwirtschaftssystem 2 an das System 1 erfolgen, so dass das ältere Warenwirtschaftssystem 2 über einen modernen Webbrowser 1 zugänglich wird. Mit Hilfe der erfindungsgemässen Einrichtung 10 wird ein universelles Interface geschaffen, welches eine Verbin- 
 EMI7.1 
 Veränderung der Konfiguration der Einrichtung 10.

   Im Gegensatz zum Stand der Technik müssen somit nicht alle an der Kommunikation der Systeme 1, 2,3 beteiligten Interfaces im Bedarfsfall verändert werden. Im Falle einer vom System 1 herrührenden Anfrage an das System 2 erkennt die erfindungsgemässe Einrichtung 10 das System 2, an welches die Anfrage gestellt wird und entscheidet über die Art der Umsetzung der Anfrage bzw. des Funktionsaufrufs und sendet die entsprechend umgesetzten Teilfuntionen an das System 2 weiter. In der Regel werden übliche Schnittstellen 4,5, 6 der Systeme 1, 2,3 und übliche Kommunikationsprotokolle verwendet.

   Die Anfrage des Systems 1 wird von der. erfindungsgemässen Einrichtung 10 so umgesetzt, dass an das zumindest eine Zielsystem 2 Teilfunktionen geschickt werden, welche in üblicher Weise des Zielsystems 2 abgearbeitet und ein entsprechendes Teilresultat an die Einrichtung 10'geliefert werden kann. Die Einrichtung 10 sammelt allenfalls mehrere Teilresultate zusammen und setzt diese zusammengefassten Teilresultate wiederum in eine für das System 1 verständliche Form um und liefert das Resultat an das System 1 zurück. Dabei werden vom Benützer des Systems 1 keine Kenntnisse über den Aufbau des Systems 2 verlangt, da dies von der erfindungsgemässen Einrichtung 10 übernommen wird.

   Die beteiligten Systeme 1, 2,3 werden in ihrer grösstmöglichen Tiefe benützt, wodurch sich Änderungen in den Systemen 1, 2, 3 maximal durch geringe Veränderungen in Verfahren der Einrichtung 10 auswirken. 



   Fig. 3 zeigt die Einrichtung 10 gemäss Fig. 2 im Detail. Je nach Anzahl der zu verbindenden Systeme verfügt die Einrichtung 

 <Desc/Clms Page number 8> 

 10 über eine entsprechende Anzahl von Schnittstellen. Im dargestellten Beispiel verfügt die Einrichtung 10 über drei Schnittstellen 11,12 und 13 zur Verbindung von drei Systemen. Hinter den vorzugsweise handelsüblichen Schnittstellen 11,12, 13, wie zum Beispiel Structured Query Languague   (SQL)-Schnittstellen   können Verbindungselemente 14,15, 16 angeordnet sein, welche eine Umsetzung der Anfragen des Systems 1 an die Einrichtung 10 bzw. der von der Einrichtung 10 gelieferten Teilfunktionen oder Teilresultate an die Systeme 1, 2,3 durchführen. Diese Verbindungseinrichtungen 14,15, 16 können durch sog. Konnektoren gebildet sein.

   Bei der Realisierung des Systems 1 durch ein Webshop, welches die Anfragen bzw. Ergebnisse beispielsweise im Extensible Mark-up Language (XML)-Standard durchführt, können die Verbindungselemente 14,15, 16 eine entsprechende Umformung in eine für die Einrichtung 10 verständliche Form durchführen. Im dargestellten Beispiel handelt es sich bei System 1 um das anfragende System und bei System 2 um das System, an welches die Anfrage des Systems 1 gestellt wird. System 3 ist ein Hilfssystem, welches beispielsweise in einer Datenbank gespeicherte Hilfsdaten enthält. Für eine bidirektionale Verbindung zwischen zwei Systemen 1 und 2 ist das erfindungsgemässe Verfahren ebenfalls anwendbar, wobei im Falle einer Anfrage des Systems 2 dieses den Platz des Systems 1 einnimmt.

   Entsprechend dem erfindungsgemässen Verfahren wird eine vom System 1. herrührende Anfrage nach allfälliger Umformung im Verbindungselement bzw. 



  Konnektor 14 an ein Modul 17 (Request Router) weitergeleitet, wo es entsprechend dem erfindungsgemässen Verfahren abgearbeitet wird. Das Modul 17 ist mit einer Tabelle 18 verbunden, in der definiert wird, wie eine vom System 1 herrührende Anfrage abgearbeitet werden soll. Zu diesem Zweck wird eine der Anfrage entsprechende Funktion vom Modul 17 an die Tabelle 18 geschickt, worauf eine entsprechende Information von der Tabelle 18 an das Modul 17 zurückgeschickt wird und die Anfrage entsprechend den angeschlossenen Systemen 2 und allenfalls 3 entsprechend aufgearbeitet an die Verbindungselemente 15 und allenfalls 16 weitergeleitet wird. Nach einer allfälligen Umformung der Funktionen in diesen Verbindungselementen bzw.

   Konnektoren 15 und 16 werden diese an die Systeme 2 und allenfalls 3 weitergeleitet, worauf in den Systemen 2 und allenfalls 3 ein entsprechender Prozess angeregt wird, der in der Regel mit einer Rückmeldung beendet wird. 

 <Desc/Clms Page number 9> 

 



  Diese Rückmeldung der Systeme 2 und allenfalls 3 kann wiederum in den Verbindungselementen 15 und 16 umgeformt werden. Schliesslich werden die Teilresultate dem Modul 17 zugeführt, wo entsprechend der Anfrage des Systems 1 eine Zusammenfügung aller vom System 2 und allenfalls 3 erhaltenen Teilresultate durchgeführt wird. Aus allen Teilresultaten wird eine Rückantwort in einer Art und Weise geschaffen, wie es das System 1 erwartet. Diese vom Modul 17 abgesandte Rückantwort kann allenfalls in dem Verbindungselement 14 umgeformt werden und wird schliesslich dem System 1 über die Schnittstelle 11 zugeführt. Somit erhält das System 1 die für eine Beantwortung der Anfrage erforderliche Information, welche aus dem System 2 allenfalls unter Hinzuziehung der Hilfsinformationen aus dem System 3 gebildet wird.

   Das Modul 17 ermöglicht dabei die Kommunikation zwischen den Systemen 1 und 2 sowie allenfalls 3 untereinander. Im Gegensatz zu herkömmlichen Interfaces wird gemäss dem vorliegenden Verfahren bei der Umsetzung von Anfragen eines Systems 1 die Zustandsinformation des Zielsystems 2 verwendet und damit der Anwendungsbereich der Schnittstelle erweitert. Die vom System 1 herrührenden Anfragen werden gemäss der in der Tabelle 18 enthaltenen Definition in bestimmte Funktionen im Zielsystem 2 und allenfalls einem weiteren Zielsystem 3 umgesetzt und das oder die Ergebnisse entsprechend formatiert an das aufrufende System 1 zurückgegeben. 



   Beim erwähnten Beispiel aus dem Bereich des elektronischen Warenverkehrs, wo das System 1 ein Webshop und das System 2 ein Warenwirtschaftssystem sein kann, könnte beispielsweise das System 3 als Hilfsdatenbank fungieren, in der virtuelle Artikel, welche im Warenwirtschaftsystem 2 nicht verfügbar sind, zusammengestellt werden. Für den Benutzer des Systems 1 können somit Artikel oder Zusammenhänge geschaffen werden, welche normalerweise vom System 2 nicht angeboten werden könnten. Beispielsweise könnte ein bestimmtes Produkt, welches sich aus Teilprodukten des Systems 2 zusammensetzt, angeboten werden und bei einer entsprechenden Anfrage nach diesem Produkt entsprechend den Eintragungen der Tabelle 18 die entsprechenden Funktionen bzw.

   Anfragen an das System 2 und 3 geschickt werden, so dass eine entsprechende Ergebnismeldung am System 1 im Modul 17 zusammengestellt werden kann. Die Aufbereitung der Anfrage des Systems 1 im Modul 17 erfolgt entsprechend den angeschlossenen Systemen 2 und allenfalls 3. Beispielsweise erfolgen die an das als Warenwirtschaftssystem 

 <Desc/Clms Page number 10> 

 ausgebildete System 2 gestellten Anfragen in Form von SQL-Kommandos. Derartige SQL-Befehle sind in Datenbankprogrammen standardisiert. 



  Im Folgenden wird die vorliegende Erfindung anhand eines Beispiels noch weiter erläutert. Als Beispiel wird ein bereits oben erwähntes Warenwirtschaftssystem herangezogen, bei dem das Sendesystem 1 ein Webshop und das Zielsystem 2 ein Warenwirtschaftssystem ist. Das System   1,   der Webshop, schickt eine Anfrage an das Warenwirtschaftssystem 2, um die Produktgruppen eines Herstellers mit einer bestimmten Identifikationsnummer (ID) abzufragen. Die Anfrage des Systems 1 wird im Konnektor 14 in eine für das erfindungsgemässe Verfahren geeignete Form gebracht, welche beispielsweise eine durch eine definierte Zeichenfolge eingeleitetes Textfeld umfassen kann.

   Diese vom Konnektor 14 umgeformte Anfrage lautet beispielsweise   XXXXgetProductGroups (MANUid=47),   worin XXXX jene Zeichenfolge darstellt, welche dem Modul 17 anzeigt, um welche Anfrage es sich handelt. Im Modul 17, dem Requestrouter, wird die Anfrage des Systems 1 entsprechend dem in der Tabelle 18 gespeicherten Definitionen umgesetzt. Für die im Beispiel verwendete Anfrage   XXXXgetProductGroups (MANUid=47) findet   sich beispielsweise der Eintrag YYY als Zielsystem 2, welches im dargestellten Beispiel das Warenwirtschaftssystem ist. Somit wird der Befehl XXXXget-   ProductGroups (MANU¯id=47)   in die Funtion   conYYY¯getProductGroups   umgeformt, worin con für den jeweiligen Konnektor des Zielsystems mit dem Namen YYY steht.

   Der Konnnektor 15 des Zielsystems 2 weiss, in welcher Art mit dem Zielsystem 2 kommuniziert werden muss. Durch den obigen Befehl werden alle Anfragen von Produktgruppen an die Warenwirtschaft YYY weitergeleitet. In der Tabelle 18 können nun folgende Informationen gespeichert sein : 
 EMI10.1 
 wird entsprechend den Eintragungen in der Tabelle 18 in die oben aufgelisteten Teilfuntionen umgesetzt. Die Funtion   conYYY¯get-   ProductGroups erwartet als Eingabewerte die Herstellernummer 

 <Desc/Clms Page number 11> 

   MANUID,   die vom Sendesystem 1 ja auch mit 47 spezifiziert wurde. 



  Würde keine Spezifikation vorliegen könnte beispielsweise gemäss dem vorliegenden Verfahren auch ein Standardwert verwendet werden, bevor eine Fehlermeldung zurückgegeben wird. Die Herstellernummer hat in der erfindungsgemässen Einrichtung 10 die Kürzung   Manufacturer-in   und im Zielsystem 2   MANUID.   Wie aus obigen Definitionen ersichtlich handelt es sich dabei um einen ganzzahligen Wert (int für integer), der bestimmte Eigenschaften besichtz, welche mit der Ziffer 1 gekennzeichnet sind, werden die Identifikationen ID und-namen NAME von Produktgruppen zurpckerwartet, was in der oben angeführten Teilfuntion   conYYY¯getProductGroups¯output="ID-id-int-1 ; NAME-name-str-0"    dargelegt wurde.

   Mit der Teilfunktion   conYYYgetProductGroupsswitches   wird die Arbeitsweise des Abarbeitens der Abfrage des Sendesystems 1 gesteuert. Im angegebenen Beispiel handelt es sich bei der Funktion um eine Stored Procedure STOPRC, welche den Namen GPGProc aufweist. Dieser Prozess wird im Zielsystem 2 aufgrund der in Konnektor 15 des Zielsystems 2 aufgerufenen entsprechenden Teilfunktion aufgerufen. Vom Zielsystem werden im konkreten Fall die Nummern und Bezeichnungen der Produktgruppen durch Feld- und Zeilentrennzeichen getrennt zurückgeliefert.

   Im Modul 17 werden die Antworten auf die Teilfuntionen des Zielsystems 2 entsprechend den erwarteten Antworten zusammengefasst und, sofern auf alle Teilfunktionen vom Zielsystem 2 eine Antwort zurückgeliefert wurde, die gesamte Rückantwort zusammengestellt und nach einer Umformung entsprechend den Eintragungen in der Tabelle 18 wieder an das Sendesystem 1 zurückgesandt. Im konkreten Beispiel würden zum Beispiel die folgenden Datensätze zurückgeliefert 1 Kaffee, 2 Tee, 3 Kakao. Es werden also drei Datensätze jeweils mit Nummer der Produktgruppe und Bezeichnung der Produktgruppe zurückgeliefert. 



   Durch die Verwendung der Verbindungseinrichtung bzw. Konnektoren 14, 15 für die Systeme 1 und 2 wird das Modul 17, der Requestrouter, von geänderten Systemen 1, 2 nicht beeinflusst und eine von den Systemen unabhängige Funktion erzielt. Die Verbindungselemente bzw. Konnektoren 14, 15 wissen, wie das jeweilige Zielsystem angesprochen werden soll und wie auf das Sendesystem 1 geantwortet wird. Anstelle der oben beispielhaft angeführten Befehle und Prozeduren können auch standardmässige Funktionen wie zum Beispiel Structured Query Language (SQL), Straight Befehle eingesetzt werden. 

 <Desc/Clms Page number 12> 

 



   Fig. 4 zeigt ein Flussdiagramm einer entsprechenden Funktionsabarbeitung gemäss dem vorliegenden Verfahren, wobei gemäss Block 101 die Anfrage des Systems 1 entsprechend umgesetzt und an das Zielsystem 2 entsprechend Block 102 weitergeleitet wird. Gemäss der Abfrage 103 wird überprüft, ob die gesamte Anfrage des Systems 1 abgearbeitet wurde. Im Falle einer vollständigen Abarbeitung wird entsprechend Block 104 das Ergebnis gebildet und an das anfragende System 1 zurückgeschickt. Im Falle einer unvollständigen oder fehlerhaften Abarbeitung wird entsprechend Block 105 der nächste Teil der umgesetzten Anfrage des Systems 1 erneut an das Zielsystem 2 weitergeleitet und das vom Zielsystem 2 erhaltene Resultat entsprechend Block 106 gespeichert und zur Abfrage gemäss Block 103 zurückgekehrt, wo erneut die Vollständigkeit der Abarbeitung festgestellt wird.

   Erfindungsgemäss werden daher die Ergebnisse auf Anfragen nur dann an das anfragende System 1 zurückgeschickt, wenn die Teilfunktionen aufgrund der Anfrage vollständig und fehlerlos abgearbeitet wurden. Im Falle der Unvollständigkeit oder Fehlerhaftigkeit wird daher nicht die gesamte Anfrage des Systems   1,   sondern nur jene Teilfunktion, auf die keine Teilantwort gefolgt ist, wiederholt. 



  Dadurch werden Fehlergebnisse oder unvollständige Abarbeitungen von Anfragen verhindert. Es wird dabei über alle Funktionen, welche für die Abarbeitung der Anfrage des Systems 1 gemäss der Tabelle 18 erforderlich sind und an die Zielsysteme 2 und allenfalls 3 gesendet werden, sozusagen eine Klammer um die Teilfunktionen gesetzt, und wenn eine der Teilfunktionen fehlschlägt alle Funktionen rückgesetzt und erneut an das Zielsystem 2 und allenfalls das Hilfssystem 3 geschickt bevor die Rückantwort im Modul 17 zusammengestellt und an das System 1 zurückgemeldet wird. 



   Fig. 5 zeigt eine gegenüber Fig. 3 erweiterte Ausführungsform der Erfindung, wobei zur Änderung der Konfiguration in der Tabelle 18 ein sog. Konfigurator 19 vorgesehen ist. Dieser Konfigurator ist vom Benutzer frei programmierbar und wirkt auf die in der Tabelle 18 vorgesehenen Einstellungen. Mit Hilfe des Konfigurators 19 können die in der Tabelle 18 enthaltenen Regeln geändert, gelöscht oder hinzugefügt werden. Dabei ist der im Konfigurator 19 ablaufende Prozess vorzugsweise in Form einer graphischen Oberfläche realisiert, welcher das Aufstellen oder Ändern der in der Tabelle 18 vorhandenen Regeln unterstützt. Darüber hinaus können für verschiedene Anwendungsfälle vorbereitete Regeln oder Mustereintragungen, welche vorzugsweise in einer Da- 

 <Desc/Clms Page number 13> 

 tenbank 21 gespeichert sind, vom Konfigurator 19 angeboten werden.

   Während der Abarbeitung einer Anfrage des Systems 1 steht immer nur eine Tabelle 18 zur Verfügung, die jedoch nach Ablauf der Anfrage umgestellt werden kann und entsprechend einer neuen Abfrage neu gestaltet werden kann. 



   Als weitere Option zur Durchführung des erfindungsgemässen Verfahrens dient das Expertenmodul 20, welches mit dem Modul 17 verbunden ist und zur Durchführung von Auswertungen dienen kann. 



  Aufgrund von bestimmten Ergebnissen dieser Auswertungen kann in Abläufe eingegriffen werden und entsprechend reagiert werden. Die im Expertenmodul 20 ablaufenden Prozesse können entweder in regelmässigen Abständen von selbst ablaufen oder nach dem Eintreten bestimmter Ereignisse durchgeführt werden. Beispielsweise kann im Falle eines Warenwirtschaftssystems bei Überschreitung einer gewissen Bestellmenge ein bestimmtes Verfahren eingeleitet werden und beispielsweise automatisch eine Nachbestellung per e-mail bei den betreffenden Zulieferfirmen durchgeführt werden. 



   Zusammenfassend kann zu dem erfindungsgemässen Verfahren gesagt werden, dass im Gegensatz zu bekannten starren Interfaces nicht nur Daten übersetzt werden, sondern Prozesse ausgelöst werden und das Wissen der beteiligten Systeme verwendet wird. 



  Dadurch wird bei Veränderungen beteiligter Systeme ein geringerer   Änderungs-und Programmieraufwand   bei der erfindungsgemässen Einrichtung 10 erforderlich. Somit ist es möglich verschiedenste Systeme miteinander zu verbinden und eine Kommunikation zwischen diesen herzustellen. 



   In der Regel wird das erfindungsgemässe Verfahren in Form eines Programms realisiert, welches auf einem Rechner der beteiligten Systeme oder auf einen eigens dafür zur Verfügung gestellten Rechner ablaufen kann. Das Verfahren kann für jegliche Prozesse, insbesondere in der Informations- und Steuerungstechnik, bei denen mehrere Systeme beteiligt sind, angewendet werden.



   <Desc / Clms Page number 1>
 



   The invention relates to a method for communicating
Systems of information or control technology, whereby
For purposes of communication, a system directs a request to at least one other system, whereupon a response to the request is transmitted to the transmission system by at least one target system.



   The invention further relates to a device for carrying out this method and a computer program product which can be loaded directly into the internal memory of a digital computer and comprises software code sections, the steps of the above method being able to be processed with the computer.



   Nowadays, information or control technology systems are mostly connected via so-called interfaces, which enable communication between the systems. As there are no generally applicable standards for the connection of different systems, the interfaces must be matched to the systems. As a result, only the connections between systems from the same manufacturer can be implemented simply and inexpensively. The connection of information or control technology systems from different manufacturers generally has to be carried out using interfaces that have been specially created for this purpose.



  In addition, of course, the number of interfaces to be connected increases disproportionately with the number of systems to be connected. In the event of changes to one of the systems involved, the interfaces involved must also be adapted, which means a great deal of effort, in particular a high level of software effort.



   The object of the present invention is to create an above-mentioned method by which the connection of, in particular, heterogeneous systems is possible in a simple manner. In addition, the method should be able to be adapted as quickly and easily as possible to changes in at least one of the systems.



   The object according to the invention is achieved in that the request from the transmission system is converted into stored partial functions specific to the respective target system, which partial functions are transferred to the at least one target system, and in that the partial responses belonging to the partial functions of the at least one target system are combined and before About-

 <Desc / Clms Page number 2>

 to the sending system in a response specific to this sending system. The method features according to the invention enable communication, in particular between heterogeneous systems, in a simple and rapid manner and thus enable various systems of information and control technology to be integrated in a certain process. In contrast to conventional interfaces, the data or

   Parameters exchanged between the systems but the requests from the sending system are converted into specific sub-functions for the target system or systems. In contrast to the translation of data, processes or sub-processes are therefore triggered. The user of the transmission system does not have to know the manner in which the reply to the request came about.



  This means that the systems involved are used to the greatest possible extent, so that changes to the systems do not have to affect the present method.



   The implementation of the query of the transmission system and the combined partial responses of the at least one target system are preferably carried out in accordance with the entries in a table or the like. The tables or database entries were created taking into account the at least one target system, so that a request from the sending system can be converted into corresponding functions adapted to the target systems.



  The table or the like therefore contains the information of how the subfunctions are to be processed and to which target system the subfunctions are to be sent.



   The entries in the table or the like are advantageously freely configurable. This means that the process can react to changes easily and quickly and can be reconfigured accordingly.



   When configuring the entries in the table or the like, a graphical interface has proven particularly useful, via which people with less programming knowledge can also make a configuration change.



   This can also be supported by sample entries which are stored, for example, in a database and on the basis of which the entries in the table or the like can be configured. Thus, the method according to the invention can be used to offer sample configurations for various applications, which are unchanged or expanded by own modifications
3

 <Desc / Clms Page number 3>

 can be used. To further increase flexibility, provision can be made for the configuration of the entries in the table or the like to take place between the requests from the transmission system to the at least one target system. This means that the configuration of the table entries between requests can be changed to meet different boundary conditions.

   During a request, the entries in the table always remain the same in order to avoid incorrect answers to requests.



   It can be provided that the request from the transmission system, the sub-functions, the sub-responses of the at least one target system or the response are transformed so that they are understood by the respective connected system.



   This reshaping can take place in so-called connectors, which are arranged at the interfaces of the systems or the device according to the invention for carrying out the method. Known connectors can be used, which, for example, implement inquiries in the Extensible Mark-up Language (XML) format.



   In order to avoid incorrect responses, it is provided that the response to the sending system is only transmitted to the sending system when all partial responses of the target systems are available. Its so-called transaction bracket is placed around all sub-functions and the process is only completed by submitting the response if all sub-responses are available.



   If there is no response from the at least one target system to the subfunctions, the request from the transmission system is expediently repeated.



   In order to be able to implement additional functions, according to a further feature of the invention, partial functions are transferred to at least one auxiliary system and the partial responses of the at least one auxiliary system to these partial functions are combined with the partial responses of the at least one target system, and the response is then formed and transmitted to the transmitting system , Such auxiliary systems can be used to implement additional functions that could not be implemented by a target system. For example, in the case of an ERP system as a target system, products can be created in the auxiliary system that are not available in the ERP system of the target system.

   On the other hand, for example, in such an auxiliary system, images for viewing products that are in

 <Desc / Clms Page number 4>

 a target system are summarized, which are thus made available to the sending system. The user of the sending system does not notice the distribution of the partial responses to different systems, but receives the optimal answer to his request. In this way, for example, outdated systems can be expanded in a suitable manner with the help of auxiliary systems without the entire system having to be replaced.



   Such an auxiliary system is normally formed by a database in which, for example, the virtual articles that are not present in the target system are shown.



   Furthermore, there is the possibility of evaluating the partial functions and / or partial responses of the target systems or auxiliary systems in order to obtain important information during the communication of systems. Such evaluations can include statistical analyzes or include the triggering of certain processes when certain results of the evaluations of the partial functions and / or partial responses occur. In addition, based on the evaluations, suggestions for concrete processes can be made. Such evaluations include in particular expert knowledge such as a choice of a method, the preparation of the data or the algorithmic procedure when carrying out an evaluation or the form of the presentation of results.

   The evaluations can be used in the form of independent modules, which are then available for use. Such evaluations also include so-called limit warnings, in which messages can be sent to the user or the like when defined limit values are exceeded, which can then initiate appropriate steps. For example, in an inventory control system, when a certain number of products are ordered, repeat orders could be automatically sent to the supplier. In addition, such evaluations of partial functions and / or partial responses of the target systems or auxiliary systems can also contain suggestions for improvement or warnings.



   The object according to the invention is also achieved by a device for carrying out the above method with at least one computer with interfaces for connection to the transmission system and the at least one target system and at least one auxiliary system. Such a computer can be formed by a conventional computer or in a computer of the type

 <Desc / Clms Page number 5>

 closed systems.



   A computer program product which can be loaded directly into the internal memory of a digital computer and comprises software code sections also serves to achieve the object according to the invention, the steps of the method described above being processed with the computer when the product is running on the computer.



   The computer program product is preferably stored on a computer-readable medium.



   The present invention is further explained on the basis of preferred exemplary embodiments and with reference to the drawings. 1 shows a schematic illustration of the communication of various systems according to the prior art; 2 shows a schematic representation of the communication of different systems according to the present invention; 3 shows a block circuit of a device according to the invention for connecting different systems; FIG. 4 shows a flowchart of the processing of a request from a system using the method according to the invention, and FIG. 5 shows a block circuit of a device for connecting different systems that is expanded compared to FIG. 3.



   Fig. 1 shows a block diagram of the communication of various systems of information or control technology according to the prior art. In the example shown, three sys-
 EMI5.1
 formation or control technology and are usually implemented through processes that run on different computers.
 EMI5.2
 can or via which inputs from outside or outputs can be made to the outside. So-called interfaces 7, 8, 9, which are arranged between the interfaces 4, 5, 6 of the systems 1, 2, 3, serve to implement inquiries and function calls between the systems 1, 2, 3. The interfaces 7, 8, 9 enable the systems 1, 2, 3 to communicate with one another.

   Manufacturers of various information or control technology systems usually offer ready-made interfaces for connecting various systems in their product range. When connecting systems from different manufacturers, however, one usually comes across

 <Desc / Clms Page number 6>

 for problems, because finished interfaces are not available. Thus, the connection of such systems and thus their communication is only possible through more or less elaborate connecting links. As a result, operators of certain systems are usually forced to use systems from the same manufacturer for new functions, so that communication between the systems is guaranteed.

   1, the number of interfaces 7,8 increases, of course,
 EMI6.1
 appropriate interfaces can be adapted to the change, which usually means programming effort. For this reason, known arrangements of systems of this type are very inflexible and adaptation to changed requirements is only possible with relatively great effort and often only after a long time.



  As already mentioned, the different systems 1, 2, 3 can be implemented by different processes on one or different computers, it being possible for the computers to be located at any location. The computers are often connected to one another via data networks, in particular via the worldwide Internet.



   2 shows a block diagram of the connection of different systems 1, 2, 3 via a device 10 for carrying out the method according to the invention. The inventive. Facility 10
 EMI6.2
 corresponding number of interfaces 11, 12, 13. The device 10 enables communication between the systems 1, 2 and 3 with one another. The device 10 for carrying out the method according to the invention is generally a computer on which a specific process runs. The computer can be identical to a computer of systems 1, 2, 3. In the case of an example from the field of electronic goods traffic, the so-called e-commerce, the system 1 could, for example, be a so-called web shop via which the user can order products or services via the Internet.



  System 2 can be a merchandise management system of a provider of products or services. Finally, the system can contain 3 auxiliary data, which are provided by the provider of the products and services or by a third party. When ordering products or



   7

 <Desc / Clms Page number 7>

 Services via system 1 require a connection to ERP system 2 and communication between systems 1 and 2. Many such ERP systems 2 are still based on older technologies and are therefore not easily connectable to the Internet. In order to enable communication between the systems 1 and 2, an adaptation of the ERP system 2 to the system 1 usually has to be carried out in a very complex manner, so that the older ERP system 2 is accessible via a modern web browser 1. With the aid of the device 10 according to the invention, a universal interface is created which
 EMI7.1
 Changing the configuration of the device 10.

   In contrast to the prior art, not all interfaces involved in the communication of systems 1, 2, 3 need to be changed if necessary. In the case of a request to the system 2 originating from the system 1, the device 10 according to the invention recognizes the system 2 to which the request is made and decides on the type of implementation of the request or the function call and sends the correspondingly implemented partial functions to the system 2 further. As a rule, customary interfaces 4, 5, 6 of systems 1, 2, 3 and customary communication protocols are used.

   The request of system 1 is from the. The device 10 according to the invention is implemented in such a way that partial functions are sent to the at least one target system 2, which are processed in the usual way for the target system 2 and a corresponding partial result can be delivered to the device 10 ′. The device 10 possibly collects several partial results and converts these combined partial results into a form that is understandable for the system 1 and returns the result to the system 1. No knowledge of the structure of the system 2 is required from the user of the system 1, since this is carried out by the device 10 according to the invention.

   The systems 1, 2, 3 involved are used in their greatest possible depth, as a result of which changes in the systems 1, 2, 3 have a maximum effect through slight changes in the method of the device 10.



   FIG. 3 shows the device 10 according to FIG. 2 in detail. Depending on the number of systems to be connected, the facility has

 <Desc / Clms Page number 8>

 10 over a corresponding number of interfaces. In the example shown, the device 10 has three interfaces 11, 12 and 13 for connecting three systems. Connection elements 14, 15, 16 can be arranged behind the preferably commercially available interfaces 11, 12, 13, such as, for example, structured query language (SQL) interfaces, which implement the requests from system 1 to device 10 or from the device 10 delivered partial functions or partial results to systems 1, 2, 3. These connecting devices 14, 15, 16 can be formed by so-called connectors.

   When the system 1 is implemented by a web shop, which carries out the inquiries or results, for example in the Extensible Mark-up Language (XML) standard, the connecting elements 14, 15, 16 can carry out a corresponding transformation into a form which the device 10 can understand , In the example shown, system 1 is the requesting system and system 2 is the system to which the system 1 request is made. System 3 is an auxiliary system which contains auxiliary data stored in a database, for example. The method according to the invention can also be used for a bidirectional connection between two systems 1 and 2, wherein in the event of a request from system 2, this takes the place of system 1.

   In accordance with the method according to the invention, a request originating from system 1 for any deformation in the connecting element or



  Connector 14 forwarded to a module 17 (request router), where it is processed according to the inventive method. The module 17 is connected to a table 18 in which it is defined how an inquiry originating from the system 1 is to be processed. For this purpose, a function corresponding to the request is sent from the module 17 to the table 18, whereupon a corresponding information is sent back from the table 18 to the module 17 and the request corresponding to the connected systems 2 and possibly 3 processed accordingly to the connecting elements 15 and at most 16 is forwarded. After a possible reshaping of the functions in these connecting elements or

   Connectors 15 and 16 are forwarded to systems 2 and possibly 3, whereupon a corresponding process is initiated in systems 2 and possibly 3, which is usually ended with a feedback.

 <Desc / Clms Page number 9>

 



  This feedback from the systems 2 and possibly 3 can in turn be reshaped in the connecting elements 15 and 16. Finally, the partial results are fed to the module 17, where, according to the request of the system 1, a combination of all partial results obtained by the system 2 and possibly 3 is carried out. A response from all partial results is created in a way that System 1 expects. This response sent by the module 17 can at most be transformed in the connecting element 14 and is finally fed to the system 1 via the interface 11. The system 1 thus receives the information required to answer the query, which is formed from the system 2 at most with the help of the auxiliary information from the system 3.

   The module 17 enables communication between the systems 1 and 2 and possibly 3 with each other. In contrast to conventional interfaces, according to the present method, the status information of the target system 2 is used when converting requests from a system 1 and the range of application of the interface is thus expanded. The inquiries originating from system 1 are converted into specific functions in target system 2 and possibly another target system 3 in accordance with the definition contained in table 18, and the result or results formatted are returned to calling system 1.



   In the example mentioned from the area of electronic goods traffic, where the system 1 can be a web shop and the system 2 can be an ERP system, the system 3 could, for example, function as an auxiliary database in which virtual articles that are not available in the ERP system 2 are compiled. For the user of the system 1, articles or contexts can thus be created which could not normally be offered by the system 2. For example, a specific product, which is composed of partial products of system 2, could be offered and, in the event of a corresponding request for this product, the corresponding functions or the entries in table 18.

   Inquiries are sent to systems 2 and 3 so that a corresponding result report on system 1 can be compiled in module 17. The processing of the request from system 1 in module 17 is carried out in accordance with the connected systems 2 and possibly 3

 <Desc / Clms Page number 10>

 trained System 2 asked in the form of SQL commands. Such SQL commands are standardized in database programs.



  The present invention is explained in more detail below using an example. As an example, an ERP system is used, in which the transmission system 1 is a web shop and the target system 2 is an ERP system. System 1, the web shop, sends an inquiry to ERP system 2 in order to query the product groups of a manufacturer with a specific identification number (ID). The request from the system 1 is brought into a form suitable for the method according to the invention in the connector 14, which can include, for example, a text field introduced by a defined character string.

   This query transformed by connector 14 is, for example, XXXXgetProductGroups (MANUid = 47), where XXXX represents the character string which indicates to module 17 which query is concerned. In module 17, the request router, the request from system 1 is implemented in accordance with the definitions stored in table 18. For example, for the request XXXXgetProductGroups (MANUid = 47) used in the example, there is the entry YYY as target system 2, which is the ERP system in the example shown. Thus the command XXXXget-ProductGroups (MANU¯id = 47) is transformed into the function conYYY¯getProductGroups, where con stands for the respective connector of the target system with the name YYY.

   The connector 15 of the target system 2 knows in what way the target system 2 must be communicated. With the above command, all inquiries from product groups are forwarded to the ERP system YYY. The following information can now be stored in table 18:
 EMI10.1
 is converted into the sub-functions listed above in accordance with the entries in Table 18. The funtion conYYY¯get- ProductGroups expects the manufacturer number as input values

 <Desc / Clms Page number 11>

   MANUID, which was also specified by the transmission system 1 as 47.



  If there was no specification, a standard value could also be used, for example according to the present method, before an error message is returned. The manufacturer number has the abbreviation manufacturer-in in the device 10 according to the invention and MANUID in the target system 2. As can be seen from the above definitions, this is an integer value (int for integer) that visits certain properties, which are marked with the number 1, the identifications ID and name NAME of product groups are awaited, which in the partial function mentioned above conYYY¯getProductGroups¯output = "ID-id-int-1; NAME-name-str-0".

   The sub-function conYYYgetProductGroupsswitches controls the way in which the query from the transmission system 1 is processed. In the example given, the function is a stored procedure STOPRC, which has the name GPGProc. This process is called in the target system 2 on the basis of the corresponding subfunction called in connector 15 of the target system 2. In the specific case, the numbers and designations of the product groups are returned from the target system separated by field and line separators.

   In module 17, the responses to the subfunctions of target system 2 are summarized in accordance with the expected responses and, if a response has been returned to all subfunctions from target system 2, the entire response is compiled and, after reshaping in accordance with the entries in table 18, sent back to the transmission system 1 returned. In the concrete example, the following data sets would be returned, for example: 1 coffee, 2 tea, 3 cocoa. So three data records are returned with the number of the product group and the name of the product group.



   By using the connection device or connectors 14, 15 for the systems 1 and 2, the module 17, the request router, is not influenced by modified systems 1, 2 and a function that is independent of the systems is achieved. The connecting elements or connectors 14, 15 know how the respective target system is to be addressed and how the transmission system 1 is answered. Instead of the commands and procedures given above as an example, standard functions such as structured query language (SQL) and straight commands can also be used.

 <Desc / Clms Page number 12>

 



   4 shows a flowchart of a corresponding function processing according to the present method, wherein according to block 101, the request from system 1 is implemented accordingly and forwarded to target system 2 according to block 102. In accordance with query 103, it is checked whether the entire query of system 1 has been processed. In the case of a complete processing, the result is formed in accordance with block 104 and sent back to the requesting system 1. In the event of incomplete or incorrect processing, the next part of the implemented system 1 request is forwarded again to the target system 2 in accordance with block 105, and the result obtained from the target system 2 is stored in accordance with block 106 and returned to the query in block 103, where the completeness of the Processing is determined.

   According to the invention, the results of inquiries are therefore only sent back to the inquiring system 1 if the sub-functions have been processed completely and without errors due to the inquiry. In the event of incompleteness or inaccuracy, it is therefore not the entire system 1 request that is repeated, but rather only the sub-function that is not followed by a partial response.



  This prevents error results or incomplete processing of requests. All functions that are necessary for processing the request of system 1 according to table 18 and sent to target systems 2 and possibly 3 are put in a bracket around the subfunctions, so to speak, and if one of the subfunctions fails, all functions are reset and sent again to the target system 2 and possibly the auxiliary system 3 before the response is compiled in module 17 and reported back to system 1.



   FIG. 5 shows an embodiment of the invention which is expanded compared to FIG. 3, a so-called configurator 19 being provided for changing the configuration in table 18. This configurator is freely programmable by the user and affects the settings provided in table 18. With the help of the configurator 19, the rules contained in the table 18 can be changed, deleted or added. The process running in the configurator 19 is preferably implemented in the form of a graphical user interface which supports the setting up or changing of the rules in the table 18. In addition, rules or sample entries prepared for different applications, which are preferably

 <Desc / Clms Page number 13>

 tenbank 21 are stored, offered by the configurator 19.

   During the processing of a query from system 1, only one table 18 is always available, which, however, can be changed after the query has ended and can be redesigned in accordance with a new query.



   The expert module 20, which is connected to the module 17 and can be used to carry out evaluations, serves as a further option for carrying out the method according to the invention.



  Based on certain results of these evaluations, processes can be intervened and reacted accordingly. The processes running in the expert module 20 can either run by themselves at regular intervals or can be carried out after the occurrence of certain events. For example, in the case of an inventory control system, if a certain order quantity is exceeded, a certain procedure can be initiated and, for example, a reorder can be automatically carried out by e-mail from the relevant supplier companies.



   In summary, it can be said about the method according to the invention that, in contrast to known rigid interfaces, not only data are translated, but processes are triggered and the knowledge of the systems involved is used.



  In the event of changes in the systems involved, less change and programming effort is required in the device 10 according to the invention. This makes it possible to connect a wide variety of systems with one another and to establish communication between them.



   As a rule, the method according to the invention is implemented in the form of a program which can run on a computer of the systems involved or on a computer provided specifically for this purpose. The method can be used for any processes, in particular in information and control technology, in which several systems are involved.


    

Claims (1)

Ansprüche : 1. Verfahren zur Kommunikation von Systemen (1, 2,3) der Informations- oder Steuerungstechnik, wobei zum Zwecke der Kommunikation von einem System (1) eine Anfrage an zumindest ein anderes System (2) gerichtet wird, worauf von zumindest einem Zielsystem (2) auf die Anfrage eine Rückantwort an das Sendesystem (1) übermittelt wird, dadurch gekennzeichnet, dass die Anfrage des Sendesystems (1) in für das jeweilige Zielsystem (2) spezifische, gespeicherte Teilfunktionen umgesetzt wird, welche Teilfunktionen an das zumindest eine Zielsystem (2) übertragen werden, und dass die zu den Teilfunktionen gehörenden Teilantworten des zumindest einen Zielsystems (2) zusammengefasst und vor der Übermittlung an das Sendesystem (1)   Claims: 1. Method for the communication of systems (1, 2, 3) of information or control technology, wherein for the purpose of communication a request (1) is directed to at least one other system (2), followed by at least one Target system (2) a response to the sending system (1) is transmitted to the request, characterized in that the request of the sending system (1) is converted into stored partial functions specific to the respective target system (2), which partial functions to the at least one Target system (2) are transmitted, and that the partial responses belonging to the sub-functions of the at least one target system (2) are combined and before transmission to the transmission system (1) in eine für dieses Sendesystem (1) spezifische Rückantwort umgesetzt werden. EMI14.1 fassten Teilantworten des zumindest einen Zielsystems (2) entsprechend den Eintragungen einer Tabelle (18) oder dergl. erfolgt.    into a response specific to this transmission system (1).  EMI14.1  summarized partial responses of the at least one target system (2) according to the entries in a table (18) or the like. 3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, dass die Eintragungen der Tabelle (18) oder dergl. frei konfigurierbar sind. 3. The method according to claim 2, characterized in that the entries in the table (18) or the like. Are freely configurable. 4. Verfahren nach Anspruch 3, dadurch gekennzeichnet, dass die Eintragungen der Tabelle (18) oder'dergl. über eine grafische Schnittstelle konfigurierbar sind. 4. The method according to claim 3, characterized in that the entries in the table (18) or'dergl. are configurable via a graphical interface. 5. Verfahren nach Anspruch 3 oder 4, dadurch gekennzeichnet, dass die Eintragungen der Tabelle (18) oder dergl. anhand von, in einer Datenbank gespeicherten Mustereintragungen konfigurierbar sind. 5. The method as claimed in claim 3 or 4, characterized in that the entries in the table (18) or the like can be configured on the basis of sample entries stored in a database. 6. Verfahren nach einem der Ansprüche 3 bis 5, dadurch gekennzeichnet, dass die Konfiguration der Eintragungen der Tabelle (18) oder dergl. zwischen den Anfragen des Sendesystems (1) an das zumindest eine Zielsystem (2) erfolgt. <Desc/Clms Page number 15> 6. The method according to any one of claims 3 to 5, characterized in that the configuration of the entries in the table (18) or the like. Between the requests of the transmission system (1) to the at least one target system (2).  <Desc / Clms Page number 15>   7. Verfahren nach einem der Ansprüche 1 bis 6, dadurch gekennzeichnet, dass die Anfrage des Sendesystems (1), die Teilfunktionen, die Teilantworten des zumindest einen Zielsystems (2) und bzw. oder die Rückantwort in einem Konnektor (14,15, 16) in für die angeschlossenen Systemen (1, 2,3) spezifische Funktionen umgeformt wird. 7. The method according to any one of claims 1 to 6, characterized in that the request from the transmission system (1), the sub-functions, the partial responses of the at least one target system (2) and / or the response in a connector (14, 15, 16 ) is transformed into functions specific to the connected systems (1, 2, 3). 8. Verfahren nach einem der Ansprüche 1 bis 7, dadurch gekennzeichnet, dass die Rückantwort an das Sendesystem (1) erst bei Vorliegen aller Teilantworten der Zielsysteme (2) an das Sendesystem (1) übermittelt wird. 8. The method according to any one of claims 1 to 7, characterized in that the response to the transmission system (1) is only transmitted to the transmission system (1) when all partial responses of the target systems (2) are available. 9. Verfahren nach einem der Ansprüche 1 bis 8, dadurch gekennzeichnet, dass im Falle einer fehlenden Antwort des zumindest einen Zielsystems (2) auf die Teilfunktionen die Anfrage des Sendesystems (1) wiederholt wird. 9. The method according to any one of claims 1 to 8, characterized in that in the event of a missing response of the at least one target system (2) to the subfunctions, the request from the transmission system (1) is repeated. 10. Verfahren nach einem der Ansprüche 1 bis 9, dadurch gekennzeichnet, dass Teilfunktionen an zumindest ein Hilfssystem (3) übertragen werden und dass die Teilantworten des zumindest einen Hilfssystems (3) mit den Teilantworten des zumindest einen Zielsystems (2) zusammengefasst werden. 10. The method according to any one of claims 1 to 9, characterized in that partial functions are transferred to at least one auxiliary system (3) and that the partial responses of the at least one auxiliary system (3) are combined with the partial responses of the at least one target system (2). 11. Verfahren nach Anspruch 10, dadurch gekennzeichnet, dass zumindest ein Hilfssystem (3) durch eine Datenbank gebildet ist. 11. The method according to claim 10, characterized in that at least one auxiliary system (3) is formed by a database. 12. Verfahren nach einem der Ansprüche 1 bis 11, dadurch gekennzeichnet, dass die Teilfunktionen und bzw. oder Teilantworten der Zielsysteme (2) oder Hilfssysteme (3) ausgewertet werden. 12. The method according to any one of claims 1 to 11, characterized in that the partial functions and / or partial responses of the target systems (2) or auxiliary systems (3) are evaluated. 13. Verfahren nach Anspruch 12, dadurch gekennzeichnet, dass die Teilfunktionen und bzw. oder Teilantworten der Zielsysteme (2) oder Hilfssysteme (3) statistisch ausgewertet werden. 13. The method according to claim 12, characterized in that the partial functions and / or partial responses of the target systems (2) or auxiliary systems (3) are evaluated statistically. 14. Verfahren nach Anspruch 12 oder 13, dadurch gekennzeichnet, dass bestimmte Prozesse bei Auftreten bestimmter Resultate der Auswertungen der Teilfunktionen und bzw. oder Teilantworten ausgelöst werden. 14. The method according to claim 12 or 13, characterized in that certain processes are triggered when certain results of the evaluations of the partial functions and / or partial responses occur. 15. Vorrichtung zur Durchführung des Verfahrens nach einem der <Desc/Clms Page number 16> Ansprüche 1 bis 14, mit zumindest einem Rechner (10) mit Schnittstellen (11,12, 13) zur Verbindung mit dem Sendesystem (1) und dem zumindest einen Zielsystem (2) und allenfalls zumindest einem Hilfssystem (3). 15. Device for performing the method according to one of the  <Desc / Clms Page number 16>  Claims 1 to 14, with at least one computer (10) with interfaces (11, 12, 13) for connection to the transmission system (1) and the at least one target system (2) and possibly at least one auxiliary system (3). 16. Computerprogrammprodukt, das direkt in den internen Speicher eines digitalen Computers geladen werden kann und Softwarecodeabschnitte umfasst, wobei mit dem Computer die Schritte des Verfahrens gemäss einem der Ansprüche 1 bis 14 abgearbeitet werden, wenn das Produkt auf dem Computer läuft. 16. Computer program product which can be loaded directly into the internal memory of a digital computer and comprises software code sections, the steps of the method according to one of claims 1 to 14 being processed with the computer when the product is running on the computer. 17. Computerprogrammprodukt gemäss Anspruch 16, wobei es auf einem computerlesbaren Medium gespeichert ist. 17. The computer program product according to claim 16, wherein it is stored on a computer-readable medium.
AT0805802U 2001-08-10 2002-07-09 METHOD FOR COMMUNICATING SYSTEMS OF INFORMATION OR CONTROL TECHNOLOGY AT5857U1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AT0805802U AT5857U1 (en) 2001-08-10 2002-07-09 METHOD FOR COMMUNICATING SYSTEMS OF INFORMATION OR CONTROL TECHNOLOGY

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
AT12602001 2001-08-10
AT0805802U AT5857U1 (en) 2001-08-10 2002-07-09 METHOD FOR COMMUNICATING SYSTEMS OF INFORMATION OR CONTROL TECHNOLOGY

Publications (1)

Publication Number Publication Date
AT5857U1 true AT5857U1 (en) 2002-12-27

Family

ID=25604422

Family Applications (1)

Application Number Title Priority Date Filing Date
AT0805802U AT5857U1 (en) 2001-08-10 2002-07-09 METHOD FOR COMMUNICATING SYSTEMS OF INFORMATION OR CONTROL TECHNOLOGY

Country Status (1)

Country Link
AT (1) AT5857U1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102012014618B3 (en) * 2012-07-24 2013-06-06 Hohenstein Vorrichtungsbau Und Spannsysteme Gmbh Data communication module for communicating between workpiece clamping apparatus and e.g. handgrip, has module body ensuring power control and data lock on power control part where captiveness of data in memory is displayed on computer

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102012014618B3 (en) * 2012-07-24 2013-06-06 Hohenstein Vorrichtungsbau Und Spannsysteme Gmbh Data communication module for communicating between workpiece clamping apparatus and e.g. handgrip, has module body ensuring power control and data lock on power control part where captiveness of data in memory is displayed on computer

Similar Documents

Publication Publication Date Title
EP1096348B1 (en) Integration of a field guidance device in a plant guidance system
DE69834566T2 (en) INTEGRATED COMMUNICATION ARCHITECTURE IN A MOBILE DEVICE
EP3616365B1 (en) Method for operating a field device
DE10296972B4 (en) Apparatus and method for converting communication protocols
DE102007062986A1 (en) Method and device for client-server communication according to the standard protocol OPC UA
DE10296841T5 (en) Home network transmission system and transmission method using the same
DE10036160A1 (en) Communication protocol converting system for data communication with electronic control unit changes communication protocol for handling data from electronic control unit and arithmetic processor alternatively or simultaneously
EP1362304B1 (en) System and method for saving and generating web pages, which optimises storage space
DE60206780T2 (en) NETWORK CONNECTION DEVICE, CONNECTION SYSTEM AND NETWORK CONNECTION METHOD
EP1425639B1 (en) Method for transmission of a process value and control system
EP0977416B1 (en) Method, terminal, node, program module and operating surface for determining features required for a communication application
WO2003005234A2 (en) Automation system and system visualization method
EP1821165B1 (en) Use of variables in multiple automation systems
AT5857U1 (en) METHOD FOR COMMUNICATING SYSTEMS OF INFORMATION OR CONTROL TECHNOLOGY
DE10208147A1 (en) Building gateway computer arrangement and control system
EP1401170B1 (en) Electronic apparatus for a bussystem
EP3396919A1 (en) Method for transferring data from one device to a data processing means, transmission unit, device and system
WO2003046673A1 (en) Engineering and automation system
EP1331794B1 (en) Method for address allocation in a network and components therefore
EP3163389B1 (en) Method for configuring field devices and field device having a configuration for two bus systems
EP1435026B1 (en) System and method for the data emission of an appliance, especially an automation appliance, by means of a standardised interface with replacement of variables by means of an echo server
DE60004161T2 (en) Interface to a network management system of a communication network
WO2004006541A1 (en) System and method for direct communication between automation appliances
EP1425641A1 (en) Method for wiring automation functions in an installation and method for requesting and modifying wiring data
EP3764298A1 (en) Method for configuring changes of a production plant and / or a product and method for producing a product, and configuration device and system

Legal Events

Date Code Title Description
MM9K Lapse due to non-payment of renewal fee