[go: up one dir, main page]

DE10051645A1 - Verfahren und Vorrichtung zur Versionskontrolle und Protokollierung in einem Prozesssteuersystem - Google Patents

Verfahren und Vorrichtung zur Versionskontrolle und Protokollierung in einem Prozesssteuersystem

Info

Publication number
DE10051645A1
DE10051645A1 DE10051645A DE10051645A DE10051645A1 DE 10051645 A1 DE10051645 A1 DE 10051645A1 DE 10051645 A DE10051645 A DE 10051645A DE 10051645 A DE10051645 A DE 10051645A DE 10051645 A1 DE10051645 A1 DE 10051645A1
Authority
DE
Germany
Prior art keywords
version
configuration
database
user
data
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.)
Granted
Application number
DE10051645A
Other languages
English (en)
Other versions
DE10051645B4 (de
Inventor
Stephen Gerard Hammack
Larry Oscar Jundt
Michael J Lucas
Andrew P Dove
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.)
Fisher Rosemount Systems Inc
Original Assignee
Fisher Rosemount Systems Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fisher Rosemount Systems Inc filed Critical Fisher Rosemount Systems Inc
Publication of DE10051645A1 publication Critical patent/DE10051645A1/de
Application granted granted Critical
Publication of DE10051645B4 publication Critical patent/DE10051645B4/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0426Programming the control sequence
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/23Pc programming
    • G05B2219/23258GUI graphical user interface, icon, function bloc editor, labview
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/23Pc programming
    • G05B2219/23291Process, graphic programming of a process, text and images
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/25Pc structure of the system
    • G05B2219/25067Graphic configuration control system
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/25Pc structure of the system
    • G05B2219/25078Store in ram a second program adapted to local conditions
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/25Pc structure of the system
    • G05B2219/25428Field device
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • Y10S707/99954Version management

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Programmable Controllers (AREA)
  • Stored Programmes (AREA)
  • Digital Computer Display Output (AREA)
  • Feedback Control In General (AREA)
  • Control By Computers (AREA)
  • Testing And Monitoring For Control Systems (AREA)

Abstract

Verfahren und Vorrichtung zur Versionskontrolle und Protokollierung in einem Prozeßsteuersystem, das ein computerlesbares Medium und einen Prozessor, der in Kommunikation mit dem computerlesbaren Medium steht, enthält. Das System enthält ferner eine erste Datenbank (100) und eine zweite Datenbank (102). Die erste Datenbank speichert erste Daten, die eine erste Konfiguration des Prozesses darstellen, während die zweite Datenbank zweite Daten speichert, die eine zweite Konfiguration des Prozesses darstellen. Eine Konfigurationsroutine des Systems ist in dem computerlesbaren Medium gespeichert und so konfiguriert, daß sie von dem Prozessor ausgeführt werden kann, um eine Modifikation der ersten Konfiguration des Prozesses zu erleichtern. Eine Versionskontrollroutine des Systems ist in dem computerlesbaren Medium gespeichert und so konfiguriert, daß sie von dem Prozessor ausgeführt werden kann, um in der zweiten Datenbank dritte Daten zu speichern, welche die Modifikation der ersten Konfiguration des Prozesses angeben.

Description

Die vorliegende Erfindung betrifft allgemein Prozeßsteuersy­ steme und insbesondere ein Verfahren und eine Vorrichtung, die Modifikationen an dem Prozeß überwachen und aufzeichnen, um eine Versionskontrolle für den Prozeß zu gewähren.
Prozeßsteuersysteme, wie etwa die in chemischen und erdölver­ arbeitenden oder anderen Prozessen verwendeten, enthalten ty­ pischerweise mindestens eine zentrale Prozeßsteuereinrich­ tung, die mit mindestens einer Host- oder Bedienungsworksta­ tion und mit einer oder mehreren Anlageneinrichtungen über analoge und/oder digitale Busleitungen oder andere Kommunika­ tionsleitungen oder -kanäle in Kommunikationsverbindung steht. Die Anlageneinrichtungen, bei denen es sich beispiels­ weise um Ventile, Ventilpositioniereinrichtungen, Schalter, Übertragungseinrichtungen (beispielsweise Temperatur-, Druck- und Durchflußmengensensoren) etc. handeln kann, führen Funk­ tionen innerhalb des Prozesses aus, wie etwa das Öffnen oder Schließen von Ventilen und das Messen von Prozeßparametern. Die Prozeßsteuereinrichtung empfängt Signale, welche die von den Anlageneinrichtungen durchgeführten Prozeßmessungen und/oder andere Informationen, die zu den Anlageneinrichtun­ gen gehören, wiedergeben, über eine Eingabe-/Ausgabe-Einrich­ tung (I/O), verwendet diese Information, um eine Steuerrouti­ ne umzusetzen und erzeugt anschließend Steuersignale, die über die Busleitungen oder andere Kommunikationskanäle über die Eingabe-/Ausgabeeinrichtung an die Anlageneinrichtungen gesendet werden, um den Betriebsablauf des Prozesses zu re­ geln. Die Information von den Anlageneinrichtungen und der Steuereinrichtung wird typischerweise einer oder mehreren An­ wendungen zur Verfügung gestellt, die von der Bedienungswork­ station ausgeführt werden, um eine Bedienungsperson in die Lage zu versetzen, jede gewünschte Funktion hinsichtlich des Prozesses auszuführen, wie etwa den gegenwärtigen Status des Prozesses zu betrachten, den Betriebsablauf des Prozesses zu modifizieren und den Prozeß zu konfigurieren.
Verschiedene Softwaretools wurden zur Unterstützung der Be­ dienungsperson bei der Konfiguration und anderen Modifikatio­ nen des Prozesses entwickelt. Derartige Tools bieten eine grafische Darstellung des Prozesses, die jede Funktion, die von den Anlageneinrichtungen und der Steuereinrichtung ausge­ führt wird, jeweils als Element oder Objekt darstellt. Die Elemente können in einer hierarchischen Umgebung organisiert und dargestellt sein, so daß beispielsweise alle Funktionen, die von einer bestimmten Anlageneinrichtung ausgeführt wer­ den, zusammen gruppiert oder gelistet sind. Die Elemente kön­ nen auch innerhalb einer Steuervorlage dargestellt werden, so daß die Elemente in ihren Funktionsbeziehungen in dem Prozeß dargestellt sind. Beispielsweise kann eine Steuervorlage ein sequentielles Flußdiagramm bilden, das eine Reihe von mitein­ ander verbundenen Blöcken hat, welche mehrere Elemente dar­ stellen, die durch die Verbindungslinien definierte Eingabe- und Ausgabebeziehungen haben.
Jedes Element (sowie jegliche Eingabe- oder Ausgabebeziehung zwischen den Elementen) ist durch Daten definiert, die in ei­ ner Konfigurationsdatenbank gespeichert sind, die zu den Softwarekonfigurationstools gehört. Die Datenbank sowie die Softwaretools werden über ein Netzwerk zugreifbar gemacht, das typischerweise mehrere Workstations für zahlreiche Pro­ zeßbedienungspersonen und andere Benutzer unterstützt, die jeweils Zugriff auf Daten für die Verwaltung, Prozeßkonfigu­ ration und andere Zwecke haben. Die Modifikation der Daten in der Konfigurationsdatenbank kann jedoch zu Versionskontroll­ problemen führen, wenn beispielsweise eine Bedienungsperson sich der Arbeit einer anderen Bedienungsperson nicht bewusst ist, oder wenn zuviele Modifikationen aufgetreten sind, um festzustellen, wie zu einer früheren Konfiguration oder Ver­ sion des Prozesses zurückzukehren ist. Beispielsweise spei­ chert ein früheres Prozeßsteuersystem, das die von Fisher- Rosemont Systems, Inc. verfügbare DeltaV™-Software verwen­ det, nur Daten, welche das Datum angeben, an dem die Modifi­ kation durchgeführt wurde, sowie den für die Modifikation verantwortlichen Benutzer. Derartige Daten versetzen einen Benutzer nicht typischerweise in die Lage, die Konfiguration der früheren Versionen des Prozesses zu rekonstruieren.
Diese Versionskontrollwünsche wurden bei der Softwareentwick­ lung mit Konfigurationsverwaltungstools berücksichtigt, wie etwa ClearCase von Rational und Microsoft Visual SourceSafe®. Insbesondere verfolgen, kontrollieren und verwalten diese Produkte die Entwicklung einer Softwareroutine, um die nach­ folgenden Fehlerbeseitigungs- und Entwicklungsarbeiten zu un­ terstützen. Zu diesem Zweck werden Daten, die sowohl die ge­ genwärtige als auch die vergangenen Versionen des Codes ange­ ben, gespeichert. Derartige Konfigurationsverwaltungstools sind gewöhnlich jedoch auf Textdarstellungen der Daten be­ schränkt und somit zum Speichern und Anzeigen von Informatio­ nen, die typischerweise in grafischer Art dargeboten werden, nicht gut geeignet.
Von National Instruments wurde eine grafische Schnittstelle entwickelt, um die Programmierung im Zusammenhang mit Instru­ mentierungssystemen zu erleichtern. Gemäß auf der National Instruments Internet Website verfügbaren Informationen (www.ni.com) verwendet ein Produkt, das unter dem Namen "LabVIEW" vertrieben wird, eine grafische Programmiersprache, die G-Sprache, um diese grafische Programmierschnittstelle zu unterstützen. Die Website beschreibt ferner das LabVIEW- Produkt, das ein Entwicklungstool enthält, welches es dem Programmierer erlaubt, die Unterschiede zwischen zwei Dateien mit in der G-Sprache abgefaßtem Code grafisch zu vergleichen.
Es ist Aufgabe der Erfindung, eine Vorrichtung und ein Ver­ fahren zur Versionskontrolle und Protokollierung in einem Prozeßsteuersystem aufzuzeigen, bei dem die nach dem Stand der Technik beschriebenen Nachteile nicht auftreten.
Die Lösung der Aufgabe ergibt sich aus den Patentansprüchen. Unteransprüche beziehen sich auf bevorzugte Ausführungsformen der Erfindung. Dabei sind auch andere Kombinationen von Merk­ malen als in den Unteransprüchen beansprucht möglich.
Gemäß einem Aspekt der vorliegenden Erfindung enthält ein zum Kontrollieren eines Prozesses verwendbares System ein compu­ terlesbares Medium, einen Prozessor, der mit dem computerles­ baren Medium in Kommunikation steht, und eine erste und eine zweite Datenbank. Die erste Datenbank speichert erste Daten, die eine erste Konfiguration des Prozesses darstellen, und die zweite Datenbank speichert zweite Daten, die eine zweite Konfiguration des Prozesses darstellen. Das erfindungsgemäße System enthält ferner eine Konfigurationsroutine und eine Versionskontrollroutine, die beide in dem computerlesbaren Medium gespeichert sind und so konfiguriert sind, daß sie von dem Prozessor ausführbar sind. Die Konfigurationsroutine er­ leichtert eine Modifikation der ersten Konfiguration des Pro­ zesses und die Versionskontrollroutine speichert in der zwei­ ten Datenbank dritte Daten, welche die Modifikation der er­ sten Konfiguration des Prozesses angeben.
Gemäß einer bevorzugten Ausführungsform enthält die erste Da­ tenbank eine Konfigurationsdatenbank, so daß die erste Kohfi­ guration des Prozesses einer aktuellen Konfigurationsversion entspricht. Die zweite Datenbank enthält vorzugsweise eine Versionskontrolldatenbank, so daß die zweite Konfiguration des Prozesses einer früheren Konfigurationsversion ent­ spricht.
Gemäß einer weiteren bevorzugten Ausführungsform enthalten die erste und die zweite Konfiguration des Prozesses jeweils eine erste und eine zweite Vielzahl von Prozeßelementen. Je­ des Prozeßelement der ersten und der zweiten Vielzahl der Prozeßelemente hat eine jeweilige Elementkonfiguration, so daß die erste Konfiguration des Prozesses die Elementkonfigu­ ration jedes Prozeßelements der ersten Vielzahl von Prozeße­ lementen enthält und die zweite Konfiguration des Prozesses die Elementkonfiguration jedes Prozeßelements der zweiten Vielzahl von Prozeßelementen enthält.
Gemäß einer weiteren bevorzugten Ausführungsform überwacht die Versionkontrollroutine die Modifikation der ersten Konfi­ guration des Prozesses, um die dritten Daten zu sammeln. Die Versionskontrollroutine kann die Modifikation überwachen, in­ dem über die Konfigurationsroutine eine Einbuchungs-/Aus­ buchungsprozedur gelegt wird. Alternativ ist die Einbuchungs- /Ausbuchungsprozedur automatisch.
Gemäß einem weiteren Aspekt der vorliegenden Erfindung ent­ hält ein Prozeßsteuersystem, das ein Prozeßelement hat, einen Computer, der einen Prozessor hat, eine Prozeßkonfigurati­ onsanwendung, die so ausgelegt ist, daß sie von dem Prozessor umgesetzt werden kann, um eine Version des Elements zu schaf­ fen, und ein Versionskontrollsystem, das mit der Prozeßkonfi­ gurationsanwendung in Kommunikation ist, um Modifikationen an der Version des Prozeßelements aufzuzeichnen und zu kontrol­ lieren.
Gemäß einem weiteren Aspekt der vorliegenden Erfindung ent­ hält ein Verfahren zur Steuerung eines Prozesses, der ein Prozeßelement hat, die Schritte des Schaffens einer Konfigu­ ration des Prozesses, die eine erste Version des Prozeßele­ ments hat, des Kontrollierens einer Modifikation der Konfigu­ ration des Prozesses, um eine zweite Version des Prozeßele­ ments zu schaffen, und des Aufzeichnens von Informationen, die zu der Modifikation der Konfiguration des Prozesses gehö­ ren.
Nachfolgend werden Ausführungsformen der Erfindung unter Be­ zug auf die Zeichnung näher beschrieben.
Fig. 1 ist ein Blockdiagramm eines Prozeßsteuersystems, das eine Vielzahl von Workstations und eine Steuereinrichtung zum Leiten und Konfigurieren eines Prozesses unter Verwendung ei­ nes Prozeßkonfigurationssystems, das in der Vielzahl von Workstations implementiert ist, aufweist;
Fig. 2 ist ein Beispiel einer Bildschirmdarstellung, die von dem Prozeßkonfigurationssystem erzeugt wird, um eine Benut­ zerschnittstelle für dieses über eine der Workstations von Fig. 1 zu schaffen;
Fig. 3 ist ein weiteres Beispiel einer Bildschirmdarstel­ lung, die von dem Prozeßkonfigurationssystem erzeugt wird, um eine weitere Benutzerschnittstelle für dieses über eine der Workstations in Fig. 1 zu schaffen;
Fig. 4 ist ein Blockdiagramm des Prozeßkonfigurationssy­ stems, in das ein Versionskontroll- und Protokollierungssy­ stem gemäß einer Ausführungsform der vorliegenden Erfindung integriert sind; und
Fig. 5 bis 19 sind Bildschirmdarstellungen, die von dem Ver­ sionskontroll- und Protokollierungssystem von Fig. 4 erzeugt werden, um eine Benutzerschnittstelle für die Eingabe und Ausgabe von Informationen zu schaffen, die sich auf die Kon­ figuration von mehreren Versionen des Prozesses in Überein­ stimmung mit zahlreichen Ausführungsformen der vorliegenden Erfindung beziehen.
Prozesse erfordern typischerweise eine kontinuierliche Ge­ staltung und Entwicklung in hohem Ausmaß. Dies hat zur Folge, daß es oftmals erwünscht ist, Daten aufzuzeichnen, die alle Modifikationen der Konfiguration des Prozesses angeben. Bei­ spielsweise wird eine derartige Konfigurationsinformation in der pharmazeutischen Industrie bei der Überwachung durch Re­ gierungsbehörden verwendet. Mit zunehmender Kompliziertheit des Prozesses (sowie des Prozeßsteuersystems) wird es immer mühsamer, die Konfiguration einer früheren Version des Pro­ zesses exakt zu bestimmen.
Die vorliegende Erfindung schafft ein System und ein Verfah­ ren zum Aufzeichnen von Daten, die Modifikationen der Konfi­ guration eines Prozesses zusammen mit Informationen, die sich auf die Modifikation beziehen, wie etwa die Identität eines Benutzers, der für die Modifikation verantwortlich ist, Zeit und Datum der Modifikation und die hinter der Modifikation stehenden Überlegungen angeben. Die Daten werden gemäß vor­ liegender Erfindung als Versionen der Prozeßkonfiguration in einer Weise gespeichert, daß das erfindungsgemäße System und Verfahren einen Benutzer in die Lage versetzen, die Unter­ schiede zwischen jeweils zwei Versionen zu vergleichen und den Prozeß auf eine gewünschte frühere Konfigurationsversion zurückzusetzen.
Fig. 1 zeigt ein Prozeßsteuersystem 10, das eine Prozeßsteu­ ereinrichtung 12 enthält, die mit einer oder mehreren Host­ workstations oder Computern 14 (bei welchen es sich um jede Art von Personalcomputern, Workstations etc. handeln kann) über ein Kommunikationsnetzwerk 14, wie zum Beispiel eine Ethernetverbindung oder dergleichen, verbunden ist. Jede der Workstations 14 enthält einen Prozessor 18, einen Speicher 20 und einen Anzeigebildschirm 22. Entsprechend enthält die Steuereinrichtung 12, bei welcher es sich beispielsweise um die DeltaV™-Steuereinrichtung handeln kann, die von Fisher- Rosemont Systems, Inc. vertrieben wird, einen Prozessor 24 und einen Speicher 26 zum Speichern von Programmen, Steuer­ routinen und Daten, die von dem Prozessor 24 verwendet wer­ den, um die Steuerung eines Prozesses umzusetzen. Die Steuer­ einrichtung 12 ist über das Netzwerk 16 mit verschiedenen An­ lageneinrichtungen in verschiedenen Einrichtungsnetzwerken verbunden, beispielsweise einschließlich eines Fieldbus-Ein­ richtungsnetzwerkes 30, eines HART-Einrichtungsnetzwerkes 32 und eines Profibus-Einrichtungsnetzwerkes 34. Selbstverständ­ lich könnte die Steuereinrichtung 12 mit anderen Arten von Anlageneinrichtungsnetzwerken, wie zum Beispiel 4-20 mA- Einrichtungsnetzwerken oder anderen lokalen oder entfernten I/O-Einrichtungsnetzwerken zusätzlich zu den oder anstelle der in Fig. 1 dargestellten Netzwerke verbunden sein. Die Steuereinrichtung 12 implementiert oder überwacht eine oder mehrere Prozeßsteuerroutinen, die darin gespeichert sind oder anderweitig mit ihr verbunden sind, und kommuniziert mit den Einrichtungen innerhalb der Einrichtungsnetzwerke 30, 32 und 34 und mit den Hostworkstations 14, um den Prozeß zu steuern und den Prozeß betreffende Informationen an einen oder mehre­ re Benutzer, Bedienungspersonen, Prozeßingenieure und der­ gleichen weiterzugeben.
In einem Beispiel enthält das Fieldbus-Einrichtungsnetzwerk 30 Fieldbus-Einrichtungen 40, die über eine Fieldbus- Verbindung 42 mit einer Fieldbus-Master-I/O-Einrichtung 44 (allgemein als Verbindungs-Mastereinrichtung bezeichnet) ver­ bunden sind, welche wiederum über eine lokale Verbindung mit der Steuereinrichtung 12 verbunden ist. In ähnlicher Weise kann das HART-Einrichtungsnetzwerk 32 eine Anzahl von HART- Einrichtungen 46 enthalten, die über Kommunikationsleitungen mit einer HART-Master-I/O-Einrichtung 48 verbunden sind, wel­ che mit der Steuereinrichtung 12 über einen lokalen Standard­ bus oder eine andere Kommunikationsleitung verbunden ist. Das Profibus-Einrichtungsnetzwerk 34 ist mit drei Profibus-Slave- Einrichtungen 50, 51 und 52 dargestellt, die über eine Profi­ bus-Verbindung oder einen Bus 53 mit einer Profibus-Master- I/O-Einrichtung 55 verbunden sind. Die Profibus-Master-I/O- Einrichtung 55 kann in Form einer Profibus-PCMCIA-Karte vor­ liegen, die an einer Standard-I/O-Schnittstellenkarte ange­ bracht ist.
Allgemein ausgedrückt kann das Prozeßsteuersystem 10 aus Fig. 1 verwendet werden, um Stapelprozesse bzw. chargenweise arbeitende Prozesse zu implementieren, bei welchen beispiels­ weise eine der Workstations 14 oder die Steuereinrichtung 12 eine Stapelausführungsroutine ausführt, welche eine Steuer­ routine einer höheren Ebene ist, welche den Betrieb einer oder mehrerer Anlageneinrichtungen leitet (sowie eventuell anderer Geräte), um eine Reihe von verschiedenen Schritten (allgemein als Phasen bezeichnet) auszuführen, die zur Her­ stellung eines Produkts, wie etwa eines Lebensmittelprodukts oder eines Arzneimittels, erforderlich sind. Um verschiedene Phasen umzusetzen, verwendet die Stapelausführungsroütine ein allgemein so bezeichnetes Rezept, das die durchzuführenden Schritte, die mit den Schritten verbundenen Mengen und Zei­ ten, die Reihenfolge der Schritte und dergleichen festlegt. Die Schritte für ein Rezept könnten beispielsweise das Füllen eines Reaktorgefäßes (nicht dargestellt) mit den geeigneten Materialien, das Mischen der Materialien in dem Reaktorgefäß, das Erwärmen der Materialien in dem Reaktorgefäß auf eine be­ stimmte Temperatur über eine bestimmte Zeitdauer, das Leeren des Reaktorgefäßes und anschließend das Reinigen des Reaktor­ gefäßes zur Vorbereitung für die nächste Charge umfassen. Je­ der dieser Schritte kann eine jeweilige Phase des Stapelab­ laufs bzw. eines Chargendurchlaufes bilden, und die Sta­ pelausführungsroutine in der Steuereinrichtung 12 führt für jede einzelne dieser Phasen einen unterschiedlichen Steueral­ gorithmus durch. Selbstverständlich können die bestimmten Ma­ terialien, Materialmengen, Aufheiztemperaturen und -zeiten etc. für verschiedene Rezepte unterschiedlich sein, und folg­ lich können diese Parameter von Chargendurchlauf zu Chargen­ durchlauf in Abhängigkeit von dem hergestellten Produkt und dem verwendeten Rezept verändert werden.
Das Prozeßsteuersystem 10 kann auch in der Lage sein, Prozeß­ abläufe kontinuierlicher Natur zusätzlich zu denjenigen, die als Teil eines Stapelablaufs ausgelöst werden, umzusetzen. In seinem Gebrauch hierin bezieht sich somit der Begriff "Prozeß" auf jede Anzahl von stapel- bzw. chargenweisen und/oder kontinuierlichen Prozeßabläufen, die von dem Prozeß­ steuersystem 10 ausgeführt oder umgesetzt werden. Während der Ausführung des Prozesses befindet sich das Prozeßsteuersystem 10 in einem Laufzeitmodus. Die Parameter und Steueralgorith­ men, die während der Laufzeit zu verwenden sind, werden defi­ niert, während das Prozeßsteuersystem 10 in einem Konfigura­ tionsbetriebsmodus ist. Während des Konfigurationsmodus (der sich in bestimmten Situationen mit Zeitperioden überlappen kann, in welchen Prozeßoperationen ausgeführt werden) werden eine oder mehrere Softwareanwendungen, die auf einer oder mehreren Workstations 14 ausgeführt werden, verwendet, um ei­ nen Benutzer in die Lage zu versetzen, die Parameter, Steu­ eralgorithmen etc. für den Prozeß festzulegen und dabei all­ gemein die Konfiguration des Prozesses zu gestalten.
Wie Fig. 2 zeigt, enthält des Prozeßsteuersystem 10 ein Pro­ zeßkonfigurationssystem, das auf einer oder mehreren Prozeß­ konfigurationsanwendungen basiert, wie zum Beispiel Control Studio™ und Recipe Studio™, die beide von Fisher-Rosemont Systems, Inc. verfügbar sind. Die Prozeßkonfigurationsanwen­ dungen, die als Software implementiert sein können, werden verwendet, um entweder Stapel- oder kontinuierliche Prozeßab­ läufe (hier allgemein als "der Prozeß" bezeichnet) oder einen Teil davon zu gestalten. Fig. 2 ist eine Bildschirmdarstel­ lung eines Hauptkontrollfensters einer beispielhaften Prozeß­ konfigurationsanwendung, die einen Benutzer in die Lage ver­ setzt, den Prozeß 10 zu konfigurieren. Die Prozeßkonfigurati­ onsanwendung von Fig. 2 wird vorzugsweise auf einer der Workstations 14 ausgeführt, welche mit einem zentralen Server (nicht dargestellt) in dem Netzwerk 16 korrespondieren kann. Alternativ kann die Anwendung in verteilter Weise ausgeführt werden, so daß mehr als eine der Workstations 14 für die Im­ plementierung verantwortlich ist.
Allgemein ausgedrückt zeigt die Prozeßkonfigurationsanwendung eine Benutzerschnittstelle, die das in Fig. 2 gezeigte Hauptkontrollfenster hat. Das Hauptkontrollfenster enthält Pulldownmenüs 60 mit Textbefehlen, eine Befehlsleiste 62 mit Piktogrammen, einen Funktionsbibliotheksrahmen 64 und einen Flußdiagrammrahmen 66. Jeder dieser Abschnitte der Benutzer­ schnittstelle kann gemäß den typischen Fenstertechniken in der Größe verändert oder positioniert werden. Eine Vielzahl von Symbolen 68 sind in dem Funktionsbibliotheksrahmen 64 dargestellt, die jeweils einen jeweiligen Funktionsblock dar­ stellen können, der in ein sequentielles Flußdiagramm zu in­ tegrieren ist, das in dem Flußdiagrammrahmen 66 erstellt wird. Das sequentielle Flußdiagramm kann beispielsweise ein Steuerprogramm definieren, das während einer Phase des Pro­ zesses, die gestaltet wird, auszuführen ist. Um das Steuer­ programm aufzubauen, betätigt ein Benutzer eines oder mehrere der Symbole 68, in dem das bzw. die gewünschten Symbol(e) in­ dem Bibliotheksrahmen 64 beispielsweise mit einer Zeigeein­ richtung (z. B. einer Mouse) ausgewählt werden und das bzw. die betätigten Symbol(e) in den Flußdiagrammrahmen 66 gezogen werden. Die Prozeßkonfigurationsanwendung erstellt dann ein Objekt in dem Flußdiagrammrahmen 66, wie etwa einen Additi­ onsblock 70, das einen Funktionsblock darstellt. Zu dem Block 70 in dem Flußdiagrammrahmen 66 gehörende Daten bestimmen die Funktion, die ausgeführt wird, sowie ob der Block 70 Ein­ gangsanschlüsse, Ausgangsanschlüsse und dergleichen hat, die entsprechend als Teil des Blockes wie gezeigt grafisch darge­ stellt werden. Funktionsblöcke und andere Objekte, die zu dem sequentiellen Flußdiagramm (wie etwa ein Eingabeparameter) hinzugefügt werden, werden durch Linien verbunden, die von dem Benutzer (mit einem Zeichenwerkzeug, das beispielsweise aus der Befehlsleiste 62 ausgewählt wird) in dem Flußdia­ grammrahmen 66 gezogen werden, um die Datenbeziehung zwischen den Objekten festzulegen. Informationen, die die Zeitsequenz betreffen, in der jeder Funktionsblock auszuführen ist, kön­ nen auch von dem Benutzer angegeben werden und in Verbindung mit dem dargestellten Objekt festgelegt werden.
Die Daten, die jeden Funktionsblock, jede Phase etc. darstel­ len, werden in einer Konfigurationsdatenbank gespeichert, auf die von der Prozeßkonfigurationsanwendung zugegriffen und die von dieser entwickelt wird. Die praktische Ausübung der vor­ liegenden Erfindung ist nicht auf einen bestimmten Typ von Datenbank beschränkt und so kann die Konfigurationsdatenbank jede Form bzw. jeden Aufbau annehmen. Beispielsweise müssen die in der Konfigurationsdatenbank gespeicherten Daten nicht in einer lokalen oder lokalisierten Weise gespeichert werden, so daß die in der Konfigurationsdatenbank gespeicherten Daten über das Netzwerk 16 verteilt sein können. Die Konfigurati­ onsdatenbank umfaßt jedoch vorzugsweise eine objektorientier­ te Datenbank, die in dem Speicher 20 einer der Workstations 14 angeordnet ist, um die Daten zu speichern, welche die Pro­ zeßkonfiguration darstellen, was beispielsweise die Beziehun­ gen zwischen den Funktionsblöcken einschließt, die innerhalb des sequentiellen Flußdiagramms zugewiesen werden, das in dem Flußdiagrammrahmen 66 gestaltet wird.
Nachdem unter Verwendung der vorstehend beschriebenen Funk­ tionen das sequentielle Flußdiagramm gestaltet wurde, kann das resultierende Steuerprogramm als ein Verbundelement der Prozeßkonfiguration gespeichert werden. Verbundelemente, die von dem Control-Studio™-System entwickelt wurden, können wiederum zum Aufbau von Modulen verwendet werden. Zu diesem Zweck können Daten, die ein Modul darstellen, auch in der Konfigurationsdatenbank gespeichert werden. Sowohl Verbunde­ lemente als auch Module können unter Verwendung eines sequen­ tiellen Flußdiagrammes dargestellt werden.
Weitere Beispiele für Elemente, die unter Verwendung eines sequentiellen Flußdiagrammes dargestellt werden können, schließen Rezepte, Vorgänge und Einheiten-Vorgänge ein. Diese Elemente können durch einen anderen Abschnitt des Prozeßkon­ figurationssystems, der Recipe Studio™-Anwendung gestaltet werden, so daß sie einen Stapelablauf (oder einen Teil davon) darstellen, der als Teil des Prozesses auszuführen ist. Die Recipe Studio™-Anwendung erzeugt eine Benutzerschnittstelle ähnlich der in Fig. 2 gezeigten und kann einen Bibliotheks­ rahmen zur Verfügung stellen, der Symbole hat, die Module so­ wie Funktionsblöcke darstellen. Daten, die diese Rezepte, Vorgänge und Einheiten-Vorgänge wiedergeben, können dann ebenso in der Konfigurationsdatenbank gespeichert werden.
Zusammen definieren die Daten, die diese Funktionsblöcke, Mo­ dule, Rezepte etc. darstellen, den Prozeß in seiner gegenwär­ tigen Umsetzung durch das Prozeßsteuersystem 10. Zu diesem Zweck wird auf die Konfigurationsdatenbank zugegriffen, wenn Befehle in die Steuereinrichtung 12 und die Anlageneinrich­ tungen heruntergeladen werden.
Wie Fig. 3 zeigt, können die in der Konfigurationsdatenbank gespeicherten Daten einen Benutzer über eine Konfigurations­ datenbank-Verwaltungsschnittstelle, wie zum Beispiel DeltaV® Explorer, dargestellt werden, die nachfolgend als "Explorer­ system" bezeichnet wird, wobei es sich versteht, daß jede Da­ tenbankverwaltungsschnittstelle verwendet werden kann. Das Explorersystem stellt eine Konfigurationshierarchie in einer fensterartigen Umgebung dar, die eine Reihe von Konfigurati­ onstools zum Modifizieren der Elemente der Hierarchie hat. Im einzelnen dargestellt enthält ein Hauptfenster 80, das von dem Explorersystem entwickelt wird, einen Hierarchierahmen 82, in dem die Konfigurationshierarchie dargestellt wird, und einen Inhaltsrahmen 84, in dem zusätzliche Informationen für jede Komponente der Hierarchie dargestellt werden. Der Hier­ archierahmen 82 enthält eine Vielzahl von Symbolen, die ver­ schiedene Ebenen der Hierarchie kennzeichnen, wie etwa die oberste Ebene 86, welche die gesamte Prozeßkonfiguration dar­ stellt, sowie zwei sekundäre Ebenen, die einen Bibliotheks­ ordner 88 und einen Systemkonfigurationsordner 90 darstellen. Der Bibliotheksordner 88 kann die Informationen enthalten, die während der Prozeßgestaltung verwendet werden, bei der Funktionsblöcke und/oder Module innerhalb einer Phase oder eines Prozesses als Teil eines Steuerprogramms angewendet werden. Der Systemkonfigurationsordner 90 enthält die Resul­ tate der Gestaltungsvorgänge in einem oder mehreren darin enthaltenen Ordnern, wie etwa einem Rezepteordner 92. Jeder Ordner unterhalb der sekundären Ebene kann innerhalb des Hierarchierahmens in Übereinstimmung mit bekannten Fenster­ techniken erweitert oder verkleinert werden. Alternativ kön­ nen die Komponenten eines Ordners in dem Inhaltsrahmen 84 durch Auswählen des Ordnernamens unter Verwendung einer Zei­ geeinrichtung oder dergleichen dargestellt werden. Beispiels­ weise verwendet der Inhalt eines Steuerprogramms LOOP, das zu AREA_A gehört, eine Anzahl von Elementen oder Objekten, deren Namen in dem Inhaltsrahmen 84 angegeben sind. Durch Auswählen eines dieser Elemente kann der Benutzer Informationen über die Eigenschaften des Elements (Objekttyp, zur Entwicklung des Elements verwendete Anwendung, Datenspeicherposition etc.) sowie eine grafische Darstellung eines sequentiellen Flußdiagrammes in einer Prozeßkonfigurationsanwendung (zum Beispiel Control Studio) oder eine Textdarstellung, wenn kein sequentielles Flußdiagramm vorhanden ist, erhalten.
Es sei angemerkt, daß die von den Prozeßkonfigurationsanwen­ dungen (z. B. Control Studio™- und Recipe Studio™) und dem in Zusammenhang mit Fig. 2 bzw. 3 beschriebenen Explorersystem gebotenen Tools in einem gewünschten Ausmaß zu einer einzigen Anwendung integriert werden können. Ferner ist die exakte Art und Weise, in der die Konfiguration des Prozesses erzielt wird, in der praktischen Ausführungsform der vorliegenden Er­ findung nicht wesentlich. So ist zum Zweck der Vereinfachung der Erläuterung im vorliegenden Kontext der Begriff "Konfi­ gurationsanwendungen" so zu verstehen, daß er die in Verbin­ dung mit Fig. 2 beschriebenen Prozeßkonfigurationsanwendun­ gen und auch das in Zusammenhang mit Fig. 3 beschriebene Ex­ plorersystem einschließt.
Fig. 4 zeigt die Erzeugung einer Benutzerschnittstelle 94 auf der Anzeige 22 einer der Workstations 14 (Fig. 1), um einen Benutzer in die Lage zu versetzen, eine oder mehrere Konfigurationsanwendungen 96 zu implementieren. Gemäß vorlie­ gender Erfindung wird die Benutzerschnittstelle auch in Ver­ bindung mit einem Versionskontroll- und Protokollierungssy­ stem 98 (nachfolgend als VCAT-System bezeichnet) generiert, welches im allgemeinen mit den Konfigurationanwendungen 96 zusammenarbeitet, um historische Informationen, die die Kon­ figuration des Prozesses betreffen, aufzuzeichnen und zu ver­ walten. Sowohl die Konfigurationanwendungen 96 als auch das VCAT-System 98 greifen auf eine Konfigurationsdatenbank 100 zu und stehen auch anderweitig mit dieser in Kommunikation, welche wie vorstehend beschrieben Daten speichert, welche die gegenwärtige Konfiguration des Prozesses darstellen. Das VCAT-System 98 steht auch in Kommunikation mit einer Versi­ onskontrolldatenbank 102, die gemäß vorliegender Erfindung von diesem verwaltet wird.
Die Versionskontrolldatenbank 102 enthält Konfigurationshi­ storiendaten, die eine beliebige Anzahl von früheren Versio­ nen jedes Elements angeben, das in der Prozeßkonfiguration verwendet wurde oder wird. Zusammengenommen können die Histo­ riendaten für alle Elemente verwendet werden, um frühere Kon­ figurationen des Prozesses zu rekonstruieren. Genauer ausge­ drückt sind für jedes Element in der Konfigurationsdatenbank 100 (ebenso wie für diejenigen, die nicht mehr in der Konfi­ gurationsdatenbank 100 sind) Daten, welche die Konfiguration dieses Elements darstellen, für eine Vielzahl von Versionen gespeichert. Beispielsweise kann ein Element bei drei Gele­ genheiten seit seiner Erstellung modifiziert worden sein. Die Versionskontrolldatenbank 102 würde dann Daten enthalten, welche die Konfiguration des Elements zum Zeitpunkt der Er­ stellung angeben, welche als "Version 1" bezeichnet werden können, sowie Daten, die die Konfiguration des Elements nach jeder der drei Modifikationen angeben, welche "Version 2", "Version 3" und "Version 4" entsprechen würden.
Die Konfigurationshistoriendaten stellen somit alle Modifika­ tionen dar, die an den Funktionsblöcke, Modulen, Phasen, Re­ zepten und anderen Aspekten der Prozeßkonfiguration vorgenom­ men wurden. Die Modifikationen können unter Verwendung der Konfigurationsanwendungen 96 ausgeführt werden, was jedoch nicht der Fall sein muß. In diesem Fall wird die praktische Umsetzung der vorliegenden Erfindung jedoch vorzugsweise durch Integrieren der Funktionalität des VCAT-Systems 98 in die Benutzerschnittstelle 94, die von den Konfigurationsan­ wendungen 96 erzeugt wird, erreicht, wie schematisch in Fig. 4 dargestellt und nachfolgend im Detail erläutert. Zu diesem Zweck können die Konfigurationsanwendungen 96 und das VCAT- System 98 zu einem einzelnen integrierten System kombiniert werden, was jedoch nicht zwingend der Fall sein muß. Der Deutlichkeit halber werden im erforderlichen Ausmaß Aufgaben, die gemäß vorliegender Erfindung ausgeführt werden, den Kon­ figurationsanwendungen 96 und dem VCAT-System 98 separat zu­ gewiesen.
Das VCAT-System 98 wird vorzugsweise unter Verwendung einer oder mehrerer der Workstations 14 in einer Weise implemen­ tiert, welche die Überwachung jeder Modifikationen an der Prozeßkonfiguration erlaubt. Diese Überwachung kann durch das vorstehend beschriebene integrierte System weiter ausgebaut werden. Alternativ kann das VCAT-System 98 auf einer Worksta­ tion oder einer anderen Einrichtung ausgeführt werden, die nicht der Workstation 14 entspricht, die von der Bedienungs­ person oder dem Prozeßkonstrukteur verwendet wird, die aber mit dem Prozeßsteuersystem 10 in Kommunikation steht, um Da­ ten aufzuzeichnen, welche die Konfigurationmodifikationen wiedergeben.
Die Daten in einer der beiden Datenbanken 100, 102 oder in beiden Datenbanken können in einem computerlesbaren Medium gespeichert sein, das physisch an einem anderen Ort innerhalb des Prozeßsteuersystems 10 angeordnet ist, beispielsweise in dem Speicher 20, oder einem magnetischen oder optischen Spei­ chermedium, das zu einer der Workstations 14 gehört. Alterna­ tiv können eine der beiden Datenbanken 100, 102 oder beide Datenbanken an einem entfernten Ort gespeichert sein, so daß die Workstation 14 auf die darin gespeicherten Daten über ein Netzwerk, wie zum Beispiel ein Intranet, das Internet, oder ein anderes Kommunikationsmedium zugreift. Ferner müssen die in den Datenbanken 100, 102 gespeicherten Daten nicht auf demselben computerlesbaren Medium sein, so daß jeder Teil ei­ ner der beiden Datenbanken 100, 102 in einer Speichereinrich­ tung oder einem Speichermedium gespeichert sein kann, das sich von den Einrichtungen oder Medien, in welchen die ande­ ren Teile gespeichert sind, unterscheidet.
In Fig. 4 ist das VCAT-System 98 einzeln und getrennt von der Versionskontrolldatenbank 102 dargestellt. In einer al­ ternativen Ausführungsform bildet die Versionskontrolldaten­ bank 102 einen Abschnitt des VCAT-Systems 98. In ähnlicher Weise können die Konfigurationsdatenbank 100 und die Versi­ onskontrolldatenbank 102 separate und einzeln vorliegende Da­ tenstrukturen bilden, was jedoch nicht zwingend der Fall sein muß. Das heißt, daß die Datenbanken 100, 102 in demselben Speichermedium angeordnet sein können und tatsächlich Ab­ schnitte einer gemeinsamen Datenbank bilden können, die dem Prozeßsteuersystem 10 zugewiesen ist. Entsprechend sollte der Begriff "Datenbank" in seiner Verwendung hierin nicht auf ei­ ne bestimmte Datenstruktur beschränkt sein.
In einer Ausführungsform umfaßt die Versionskontrolldatenbank 102 eine relationale Datenbank. Alternativ kann die Versions­ kontrolldatenbank 102 unter Verwendung einer Referenzanwen­ dung, welche Versionskontrolltools, wie zum Beispiel Micro­ soft, Visual SourceSafe®, zur Verfügung stellt, als Verwahr­ stelle der Versionskontrolldaten erzeugt werden. In einer weiteren alternativen Ausführungsform kann die Versionskon­ trolldatenbank 102 auf Dateien basieren.
Fig. 5 ist eine Bildschirmdarstellung für die Benutzer­ schnittstelle 94 ähnlich der in Fig. 3 gezeigten, wobei je­ doch die von dem VCAT-System 98 gebotenen Funktionen mit den Konfigurationsanwendungen 96 integriert sind. In einem derar­ tigen integrierten System wurden ein oder mehrere Tools zu den Konfigurationsanwendungen 96 zum Implementieren und Steu­ ern des VCAT-Systems 98 im Kontext der Verwaltung des Prozeß­ steuersystems 10 hinzugefügt. Wenn beispielsweise das VCAT- System 98 aktiviert ist (wie weiter unten im Detail erläutert wird) und ein Benutzer versucht, ein von den Konfigurati­ onsanwendungen 96 verwaltetes Element zu betrachten und/oder zu modifizieren, indem es durch einen Doppelklick oder ander­ weitig ausgewählt wird, wird in der Benutzerschnittstelle 94 ein Dialog 110 erzeugt, der den Benutzer darauf hinweist, daß das Element aus der Konfigurationsdatenbank 100 "ausgebucht" werden muß, bevor er fortfahren kann. Wenn ein Benutzer ein neues Element zu der Prozeßkonfiguration hinzufügt, fügt ein derartiges integriertes System automatisch das neue Element sowohl zu der Konfigurationsdatenbank 100 als auch zu der Versionskontrolldatenbank 102 hinzu und bucht das Element aus, um dessen Erstellung innerhalb der Konfigurationsanwen­ dungen 96 zu erleichtern.
Kurz gesagt legt das VCAT-System 98 vorzugsweise eine Einbu­ chungs-/Ausbuchungsumgebung über die Gestaltung des Prozes­ ses. In dieser Umgebung muß ein Element ausgebucht werden (entweder von Hand oder automatisch), bevor Modifikationen vorgenommen werden können, so daß das VCAT-System 98 Informa­ tionen, die das Element betreffen, aufzeichnen kann, und da­ bei allgemein eine bevorstehende "Einbuchungs"-Operation vor­ bereiten kann. Wenn beispielsweise das Element "MCOMMAND", das in dem Inhaltsrahmen 84 gezeigt ist, eine Modifikation erfordert, würde der Benutzer das Element in dem Inhaltsrah­ men 84 ausgewählt haben und die Option "JA" in dem Dialog 110 gewählt haben, woraufhin auf die Konfigurationsdatenbank 100, welche die gegenwärtige Version des Prozesses speichert, zu­ gegriffen wird, um die zu diesem Element gehörenden Daten ab­ zurufen. Die abgerufenen Daten stellen Informationen dar, die auf verschiedene Weisen, beispielsweise als Text oder gra­ fisch, dargestellt werden können. Somit kann die von den Kon­ figurationsanwendungen 96 (beispielsweise Control Studio™) gebotene Funktionalität erforderlich sein, um die abgerufenen Informationen zu betrachten oder zu modifizieren. In jedem Fall wird die geeignete Anwendung verwendet, um die Informa­ tionen zu betrachten und gewünschte Modifikationen durchzu­ führen, woraufhin der Benutzer typischerweise ein Speiche­ rungstask ausführen würde.
Es sei angemerkt, daß die von den Konfigurationsanwendungen 96 gebotene Funktionalität, die sich nur auf das Betrachten der Konfiguration eines Elements bezieht, nicht von der Inte­ gration mit dem VCAT-System 98 betroffen sein muß. Das heißt, daß das VCAT-System 98 vorzugsweise dem Benutzer eine "Nur­ lese"-Kopie der Konfigurationsinformation ermöglicht, ohne daß der Einbuchungs-/Ausbuchungsvorgang erforderlich wäre oder ausgelöst würde.
Das Auslösen eines Speicherungstasks zum Speichern einer sol­ chen modifizierten Information, die zu dem Element gehört, geht vorzugsweise dem Einbuchen des Elements voraus. Im ein­ zelnen veranlasst das Ausführen des Speicherungstasks zu­ nächst die Konfigurationsanwendungen 96, Daten, welche die modifizierte Information darstellen, die zu dem Element ge­ hört, in der Konfigurationsdatenbank 100 zu speichern. An­ schließend beginnt das VCAT-System 98 die Ausführung des Ein­ buchungstasks, um die Daten, welche die modifizierten Infor­ mationen darstellen, in der Versionskontrolldatenbank 102 zu speichern. Die Ausführung des Einbuchungstasks kann das Er­ zeugen eines weiteren Dialoges (nicht dargestellt) enthalten, der es einem Benutzer erlaubt, einen Kommentar hinsichtlich des Einbuchungsvorganges einzugeben. Der Kommentar kann bei­ spielsweise auf den Grund gerichtet sein, der der Modifikati­ on der Konfiguration zugrunde liegt. Daten, die diesen Kom­ mentar darstellen, werden anschließend in der Versionskon­ trolldatenbank 102 gespeichert und mit den Daten, welche die modifizierte Konfiguration darstellen, in Bezug gesetzt.
Die Ausbuchungs-/Einbuchungsumgebung ist vorzugsweise auf nur diejenigen Elemente in der Konfigurationsdatenbank 100 be­ schränkt, die "versionsfähig" sind. Allgemein wird ein Ele­ ment als versionsfähig betrachtet, wenn für dieses histori­ sche Konfigurationsinformationen in Verbindung mit dem Ele­ ment selbst geführt bzw. gespeichert werden. In einer bevor­ zugten Ausführungsform zählen zu den versionsfähigen Elemen­ ten diejenigen Elemente, deren Konfiguration gestaltet bzw. programmiert wurde, wie z. B. ein beliebiges Modul, ein Ver­ bundfunktionsblock und dergleichen. Obgleich andere Elemente, wie etwa Modulparameter, als nicht versionsfähig betrachtet werden, können historische Informationen im Wege der Konfigu­ rationsinformation gespeichert werden, die für das Element, welches die Modulparameter enthält, oder ein anderes nicht versionsfähiges Element gespeichert wurde. Ein weiteres Bei­ spiel eines nicht versionsfähigen Elements ist ein Schritt oder ein Übergang.
In einer Ausführungsform ist der Ausbuchungsvorgang auf das Ausmaß beschränkt, daß nur ein einzelner Ausbuchungsvorgang erlaubt ist. Auf diese Weise ist es nicht möglich, daß zwei oder mehr Benutzer versuchen, dasselbe Element auszubuchen. In dem Fall, daß ein Benutzer versucht, ein bereits ausge­ buchtes Element auszubuchen, erzeugt das VCAT-System 98 ein Dialogfenster (nicht dargestellt), um den Benutzer über den bereits vorliegenden Ausbuchungsvorgang zu informieren, zu­ sammen mit der Identität des Benutzers, der für den früheren Ausbuchungsvorgang verantwortlich ist. Alternativ kann das VCAT-System 98 die Funktionalität enthalten, die erforderlich ist, um gleichzeitige Modifikationen jedes Elements zu ver­ folgen.
In einer anderen Ausführungsform veranlasst das Auslösen des Ausbuchungsvorganges das VCAT-System, das ausgewählte Element zu analysieren, um zu bestimmen, welche Elemente in der Ver­ sionkontrolldatenbank 102 von Modifikationen an dem ausge­ wählten Element betroffen sein können. Andere Elemente können beispielsweise betroffen sein, wenn sie das ausgewählte Ele­ ment verwenden. Die Elemente, die von Modifikationen an dem ausgewählten Element betroffen sein können, können in einem Dialogfenster (nicht dargestellt) identifiziert werden, das von dem VCAT-System 98 erzeugt wird, um dem Benutzer die Aus­ wahl zu erlauben, welches der Elemente erforderlichenfalls auch ausgebucht werden sollte. Ein ähnliches Dialogfenster kann während des Einbuchungsvorganges erzeugt werden, um den Benutzer über ausgebuchte Elemente in Kenntnis zu setzen, auf welche das ausgewählte Element Bezug nimmt, die davon abhän­ gig sind bzw. anderweitig mit diesem verbunden sind.
Die Option zum Auslösen von Ausbuchungs- und Einbuchungsope­ rationen oder jeder anderen Aufgabe, die in dem VCAT-System 98 ausgeführt wird, kann in der Benutzerschnittstelle 94 auf verschiedene Weise vorgesehen sein. In einer fensterartigen Umgebung wie der vorstehend im Zusammenhang mit den Konfigu­ rationsanwendungen 96 beschriebenen und gezeigten, kann ein Benutzer aus einer Menüleiste 112 der höchsten Ebene eine Op­ tion "Tools" auswählen, was zur Darstellung einer Vielzahl von verfügbaren Tasks in Übereinstimmung mit der bekannten Fenstertechnik führt. Das gleiche oder ein ähnliches Menü können innerhalb der Benutzerschnittstelle durch eine Betäti­ gung der rechten Maustaste auf einem Element in dem Hauptfen­ ster 80 der Konfigurationsanwendung 96 erzeugt werden. In diesem Fall kann das Menü als ein "Kontextmenü" bezeichnet werden.
Fig. 6 und 7 zeigen Beispiele eines Drop-Down-Menüs 114 und eines Kontextmenüs 116, die jeweils innerhalb der Benutzer­ schnittstelle 94 von dem VCAT-System 98 erzeugt werden kön­ nen. Das Drop-Down-Menü 114 enthält eine Vielzahl von Taske­ lementen, die von dem Benutzer durch eine Zeigeeinrichtung oder dergleichen ausgewählt werden können. Ein Versionskon­ trollelement 118 ist hervorgehoben dargestellt (nach der ent­ sprechenden Auswahl durch einen Benutzer), um ein Versions­ kontrolluntermenü 120 in Übereinstimmung mit bekannten Fen­ stertechniken zu erzeugen. Das Versionskontrolluntermenü 120 enthält wiederum eine Vielzahl von Taskelementen, die Tasks entsprechen, die von dem VCAT-System 98 ausgelöst und/oder ausgeführt werden können. Das Kontextmenü 116 enthält in ähn­ licher Weise eine Vielzahl von Taskelementen, die den Tasks des VCAT-Systems 98 entsprechen, welche auf das ausgewählte Element in dem Hauptfenster 80 einwirken können. In beiden Menüs können Befehle, die aus einem beliebigen Grund (beispielsweise fehlende Anwendbarkeit oder fehlende Autori­ sierung) nicht zur Ausführung zur Verfügung stehen, in einer unterschiedlichen Schriftart oder einem unterschiedlichen Schriftstil oder dergleichen als deaktiviert dargestellt wer­ den. Beispielsweise ist in dem Untermenü 120 aus Fig. 6 das ausgewählte Element vermutlich noch auszubuchen und demgemäß kann der Einbuchungstask nicht ausgelöst werden. Jeder der Tasks, die über die Menüs 116 und 120 zur Verfügung gestellt werden, werden nachfolgend im Zusammenhang mit dem Be­ triebsablauf des VCAT-Systems 98 beschrieben.
Wie Fig. 8 zeigt, wird dann, wenn der Benutzer das Element "Optionen" in dem Kontextmenü 116 (Fig. 7) oder alternativ ein Element "Einstellungen", das in einem anderen Menü (nicht dargestellt) angeboten wird, auswählt, ein Versionskontroll­ einstellungendialog 122 von dem VCAT-System 98 zur Anzeige auf der Benutzerschnittstelle 94 erzeugt. Der Versionskon­ trolleinstellungendialog 122 ermöglicht es dem Benutzer, Ein­ stellungen des Benutzers für die von dem VCAT-System 98 ge­ schaffene Umgebung einzurichten. Wie nachfolgend im Detail in Tabelle 1 angegeben, bietet der Versionkontrolleinstellungen­ dialog 122 Kontrollkästchen zum Umschalten zwischen jeweils drei Optionen. Die erste Option bestimmt, ob der Benutzer es bevorzugt, Elemente von Hand auszubuchen. Die zweite Option in dem Versionkontrolloptionendialog 122 gibt an, ob ein Ele­ ment automatisch ausgebucht wird, wenn der Benutzer die Modi­ fikation eines Elements versucht oder anderweitig auslöst. In dem Fall, daß Elemente automatisch ausgebucht werden, wird das VCAT-System 98 für den Prozesskonstrukteur, der die Kon­ figurationsanwendungen 96 verwendet, transparenter. Die drit­ te und letzte Option handelt davon, ob Elemente automatisch ausgebucht und eingebucht werden, wenn der Benutzer ein Ele­ ment nach einer Sitzung, die eine Möglichkeit zur Modifikati­ on bietet, versucht zu speichern.
Es sei angemerkt, daß der Versionskontrolleinstellungendialog 122 andere Optionen enthalten kann, die von dem jeweiligen Benutzer ausgewählt oder aktiviert werden können. Beispiels­ weise kann jeder Benutzer die Option haben, keine Kommentare während eines Einbuchungsvorganges abzugeben. Weitere Details über das Vorsehen derartiger Kommentare sind jedoch nachfol­ gend in Verbindung mit Tabelle 2 angegeben.
Tabelle 1
Versionskontrolleinstellungendialog
Der Benutzer kann die Auswahl des automatischen Ausbuchens wünschen, da beispielsweise Veränderungen an einem versions­ fähigen Element Veränderungen an einem oder mehreren anderen versionsfähigen Elementen betreffen und verursachen können. Beispielsweise kann die Modifikation eines Elements, wie etwa eines Verbundfunktionsblocks, sich auf ein oder mehrere Modu­ le auswirken, welche diesen Verbundfunktionsblock verwenden. Das VCAT-System 98 bestimmt vorzugsweise während jedes Ausbu­ chungsvorganges, welches andere versionsfähige Element ausge­ bucht werden muss, um die Konfiguration eines Elements zu än­ dern. Die Modifikation dieser anderen versionsfähigen Elemen­ te kann als "Folgeveränderungen" bezeichnet werden. Wenn der Benutzer das manuelle Ausbuchen gewählt hat, fordert das VCAT-System 98 den Benutzer auf, diese Elemente auszubuchen. Wenn das automatische Ausbuchen aktiviert ist, fordert das VCAT-System 98 den Benutzer nicht auf und bucht automatisch jedes der anderen Elemente aus, für welche Folgeveränderungen auftreten können.
Der Benutzer kann Elemente manuell ausbuchen und einbuchen, indem der geeignete Befehl verwendet wird, der über das Ver­ sionskontrolluntermenü 120 oder das Kontextmenü 116 angeboten wird. Vorzugsweise bestimmt das VCAT-System 98 dann, ob das ausgewählte Element ein versionsfähiges Element ist. Zu die­ ser Zeit bestimmt das VCAT-System 98 auch, ob das ausgewählte Element bereits ausgebucht wurde. In dem Fall, in dem das ausgewählte Element bereits ausgebucht ist, alarmiert ein Mitteilungsdialog (nicht dargestellt) den Benutzer über diese Tatsache und gibt dem Benutzer die Gelegenheit, beispielswei­ se über eine Schaltfläche den Mitteilungsdialog zu bestätigen und in den vorherigen Zustand der Benutzerschnittstelle 94 zurückzukehren.
Da die Konfiguration des Prozesses 10 in hierarchischer Weise festgelegt ist, muss das VCAT-System 98 das Ausbuchen von Elementen ermöglichen, die untergeordnete Elemente haben, die auch versionsfähig sind. Entsprechend wird dem Benutzer wäh­ rend eines Ausbuchungsvorganges die Option gegeben, derartige Elemente rekursiv auszubuchen. Eine ähnliche Option wird in Verbindung mit der Einbuchungsoperation vorgesehen. In einer Ausführungsform erzeugt das VCAT-System 98 dann, wenn eine rekursive Ausbuchung oder Einbuchung von dem Benutzer ausge­ wählt wurde, ein Dialogfenster (nicht dargestellt), das dem Benutzer eine Liste von versionsfähigen untergeordneten Ele­ menten zeigt, die ausgebucht (oder eingebucht) werden können. Der Benutzer kann anschließend jedes beliebige der aufgeführ­ ten Elemente auswählen (oder die Auswahl zurücknehmen), um eine selektive rekursive Operation auszulösen.
Wenn das VCAT-System 98 in die Konfigurationsanwendungen 96 integriert ist, kann das Erscheinungsbild der in dem Hauptfenster 80 dargestellten Elemente modifiziert sein, um anzuzeigen, daß das Element ausgebucht wurde. In einer Aus­ führungsform überlagert eine Buchungsmarke das zu dem Element gehörende Symbol. Es versteht sich, daß eine Vielzahl von an­ deren Erscheinungsformen verwendet werden kann. Buchungsmar­ ken mit verschiedenen Farben können auch verwendet werden, um bestimmte Benutzer zu bezeichnen, oder wenn das Element von dem gegenwärtigen Benutzer oder einem anderen Benutzer ausge­ bucht wurde.
Wie Fig. 9 zeigt, können ausgebuchte Elemente von Hand unter Verwendung der geeigneten Befehle, die in dem Versionskon­ trolluntermenü 120 und dem Kontextmenü 116 verfügbar gemacht werden, eingebucht werden. Ein Einbuchungsdialogfenster 124 wird vorzugsweise durch Auslösen der Einbuchungsprozedur durch den Benutzer erzeugt, wenn der Benutzer die Auswahl ge­ troffen hat, mit einem manuellen Einbuchungsvorgang weiter zu arbeiten. Das Einbuchungsdialogfenster 214 enthält ein Kom­ mentarfeld 126 zur Aufnahme von Kommentaren des Benutzers über die Modifikation des Elements. Der Kommentar kann bei­ spielsweise eine Erklärung erhalten, warum die Modifikationen durchgeführt wurden. Zusätzlich zu dem Kommentarfeld 126 bie­ tet das Einbuchungsdialogfenster 124 mehrere andere Optionen für den Benutzer, die jeweils im Detail nachfolgend in Tabel­ le 2 beschrieben sind. Insbesondere wird dem Benutzer die Op­ tion geboten, zu bestimmen, daß alle untergeordneten Elemen­ te, die zu dem einzubuchenden Element gehören (die ebenfalls ausgebucht sind) eingebucht werden sollten, sowie die Aus­ wahl, daß das Element für weitere Modifikationen ausgebucht bleiben sollte. Wie vorstehend angeführt, speichert die Ein­ buchungsoperation auch Daten, welche die Konfiguration dar­ stellen, in der Versionskontrolldatenbank 102 als die letzte Konfigurationsversion. In diesem Fall besteht jedoch die Mög­ lichkeit, obgleich das Element eingebucht wurde, weitere Mo­ difikationen an der Konfiguration des Elements durchzuführen, weiterhin, da das Element ausgebucht bleibt. Das Einbuchungs­ dialogfenster 124 hat "OK"- und "Abbrechen"-Schaltflächen 128 und 130 zum Ausführen oder Abbrechen des Einbuchungsvorganges sowie eine "Unterschiede"-Schaltfläche 132, welche einen Ver­ gleich der gegenwärtigen Version des Elements (wie durch die in der Konfigurationsdatenbank 100 gespeicherten Daten darge­ stellt) und der modifizierten Version, die einzubuchen ist, auslöst. Die Vergleichsinformation wird von dem VCAT-System 98 durch Zugriff auf die Konfigurationsdatenbank 100 und die letzte Version in der Versionskontrolldatenbank 102 erzeugt und über die Benutzerschnittstelle 94 dargestellt. Das Erzeu­ gen und Darstellen der "Unterschiede"-Information wird nach­ folgend im Detail erläutert.
Tabelle 2
Versionkontrolleinbuchungsdialog
Beim Einbuchen eines Elements kann das VCAT-System 98 das Er­ scheinungsbild des Elements verändern, um anzuzeigen, daß das Element eingebucht wurde. Dieses Verändern des Erscheinungs­ bildes kann beispielsweise in dem Entfernen einer Buchungs­ marke über dem Symbol, das zu diesem gehört, bestehen. Das VCAT-System 98 kann ferner die Funktionalität enthalten, wel­ che es dem Benutzer erlaubt, eine Statusaktualisierung für alle Elemente in der Konfigurationsdatenbank 100 anzufordern, um sicherzustellen, daß diejenigen Elemente, die ausgebucht sind, mittels einer Buchungsmarke oder dergleichen auch so gekennzeichnet werden. Diese Funktionalität kann beispiels­ weise erforderlich sein, wenn zwei oder mehr Benutzer an der Konfiguration des Prozesses zur gleichen Zeit arbeiten und einer der Benutzer kürzlich ein Element ausgebucht hat, das auf der Benutzerschnittstelle 94 eines anderen Benutzers dar­ gestellt ist.
Die Auswahl der "Abbrechen"-Schaltfläche in dem Einbuchungs­ dialogfenster 124 schließt das Einbuchungsdialogfenster ohne Auslösen eines Einbuchungsvorganges.
Das VCAT-System 98 kann jedoch auch einen Benutzer in die La­ ge versetzen, einen "Ausbuchen rückgängig"-Task auszulösen, der die Buchungsmarke über dem Element entfernt und, wenn das Element modifiziert wurde, die Daten, die die letzte Version angeben, aus der Versionskontrolldatenbank 102 abruft und die Daten in die Konfigurationsdatenbank 100 importiert. Dieser Vorgang stellt die Konfiguration des versionsfähigen Elements in dem Zustand wieder her, der zum Zeitpunkt des Ausbuchungs­ vorganges der aktuelle Zustand war. Dieser Task kann über ein Drop-Down- oder Kontextmenü in Verbindung mit dem VCAT-System 98 verfügbar gemacht werden.
Die Konfigurationsanwendungen 96 können zusätzliche Wege bie­ ten, um die Ausbuchungs-/Einbuchungsoperationen auszulösen. Beispielsweise kann der Benutzer ein Element in dem Explorer­ system auswählen und die "Eigenschaften", die zu diesem gehö­ ren, über eine Betätigung der rechten Maustaste oder eine ähnliche Zeigeeinrichtungsbetätigung auswählen. Ein Eigen­ schaften-Fenster wird anschließend gemäß den Standardfenster­ techniken erzeugt, das das Editieren des Inhalts von ver­ schiedenen "Eigenschaften"-Feldern ermöglicht, die innerhalb des Fensters angezeigt werden. Ein Modul kann beispielsweise eine dazugehörige Textbeschreibung haben oder bestimmte Para­ meter während der Ausführung innerhalb des Prozesses verwen­ den. Die Textbeschreibung und die Parameterwerte können als "Eigenschaften" des Moduls angegeben werden. Wenn der Benut­ zer eine Eigenschaft modifiziert und eine "OK" oder "Ausfüh­ ren"-Schaltfläche betätigt, fordert das VCAT-System 98 den Benutzer auf, das Element auszubuchen (wenn das automatische Ausbuchen nicht aktiviert ist), woraufhin ein Einbuchungsvor­ gang wie vorstehend beschrieben ausgelöst wird. Ähnliche Ak­ tionen können durch Nutzen eines "Öffnen"-Befehls erzeugt werden, der in einem Befehlsmenü der Prozeßkonfigurationsan­ wendungen zur Verfügung gestellt wird.
Ein Ausbuchungsvorgang kann auch von dem VCAT-System 98 aus­ gelöst werden, wenn ein Benutzer versucht, ein Element in dem Explorersystem neu zu benennen. In Übereinstimmung mit Stan­ dardfenstertechniken kann der Benutzer den Namen auswählen, der zu einem Element gehört, um die Bearbeitung desselben zu ermöglichen. Sobald der Benutzer mit dem Bearbeiten des Na­ mens fertig ist und versucht, die Modifikation einzugeben, wird der neue Name nur dann akzeptiert, wenn das Element aus­ gebucht wird. Wenn das Element bereits ausgebucht ist, wird das Element in der Konfigurationsdatenbank 100 neu benannt und Daten, die eine neue Version des Elements anzeigen, wer­ den in der Versionskontrolldatenbank 102 gespeichert, wenn dieses eingebucht wird. Zu dieser Zeit kann das VCAT-System 98 weitere Daten erzeugen, die den Kommentar darstellen, der die Namensänderungsoperation beschreibt, und anschließend diese Daten mit den Daten verbinden, welche die neue Version des Elements bezeichnen. Wenn das neu zu benennende Element noch nicht ausgebucht ist, wird der Benutzer über ein Dia­ logfenster (nicht dargestellt) aufgefordert, das Element aus­ zubuchen (wenn das automatische Ausbuchen nicht aktiviert ist).
Wie vorstehend angeführt werden Daten, die jede frühere Kon­ figuration eines Elements darstellen, in der Versionskon­ trolldatenbank zusammen mit den Daten gespeichert, die eine diesen zugewiesene Version wiedergeben. Die Version wird vor­ zugsweise durch eine Nummer identifiziert, kann jedoch auch in jeder anderen Weise bezeichnet werden. Das Versehen jeder früheren Konfiguration mit einer Versionsnummer kann den Be­ nutzer während der Analyse des Inhalts der Versionskontroll­ datenbank 102 unterstützen, ebenso wenn der Prozeß in der Laufzeitumgebung ist. Zu diesem Zweck wird die Versionsnummer oder ein Identifizierungskennzeichen eines Elements vorzugs­ weise als ein Elementparameter eingeschlossen, wenn das Ele­ ment in die Steuereinrichtung 12 und/oder eine Stapelausfüh­ rungsroutine heruntergeladen wird (die Stapelausführungsrou­ tine sitzt in der Workstation 14, um die Ausführung eines Stapelprozesses zu verwalten und hat in Verbindung damit die Aufsicht über die Steuereinrichtung 12). Mit anderen Worten enthalten die Daten, die von den Workstations 14 herunterge­ laden werden, wenn das Prozeßsteuersystem auf die Implemen­ tierung eines Prozesses vorbereitet wird, Versionsidentifi­ zierungsdaten für bestimmte Elemente in der Konfigurationsda­ tenbank 100 (das heißt jedes Modul, jede Phase, jedes Vor­ gangselement etc.), welche an dem Herunterladevorgang betei­ ligt sind. Die Versionsinformation ist anschließend in der Laufzeitumgebung für eine Prozeßbedienungsperson über die Steuereinrichtung 12 und/oder die Stapelausführung verfügbar. Die Kenntnis der Versionsinformation kann die Kommunikation zwischen den Prozeßbedienungspersonen und den Prozeßgestal­ tern, die in den Konfigurationsanwendungen 96 arbeiten, er­ leichtern.
Es sei angemerkt, daß das Herunterladen eines Elements in die Steuereinrichtung 12 oder in die Laufzeitumgebung allgemein eines oder mehrere Dialogfenster (nicht dargestellt) ein­ schließt, die von den Konfigurationsanwendungen 96 für die Benutzerschnittstelle 94 erzeugt werden, welche den Benutzer durch den Herunterladevorgang leiten. Diese Dialogfenster können den gleichen Fenstern entsprechen, die von den Konfi­ gurationsanwendungen 96 erzeugt werden, wenn das VCAT-System 98 nicht in diese integriert ist. Das VCAT-System 98 kann je­ doch verifizieren, daß alle Elemente, die heruntergeladen werden sollen, nicht ausgebucht sind, bevor das Ablaufen des Herunterladevorganges zugelassen wird. Wenn Elemente ausge­ bucht sind, kann das VCAT-System 98 ein oder mehrere Fehler­ dialogfenster (nicht dargestellt) erzeugen, die den Benutzer über die Situation informieren und die ausgebuchten Elemente kennzeichnen. Derartige Fehlerdialogfenster können den Einbu­ chungsvorgang erleichtern, indem in diesen eine Schaltfläche vorgesehen ist, die einen Einbuchungsvorgang von einem oder mehreren ausgebuchten Elementen auslösen, die in dem Dia­ logfenster identifiziert werden.
Wie Fig. 10 zeigt, kann die Versionsidentifizierungsinforma­ tion den Prozeßgestaltern über einen Versionsüberwachungspro­ tokollbericht (nachfolgend "Überwachungsprotokollbericht" ge­ nannt) verfügbar gemacht werden, der von dem VCAT-System 98 gemäß einer Ausführungsform der vorliegenden Erfindung er­ zeugt wird. Allgemein wird jede Veränderung oder Modifikation an der Prozeßkonfiguration in der Versionskontrolldatenbank 102 als eine bestimmte Version, die zu dem Prozeß gehört, aufgezeichnet. Die Daten, welche die Version und den Gegen­ stand der Modifikation angeben, können mit Daten verknüpft sein, welche das Einbuchungsdatum und die Einbuchungszeit, den Benutzer, der das Element eingebucht hat, und die Gründe für die Modifikation darstellen. Es sei angemerkt, daß das VCAT-System 98 auch Daten speichern kann, welche das Ausbu­ chungsdatum und die Ausbuchungszeit sowie die Identität des Benutzers, der das Element ausbucht, darstellen.
Das Überwachungsprotokoll kann dem Benutzer über ein Überwa­ chungsprotokolldialogfenster 140 zur Verfügung gestellt wer­ den, das von dem VCAT-System 98 für die Benutzerschnittstelle 94 erzeugt wird. Genauer ausgedrückt kann ein "Zeige Histo­ rie"-Task von dem Benutzer durch Verwenden einer der vorste­ hend beschriebenen Techniken ausgelöst werden, zu welchen beispielsweise das Kontextmenü 116 gehört, während der Benut­ zer innerhalb einer der Konfigurationsanwendungen 96 ist. Das Überwachungsprotokoll der Historie kann auch dem Benutzer über jede andere Anzeigeeinrichtung, wie zum Beispiel einen Drucker, zur Verfügung gestellt werden oder kann in einer elektronischen Version des Protokolls eingebettet sein, so daß beispielsweise Daten, die das Überwachungsprotokoll dar­ stellen, elektronisch über ein Netzwerk weitergegeben werden.
Das Überwachungsprotokolldialogfenster 140 enthält einen Ta­ bellenabschnitt 142, der einen Kopfabschnitt 144 hat, welcher einer Vielzahl von Feldnamen zum Darstellen von Versionsin­ formationen bezeichnet, die unter Bezug auf eine Versionsnum­ mer, einen Benutzernamen, der mit dem Ausbuchen verbunden ist, auf Datum und Zeit des Einbuchens und eine Beschreibung der Modifizierung oder der Aktion bezogen sind. Die Versi­ onsinformationen werden in Zeilen (oder Einträgen) unter den Feldnamen wiedergegeben, wie Fig. 10 zeigt. Jeder Eintrag ist durch eine Zeigeeinrichtung oder anderweitig auswählbar, um eine Vielzahl von Operationen auszulösen. Die von dem VCAT-System 98 in Verbindung mit dem Überwachungsprotokoll­ dialogfenster gebotene Funktionalität ist nachfolgend in Ta­ belle 3 zusammengefaßt.
Tabelle 3
Überwachungsprotokolldialogfenster
Wie Tabelle 3 zeigt, kann der Benutzer die Details einer Ver­ sions des Elements betrachten, indem die Zeile des Tabellen­ abschnitts 142 ausgewählt wird, die dieser Version ent­ spricht, und anschließend die Betrachten-Schaltfläche 143 be­ tätigt wird. Auf die in der Versionskontrolldatenbank gespei­ cherten Daten wird anschließend zugegriffen, um die Konfigu­ rationsinformation für die ausgewählte Version des Elements entweder im Textformat oder im grafischen Format oder in bei­ den Formaten basierend auf der Art des Elements darzustellen. Bestimmte Elemente können beispielsweise nur Text bilden und können somit nicht im grafischen Format betrachtet werden. Beispielsweise können versionsfähige Elemente, wie etwa eine Workstation oder I/O-Einrichtung, nur Parameter enthalten, die modifiziert werden können. Die Parameter liegen in Text­ form vor und somit ist für derartige Elemente keine grafische Ansicht verfügbar. Einige Elemente können jedoch sowohl im grafischen Format als auch im Textformat betrachtet werden und schließen allgemein Elemente, wie zum Beispiel Module, Verbundfunktionsblöcke oder andere Elemente, die auf einem sequentiellen Flußdiagrammalgorithmus basieren, ein. In die­ sen Fällen kann der Benutzer aufgefordert werden, eines der Formate zu wählen oder alternativ können beide Formate darge­ stellt werden.
Ein Beispiel eines im Textformat gezeigten Elements ist in Fig. 11 dargestellt, bei der es sich um eine Bildschirmdar­ stellung handelt, die von dem VCAT-System 98 für die Benut­ zerschnittstelle 94 erzeugt wird. Die Bildschirmdarstellung enthält ein Textansichtsfenster 146, das einen Rahmen 148 für die zu dem Element gehörende Textinformation hat. Das Textan­ sichtsfenster 146 bietet dem Benutzer verschiedene Betrach­ tungsoptionen oder Operationen, die nachfolgend beschrieben werden.
Fig. 12 ist ein Beispiel einer Bildschirmdarstellung eines Elements, das im grafischen Format dargestellt wird. Wie die Bildschirmdarstellung für das Textformat wird auch das grafi­ sche Format über ein grafisches Ansichtsfenster 150 mit einem Rahmen 152 für die zu dem Element gehörende grafische Infor­ mation dargestellt. Wie Fig. 11 und Tabelle 3 zeigen, kann der Benutzer auch jegliche Kommentare, die zu der Zeit des Einbuchens für eine bestimmte Version aufgezeichnet wurden, analysieren, indem eine Details-Schaltfläche 154 nach dem Auswählen der gewünschten Version betätigt wird. Die Kommen­ tare sind vorzugsweise über das Einbuchungsdialogfenster 124 gespeichert worden, es können jedoch auch andere Schemata verwendet werden, um Kommentare darstellende Daten mit einer bestimmten Version zu verbinden. Das Überwachungsprotokoll­ dialogfenster 140 erlaubt es ferner dem Benutzer, zwei Ver­ sionen des Elements durch Verwendung einer Zeigeeinrichtung (oder einer anderen Auswahleinrichtung) auszuwählen, um die beiden entsprechenden Einträge in dem Tabellenabschnitt 142 auszuwählen. Das Auswählen von zwei Einträgen ermöglicht es einem Benutzer, eine Unterschiede-Operation durch Auswählen einer Unterschiede-Schaltfläche auszulösen, was wiederum das VCAT-System 98 veranlasst, einen Unterschiede-Fensterdialog zu erzeugen, welcher die Konfigurationsinformation für jede ausgewählte Version eines Elements in einem Format darstellt, das dem Benutzer das Vergleichen der beiden Versionen er­ laubt. Die Details der Unterschiede-Operation werden nachfol­ gend im Detail erörtert. Wenn nur ein einzelner Eintrag aus­ gewählt wurde und die Unterschiede-Schaltfläche ausgewählt wird, erzeugt das VCAT-System 98 das Unterschiede-Fenster in der Weise, daß die ausgewählte Version mit der gegenwärtigen Version des in der Konfigurationsdatenbank 100 gespeicherten Elements verglichen wird.
Das Überwachungsprotokolldialogfenster 140 erlaubt es allge­ mein auch einem Benutzer, eine der früheren Versionen der Konfiguration des Elements zu implementieren. Genauer ausge­ drückt kann das VCAT-System 98 von dem Benutzer angewiesen werden, eine Routine auszulösen, welche auf die Versionskon­ trolldatenbank 102 zugreift, um die Daten abzurufen, die eine frühere Konfigurationsversion darstellen, um die in der Kon­ figurationsdatenbank 100 in Verbindung mit dem ausgewählten Element gespeicherten Daten zu modifizieren. Die Modifikation der Konfigurationsdatenbank 100 kann dann durchgeführt wer­ den, indem die Daten von der Versionskontrolldatenbank 102 in die Konfigurationsdatenbank 100 importiert werden. Um diesen "Rückzug" auf eine frühere Konfigurationsversion eines Ele­ ments zu implementieren enthält gemäß einer Ausführungsform das Überwachungsprotokolldialogfenster 140 eine Rückzug- Schaltfläche 158, die von dem Benutzer ausgewählt werden kann, sobald ein Eintrag in dem Tabellenabschnitt 142 ausge­ wählt wurde.
In einer Ausführungsform bietet das VCAT-System 98 dem Benut­ zer die Option, sich auf eine Konfiguration zurückzuziehen, die in die Steuereinrichtung 12 zur Nutzung innerhalb der Laufzeitumgebung heruntergeladen wurde. Diese Rückzugsopera­ tion kann durch Auswählen eines Taskelements wie etwa "her­ untergeladene Datei wiederherstellen" aus einem Drop-Down- oder Kontextmenü ausgelöst werden und das Erzeugen eines spe­ zialisierten Überwachungsprotokolldialogfensters (nicht dar­ gestellt) durch das VCAT-System 98 einschließen, das nur die­ jenigen Versionen aufführt, die heruntergeladen wurden. Wie weiter unten im Detail beschrieben wird, enthält die Versi­ onskontrolldatenbank 102 vorzugsweise Daten, die angeben, ob eine Version zur Verwendung in der Laufzeitumgebung herunter­ geladen wurde oder nicht. Eine Version kann dann von dem Be­ nutzer ausgewählt werden, woraufhin die zugehörige Konfigura­ tionsinformation aus der Versionskontrolldatenbank 102 von dem VCAT-System 98 abgerufen wird und als die letzte Konfigu­ rationsversion gespeichert wird.
Vorzugsweise bestimmt das VCAT-System 98, ob die Konfigurati­ onsdatenimportoperation erfolgreich ist, indem andere Elemen­ te in der Konfigurationshierarchie und in dem Prozeß geprüft werden, die von dem Element abhängig sind. Wenn beispielswei­ se eine Konfigurationsversion eines Moduls wiederhergestellt wird, kann die Konfigurationsversion ein bestimmtes unterge­ ordnetes Element (zum Beispiel einen Verbundfunktionsblock) benötigen, das vorhanden sein muss. Das Modul wird dann als "abhängig" in dem Sinn bezeichnet, daß der Erfolg der Rück­ zugsoperation von der andauernden Existenz des untergeordne­ ten Elements abhängig ist. Ein Modul kann zahlreiche ver­ schiedene Arten von Abhängigkeiten haben, wie zum Beispiel eingebettete Funktionsblöcke, verknüpfte Funktionsblöcke, En­ umerationssätze, Alarmtypen, andere Module, Anlagenbereiche und Steuereinrichtungen. Demgemäß prüft in einer Ausführungs­ form das VCAT-System 98 jedes untergeordnete Element des Ele­ ments, das einer Rückzugsoperation unterzogen wurde, um zu bestimmen, ob versionsfähige Elemente gelöscht wurden.
In einer bevorzugten Ausführungsform werden die Daten, die in die Konfigurationsdatenbank importiert wurden, in die Versi­ onskontrolldatenbank 102 sowie die letzte Konfigurationsver­ sion des Elements eingebucht. Dieses Einbuchen tritt gleich­ zeitig mit der Modifikation der Konfigurationsdatenbank 100 auf und schließt vorzugsweise das Speichern von Daten ein, die einen Kommentar darstellen, der angibt, daß der Benutzer auf eine frühere Konfigurationsversion des Elements zurückge­ griffen hat. Alternativ kann das VCAT-System 98 ein Dia­ logfenster erzeugen, um dem Benutzer die Option zu bieten, einen selbstverfaßten Kommentar einzugeben, einen Standard­ kommentar einzugeben oder keinen Kommentar einzugeben. Wenn das Element ausgebucht wurde, bevor der Rückzugstask ausge­ löst wurde, kann das VCAT-System 98 das Element ausgebucht halten, nachdem der Rückzugstask vollendet wurde, was jedoch nicht zwangsweise der Fall sein muss.
Schließlich enthält das Überwachungsprotokolldialogfenster 140 eine Schaltfläche zum Schließen des Dialogfensters 140 und Zurückkehren zu der Benutzerschnittstelle 94 in ihrem vorherigen Zustand.
Wie Fig. 10 zeigt, ist eine der Aktionen (abgesehen von ei­ ner Einbuchungsoperation) die in dem Überwachungsprotokoll aufgezeichnet ist, eine Kennzeichnungsoperation für die ge­ samte Prozesskonfiguration. Wie Fig. 13 zeigt, kann der Be­ nutzer eine Kennzeichnungsoperation durch Auswählen eines versionsfähigen Elements innerhalb beispielsweise eines der Module, das unter Verwendung der Konfigurationsanwendungen gestaltet wurde, und Auswählen des Kennzeichnungs-Tasks über entweder das Drop-Down-Menü oder das Kontextmenü, die von dem VCAT-System 98 erzeugt werden, auslösen. Ansprechend darauf erzeugt das VCAT-System 98 ein Kennzeichnungs-Dialogfenster 162, das ein Kennzeichenfeld 164 und ein Kommentarfeld 166 enthält. Der Benutzer wird anschließend aufgefordert, ein Kennzeichen einzugeben, das an dem ausgewählten Element (und untergeordneten Elementen) in der Versionskontrolldatenbank 102 angewandt wird. Die letzte Konfigurationsversion jedes Elements, die in der Versionskontrolldatenbank 102 gespei­ chert ist, wird anschließend dem vom Benutzer eingegebenen Kennzeichen zugewiesen. Die in der Versionskontrolldatenbank 102 gespeicherten Überwachungsprotokolldaten werden auch ak­ tualisiert, so daß sie das Zuweisen des Kennzeichens wieder­ geben, welches vorzugsweise an der jüngsten Konfigurations­ version angewandt wird. Genauer ausgedrückt, gibt die Versi­ onsaktion in den Überwachungsprotokoll-Konfigurationshisto­ riendaten wieder, daß die Version einem neu zugewiesenen Kennzeichen entspricht, das den eingegebenen Namen trägt, und die damit verbundenen Details entsprechen den Informationen, die von dem Benutzer in dem Kommentarfeld 166 des Kennzeich­ nungsdialogfensters 162 eingegeben wurden.
Das Vergeben eines Kennzeichens kann für einen Prozeßgestal­ ter in dem Sinn vorteilhaft sein, daß der Prozeßgestalter mittels eines Kennzeichens, wie etwa "AUF STEUEREINRICHTUNG 1 GELADEN" notieren kann, welche Konfigurationsversionen von verschiedenen Elementen in die Steuereinrichtung 12 zur Im­ plementierung in dem Prozeß heruntergeladen wurden. Vorzugs­ weise weist jedoch das VCAT-System 98 jedem heruntergeladenen Element automatisch ein Kennzeichen zu, um die Konfigurati­ onsversion als in die Laufzeiteinrichtung heruntergeladen zu kennzeichnen. Daten, die weitere Informationen darstellen, wie etwa das Datum und die Zeit des Herunterladens und die Elemente, die gleichzeitig heruntergeladen wurden, können auch in Verbindung mit dem Kennzeichen gespeichert werden.
Das VCAT-System 98 kann dann entsprechend die Fähigkeit zur Verfügung stellen, die Konfiguration des gesamten Prozesses oder eines Abschnittes davon auf die Version zurückzusetzen, die mit einem Kennzeichen verbunden ist, das mittels des vor­ stehend beschriebenen Vorganges für jedes der betroffenen Elemente in der Versionskontrolldatenbank 102 gesetzt wurde. In einer Ausführungsform ist diese Fähigkeit nur auf das Stammelement bzw. das Element in der höchsten Ebene in der Konfigurationshierarchie anwendbar, die unter Verwendung der Konfigurationsanwendungen 96 entwickelt wurde. In diesem Fall kann ein Task "System auf Kennzeichen rücksetzen" ausgelöst werden; wenn der Benutzer das Stammelement ausgewählt hat und weiter das entsprechende Taskelement aus einem Drop-Down-Menü oder einem Kontextmenü ähnlich dem in Fig. 7 gezeigten Menü auswählt. Ein Warndialog (nicht dargestellt) kann von dem VCAT-System 98 erzeugt werden, der den Benutzer zur Bestäti­ gung der Absicht auffordert, das System auf ein Kennzeichen rückzusetzen. Wenn der Benutzer angibt, daß der Task "System auf Kennzeichen rücksetzen" gewünscht ist, kann der Benutzer dann aufgefordert werden, den Namen des Kennzeichens einzuge­ ben, auf welches das System rückgesetzt wird. Alternativ kann das VCAT-System 98 das System automatisch auf das letzte Kennzeichen rücksetzen, das in der Versionskontrolldatenbank 102 gesetzt wurde. In jedem Fall greift dann, wenn der Task "System auf Kennzeichen rücksetzen" ausgeführt wird, das VCAT-System 98 auf die Versionskontrolldatenbank 102 zu, um die Daten abzurufen, welche die Konfigurationsversion dar­ stellen, die zu dem Kennzeichen für jedes Element gehört, und importiert die abgerufenen Daten in die Konfigurationsdaten­ bank 100. Das VCAT-System 98 modifiziert anschließend die Versionskontrolldatenbank 102, so daß sie die Rücksetzung wiedergibt, indem Daten gespeichert werden, die eine neue Konfigurationsversion für jedes Element angeben, sowie Daten, die zu diesen gehören, welche die Rücksetzung auf das Kenn­ zeichen wiedergeben.
In einer Ausführungsform können diese Daten mit der Konfigu­ rationsversion verbunden sein, indem Daten gespeichert wer­ den, die einen Kommentar darstellen, der die Rücksetzung auf das Kennzeichen angibt.
Gemäß einer Ausführungsform speichert das VCAT-System 98 vor­ zugsweise weiterhin Daten in der Versionskontrolldatenbank 102, die ein Element darstellen, das gelöscht oder in anderer Form aus der Konfigurationsdatenbank 100 entfernt wurde. In diesem Fall kann auf die Versionskontrolldatenbank 102 zu­ rückgegriffen werden, wenn der Benutzer die Entscheidung trifft, ein Rücksetzen auf eine Prozeßkonfiguration durchzu­ führen, die das gelöschte Element verwendet. Wie Fig. 14 zeigt, kann das VCAT-System 98 einen Benutzer auch in die La­ ge versetzen, Elemente zu entfernen, die aus der Konfigurati­ onsdatenbank 100 gelöscht wurden. Zu diesem Zweck erzeugt das VCAT-System 98 ein Wiederherstellen/Entfernen-Dialogfenster 168, das eine Liste dieser gelöschten Elemente enthält. Das Wiederherstellen/Entfernen-Dialogfenster 168 kann nach Aus­ wählen eines Wiederherstellen/Entfernen-Taskelements entweder in einem Drop-Down-Menü oder einem Kontextmenü erzeugt wer­ den. Ein derartiges Taskelement kann aktiviert werden oder anderweitig dem Benutzer zur Verfügung gestellt werden, nach­ dem ein Element innerhalb der Konfigurationsanwendungen 96 ausgewählt wurde. Wenn das ausgewählte Element ein oder meh­ rere untergeordnete Elemente hat, die aus der Konfigurations­ datenbank 100 gelöscht wurden, kann der Benutzer die Wieder­ herstellungsoperation über das Dialogfenster 168 auslösen, um Daten, die eines oder mehrere der gelöschten Elemente dar­ stellen, zu der Konfigurationsdatenbank 100 hinzufügen.
Das Wiederherstellen/Entfernen-Dialogfenster 168 enthält eine Wiederherstellen-Schaltfläche 170 zum Wiederherstellen eines oder mehrerer gelöschter Elemente in der Liste, die von dem Benutzer ausgewählt wurden. Beim Wiederherstellen eines ge­ löschten Elements kann das VCAT-System 98 auf die Versions­ kontrolldatenbank 102 zugreifen, um die letzte Konfigurati­ onsversion des gelöschten Elements abzurufen, und anschlie­ ßend die dazugehörigen Daten in die Konfigurationsdatenbank 100 importieren. Alternativ fordert das VCAT-System 98 den Benutzer zum Auswählen einer früheren Konfigurationsversion auf, soweit mehrere Versionen in der Versionskontrolldaten­ bank 102 gespeichert sind.
Das Auswählen einer Entfernen-Schaltfläche 172, die in dem Dialogfenster 168 vorgesehen ist, führt andererseits zu dem Entfernen aller Daten, die zu dem Element gehören, aus der Versionskontrolldatenbank 102. Weitere Details hinsichtlich des Wiederherstellen/Entfernen-Dialogfensters 168 sind nach­ folgend in Tabelle 4 angegeben.
Tabelle 4
Wiederherstellen/Entfernen-Dialogfenster
Gemäß einer Ausführungsform der Erfindung unterstützt das VCAT-System 98 eine Versionskontroll- und Überwachungsproto­ kollfunktionalität für Elemente, die nicht von den Konfigura­ tionsanwendungen 96 erstellt, entwickelt oder verwaltet wer­ den. Beispielsweise kann ein Benutzer ein Dokument in einem Textverarbeitungsprogramm erstellen, welches die Funktionali­ tät eines bestimmten Elements beschreibt. Es wäre wünschens­ wert, jede Bearbeitung des Dokuments zu speichern und zu ver­ folgen, da die Konfiguration und somit die Beschreibung modi­ fiziert werden. Zu diesem Zweck wird das Hauptkontrollfenster 80, das von dem Explorersystem für die Benutzerschnittstelle 94 erzeugt wird, verwendet, um ein neues Versionskontrollele­ ment zu bezeichnen. Im einzelnen erweitert zunächst der Be­ nutzer ein "Benutzer-Arbeitsraum"-Objekt (das heißt ein Ob­ jekt in dem Explorersystem). Ein Taskelement, das auf das Er­ stellen eines neuen Ordners in dem Hierarchierahmen 82 ge­ richtet ist, wird dann vom Benutzer ausgewählt, und ein neuer Ordner wird gemäß bekannten Fensterbearbeitungstechniken er­ stellt und benannt. In ähnlicher Weise wird ein Taskelement ausgewählt, das auf das Erstellen eines neuen Elements ge­ richtet ist, und dem Benutzer wird anschließend Gelegenheit gegeben, ein Dokument oder eine Datei zu suchen, um sie als neues Element in den soeben erstellten Ordner einzusetzen. Sobald das Dokument oder die Datei in den Ordner eingesetzt sind, wird diese in der Versionskontrolldatenbank 102 als weiteres Element hinzugefügt, für welches Versionen und ver­ sionsbezogene Informationen gespeichert werden können. Nach­ folgend können jede Version der Daten oder des Dokuments aus der Versionskontrolldatenbank 102 unter Verwendung eines Ab­ rufen-Taskelements abgeholt werden, das dem Benutzer über ein Drop-Down-Menü oder ein Kontextmenü zur Verfügung gestellt wird. Der Abrufen-Task bietet dem Benutzer ein Dialogfenster (nicht dargestellt), das die Eingabe einer gewünschten Spei­ cherposition für die abgerufene Datei anfordert, wie zum Bei­ spiel eine Diskette. Die ursprüngliche Anwendung, die zum Er­ stellen dieser Datei oder des Dokuments genutzt wurde (beispielsweise eine Textverarbeitungsanwendung) kann an­ schließend verwendet werden, um auf den Inhalt der Datei oder des Dokuments von der bezeichneten Speicherposition zuzugrei­ fen.
Wie Fig. 15 zeigt, erzeugt das VCAT-System 98 vorzugsweise ein Mitteilungsdialogfenster 174 zur Anzeige von Versionskon­ trollbestätigungsinformationen für den Benutzer über die Be­ nutzerschnittstelle 94. Das Mitteilungsdialogfenster 174 ent­ hält ein Textfeld 176, in dem Textbeschreibungen jeder Versi­ onskontrolloperation entsprechend ihrem Auftreten dokumen­ tiert sind. Allgemein erlaubt es das Mitteilungsdialogfenster 174 einem Benutzer, durch eine Historie der Operationen zu scrollen, die vorgenommen wurden, seit eine Löschen-Schalt­ fläche 178 zuletzt von dem Benutzer betätigt wurde. Eine Ab­ brechen-Schaltfläche 180 ist ebenso vorgesehen, um den Benut­ zer in die Lage zu versetzen, eine Versionskontrolloperation bei der nächsten Gelegenheit abzubrechen. Wenn beispielsweise der Benutzer eine Rückzugsoperation ausgelöst hat, kann die Ausführung der Operation durch das VCAT-System 98 durch das Auswählen der Abbrechen-Schaltfläche 180 beendet werden, so­ fern die Durchführung der Operation beispielsweise nicht be­ reits vollendet wurde. Das Mitteilungsdialogfenster 174 kann automatisch gemäß bekannten Fenstertechniken verkleinert wer­ den, wenn die Versionskontrolloperationen für eine bestimmte Zeitdauer nicht durchgeführt wurden. Das Mitteilungsdia­ logfenster 174 wird dann automatisch auf der Benutzerschnitt­ stelle 94 erneut dargestellt, wenn die nächste Versionskon­ trolloperation ausgelöst wird.
Die Art und Weise, in der das VCAT-System 98 dem Benutzer ei­ ne Textdarstellung der Konfiguration eines Elements über das Textansichtsfenster 146 bietet, wird nachfolgend in Verbin­ dung mit Fig. 11 beschrieben. Das VCAT-System 98 kann in der Lage sein, die Konfigurationsinformation jedes Elements in der Versionskontrolldatenbank 102 in einem Textformat darzu­ stellen, wobei diese Möglichkeit nicht unbedingt vorhanden sein muss. Wie vorstehend erläutert, können einige Elemente gemäß ihrer Natur Konfigurationsinformationen haben, die auch grafisch dargestellt werden können.
Das Format, in dem die Konfigurationsinformation für ein Ele­ ment dargestellt wird, ist für die praktische Ausführung der vorliegenden Erfindung nicht wesentlich. Das VCAT-System 98 nutzt jedoch vorzugsweise ein Textformat, bei dem das Ausmaß des horizontalen Scrollens, das für den Benutzer zum Betrach­ ten sowohl einer einzelnen Konfigurationsversion eines Ele­ ments als auch beim Vergleichen von zwei Versionen erforder­ lich ist, minimiert wird. Ferner ist bevorzugt, daß Schlüs­ selwörter und Kennzeichen verwendet werden, um Attribute, wie zum Beispiel Objekttyp und Eigenschaften, zu kennzeichnen. Zu den Beispielen von verwendbaren Kennzeichen zur Bezeichnung von Elementtypen zählen: "PARAMETER", "FUNKTIONS BLOCK" und "STEUEREINRICHTUNG". Beispiele von Eigenschaftskennzeichen sind: "NAME" und "BESCHREIBUNG". Die Schlüsselwörter und Kennzeichen können dann in die entsprechende Sprache über­ setzt werden. Beispielsweise würde eine japanische Version der Benutzerschnittstelle 94 die Schlüsselwörter auf japa­ nisch anzeigen. Bedingungsaussagen und andere logische Aussa­ gen in der Sprache können ebenso in ein leicht zu lesendes Format zur Darstellung in der Textansicht übersetzt werden. In einer Ausführungsform enthält das Textformat für jedes Element begrenzende Sprachelemente, wie etwa BEGINN und ENDE. Beispielsweise hat die Konfigurationsversion Nummer 13 eines Moduls einen Parameter, der von den folgenden BEGINN und ENDE Aussagen begrenzt ist:
BEGINN Parameter "ABS_PRESS_CF"
ENDE Parameter "ABS_PRESS_CF"
In einer anderen Ausführungsform kann der Name eines Elements nicht in Verbindung mit einem Kennzeichen identifiziert sein, wie etwa in dem folgenden Beispiel:
BEGINN FUNKTIONS BLOCK
NAME = "AI1"
DEFINITION = "AI"
BESCHREIBUNG = "Analog Eingabe"
LINKS = 200
OBEN = 200
HÖHE = 125
BREITE = 400
ENDE FUNKTIONS_BLOCK
Das Textansichtsdialogfenster 146 enthält eine Suchen- Schaltfläche 200, eine Abwärtssuche-Schaltfläche 202 und eine Aufwärtssuche-Schaltfläche 204. Die Schaltflächen 200, 202 und 204 erlauben es allgemein einem Benutzer, die in dem Rah­ men 148 angebotene Textinformation in Übereinstimmung mit ei­ ner darin ausgewählten Zeichenkette mit einer Zeigeeinrich­ tung oder dergleichen gemäß bekannten Fensterarbeitstechniken zu durchsuchen. Zu diesem Zweck kann die Betätigung der Su­ chen-Operation durch Auswählen der Suchen-Schaltfläche 200 das VCAT-System 98 veranlassen, ein Suchen-Dialogfenster (nicht dargestellt) zu erzeugen, um das Durchsuchen des Rah­ mens 148 durch einen Benutzer zu erleichtern. Eine Zeichen­ kette kann dann in ein Feld eingegeben werden und das erste Auftreten der Zeichenkette kann beispielsweise durch Betäti­ gung einer OK-Schaltfläche (nicht dargestellt) in dem Suchen- Dialogfenster gefunden werden. Der Benutzer kann anschließend die Schaltflächen 202 und 204 verwenden, um Instanzen der Zeichenkette entweder in Aufwärtsrichtung oder in Abwärts­ richtung jeweils zu finden. Weitere Informationen über diese Operationen und andere, die über das Textansichtsdialogfen­ ster 146 vorgesehen sind, sind nachfolgend in Tabelle 5 ange­ geben.
Tabelle 5
Textansichtsdialogfenster
An diesem Punkt ist es sinnvoll, im Detail die Art und Weise zu beschreiben, in der die in dem Dialogfenster 146 dargeleg­ te Textinformation durch das VCAT-System 98 aus den Daten, welche diese darstellen, die in der Versionskontrolldatenbank 102 gespeichert sind, erzeugt wird. Es versteht sich, daß die Art und Weise, in der die Versionskontrolldaten gespeichert werden, für die praktische Ausführung von bestimmten Aspekten der vorliegenden Erfindung nicht wesentlich ist. In einer Ausführungsform der vorliegenden Erfindung werden die Versi­ onskontrolldaten jedoch vorzugsweise in der Versionskontroll­ datenbank 102 in einem auf Dateien basierenden Format gespei­ chert. In einer alternativen Ausführungsform werden die Daten in einer objektorientierten Weise gespeichert, so daß die Versionskontrolldatenbank eine objektorientierte Datenbank umfaßt.
Die Versionskontrolldatenbank 102 ist vorzugsweise unter Ver­ wendung der DeltaV™-Database Administrator-Anwendung verwal­ tet, die von Fisher-Rosemont Inc. zur Verfügung gestellt wird und in dem erforderlichen Ausmaß modifiziert wurde, um die beiden Datenbanken 100, 102 handzuhaben. Alternativ kann der Microsoft SQL Server® Enterprise Manager für diesen Zweck verwendet werden.
Um die Textinformation zu erzeugen, welche die Konfigurati­ onsversion darstellt, führt das VCAT-System 98 eine Routine aus, die allgemein auf die Versionskontrolldatenbank 102 zu­ greift, um die 32373 00070 552 001000280000000200012000285913226200040 0002010051645 00004 32254zugehörigen Daten in einer Weise zu exportie­ ren, die in ein Format entweder auf Text- oder Grafikbasis übersetzt werdern können. Zu diesem Zweck speichert während eines Einbuchungsvorganges das VCAT-System 98 eine auf Text basierende Darstellung der Versionskontrolldaten in einer Da­ tei in Übereinstimmung mit einer Auszeichnungssprache, wie zum Beispiel XML (Extensible Markup Language). Der in dem XML-Dokument enthaltene Text, der an diesem Punkt erzeugt wird, kann zu einem einzelnen Zeichenstring gereiht werden, der in der Versionskontrolldatenbank 102 gespeichert wird. Insbesondere kann in einer Ausführungsform jedes versionsfä­ hige Element einen Datenbankeintrag haben, der jeder Konfigu­ rationsversion entspricht. In diesem Fall hat jeder Konfigu­ rationsversioneintrag ein Feld, das dafür ausgelegt ist, daß eine einzelne Zeichenkette bzw. ein einzelner Zeichenstring aus XML-Text darin gespeichert wird, der die Versionskon­ trolldaten, die zu dieser Konfigurationsversion gehören, dar­ stellt. Vorzugsweise bilden diese Konfigurationsversionein­ träge eine Tabelle einer Vielzahl von Tabellen in der Versi­ onskontrolldatenbank 102, bei der es sich in diesem Fall um eine relationale Datenbank handelt. Die relationale Datenbank kann andere Tabellen enthalten, die auf das Speichern der folgenden Tatsachen gerichtet sind: 1.) ob jedes versionsfä­ hige Element gelöscht ist, das Identifizierungskennzeichen der aktuellen Version, ob das Element gegenwärtig ausgebucht ist, und, sofern zutreffend, an wenn; 2.) und die Überwa­ chungsprotokollinformation für jedes versionsfähige Element.
In einer bevorzugten Ausführungsform werden alle Konfigurati­ onsdaten, die zum vollständigen Definieren einer Konfigurati­ on eines Elements erforderlich sind, für jede Version separat gespeichert. Alternativ können die Konfigurationsdaten in ei­ ner Weise gespeichert werden, die nur die Unterschiede zwi­ schen Versionen definiert, wobei in diesem Fall die Daten, die mit mehreren Datenbankfeldern verbunden sind, abgefragt werden müssen, um das XML-Dokument für eine bestimmte Version zu entwickeln.
Die Versionskontrolldaten werden dadurch in strukturierter Weise dargelegt, die ohne weiteres manipuliert und analysiert werden kann, wenn später auf die Versionskontrolldatenbank 102 zugegriffen wird. Um die in dem Beispiel von Fig. 11 ge­ zeigte Konfigurationsinformation darzustellen, interpretiert das VCAT-System 98 die XML-Darstellung der Versionskontroll­ daten, um die Konfigurationsinformationen in einem leicht lesbaren Textformät wiederzugeben. Die Art und Weise, in der die XML-formatierten Daten verarbeitet werden, sind dem Durchschnittsfachmann bekannt, werden jedoch nachfolgend im Detail beschrieben.
Zur Zeit des Einreichens der vorliegenden Anmeldung ist XML eine dem Durchschnittsfachmann bekannte Auszeichnungssprache, und man geht davon aus, daß gegenwärtig die Standardisierung als XML 1.0 durch das World Wide Web-Konsortium (www.w3.org) im vollem Gange ist. Während andere Datenschemata verwendet werden können, ist die Verwendung einer beliebigen aus einer Anzahl von Auszeichnungssprachen bevorzugt, um die Erzeugung sowohl von Text- als auch Grafikdarstellungen der Konfigura­ tion des Elements zu erleichtern.
Allgemein ausgedrückt hat ein in XML ausgeführtes Dokument eine logische Struktur, die aus Deklarationen, Kommentaren und Verarbeitungsanweisungen sowie aus Knoten, die mit einem einzelnen Rootelement (oder Dokumentenelement) beginnen, be­ steht. Beispielsweise kann ein versionsfähiges Element ein Anfangselement bzw. Rootelement "MODUL" haben, um einen Ab­ schnitt einer Steuerstrategie darzustellen. Dieses MODUL- Element kann einen Attributknoten mit der Bezeichung NAME enthalten, welcher einen Textknoten hat, welcher den Namen des Moduls enthält. Zusätzlich kann das Modul Elementknoten zur Beschreibung des Moduls enthalten. Diese Elemente können beispielsweise ALGORITHMUS_TYP, BESCHREIBUNG, AUSFÜHRUNGS­ GESCHWINDIGKEIT und MODUL_TYP einschließen. Jedes dieser Ele­ mente kann einen Textknoten haben, der einen Wert aufrechter­ hält, der diesen bestimmten Abschnitt der Konfiguration dar­ stellt. Der MODUL-Elementknoten kann ferner Elementknoten enthalten, die zusätzliche Elemente enthalten, so daß dadurch eine Hierarchie geschaffen wird. Beispielsweise kann ein MODUL einen SCHRITT enthalten und der SCHRITT kann ein oder mehrere AKTION-Elemente enthalten. Die AKTION-Elemente können wiederum Elemente wie zum Beispiel NAME, BESCHREIBUNG, AKTION_TYP und dergleichen enthalten.
Somit stellt das XML-Format die Versionskontrolldaten mit der Hilfe von Kennzeichen in ähnlicher Weise wie bei der in Hy­ pertext Markup Language (HTML)-Dokumenten gefundenen Weise fest. In XML-Dokumenten können die Kennzeichen jedoch an die Art der zu speichernden Daten wie vorstehend beschrieben an­ gepasst werden. Beispielsweise ist der Funktionsblock, für den die Textdarstellung vorstehend dargestellt wurde, nach­ folgend im XML-Format angegeben:
<Funktions_Block<
<Name-<AI1</Name<
<Definition-<AI</Definition<
<Beschreibung<Analoge Eingabe</Beschreibung<
<Links<200</Links<
<Oben<200</Oben<
<Höhe<125</Höhe<
<Breite<400</Breite<
<Funktions_Block<
Auf die in einem XML-Dokument gespeicherten Daten wird in Übereinstimmung mit einem Objektmodell zugegriffen, das das Analysieren des Dokuments vorsieht, um eine Datenbaumstruktur zu schaffen, die eine Vielzahl von Knoten hat, die zu den Versionskontrolldaten gehören. In der praktischen Ausführung der vorliegenden Erfindung kann ein beliebiges von verschie­ denen Objektmodellen verwendet werden, wie zum Beispiel das Dokumentenobjektmodell in seiner Anwendung auf XML.
Die Textinformation, die in dem Textansichtsdialogfenster 146 über die Benutzerschnittstelle 94 dargestellt wird, wird er­ zeugt, indem der XML-Text in das Datenbankfeld geladen wird, um die vorstehend beschriebenen Objektknoten für die Konfigu­ rationsversion zu erstellen. Das Dokumentenobjektmodell kann dann verwendet werden, um die von den Objektknoten geschaffe­ ne Datenstruktur zu durchlaufen, um die Konfigurationsinfor­ mation zu extrahieren und das in Fig. 11 gezeigte Textformat für die ausgewählte Version und das ausgewählte Element zu erzeugen.
Das Grafikansichtsdialogfenster 150 aus Fig. 12 wird eben­ falls aus der vorstehend beschriebenen Routine auf XML-Basis erzeugt. Wie dem Durchschnittsfachmann ohne weiteres ver­ ständlich ist, kann das gleiche XML-Dokument, das zum Erzeu­ gen der Textinformation verwendet wird, in der Lage sein, ei­ ne grafische Darstellung zu unterstützen, bei Vorhandensein der erforderlichen Objekte in der Baumstruktur zusammen mit dem Wissen, wie bestimmte Objekte darzustellen sind. Bei ei­ ner begrenzten Anzahl von verfügbaren Objekttypen wird dieses Wissen durch das VCAT-System 98 zur Verfügung gestellt. Wenn beispielsweise das XML-Dokument angibt, daß ein Element ein Funktionsblock ist, kann das VCAT-System 98 eine Routine zur Darstellung einer allgemeinen Zeichnung eines Funktionsbloc­ kes auslösen und dabei erneut auf die in dem XML-Dokument vorgesehenen Daten Bezug nehmen, um den Funktionsblock in Übereinstimmung mit anderen Parametern zu zeichnen.
Es versteht sich, daß nicht jedes Element grafisch darge­ stellt werden kann. Elemente, die grafisch dargestellt werden können, schließen jedoch ohne Einschränkung diejenigen ein, die allgemein durch einen Funktionsblock oder einen sequenti­ ellen Flußdiagrammalgorithmus definiert sind.
Das Grafikansichtsdialogfenster 150, das aus der Auswahl des Benutzers einer Konfigurationsversion in dem Überwachungspro­ tokolldialogfenster 140 resultiert, bietet einem Benutzer verschiedene Optionen, um das Prüfen der Konfiguration zu er­ leichtern. Insbesondere enthält das Dialogfenster 150 eine Textansichtsschaltfläche 206, die es dem Benutzer erlaubt, die Konfigurationsinformation, die in dem Rahmen 152 darge­ stellt wird, in einem Textformat in Übereinstimmung mit vor­ stehend beschriebener Vorgehensweise darzustellen. Die Tex­ tansicht-Schaltfläche 206 kann auch auf ein bestimmtes unter­ geordnetes Element, das im Rahmen 152 dargestellt wird, ge­ richtet sein. Im einzelnen kann, nachdem ein Benutzer das un­ tergeordnete Element ausgewählt hat, die Textansicht-Schalt­ fläche 206 betätigt werden, um die Konfigurationsinformation des untergeordneten Elements im Textformat zu betrachten. Al­ ternativ kann das untergeordnete Element durch Betätigen der rechten Maustaste oder dergleichen ausgewählt werden, um ein Kontextmenü 207 zu erzeugen, welches den Textansicht-Task als auszuwählendes Element anbietet.
Das Dialogfenster 150 enthält ferner eine Schaltfläche 208 zum Anzeigen eines übergeordneten Elements und eine Drill­ down-Schaltfläche 210. Die Drilldown-Schaltfläche 210 bietet dem Benutzer die Option, die Konfigurationsinformation für ein untergeordnetes Element (im möglichen Umfang) des ur­ sprünglich ausgewählten Elements in einem grafischen Format darzustellen. Sobald ein Element (wie zum Beispiel ein Ver­ bundfunktionsblock 212), das in dem Rahmen 152 dargestellt ist, von dem Benutzer ausgewählt wird, wird die Drilldown- Schaltfläche 210 aktiviert, so daß sie von einem Benutzer mit einer Zeigeeinrichtung oder dergleichen ausgewählt werden kann. Die Schaltfläche 210 kann dann gewählt werden, um tie­ fer in das untergeordnete Element einzudringen, um die grafi­ sche Konfigurationsinformation in Bezug darauf darzustellen. Der Drilldown-Task kann auch unter Verwendung des Kontextme­ nüs 207 ausgelöst werden.
Die Schaltfläche 208 zum Darstellen von übergeordneten Ele­ menten gibt dem Benutzer die Option, zu einer grafischen An­ sicht des übergeordneten Elements zurückzukehren, indem die Ansicht des untergeordneten Elements entfernt wird. Alterna­ tiv kann das untergeordnete Element in einem separaten Dia­ logfenster angezeigt werden, so daß die Anzeigeoperation für das übergeordnete Element das VCAT-System 98 veranlasst, das zu dem untergeordneten Element gehörende Dialogfenster zu schließen und dadurch zur grafischen Ansicht des übergeordne­ ten Elements zurückzukehren.
In einer alternativen Ausführungsform wird dann, wenn keine grafische Ansicht für ein untergeordnetes Element zur Verfü­ gung steht (da es beispielsweise keinen Verbundfunktionsblock oder kein Modul bildet), ein Textansicht-Dialogfenster er­ zeugt. Es versteht sich, daß schließlich der Vorgang des wei­ teren Vordringens in untergeordnete Elemente in einem Grafi­ kansicht-Dialogfenster zu einem Textansicht-Dialogfenster führt.
Es sei angemerkt, daß die Verwendung eines XML-Dokuments, das als Zwischenstufe zwischen der Versionskontrolldatenbank 102 und der Erzeugung der Benutzerschnittstelle 94 direkt während des kontinuierlichen Betriebes erstellt wird, eine effizien­ te, flexible Vorgehensweise für die Präsentation von Konfigu­ rationsinformationen darstellt. Wichtiger ist jedoch, daß das Erzeugen eines XML-Dokuments für jede Konfigurationsversion auch den raschen und effizienten Vergleich von zwei Versionen eines ausgewählten Elements bietet.
Das Vergleichen von Versionen eines Elements ist im allgemei­ nen Umfeld der Versionskontrolle nützlich, um die allgemein so bezeichneten "Unterschiede" zwischen Versionen zu bestim­ men. Hinsichtlich des vorstehend dargelegten Prozeßsteuersy­ stems 10 wäre es vorteilhaft, die Unterschiede zwischen zwei Versionen eines Elements sowohl in Textform als auch grafisch darzustellen. In einer bevorzugten Ausführungsform erzeugt das VCAT-System 98 Unterschiede-Dialogfenster sowohl für die Textdarstellung als auch für die grafische Darstellung der Unterschiede zwischen zwei Versionen unter Verwendung der vorstehend beschriebenen Verarbeitung der in der Versionskon­ trolldatenbank 102 gespeicherten Daten auf XML-Basis. Da die Baumstruktur eines XML-Dokuments gemäß dem Objektmodell ohne weiteres analysiert werden kann, können zwei Versionen eines Elements ohne weiteres verglichen werden, indem die entspre­ chenden beiden XML-Dokumente analysiert werden und die analy­ sierten Daten Objekt für Objekt verglichen werden.
Fig. 16 zeigt ein Unterschiede-Dialogfenster 220 im Textfor­ mat, das einen ersten Rahmen 222 und einen zweiten Rahmen 224 zum Darstellen von Konfigurationsinformationen für eine erste Konfigurationsversion uhd eine zweite Konfigurationsversion hat. Sowohl das horizontale als auch das vertikale Scrollen der Textinformation, die in jedem Rahmen 222, 224 angezeigt ist, ist unter Verwendung bekannter Fensterarbeitstechniken vorgesehen. Der erste Rahmen 222 kann die Konfigurationsin­ formation für eine ältere Version (beispielsweise Version Nummer 13) darstellen, während der zweite Rahmen die Konfigu­ rationsinformation für eine jüngere Version (beispielsweise Version 14) darstellen kann. Es sei jedoch angemerkt, daß die Versionen nicht aufeinanderfolgend numeriert sein müssen, da ja zwei beliebige Versionen durch das VCAT-System 98 vergli­ chen werden können. Als ältere Version kann der erste Rahmen 222 eine oder mehrere Textzeilen enthalten, die als Resultat einer Ausbuchungs-/Einbuchungsmodifikation der Konfiguration gelöscht wurden. Vorzugsweise ist der zu derartigen gelösch­ ten Zeilen gehörige Text in einer anderen Farbe (beispiels­ weise blau), einem anderen Zeichensatz oder einem anderen Zeichenstil als der übrige Text dargestellt. Um anzugeben, daß der Text in blauer Farbe beispielsweise eine gelöschte Zeile darstellt, kann eine Schaltfläche 226 den Text "gelöschte Zeilen" in blauer Farbe enthalten. In ähnlicher Weise kann der Rahmen 224 eine oder mehrere Textzeilen ent­ halten, die als Resultat einer Modifikation an der Konfigura­ tion des Elements eingefügt wurden. Derartige Textzeilen kön­ nen beispielsweise in grüner Farbe dargestellt werden, ebenso wie eine Schaltfläche 228 mit dem grünfarbigen Text "einge­ fügter Text". Schließlich kann der Inhalt einer oder mehrere Textzeilen zwischen den Versionen geändert worden sein (jedoch nicht vollständig gelöscht). Derartige Zeilen können in roter Farbe in beiden Rahmen 222, 224 zusammen mit einer Schaltfläche 230 dargestellt werden, welche den rotfarbigen Text "veränderter Text" hat. Es versteht sich, daß jede Farbe oder jedes Stilschema verwendet werden kann, um die vorste­ hend bezeichneten Arten von Unterschieden zu unterscheiden und den veränderten Text gegenüber dem Text, der beiden Ver­ sionen gemeinsam ist, abzuheben.
Das Unterschiede-Dialogfenster 220 in Textdarstellung enthält ferner eine Suchen-Schaltfläche 232, eine Abwärtssuche- Schaltfläche 234, eine Aufwärtssuche-Schaltfläche 236, eine Abwärts-Schaltfläche 238, eine Aufwärts-Schaltfläche 240, welche dieselben Navigationsfunktionen bieten, die vorstehend unter Bezug auf das Textansicht-Dialogfenster 146 beschrieben wurden. Diese Navigationstools sind vorzugsweise auf beide Rahmen 222, 224 anwendbar, so daß jeder vertikale Scrollvor­ gang, der von dem Benutzer ausgelöst wird, zu dem Scrollen der beiden Rahmen führt. In einer alternativen Ausführungs­ form können diese Navigationstools (sowie andere Standard- Scrolltechniken in einer Fensterumgebung) auf einen der Rah­ men 222, 224 angewendet werden, und zwar beispielsweise dar­ auf basierend, welcher Rahmen von einem Benutzer ausgewählt wurde.
Die Textinformation für die Versionen, die verglichen werden, muss nicht nebeneinander dargestellt werden. Beispielsweise kann das textliche Unterschiede-Dialogfenster alternativ ei­ nen einzelnen Rahmen enthalten, in dem der gemeinsame Text, der veränderte Text, die eingefügten Zeilen und die gelösch­ ten Zeilen dargestellt sind und durch ein ähnliches Farb- oder Stilschema unterschieden sind. Unterschiede zwischen den beiden Versionen können auch in diesem Kontext durch Verwen­ dung von roter Unterstreichung, Unterstreichung, abgrenzender Zeichensetzung und dergleichen dargestellt werden.
Ein grafisches Unterschiede-Dialogfenster 250 ist in Fig. 17 dargestellt. Das grafische Unterschiede-Dialogfenster 250 ba­ siert auf einem Fenster mit einem Rahmen ähnlich dem grafi­ schen Ansichtsdialogfenster 150, kann alternativ jedoch auch zwei Rahmen nebeneinander im Fenster verwenden, um die Ver­ sionen gegenüberzustellen. Um zwischen gemeinsamen Objekten, gelöschten Objekten, hinzugefügten Objekten und veränderten Objekten zu unterscheiden, kann auch hier ein Farbschema ver­ wendet werden. Die Farben können als Hintergrundfarben der Objekte, als Umrandung, als Mattierung, als Umriß etc. ange­ wandt werden. Schaltflächen 252, 254 und 256 sind als Tasten für das Farbschema in derselben Weise wie vorstehend in Ver­ bindung mit dem Unterschiede-Dialogfenster 220 in Textdar­ stellung dargelegt ausgeführt. Beispielsweise sind ein Schrittelement S1 und ein Übergangselement T1 mit einer far­ bigen Begrenzung (zum Beispiel rot) dargestellt, um anzuge­ ben, daß die Elemente modifiziert wurden. Ein weiteres Schrittelement S2 und ein weiteres Übergangselement T2 sind mit einer Begrenzung in anderer Farbe (zum Beispiel blau) dargestellt, um anzuzeigen, daß diese Elemente gelöscht oder entfernt wurden.
Es sei angemerkt, daß das Farbschema auch auf die Linien an­ gewandt werden kann, die die Elemente verbinden.
Beispiele für Veränderungen an Elementen, die durch eine far­ bige Umrißlinie bzw. einen farbigen Rahmen dargestellt wer­ den, schließen das Hinzufügen einer Aktion zu einem Schritt und das Verändern des Ausdrucks eines Übergangs ein. Verände­ rungen an der Ausführungsreihenfolge der Funktionsblöcke kön­ nen durch Einfassen in Umrißlinien bzw. Umrahmen etc. nur des Abschnitts des Objekts, der sich auf die Darstellung der Aus­ führungsreihenfolge bezieht, gekennzeichnet werden. Dieser Abschnitt kann beispielsweise unten an einem Objekt angeord­ net sein. In dem Fall, daß ein Objekt zwischen Versionen neu benannt wurde, kann das Farbschema verwendet werden, um die beiden Versionen des Objekts als gelöscht und hinzugefügt darzustellen. Alternativ kann das VCAT-System 98 dem Benutzer die Möglichkeit bieten, nur wesentliche Unterschiede zwischen Versionen darzustellen, so daß kosmetische Veränderungen nicht dargestellt werden.
Das grafische Unterschiede-Dialogfenster 250 enthält ferner eine Textanzeigeschaltfläche 258, die dieselbe Funktion wie die Schaltfläche 206 hinsichtlich sowohl des ausgewählten Elements als auch jedes untergeordneten Elements bietet.
Wenn ein untergeordnetes Element als modifiziert dargestellt wird, bietet das VCAT-System 98 dem Benutzer die Möglichkeit, durch eine entsprechende Auswahl des Elements in das Element einzudringen, um entweder ein Unterschiede-Dialogfenster in Textdarstellung oder ein weiteres grafisches Unterschiede- Dialogfenster für das untergeordnete Element zu erzeugen. In einer Ausführungsform ist das tiefere Eindringen nur bei den­ jenigen Elementen möglich, für welche ein grafisches Dia­ logfenster erzeugt werden kann. Im allgemeinen ist jedoch die Art des erzeugten Fensters von der Art des Elements wie vor­ stehend erläutert abhängig. Das tiefere Eindringen in ein un­ tergeordnetes Element kann auch durch Auswählen desselben und anschließendes Auswählen einer Drilldown-Schaltfläche 260 ausgelöst werden. Das Zurückkehren zu dem vorherigen grafi­ schen Unterschiede-Dialogfenster 250 kann durch Auswählen ei­ ner Schaltfläche 262 zum Anzeigen des übergeordneten Elements geschehen, die in derselben Weise wie die Schaltfläche 208 arbeitet.
Wenn ein Element, das entfernt wurde, an derselben Position in dem grafischen Unterschiede-Dialogfenster ist wie ein Ele­ ment, das hinzugefügt wurde, kann eines der Elemente verdeckt sein. Wenn daneben ein Kommentar verändert wird, ist der alte Kommentar in der grafischen Darstellung nicht sichtbar. Um es dem Benutzer zu ermöglichen, ein verstecktes Element oder ei­ nen versteckten Kommentar zu sehen, kann das VCAT-System 98 einen Mechanismus vorsehen (über einen Menüpunkt oder eine Auswahlsequenz unter Verwendung einer Zeigeeinrichtung oder dergleichen), um eine Umschaltmöglichkeit zu bieten, welches Element oder welcher Kommentar dargestellt (das heißt in der obersten Ebene ist) und welches Element verdeckt wird.
In einer bevorzugten Ausführungsform enthalten die vorstehend beschriebenen Textansichts- und Grafikansichts-Dialogfenster einschließlicher derjenigen, die auf das Betrachten von Un­ terschieden gerichtet sind, eine Schaltfläche oder eine Tas­ kelementsequenz, die es einem Benutzer erlaubt, zwischen der Text- und der Grafikanzeige umzuschalten. Das VCAT-System 98 enthält vorzugsweise diese Funktionalitäten nur bei Dialog­ fenstern für Elemente, die in beiden Formaten dargestellt werden können.
Es sei angemerkt, daß das VCAT-System 98 eine Sicherheitsprü­ fung über die Versionskontrollumgebung legen kann. Beispiels­ weise kann das VCAT-System 98 bei einer Operation (beispiels­ weise Rückzug), die eine bestimmte Ebene oder Art der Autori­ sierung erfordert, vor der Durchführung der Operation bestim­ men, ob der Benutzer zum Auslösen der Operation autorisiert ist.
Wenn ein neuer Benutzer zu dem VCAT-System 98 hinzugefügt wird, kann das VCAT-System 98 ein Dialogfenster für einen neuen Benutzer (nicht dargestellt) erzeugen, das eine Viel­ zahl von Kontrollkästchen hat, die einer Vielzahl von VCAT- Operationen entsprechen, die ausgewählt oder nicht ausgewählt werden können, um dem Benutzer das gewünschte Ausmaß an Auto­ risierung zu verleihen.
Es versteht sich ferner, daß das VCAT-System 98 einem Benut­ zer, der die entsprechende Autorisierung hat, die Option des Aktivierens und des Deaktivierens des VCAT-Systems 98 bieten kann. Wenn es deaktiviert ist, würde das VCAT-System 98 das Arbeiten der Konfigurationsanwendungen 96 ermöglichen, ohne Einbuchung/Ausbuchung und andere Vorgänge aufzuerlegen. Wenn es erneut aktiviert ist, führt das VCAT-System 98 vorzugswei­ se eine Synchronisierungsroutine durch, welche auf die Konfi­ gurationsdatenbank 100 zugreift, um die gegenwärtigen Konfi­ gurationsdaten mit den letzten in der Versionskontrolldaten­ bank 102 gespeicherten Konfigurationsdaten zu vergleichen. Für jedes Element, bei dem eine Konfigurationsmodifikation während der Zeitdauer, während der das VCAT-System 98 deakti­ viert war, auftrat, wird eine Konfigurationsversion hinzuge­ fügt, und Daten, welche die gegenwärtige Version in der Kon­ figurationsdatenbank 100 darstellen, werden in Verbindung da­ mit gespeichert. Neue Elemente können auch in der Versions­ kontrolldatenbank 102 im erforderlichen Ausmaß erzeugt wer­ den. Ferner kann ein Kennzeichen allen Elementen in der Ver­ sionskontrolldatenbank 102 zugewiesen werden, um anzuzeigen, daß das VCAT-System 98 wieder aktiviert wurde.
Die Synchronisierungsroutine kann auch zu jeder anderen Zeit ausgeführt werden. In bestimmten Fällen sollte beachtet wer­ den, daß das VCAT-System 98 möglicherweise einige Ausbu­ chungsoperationen und/oder das Rückgängigmachen von einigen Ausbuchungsoperationen in dem erforderlichen Ausmaß zur Modi­ fikation der Versionskontrolldatenbank 102 ausführen muss.
Das VCAT-System 98 kann ferner eine Datenbanksicherungs-/­ Wiederherstellungsroutine ähnlich der Routine enthalten, die zur Sicherung und Wiederherstellung der Konfigurationsdaten­ bank 100 verwendet wird, welche von dem Explorersystem ver­ waltet wird. Andere allgemeine Datenbankhilfsprogramme, wie etwa eine "Datenbank reinigen"-Routine, die auf das Wieder­ herstellen der Datenspeicherstruktur der-Versionskontrollda­ tenbank 102 gerichtet ist, können auch als Teil des VCAT- Systems 98 enthalten sein.
Die Benutzerschnittstelle 94 ist vorzugsweise nicht die ein­ zige Ausgabeeinrichtung, mit der die Versionskontrollinforma­ tion den Benutzern und Bedienungspersonen des VCAT-Systems 98 und der Konfigurationsanwendungen 96 dargeboten wird. Insbe­ sondere können eine oder mehrere Routinen von dem VCAT-System 98 implementiert werden, um die Erzeugung von Berichten zur Übertragung an einen Drucker oder eine andere Anzeigeeinrich­ tung zu unterstützen. Beispielsweise kann das VCAT-System 98 dem Benutzer die Möglichkeit bieten, Taskelemente auszuwäh­ len, die auf das Erzeugen von Berichten gerichtet sind, wel­ che Versionskontrollinformationen darstellen, die sich darauf beziehen, welche Elemente ausgebucht sind, das Prüfprotokoll eines bestimmten Elements, die von einem bestimmten Benutzer ausgebuchten Elemente, jegliche gelöschte (jedoch nicht ent­ fernte) Elemente und eine Liste von Ausbuchungen nach Datum oder einem anderen Parameter, für welche Daten in der Versi­ onskontrolldatenbank 102 gespeichert sein können. Derartige Informationen können über jede Anzeigeeinrichtung abgegeben werden, sei es lokal oder entfernt angeordnet, und können in einem beliebigen Format bzw. in Übereinstimmung mit einem be­ liebigen Protokoll abgegeben werden.
Um das Erzeugen derartiger Berichte zu erleichtern, enthält das VCAT-System 98 vorzugsweise ein Abfragesystem. Das Abfra­ gesystem erlaubt allgemein dem Benutzer, Suchkriterien anzu­ geben, die auf eine beliebige Anzahl von Gegenständen, wie zum Beispiel Modifikationen oder Aktionen durch einen be­ stimmten Benutzer, Modifikationen oder Versionskontrollereig­ nisse, die während eines angegebenen Zeitrahmens auftraten, Modifikationen oder Versionskontrollereignisse, die in einer bestimmten Version oder einem bestimmten Kennzeichen auftra­ ten, und Modifikationen oder andere Versionskontrollereignis­ se, die sich auf ein bestimmtes Element oder einen Elementbe­ reich beziehen, gerichtet sind. Nachdem der Benutzer eines oder mehrere Kriterien für eine Abfrage eingegeben hat, löst das VCAT-System 98 eine Suchroutine aus, welche auf die Ver­ sionskontrolldatenbank 102 zugreift und den Inhalt entspre­ chend analysiert. In einer bevorzugten Ausführungsform führt das VCAT-System 98 eine Suchroutine im Hintergrund aus, so daß andere Versionskontrolloperationen gleichzeitig eingelei­ tet und ausgeführt werden können.
Das Abfragesystem kann eines oder mehrere Dialogfenster zur Anzeige über die Benutzerschnittstelle 94 erzeugen. Beispiele von zwei solchen Dialogfenstern sind in Fig. 18 und 19 ge­ zeigt. Ein Dialogfenster 280 für die Optionen eines Histori­ enberichts bzw. eines Archivberichts kann durch Auswählen ei­ nes Elements und anschließendes Auswählen eines Taskelements, das darauf gerichtet ist, entweder über ein Drop-Down-Menü oder ein Kontextmenü erzeugt werden. Das Dialogfenster 280 hat Kontrollkästchen, die darauf gerichtet sind, ob der zu erstellende Historienbericht Versionskontrollinformationen enthält, welche Merkmale und untergeordnete Elemente betref­ fen. Ein Benutzerfeld 282 ist ebenfalls vorgesehen, um es zu ermöglichen, daß der Historienbericht auf Modifikationen oder Versionskontrollereignisse gerichtet ist, die von einem be­ stimmten Benutzer ausgelöst wurden. Schließlich kann ein Feld 284 "von Datum" und ein Feld 286 "bis Datum" verwendet wer­ den, um eine bestimmte Zeitperiode für den Historienbericht anzugeben. Um das Eingeben des Anfangs- und Enddatums für die Zeitperiode zu erleichtern, können ein Popup-Kalender oder Beispieldaten in einem Fenster, das für jedes der Felder 284, 286 erzeugt wird, gemäß bekannten Fensterprogrammtechniken vorgesehen sein.
Wie Fig. 19 zeigt, kann das Abfragesystem ein allgemeines Such-Dialogfenster 290 erzeugen, das einen Statussuchab­ schnitt 292 und einen Suchbereichsabschnitt 294 zur Angabe bestimmter Suchkriterien enthält. Der Statussuchabschnitt 292 enthält Kontrollkästchen, um das VCAT-System 98 anzuweisen, alle ausgebuchten Elemente oder von einem bestimmten Benutzer ausgebuchten Elemente zu suchen. Der Benutzer kann über ein Benutzerfeld 296 eingegeben werden, das in der Lage ist, Be­ nutzernamen über ein Drop-Down-Fenster vorzuschlagen. Der Suchbereichsabschnitt 294 enthält mehrere Kontrollkästchen, die es dem Benutzer erlauben, die Versionskontrollinformation zu suchen, die sich nur auf das ausgewählte Element, das aus­ gewählte Element und alle untergeordneten Elemente, oder alle Elemente in der Versionskontrolldatenbank 102 beziehen.
Die Bildschirmanzeigen von Fig. 5 bis 19 sowie weitere Bild­ schirmanzeigen können unter Verwendung eines Fensterformats mit Standardbefehlen für grafische Bildschirmoberflächen un­ ter Verwendung von Fenstern erzeugt und modifiziert werden, obgleich auch jedes andere Format verwendet werden kann. Das Format dieser Bildschirmanzeigen kann drastisch verändert werden, wenn beispielsweise das VCAT-System 98 in Verbindung mit anderen Konfigurationsanwendungen als dem Explorersystem oder den anderen vorstehend genannten Anwendungen verwendet wird.
Obgleich die Konfigurationsanwendungen 96 und das VCAT-System 98, die hier beschrieben wurden, vorzugsweise in einer oder mehreren Softwareroutinen implementiert werden, können sie in einer Routine implementiert sein, die in Hardware, Firmware etc. ausgeführt ist, und können durch jeden anderen Prozes­ sor, der mit dem Prozeßsteuersystem 10 verbunden ist, imple­ mentiert werden. Somit können alle vorstehend beschriebenen Operationen und Vorgänge in einer Standard-Mehrzweck-CPU im­ plementiert werden oder auf speziell gestalteter Hardware oder Firmware nach Wunsch vorliegen. Bei der Implementierung in Software kann die Softwareroutine in jedem computerlesba­ ren Speicher, wie beispielsweise auf einer Magnetplatte, ei­ ner Laserplatte oder einem anderen Speichermedium, in einem RAM oder ROM eines Computers oder Prozessors und dergleichen gespeichert werden. Entsprechend kann die Software zu einem Benutzer oder einem Prozeßsteuersystem über jedes bekannte oder gewünschte Lieferverfahren geliefert werden, darunter beispielsweise auf einer computerlesbaren Platte oder einem anderen transportablen Computerspeichermechanismus oder über einen Kommunikationskanal, wie etwa eine Telefonleitung, das Internet etc. (was als gleich oder austauschbar mit dem Lie­ fern dieser Software über ein transportables Speichermedium betrachtet wird).

Claims (26)

1. System zur Kontrolle eines Prozesses, welches System ent­ hält:
ein computerlesbares Medium;
einen Prozessor, der in Kommunikation mit dem computerlesba­ ren Medium steht;
eine erste Datenbank, die erste Daten speichert, die eine er­ ste Konfiguration des Prozesses darstellen;
eine zweite Datenbank, die zweite Daten speichert, die eine zweite Konfiguration des Prozesses darstellen;
eine Konfigurationsroutine, die in dem computerlesbaren Medi­ um gespeichert ist und so konfiguriert ist, daß sie von dem Prozessor ausführbar ist, um eine Modifikation der ersten Konfiguration des Prozesses zu erleichtern; und
eine Versionskontrollroutine, die in dem computerlesbaren Me­ dium gespeichert ist und so konfiguriert ist, daß sie von dem Prozessor ausführbar ist, um in der zweiten Datenbank dritte Daten zu speichern, welche die Modifikation der ersten Konfi­ guration des Prozesses angeben.
2. System nach Anspruch 1, dadurch gekennzeichnet, daß die erste Datenbank eine Konfigurationsdatenbank enthält, so daß die erste Konfiguration des Prozesses einer gegenwärtigen Konfigurationsversion entspricht.
3. System nach Anspruch 1, dadurch gekennzeichnet, daß die zweite Datenbank eine Versionskontrolldatenbank umfaßt, so daß die zweite Konfiguration des Prozesses einer früheren Konfigurationsversion entspricht.
4. System nach Anspruch 1, dadurch gekennzeichnet, daß:
die erste und die zweite Konfiguration des Prozesses eine er­ ste und eine zweite Vielzahl von Prozeßelementen jeweils ent­ halten; und
jedes Prozeßelement der ersten und der zweiten Vielzahl von Prozeßelementen eine jeweilige Elementkonfiguration hat, so daß
die erste Konfiguration des Prozesses die Elementkonfigurati­ on jedes Prozeßelements der ersten Vielzahl von Prozeßelemen­ ten umfaßt, und
die zweite Konfiguration des Prozesses die Elementkonfigura­ tion jedes Prozeßelements der zweiten Vielzahl von Prozeßele­ menten umfaßt.
5. System nach Anspruch 1, dadurch gekennzeichnet, daß die Versionskontrollroutine die Modifikation der ersten Konfigu­ ration des Prozesses überwacht, um die dritten Daten zu er­ fassen.
6. System nach Anspruch 5, dadurch gekennzeichnet, daß die Versionskontrollroutine die Modifikation überwacht, indem ein Ausbuchungs-/Einbuchungsvorgang über die Konfigurationsrouti­ ne gelegt wird.
7. System nach Anspruch 6, dadurch gekennzeichnet, daß der Ausbuchungs-/Einbuchungsvorgang automatisch erfolgt.
8. Prozeßsteuersystem, das ein Prozeßelement hat, enthaltend:
einen Computer, der einen Prozessor hat;
eine Konfigurationsanwendung, die so ausgelegt ist, daß sie von dem Prozessor ausführbar ist, um eine Version des Ele­ ments zu schaffen; und
ein Versionskontrollsystem, das mit der Prozeßkonfigurati­ onsanwendung in Kommunikation steht, um eine Modifikation an der Version des Prozeßelements aufzuzeichnen und zu kontrol­ lieren.
9. Prozeßsteuersystem nach Anspruch 8, dadurch gekennzeich­ net, daß die Prozeßkonfigurationsanwendung und das Versions­ kontrollsystem in der Weise integriert sind, daß das Auf­ zeichnen und die Kontrolle von Modifikationen an der Version des Prozeßelements in einer für den Benutzer transparenten Weise geschieht.
10. Prozeßsteuersystem nach Anspruch 8, dadurch gekennzeich­ net, daß die Modifikation in automatisierter Weise aufge­ zeichnet und kontrolliert wird.
11. Prozeßsteuersystem nach Anspruch 8, dadurch gekennzeich­ net, daß das Versionskontrollsystem Daten speichert, die eine frühere Version des Prozeßelements angeben.
12. Prozeßsteuersystem nach Anspruch 11, dadurch gekennzeich­ net, daß das Versionskontrollsystem ein Vergleichstool ent­ hält, das eine Benutzerschnittstelle zum Anzeigen von Unter­ schieden zwischen der Version des Prozeßelements und der frü­ heren Version des Prozeßelements bietet.
13. Prozeßsteuersystem nach Anspruch 12, dadurch gekennzeich­ net, daß die Benutzerschnittstelle die Unterschiede grafisch darstellt.
14. Prozeßsteuersystem nach Anspruch 11, dadurch gekennzeich­ net, daß das Versionskontrollsystem einen Rückzugstool ent­ hält, um die Version des Prozeßelements durch die frühere Version des Prozeßelements zu ersetzen.
15. Prozeßsteuersystem nach Anspruch 14, dadurch gekennzeich­ net, daß das Rückzugstool automatisch feststellt, ob unterge­ ordnete Elemente des Prozeßelements gelöscht wurden.
16. Prozeßsteuersystem nach Anspruch 8, ferner enthaltend ei­ ne Prozeßsteuereinrichtung, auf welche die das Prozeßelement darstellenden Daten heruntergeladen werden, wobei das Versi­ onskontrollsystem Informationen speichert, welche die Version des Prozeßelements angeben, um wiederzugeben, wenn die das Prozeßelement wiedergebenden Daten in die Prozeßsteuerein­ richtung heruntergeladen werden.
17. Prozeßsteuersystem nach Anspruch 8, ferner enthaltend ei­ ne Prozeßsteuereinrichtung, in die das Prozeßelement wieder­ gebende Daten zur Implementierung heruntergeladen werden, wo­ bei die Daten Informationen enthalten, die die Version des Prozeßelements angeben, so daß eine Prozeßbedienungsperson mit Zugriff auf die Prozeßsteuereinrichtung über die Version des Prozeßelements, die gegenwärtig implementiert ist, infor­ miert sein kann.
18. Verfahren zum Kontrollieren eines Prozesses, der ein Pro­ zeßelement hat, welches Verfahren die Schritte enthält:
Erstellen einer Konfiguration des Prozesses, die eine erste Version des Prozeßelements hat;
Kontrollieren einer Modifikation der Konfiguration des Pro­ zesses, um eine zweite Version des Prozeßelements zu erstel­ len; und
Aufzeichnen von Informationen, die zu der Modifikation der Konfiguration des Prozesses gehören.
19. Verfahren nach Anspruch 18, dadurch gekennzeichnet, daß der Aufzeichnungsschritt in transparenter Weise durchgeführt wird.
20. Verfahren nach Anspruch 18, dadurch gekennzeichnet, daß mindestens einer der Kontroll- und Aufzeichnungsschritte in automatisierter Weise durchgeführt werden.
21. Verfahren nach Anspruch 18, ferner enthaltend den Schritt des Vorsehens einer Benutzerschnittstelle zum Anzeigen von Unterschieden zwischen der ersten Version des Prozeßelements und der zweiten Version des Prozeßelements.
22. Verfahren nach Anspruch 21, dadurch gekennzeichnet, daß die Benutzerschnittstelle die Unterschiede grafisch dar­ stellt.
23. Verfahren nach Anspruch 18, ferner enthaltend den Schritt des Ersetzens der zweiten Version des Prozeßelements durch die erste Version des Prozeßelements.
24. Verfahren nach Anspruch 23, dadurch gekennzeichnet, daß der Schritt des Ersetzens den Schritt des Bestimmens, ob un­ tergeordnete Elemente des Prozeßelements gelöscht wurden, enthält.
25. Verfahren nach Anspruch 18, ferner enthaltend den Schritt des Speicherns von Informationen, die eine heruntergeladene Version des Prozeßelements bezeichnen, um wiederzugeben, wenn Daten, welche das Prozeßelement wiedergeben, auf eine Prozeß­ steuereinrichtung heruntergeladen werden.
26. Verfahren nach Anspruch 18, ferner enthaltend den Schritt des Herunterladens von Informationen, die eine aktuelle Ver­ sion des Prozeßelements angeben, auf eine Prozeßsteuerein­ richtung, so daß eine Prozeßbedienungsperson mit Zugriff auf die Prozeßsteuereinrichtung über die aktuelle Version des Prozeßelements informiert werden kann.
DE10051645A 1999-10-18 2000-10-18 Prozesssteuersystem und Verfahren zum Kontrollieren eines Prozesses Expired - Lifetime DE10051645B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/420,182 US6449624B1 (en) 1999-10-18 1999-10-18 Version control and audit trail in a process control system
US09/420,182 1999-10-18

Publications (2)

Publication Number Publication Date
DE10051645A1 true DE10051645A1 (de) 2001-08-09
DE10051645B4 DE10051645B4 (de) 2011-02-17

Family

ID=23665414

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10051645A Expired - Lifetime DE10051645B4 (de) 1999-10-18 2000-10-18 Prozesssteuersystem und Verfahren zum Kontrollieren eines Prozesses

Country Status (4)

Country Link
US (1) US6449624B1 (de)
JP (3) JP5329012B2 (de)
DE (1) DE10051645B4 (de)
GB (1) GB2363486B (de)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10143365A1 (de) * 2001-09-04 2003-03-27 Webasto Vehicle Sys Int Gmbh Abdeckklappe für ein Fahrzeug
DE10335122A1 (de) * 2003-07-31 2004-11-25 Siemens Ag Mikroverfahrenstechnische Anlage und Verfahren zum Steuern derselben
DE102004039200A1 (de) * 2004-08-12 2006-02-23 Giesecke & Devrient Gmbh Versionskontrolle
EP1394697A3 (de) * 2002-08-30 2009-12-09 Siemens Aktiengesellschaft Verfahren zur Verarbeitung von Daten
EP2273328A1 (de) * 2009-06-22 2011-01-12 Siemens Aktiengesellschaft Verfahren zum Einstellen und Anzeigen von Parametern einer Automatisierungseinrichtung
DE102010026494A1 (de) * 2010-07-07 2012-01-12 Abb Ag Verfahren zur Konfigurierung einer Steuerungseinrichtung
DE112007003231B4 (de) * 2007-01-10 2012-03-29 Mitsubishi Electric Corp. Programmierbare Anzeigevorrichtung und Steuersystem
WO2014016076A1 (de) * 2012-07-25 2014-01-30 Endress+Hauser Gmbh+Co. Kg Verfahren zur aufrechterhaltung der funktionsfähigkeit eines feldgerätes
DE10229887B4 (de) * 2001-11-30 2014-09-18 Mitsubishi Denki K.K. Programmierbare Steuervorrichtung
WO2014146716A1 (de) * 2013-03-21 2014-09-25 Siemens Aktiengesellschaft Engineering-system einer prozess- und/oder fertigungsanlage
EP3629112A1 (de) * 2018-09-28 2020-04-01 logi.cals GmbH Verfahren zur anzeige von diskrepanzen zwischen einem anwenderprogramm für eine speicherprogrammierbare steuerung und dessen kopie

Families Citing this family (220)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0825506B1 (de) 1996-08-20 2013-03-06 Invensys Systems, Inc. Verfahren und Gerät zur Fernprozesssteuerung
CN1292195A (zh) * 1998-12-25 2001-04-18 三洋电机株式会社 通信终端
US7296037B1 (en) * 1999-01-21 2007-11-13 Microsoft Corporation Database item versioning
WO2000070417A1 (en) 1999-05-17 2000-11-23 The Foxboro Company Process control configuration system with parameterized objects
US7089530B1 (en) 1999-05-17 2006-08-08 Invensys Systems, Inc. Process control configuration system with connection validation and configuration
US6788980B1 (en) * 1999-06-11 2004-09-07 Invensys Systems, Inc. Methods and apparatus for control using control devices that provide a virtual machine environment and that communicate via an IP network
US6947798B2 (en) * 1999-09-24 2005-09-20 Rockwell Software Inc. System and method for developing software programs by way of multiple applications and users
US6618822B1 (en) * 2000-01-03 2003-09-09 Oracle International Corporation Method and mechanism for relational access of recovery logs in a database system
JP2001189248A (ja) * 2000-01-06 2001-07-10 Hitachi Kokusai Electric Inc 半導体製造装置
US7024631B1 (en) * 2000-05-12 2006-04-04 National Instruments Corporation System and method for enabling graphical program polymorphism
US7054885B1 (en) * 2000-05-23 2006-05-30 Rockwell Collins, Inc. Method and system for managing the configuration of an evolving engineering design using an object-oriented database
US6681382B1 (en) * 2000-09-18 2004-01-20 Cisco Technology, Inc. Method and system for using virtual labels in a software configuration management system
US8224783B1 (en) * 2000-09-26 2012-07-17 Conocophillips Company Information management system
US6647315B1 (en) * 2000-09-29 2003-11-11 Fisher-Rosemount Systems, Inc. Use of remote soft phases in a process control system
US8650169B1 (en) 2000-09-29 2014-02-11 Oracle International Corporation Method and mechanism for identifying transaction on a row of data
US6631374B1 (en) * 2000-09-29 2003-10-07 Oracle Corp. System and method for providing fine-grained temporal database access
US6766334B1 (en) * 2000-11-21 2004-07-20 Microsoft Corporation Project-based configuration management method and apparatus
US20020152475A1 (en) * 2001-02-07 2002-10-17 Istvan Anthony F. User model for interactive television system
US20020152472A1 (en) * 2001-02-07 2002-10-17 Istvan Anthony F. Access device interface for user model-based interactive television
US20020184351A1 (en) * 2001-02-07 2002-12-05 Istvan Anthony F. Information access in user model-based interactive television
US6978420B2 (en) * 2001-02-12 2005-12-20 Aplix Research, Inc. Hierarchical document cross-reference system and method
US7143366B1 (en) * 2001-06-11 2006-11-28 Rockwell Automation Technologies, Inc. Graphical compare utility
US7310627B2 (en) * 2001-06-15 2007-12-18 International Business Machines Corporation Method of searching for text in browser frames
US7437662B1 (en) * 2001-06-15 2008-10-14 Oracle International Corporation Representing deltas between XML versions using XSLT
US7707550B2 (en) * 2001-06-22 2010-04-27 Invensys Systems, Inc. Supervisory process control and manufacturing information system application having an extensible component model
US7054862B2 (en) * 2001-06-29 2006-05-30 International Business Machines Corporation Method and system for long-term update and edit control in a database system
US7774435B2 (en) * 2001-07-26 2010-08-10 Oracle America, Inc. System and method for batch tuning intelligent devices
US7003776B2 (en) * 2001-08-01 2006-02-21 Oic Acquisition I Corporation System and method for object persistence life-cycle and object caching integration
US7043486B2 (en) * 2001-09-20 2006-05-09 Wellogix, Inc. Process and system for tracking versions of field documentation data collection configurations in a complex project workflow system
US6807631B2 (en) * 2001-11-16 2004-10-19 National Instruments Corporation System and method for deploying a hardware configuration with a computer program
US6981268B2 (en) * 2001-12-05 2005-12-27 Microsoft Corporation System and method for persisting and resolving application assembly binds
US20030112273A1 (en) * 2001-12-17 2003-06-19 Workshare Technology, Ltd. Document collaboration suite using a common database
US7496841B2 (en) * 2001-12-17 2009-02-24 Workshare Technology, Ltd. Method and system for document collaboration
US7007158B1 (en) * 2002-02-14 2006-02-28 Adaptec, Inc. Method for providing a configuration extensible markup language (XML) page to a user for configuring an XML based storage handling controller
US7328234B1 (en) 2002-03-07 2008-02-05 Mcafee, Inc. Agent architecture for triggering remotely initiated data processing operations
US7107574B1 (en) * 2002-03-07 2006-09-12 Mcafee, Inc. Managing computer program configuration data
US7237222B1 (en) * 2002-03-07 2007-06-26 Mcafee, Inc. Protocol for controlling an execution process on a destination computer from a source computer
US7099899B2 (en) * 2002-04-23 2006-08-29 International Business Machines Corporation System and method for item versioning in a content mangement system
US6983286B1 (en) 2002-05-10 2006-01-03 Oracle International Corporation Method and apparatus for accessing data as it existed at a previous point in time
US7107290B2 (en) * 2002-05-13 2006-09-12 International Business Machines Corporation Method and system for automatically checking-out/in and replicating documents in databases
US7409398B1 (en) * 2002-05-15 2008-08-05 Sparta Systems, Inc. Techniques for providing audit trails of configuration changes
US7386797B1 (en) * 2002-05-22 2008-06-10 Oracle Corporation Framework to model and execute business processes within a collaborative environment
US20030233621A1 (en) * 2002-06-13 2003-12-18 International Business Machines Corporation Editor for smart version control
US6990656B2 (en) * 2002-06-27 2006-01-24 Microsoft Corporation Dynamic metabase store
US6928328B2 (en) * 2002-08-02 2005-08-09 Fisher-Rosemount Systems, Inc. Integrated electronic signatures for approval of process control system software objects
US7076312B2 (en) * 2002-08-02 2006-07-11 Fisher-Rosemount Systems, Inc. Integrated electronic signatures for approval of process control and safety system software objects
US20040031027A1 (en) * 2002-08-08 2004-02-12 Hiltgen Daniel K. System for updating diverse file versions
EP1315358A1 (de) * 2002-09-12 2003-05-28 Agilent Technologies Inc. a Delaware Corporation Datentransparentes Verwaltungssystem zur Steuerung von Messinstrumenten
US7146231B2 (en) 2002-10-22 2006-12-05 Fisher-Rosemount Systems, Inc.. Smart process modules and objects in process plants
US9983559B2 (en) 2002-10-22 2018-05-29 Fisher-Rosemount Systems, Inc. Updating and utilizing dynamic process simulation in an operating process environment
DE10348563B4 (de) * 2002-10-22 2014-01-09 Fisher-Rosemount Systems, Inc. Integration von Grafikdisplayelementen, Prozeßmodulen und Steuermodulen in Prozeßanlagen
US20040122791A1 (en) * 2002-12-19 2004-06-24 Sea Brian S Method and system for automated source code formatting
US7865251B2 (en) * 2003-01-28 2011-01-04 Fisher-Rosemount Systems, Inc. Method for intercontroller communications in a safety instrumented system or a process control system
US7330768B2 (en) * 2003-01-28 2008-02-12 Fisher-Rosemount Systems, Inc. Integrated configuration in a process plant having a process control system and a safety system
US7117052B2 (en) * 2003-02-18 2006-10-03 Fisher-Rosemount Systems, Inc. Version control for objects in a process plant configuration system
US7526347B2 (en) * 2003-02-18 2009-04-28 Fisher-Rosemount Systems, Inc. Security for objects in a process plant configuration system
US7389309B2 (en) 2003-02-28 2008-06-17 Microsoft Corporation Method for managing file replication in applications
US8010491B2 (en) * 2003-02-28 2011-08-30 Microsoft Corporation Method for managing multiple file states for replicated files
US7275062B2 (en) * 2003-03-10 2007-09-25 Fisher-Rosemount Systems, Inc. Automatic linkage of process event data to a data historian
JP3963174B2 (ja) * 2003-03-14 2007-08-22 オムロン株式会社 表示・編集装置及び表示方法並びにプログラム
US6904476B2 (en) * 2003-04-04 2005-06-07 Rosemount Inc. Transmitter with dual protocol interface
JP2004326583A (ja) * 2003-04-25 2004-11-18 Toshiba Corp データ変換装置、データ交換方法およびプログラム
US7369912B2 (en) * 2003-05-29 2008-05-06 Fisher-Rosemount Systems, Inc. Batch execution engine with independent batch execution processes
GB2402587B (en) * 2003-06-02 2006-09-13 Yisia Young Suk Lee A hand held display device and method
US7346634B2 (en) * 2003-06-23 2008-03-18 Microsoft Corporation Application configuration change log
US8984644B2 (en) 2003-07-01 2015-03-17 Securityprofiling, Llc Anti-vulnerability system, method, and computer program product
US9118708B2 (en) 2003-07-01 2015-08-25 Securityprofiling, Llc Multi-path remediation
US20070113272A2 (en) 2003-07-01 2007-05-17 Securityprofiling, Inc. Real-time vulnerability monitoring
US9118711B2 (en) * 2003-07-01 2015-08-25 Securityprofiling, Llc Anti-vulnerability system, method, and computer program product
US9118709B2 (en) 2003-07-01 2015-08-25 Securityprofiling, Llc Anti-vulnerability system, method, and computer program product
US7552149B2 (en) * 2003-09-06 2009-06-23 Oracle International Corporation Querying past versions of data in a distributed database
US7302507B2 (en) * 2003-09-29 2007-11-27 Honeywell International Inc. Reestablishing connections when a block/device at one end is re-initialized
US20050091259A1 (en) * 2003-10-24 2005-04-28 Microsoft Corporation Redmond Wa. Framework to build, deploy, service, and manage customizable and configurable re-usable applications
GB2407746B (en) * 2003-10-28 2008-01-23 Yisia Young Suk Lee Method and apparatus for retrieving information from an informtion source
WO2005054987A2 (en) * 2003-11-26 2005-06-16 Intec Telecom Systems Plc Systems, methods and software to configure and support a telecommunications system
US20050114642A1 (en) * 2003-11-26 2005-05-26 Brett Watson-Luke System and method for managing OSS component configuration
US20050114851A1 (en) * 2003-11-26 2005-05-26 Brett Watson-Luke System and method for configuring a graphical user interface based on data type
US20050114240A1 (en) * 2003-11-26 2005-05-26 Brett Watson-Luke Bidirectional interfaces for configuring OSS components
US7555752B2 (en) * 2003-12-08 2009-06-30 Honeywell International Inc. Configurable levels of source control for the configuration of a process automation system
US7676793B2 (en) * 2003-12-08 2010-03-09 Honeywell International Inc. Determination of dependent objects by a source control system and a method to automatically include those objects with the parent object when changes are enabled
US7536684B2 (en) * 2003-12-29 2009-05-19 Hewlett-Packard Development Company, L.P. Software documentation generation using differential upgrade documentation
US7320003B2 (en) * 2004-02-13 2008-01-15 Genworth Financial, Inc. Method and system for storing and retrieving document data using a markup language string and a serialized string
CN1934511A (zh) * 2004-02-25 2007-03-21 Bep技术公司 编程处理系统的方法
JP2005259057A (ja) * 2004-03-15 2005-09-22 Oki Electric Ind Co Ltd 更新履歴管理装置及び記録媒体
US7499953B2 (en) * 2004-04-23 2009-03-03 Oracle International Corporation Online recovery of user tables using flashback table
US20050246687A1 (en) * 2004-05-03 2005-11-03 Scott Jeffrey B Determination of the status of an object in a source control system and a method to automatically check-in an object when its definition is provided from an external source
JP2007536634A (ja) 2004-05-04 2007-12-13 フィッシャー−ローズマウント・システムズ・インコーポレーテッド プロセス制御システムのためのサービス指向型アーキテクチャ
US7729789B2 (en) 2004-05-04 2010-06-01 Fisher-Rosemount Systems, Inc. Process plant monitoring based on multivariate statistical analysis and on-line process simulation
US7444197B2 (en) 2004-05-06 2008-10-28 Smp Logic Systems Llc Methods, systems, and software program for validation and monitoring of pharmaceutical manufacturing processes
US7571197B2 (en) * 2004-05-19 2009-08-04 Unisys Corporation Method and apparatus for synchronizing dataset object properties with underlying database structures
US7240065B2 (en) * 2004-05-27 2007-07-03 Oracle International Corporation Providing mappings between logical time values and real time values
US7251660B2 (en) 2004-06-10 2007-07-31 Oracle International Corporation Providing mappings between logical time values and real time values in a multinode system
US7739655B1 (en) 2004-07-08 2010-06-15 The Mathworks, Inc. Version control in modeling environments
US9047165B1 (en) * 2004-07-08 2015-06-02 The Mathworks, Inc. Multiversion model versioning system and method
US7487471B2 (en) * 2004-07-23 2009-02-03 Sap Ag User interface for conflict resolution management
JP4515462B2 (ja) * 2004-11-12 2010-07-28 株式会社ジャストシステム データ処理装置およびデータ処理方法
US20060106889A1 (en) * 2004-11-12 2006-05-18 Mannby Claes-Fredrik U Method, system, and program for managing revisions to a file
US8233998B2 (en) * 2004-11-19 2012-07-31 Fisher-Rosemount Systems, Inc. Secure data write apparatus and methods for use in safety instrumented process control systems
GB2420429A (en) * 2004-11-22 2006-05-24 Yisia Young Suk Lee Method of navigating a hierarchical structure
US7140536B2 (en) * 2004-12-20 2006-11-28 Microsoft Corporation Method and system for highlighting modified content in a shared document
US8438140B2 (en) * 2004-12-23 2013-05-07 Business Objects Software Ltd. Apparatus and method for generating reports from versioned data
US7783790B2 (en) 2004-12-23 2010-08-24 Abb Ag Method for configuring field devices
DE112005002649A5 (de) * 2004-12-23 2008-01-31 Abb Patent Gmbh Verfahren zur Konfiguration von Feldgeräten
US8938557B2 (en) * 2004-12-23 2015-01-20 Abb Technology Ag Method for configuring field devices
WO2006114880A1 (ja) * 2005-04-22 2006-11-02 Yamatake Corporation 情報連携ウィンドウシステム
US7716182B2 (en) * 2005-05-25 2010-05-11 Dassault Systemes Enovia Corp. Version-controlled cached data store
US20060282477A1 (en) * 2005-06-03 2006-12-14 Gruidl Timothy J Computer aided design file validation system
US7752651B2 (en) * 2005-09-26 2010-07-06 Bea Systems Inc. System and method for propagating security information in a web portal system
US7730477B2 (en) * 2005-09-26 2010-06-01 Bea Systems Inc. System and method for propagation in a web portal system
US7515972B2 (en) * 2005-10-28 2009-04-07 Honeywell International Inc. System and method for dynamically creating and editing function block types in a process control environment
US20070130376A1 (en) * 2005-12-02 2007-06-07 Samsung Electronics Co., Ltd. Method and apparatus for setting configuration information
JP5096359B2 (ja) 2005-12-05 2012-12-12 フィッシャー−ローズマウント システムズ,インコーポレイテッド 同時プロセスシミュレーションを伴う多目的予測プロセス最適化
US8775974B2 (en) * 2005-12-21 2014-07-08 International Business Machines Corporation Multi-contextual delta navigation in a compare view
DE102005062811A1 (de) * 2005-12-28 2007-07-05 Siemens Ag Verfahren zum Ansteuern einer modular aus Geräten und Baugruppen bestehenden Produktionsmaschine
US7546171B2 (en) * 2005-12-30 2009-06-09 Honeywell International Inc. Method, apparatus and system for recovery of a controller with known-compatible configuration and run-time data
US8429526B2 (en) * 2006-04-10 2013-04-23 Oracle International Corporation Efficient evaluation for diff of XML documents
US7801919B1 (en) * 2006-04-21 2010-09-21 Total System Services, Inc. Method and system for providing database management system tools
US20070294610A1 (en) * 2006-06-02 2007-12-20 Ching Phillip W System and method for identifying similar portions in documents
US20070294318A1 (en) * 2006-06-20 2007-12-20 Arora Amrinder S Method, System, and Apparatus for Auditing, Tracking, or Inspection of Data, Objects, or Their Corresponding Modifications
US7822785B2 (en) * 2006-06-30 2010-10-26 International Business Machines Corporation Methods and apparatus for composite configuration item management in configuration management database
US20080005187A1 (en) * 2006-06-30 2008-01-03 International Business Machines Corporation Methods and apparatus for managing configuration management database via composite configuration item change history
US8205189B2 (en) * 2006-07-13 2012-06-19 Oracle International Corporation Method and system for definition control in a data repository application
US20080082517A1 (en) * 2006-08-29 2008-04-03 Sap Ag Change assistant
US20080059537A1 (en) * 2006-08-29 2008-03-06 Juergen Sattler Content subscription
US7823124B2 (en) * 2006-08-29 2010-10-26 Sap Ag Transformation layer
US7831637B2 (en) 2006-08-29 2010-11-09 Sap Ag System on the fly
US8131644B2 (en) 2006-08-29 2012-03-06 Sap Ag Formular update
US7908589B2 (en) 2006-08-29 2011-03-15 Sap Ag Deployment
US20080059630A1 (en) * 2006-08-29 2008-03-06 Juergen Sattler Assistant
US20080071555A1 (en) * 2006-08-29 2008-03-20 Juergen Sattler Application solution proposal engine
US7831568B2 (en) * 2006-08-29 2010-11-09 Sap Ag Data migration
US7912800B2 (en) * 2006-08-29 2011-03-22 Sap Ag Deduction engine to determine what configuration management scoping questions to ask a user based on responses to one or more previous questions
US8065661B2 (en) 2006-08-29 2011-11-22 Sap Ag Test engine
US20080059490A1 (en) * 2006-08-29 2008-03-06 Juergen Sattler Design time
US7827528B2 (en) * 2006-08-29 2010-11-02 Sap Ag Delta layering
US8601435B2 (en) * 2006-10-20 2013-12-03 Rockwell Automation Technologies, Inc. Module class subsets for industrial control
US20080095196A1 (en) * 2006-10-20 2008-04-24 Rockwell Automation Technologies, Inc. Unit to unit transfer synchronization
US7676292B2 (en) * 2006-10-20 2010-03-09 Rockwell Automation Technologies, Inc. Patterns employed for module design
US7844349B2 (en) * 2006-10-20 2010-11-30 Rockwell Automation Technologies, Inc. Standard MES interface for discrete manufacturing
US7725200B2 (en) * 2006-10-20 2010-05-25 Rockwell Automation Technologies, Inc. Validation of configuration settings in an industrial process
US7684877B2 (en) * 2006-10-20 2010-03-23 Rockwell Automation Technologies, Inc. State propagation for modules
US8392008B2 (en) * 2006-10-20 2013-03-05 Rockwell Automation Technologies, Inc. Module arbitration and ownership enhancements
US7894917B2 (en) * 2006-10-20 2011-02-22 Rockwell Automation Technologies, Inc. Automatic fault tuning
US7680550B2 (en) * 2006-10-20 2010-03-16 Rockwell Automation Technologies, Inc. Unit module state processing enhancements
US20080209400A1 (en) * 2007-02-27 2008-08-28 Kevin Christopher Parker Approach for versioning of services and service contracts
US7814117B2 (en) * 2007-04-05 2010-10-12 Oracle International Corporation Accessing data from asynchronously maintained index
US8046086B2 (en) * 2007-05-15 2011-10-25 Fisher-Rosemount Systems, Inc. Methods and systems for batch processing and execution in a process system
JP5219418B2 (ja) * 2007-07-13 2013-06-26 キヤノン株式会社 ファイル送信装置、方法、プログラム
EP2179375A1 (de) * 2007-08-24 2010-04-28 Opnet Technologies, Inc. Verifikation von datenkonsistenzen zwischen mehreren strukturierten dateien
US9087325B2 (en) * 2007-09-11 2015-07-21 Yahoo! Inc. Social network site including trust-based Wiki functionality
WO2009062182A1 (en) 2007-11-09 2009-05-14 Topia Technology Architecture for management of digital files across distributed network
CN102124432B (zh) 2008-06-20 2014-11-26 因文西斯系统公司 对用于过程控制的实际和仿真设施进行交互的系统和方法
US20090319910A1 (en) * 2008-06-22 2009-12-24 Microsoft Corporation Automatic content and author emphasis for shared data
US8286171B2 (en) 2008-07-21 2012-10-09 Workshare Technology, Inc. Methods and systems to fingerprint textual information using word runs
US8407611B2 (en) * 2008-08-04 2013-03-26 Honeywell International Inc. Apparatus and method for designing graphical user interfaces (GUIs) having different fidelities
US8555080B2 (en) 2008-09-11 2013-10-08 Workshare Technology, Inc. Methods and systems for protect agents using distributed lightweight fingerprints
US8307010B2 (en) * 2008-09-26 2012-11-06 Microsoft Corporation Data feature tracking through hierarchical node sets
EP2169544A1 (de) * 2008-09-29 2010-03-31 Siemens Aktiengesellschaft Verfahren und Wartungsserver zur automatisierten Zuordnung und Anwendung produktbezogener Informationen zu einer Automatisierungskomponente
US8135659B2 (en) 2008-10-01 2012-03-13 Sap Ag System configuration comparison to identify process variation
US9092636B2 (en) 2008-11-18 2015-07-28 Workshare Technology, Inc. Methods and systems for exact data match filtering
US8406456B2 (en) 2008-11-20 2013-03-26 Workshare Technology, Inc. Methods and systems for image fingerprinting
US8396893B2 (en) * 2008-12-11 2013-03-12 Sap Ag Unified configuration of multiple applications
US8255429B2 (en) 2008-12-17 2012-08-28 Sap Ag Configuration change without disruption of incomplete processes
US8881039B2 (en) 2009-03-13 2014-11-04 Fisher-Rosemount Systems, Inc. Scaling composite shapes for a graphical human-machine interface
US8195706B2 (en) 2009-05-26 2012-06-05 Computer Associates Think, Inc. Configuration management visualization
US8127060B2 (en) 2009-05-29 2012-02-28 Invensys Systems, Inc Methods and apparatus for control configuration with control objects that are fieldbus protocol-aware
US8463964B2 (en) 2009-05-29 2013-06-11 Invensys Systems, Inc. Methods and apparatus for control configuration with enhanced change-tracking
WO2011017084A2 (en) * 2009-07-27 2011-02-10 Workshare Technology, Inc. Methods and systems for comparing presentation slide decks
US20110055177A1 (en) * 2009-08-26 2011-03-03 International Business Machines Corporation Collaborative content retrieval using calendar task lists
US8584087B2 (en) 2009-12-11 2013-11-12 Sap Ag Application configuration deployment monitor
US9305018B2 (en) * 2009-12-16 2016-04-05 Microsoft Technology Licensing, Llc Contextual and semantic differential backup
US8825183B2 (en) 2010-03-22 2014-09-02 Fisher-Rosemount Systems, Inc. Methods for a data driven interface based on relationships between process control tags
US8843893B2 (en) * 2010-04-29 2014-09-23 Sap Ag Unified framework for configuration validation
RU2553054C2 (ru) * 2010-10-08 2015-06-10 Абб Текнолоджи Аг Способ и система для распространения изменений, произведенных в оригинале, на копии
US10853319B2 (en) 2010-11-29 2020-12-01 Workshare Ltd. System and method for display of document comparisons on a remote device
US10783326B2 (en) 2013-03-14 2020-09-22 Workshare, Ltd. System for tracking changes in a collaborative document editing environment
US11030163B2 (en) 2011-11-29 2021-06-08 Workshare, Ltd. System for tracking and displaying changes in a set of related electronic documents
US20120133989A1 (en) 2010-11-29 2012-05-31 Workshare Technology, Inc. System and method for providing a common framework for reviewing comparisons of electronic documents
US20120159429A1 (en) * 2010-12-15 2012-06-21 Microsoft Corporation Metadata based eventing
US8793706B2 (en) 2010-12-16 2014-07-29 Microsoft Corporation Metadata-based eventing supporting operations on data
US8549243B2 (en) 2011-02-02 2013-10-01 International Business Machines Corporation Regeneration of deleted data
US9021471B2 (en) 2011-05-03 2015-04-28 International Business Machines Corporation Managing change-set delivery
SG2011031804A (en) * 2011-05-03 2015-03-30 Eutech Cybernetics Pte Ltd Computer implemented method and system for analyzing business processes
EP2533148A1 (de) * 2011-06-08 2012-12-12 Siemens Aktiengesellschaft Graphischer Editor zur Erstellen von als Automatisierungslösungen basierend auf Templates und der Ermittlung von Unterschieden in hierarchischen Datenstrukturen
US9613340B2 (en) 2011-06-14 2017-04-04 Workshare Ltd. Method and system for shared document approval
US9948676B2 (en) 2013-07-25 2018-04-17 Workshare, Ltd. System and method for securing documents prior to transmission
US10574729B2 (en) 2011-06-08 2020-02-25 Workshare Ltd. System and method for cross platform document sharing
US10963584B2 (en) 2011-06-08 2021-03-30 Workshare Ltd. Method and system for collaborative editing of a remotely stored document
US9170990B2 (en) 2013-03-14 2015-10-27 Workshare Limited Method and system for document retrieval with selective document comparison
US10880359B2 (en) 2011-12-21 2020-12-29 Workshare, Ltd. System and method for cross platform document sharing
US8898656B2 (en) * 2011-08-29 2014-11-25 Salesforce.Com, Inc. Mechanism for facilitating dynamic format transformation of software applications in an on-demand services environment
US8626543B2 (en) * 2011-10-08 2014-01-07 Sap Ag Tracing software execution of a business process
EP2801005B1 (de) * 2012-01-06 2017-08-09 GE Intelligent Platforms, Inc. Verfahren und vorrichtung für netzwerkbasierte prüfung
US20140040789A1 (en) * 2012-05-08 2014-02-06 Adobe Systems Incorporated Tool configuration history in a user interface
WO2014019093A1 (en) * 2012-08-01 2014-02-06 Sherpa Technologies Inc. System and method for managing versions of program assets
US10044522B1 (en) * 2012-08-21 2018-08-07 Amazon Technologies Inc. Tree-oriented configuration management service
JP5652444B2 (ja) 2012-08-31 2015-01-14 横河電機株式会社 保守支援システム及び方法
US11567907B2 (en) 2013-03-14 2023-01-31 Workshare, Ltd. Method and system for comparing document versions encoded in a hierarchical representation
US10911492B2 (en) 2013-07-25 2021-02-02 Workshare Ltd. System and method for securing documents prior to transmission
US9544193B2 (en) * 2013-10-02 2017-01-10 International Business Machines Corporation Synchronizing configurations amongst multiple devices
US9798750B2 (en) 2013-10-14 2017-10-24 Schneider Electric Software, Llc Parameter download verification in industrial control system
CN106164970A (zh) * 2014-03-28 2016-11-23 富士通株式会社 检查结果的更新控制方法、检查结果的存储控制方法、检查结果的更新控制程序、检查结果的存储控制程序以及检查结果的更新控制系统、检查结果的存储控制系统
EP2963542A1 (de) * 2014-07-01 2016-01-06 Siemens Aktiengesellschaft Verfahren und Architektur zum Vergleichen und Zusammenfügen von mittels dynamischer Versionierungsstrategie gespeicherten technischen Objekten
US11182551B2 (en) 2014-12-29 2021-11-23 Workshare Ltd. System and method for determining document version geneology
US10133723B2 (en) 2014-12-29 2018-11-20 Workshare Ltd. System and method for determining document version geneology
US11763013B2 (en) 2015-08-07 2023-09-19 Workshare, Ltd. Transaction document management system and method
US10191477B2 (en) * 2015-10-30 2019-01-29 Yokogawa Electric Corporation System and method for modification management of a configuration system
EP3211493A1 (de) 2016-02-24 2017-08-30 Siemens Aktiengesellschaft Automatisierungssystem zur steuerung eines prozesses, eines geräts und/oder einer anlage
US10191737B2 (en) * 2016-06-29 2019-01-29 Accenture Global Solutions Limited Program code comparison and reporting
US10878140B2 (en) 2016-07-27 2020-12-29 Emerson Process Management Power & Water Solutions, Inc. Plant builder system with integrated simulation and control system configuration
KR20190129092A (ko) * 2017-03-17 2019-11-19 론자 리미티드 자동화된 배치 데이터 분석
US11470113B1 (en) * 2018-02-15 2022-10-11 Comodo Security Solutions, Inc. Method to eliminate data theft through a phishing website
US10719340B2 (en) 2018-11-06 2020-07-21 Microsoft Technology Licensing, Llc Command bar user interface
JP2021149610A (ja) * 2020-03-19 2021-09-27 キヤノン株式会社 情報処理装置、情報処理方法、および物品の製造方法
WO2022106885A1 (en) * 2020-11-18 2022-05-27 Myomega Systems Gmbh Industrial control system
US11424865B2 (en) 2020-12-10 2022-08-23 Fisher-Rosemount Systems, Inc. Variable-level integrity checks for communications in process control environments
US11418969B2 (en) 2021-01-15 2022-08-16 Fisher-Rosemount Systems, Inc. Suggestive device connectivity planning
US11954431B2 (en) * 2021-11-09 2024-04-09 Adobe Inc. Intelligent change summarization for designers
US20240119040A1 (en) * 2022-10-11 2024-04-11 International Business Machines Corporation Preserving concurrency and asynchronous execution for versioned documents
DE102023125802A1 (de) * 2023-09-22 2025-03-27 Beckhoff Automation Gmbh Verfahren zum Erzeugen eines Steuerprogramms für ein Automatisierungssystem und Entwicklungsumgebung

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5619716A (en) * 1991-11-05 1997-04-08 Hitachi, Ltd. Information processing system having a configuration management system for managing the software of the information processing system
US5649200A (en) 1993-01-08 1997-07-15 Atria Software, Inc. Dynamic rule-based version control system
JPH06250895A (ja) * 1993-02-26 1994-09-09 Fujitsu Ltd 構造化データベースシステム
JP3270238B2 (ja) * 1994-03-14 2002-04-02 株式会社東芝 プログラマブルコントローラ及びそのプログラムツール
JPH08278809A (ja) * 1995-04-07 1996-10-22 Toshiba Corp プラント制御装置
US5549200A (en) * 1995-06-06 1996-08-27 Chesebrough-Pond's Usa Co., Division Of Conopco, Inc. Swab dispenser
JPH0934517A (ja) * 1995-07-20 1997-02-07 Mitsubishi Electric Corp プラント制御保護装置
FR2744817B1 (fr) * 1996-02-08 1998-04-03 Ela Medical Sa Dispositif medical implantable actif et son programmateur externe a mise a jour automatique du logiciel
US5940294A (en) * 1996-04-12 1999-08-17 Fisher-Rosemont Systems, Inc. System for assisting configuring a process control environment
US5784577A (en) * 1996-08-05 1998-07-21 Xilinx Inc Automated control system for programming PLDs
JPH10161713A (ja) * 1996-12-02 1998-06-19 Mitsubishi Electric Corp プログラム作成方法
US5903897A (en) * 1996-12-18 1999-05-11 Alcatel Usa Sourcing, L.P. Software documentation release control system
US6112126A (en) * 1997-02-21 2000-08-29 Baker Hughes Incorporated Adaptive object-oriented optimization software system
JPH1185598A (ja) * 1997-09-11 1999-03-30 Toshiba Corp 電子ファイリングシステム、同システムの文書管理方法、及び記録媒体
US6092189A (en) * 1998-04-30 2000-07-18 Compaq Computer Corporation Channel configuration program server architecture
DE19917102C2 (de) * 1999-04-15 2002-07-18 Moeller Gmbh Projektierungs- und Diagnoseeinrichtung für eine elektrische Anlage
EP1077407A1 (de) * 1999-07-29 2001-02-21 International Business Machines Corporation Verfahren zum Aktualisieren eines Programs mit zugehörigen Konfigurationsdaten

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10143365B4 (de) * 2001-09-04 2005-06-16 Webasto Ag Abdeckklappe für ein Fahrzeug
DE10143365A1 (de) * 2001-09-04 2003-03-27 Webasto Vehicle Sys Int Gmbh Abdeckklappe für ein Fahrzeug
DE10229887B4 (de) * 2001-11-30 2014-09-18 Mitsubishi Denki K.K. Programmierbare Steuervorrichtung
EP1394697A3 (de) * 2002-08-30 2009-12-09 Siemens Aktiengesellschaft Verfahren zur Verarbeitung von Daten
DE10335122A1 (de) * 2003-07-31 2004-11-25 Siemens Ag Mikroverfahrenstechnische Anlage und Verfahren zum Steuern derselben
DE102004039200A1 (de) * 2004-08-12 2006-02-23 Giesecke & Devrient Gmbh Versionskontrolle
DE112007003231B4 (de) * 2007-01-10 2012-03-29 Mitsubishi Electric Corp. Programmierbare Anzeigevorrichtung und Steuersystem
US8707423B2 (en) 2007-01-10 2014-04-22 Mitsubishi Electric Corporation Programmable display device, and control system
EP2273328A1 (de) * 2009-06-22 2011-01-12 Siemens Aktiengesellschaft Verfahren zum Einstellen und Anzeigen von Parametern einer Automatisierungseinrichtung
DE102010026494A1 (de) * 2010-07-07 2012-01-12 Abb Ag Verfahren zur Konfigurierung einer Steuerungseinrichtung
US9229440B2 (en) 2010-07-07 2016-01-05 Abb Ag Method for the configuration of a control device
WO2014016076A1 (de) * 2012-07-25 2014-01-30 Endress+Hauser Gmbh+Co. Kg Verfahren zur aufrechterhaltung der funktionsfähigkeit eines feldgerätes
DE102012106774A1 (de) * 2012-07-25 2014-01-30 Endress + Hauser Gmbh + Co. Kg Verfahren zur Aufrechterhaltung der Funktionsfähigkeit eines Feldgerätes
US9811409B2 (en) 2012-07-25 2017-11-07 Endress + Hauser Gmbh + Co. Kg Method for maintaining the functional ability of a field device
WO2014146716A1 (de) * 2013-03-21 2014-09-25 Siemens Aktiengesellschaft Engineering-system einer prozess- und/oder fertigungsanlage
EP3629112A1 (de) * 2018-09-28 2020-04-01 logi.cals GmbH Verfahren zur anzeige von diskrepanzen zwischen einem anwenderprogramm für eine speicherprogrammierbare steuerung und dessen kopie
AT521715A1 (de) * 2018-09-28 2020-04-15 Logi Cals Gmbh Verfahren zur Anzeige von Diskrepanzen zwischen einem Anwenderprogramm für eine speicherprogrammierbare Steuerung und dessen Kopie

Also Published As

Publication number Publication date
JP2013008375A (ja) 2013-01-10
DE10051645B4 (de) 2011-02-17
JP5657615B2 (ja) 2015-01-21
JP2014225284A (ja) 2014-12-04
US6449624B1 (en) 2002-09-10
JP5902254B2 (ja) 2016-04-13
GB0025511D0 (en) 2000-11-29
GB2363486B (en) 2004-05-26
JP2001242906A (ja) 2001-09-07
JP5329012B2 (ja) 2013-10-30
GB2363486A (en) 2001-12-19

Similar Documents

Publication Publication Date Title
DE10051645B4 (de) Prozesssteuersystem und Verfahren zum Kontrollieren eines Prozesses
DE69835616T2 (de) Verfahren zur verwaltung von objekten und objektverknüpfte parameterwerten in einem simulationsmodell
DE60311805T2 (de) Erfassung, Zusammenstellung und/oder Visualisierung von strukturellen Merkmalen von Architekturen
DE3855756T2 (de) Schnittstelle für Materialliste für CAD/CAM-Umgebung
DE69721234T2 (de) Verfahren und systeme zur dokumentenverwaltung in industriellen prozesssteuerungssystemen
DE69723489T2 (de) Verfahren und System zur Verwaltung von Bau- und Produktionsinformation
DE69326226T2 (de) Verfahren zum Strukturieren von in einem industriellen Prozess verwendeten Informationen und Anwendung als Flugzeugführungshilfe
DE69523325T2 (de) Graphisches programmier-interface für maschinen- bzw. prozess- steuerungen mit vorverbundenen parameterkonfigurationen
DE10020999B4 (de) Vorrichtung für die Stapelverarbeitung bei der Ereignisentwicklungsverarbeitung und Betrachtung
DE69326865T2 (de) Objektorientiertes Rechnersystem und Verfahren
EP1061422B1 (de) Informationstechnisches System zur Definition, Optimierung und Steuerung von Prozessen
DE19844013A1 (de) Strukturierter Arbeitsordner
DE69229540T2 (de) Verfahren zum konzeptuellen Modellieren eines Expertensystems auf einem Computer
DE102007040823A1 (de) Editier- und Berichts-Tool für Grafische Programmiersprachenobjekte
DE19957780A1 (de) Quellcode-Editierung in einer grafischen hierarchischen Umgebung
DE102010037702A1 (de) Dynamisch verknüpfte grafische Nachrichten für Prozesssteuerungssysteme
DE10002305A1 (de) Managementsystem für Schneidmaschinen
DE10150387A1 (de) CAD-Datenmodell mit Entwurfsnotizen
DE10394033T5 (de) Verfahren und Vorrichtung zum Importieren von Vorrichtungsdaten in ein in einer Prozessanlage verwendetes Datenbanksystem
DE69321270T2 (de) Fensterverwaltungssystem in einem Computerterminal
DE102005025401A1 (de) Datentransformationssystem
DE19962787A1 (de) Verfahren zur Behandlung von Datenobjekten
EP1862901A1 (de) Eingabe von Programm-Anweisungen bei imperativen Programmiersprachen
DE69804355T2 (de) Dynamischer bedienoberflächenerzeuger
EP1490762B1 (de) Verfahren, software-produkt und system zur universellen computergestuetzten informationsverarbeitung

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
R020 Patent grant now final

Effective date: 20110619

R071 Expiry of right