-

Refactoring/Aktualisieren von FB-Typen

Im Allgemeinen bedeutet Refactoring die Strukturverbesserung von vorhandenem Quellcode unter Beibehaltung des funktionalen Verhaltens. Für das Refactoring unterstützt PLCnext Engineer einen Mechanismus für die automatische und konsistente Änderung von Objekteigenschaften (Variablen, FB-Instanzen etc.). Konsistent bedeutet, die zu ersetzenden Eigenschaften werden Solution-weit berücksichtigt.

Für das Refactoring und die Aktualisierung von Funktionsbaustein-Instanzen und deren Typen gibt es mehrere Modi:

Der aktuell eingestellte Refactoring-Modus wird als Untertitel im REFACTORING-Fenster angezeigt.

Besonderheiten beim Refactoring von sicherheitsbezogenen Daten

Die Auswirkungen, die das Refactoring/Aktualisieren von (sicherheitsbezogenen) FB-Typen auf die Sicherheitsanwendung hat, liegen allein in Ihrer Verantwortung als Applikationsentwickler. Sie müssen deshalb vor dem Refactoring/Aktualisieren sicherheitsbezogener FB-Typen Folgendes beachten:

WARNUNG
Unbeabsichtigter Betriebszustand des Geräts
  • Stellen Sie sicher, dass geeignete organisatorische Maßnahmen (gemäß zutreffender Sektornormen) getroffen wurden, um Gefährdungen im Falle einer ungewollten oder falschen Funktion der Anwendungslogik als Folge des Refactoring/Aktualisierens zu vermeiden.
  • Prüfen Sie im REFACTORING-Fenster sorgfältig alle Vorkommen der betroffenen sicherheitsbezogenen FB-Typen, bevor Sie das Refactoring/Aktualisieren durchführen.
  • Verifizieren Sie, wie sich das Refactoring/Aktualisieren von FB-Typen auswirkt.
  • Validieren Sie die gesamte Sicherheitsfunktion in Bezug auf die geänderten/aktualisierten FB-Typen und prüfen Sie die Applikation sorgfältig.

Aktualisierung von FB-Typen desselben Typs in allen grafischen Arbeitsblättern, ohne den FB-Typ selbst zu aktualisieren

  1. Wählen Sie im grafischen Arbeitsblatt den FB aus.
  2. Klicken Sie mit der rechten Maustaste auf den FB und dann auf 'FB-Typ refaktorieren / aktualisieren'.

    Im Cross-Funktionen-Bereich wird das REFACTORING-Fenster im Modus 'FB-Typen-Update' geöffnet (der Modus wird als Untertitel in der Kopfzeile angezeigt). Das Fenster listet alle Aufrufe des ausgewählten FBs desselben Typs in allen grafischen Arbeitsblättern des Projekts und die entsprechenden Instanzvariablen auf. In der Spalte 'Refactoring' sind alle Kontrollkästchen für die FB-Aufrufe standardmäßig aktiviert (wie in der Abbildung oben dargestellt) und alle Kontrollkästchen für die Instanzvariablen sind nicht aktiviert.

    Doppelklicken auf einen Ort in der Liste öffnet den entsprechenden Editor und markiert dort das betreffende Objekt.

  3. Aktivieren oder deaktivieren Sie die Orte der FB-Aufrufe, die Sie aktualisieren möchten.

    Sie können die Symbole und in der Symbolleiste verwenden, um alle Orte zu markieren oder alle Markierungen aufzuheben.

  4. Stellen Sie sicher, dass
    • Sie die Anweisungen im Gefahrenhinweis am Beginn dieser Vorgehensweise befolgt haben, und
    • Ihre Auswahl zu keinem Codefehler aufgrund von Inkonsistenzen führt.

    Klicken Sie in der Symbolleiste auf , um das Refactoring an allen gewählten Orten durchzuführen.

    Alle gewählten FB-Aufrufe werden mit dem im grafischen Arbeitsblatt selektierten FB aktualisiert.

  5. Nach der Operation:

    • Prüfen Sie das MELDUNGEN-Fenster auf Fehler, die durch die Operation aufgetreten sind.
    • Validieren und prüfen Sie die Applikation sorgfältig bezüglich der aktualisierten FB-Aufrufe.

Refactoring von FB-Typen in allen grafischen Arbeitsblättern mit Aktualisierung des FB-Typs und des Typs der zugehörigen Instanzvariablen

  1. Wählen Sie im grafischen Arbeitsblatt den FB aus.
  2. Klicken Sie mit der rechten Maustaste auf den FB und dann auf 'FB-Typ refaktorieren / aktualisieren'.

    Im Cross-Funktionen-Bereich wird das REFACTORING-Fenster im Modus 'FB-Typen-Update' geöffnet (der Modus wird als Untertitel in der Kopfzeile angezeigt). Das Fenster listet alle Aufrufe des ausgewählten FBs desselben Typs in allen grafischen Arbeitsblättern des Projekts und die entsprechenden Instanzvariablen auf. In der Spalte 'Refactoring' sind alle Kontrollkästchen für die FB-Aufrufe standardmäßig aktiviert (wie in der Abbildung oben dargestellt) und alle Kontrollkästchen für die Instanzvariablen sind nicht aktiviert.

    Doppelklicken auf einen Ort in der Liste öffnet den entsprechenden Editor und markiert dort das betreffende Objekt.

  3. Wählen Sie in der Spalte 'Typ' unter der Gruppe 'Neue Werte' den neuen FB-Typ aus der Auswahlliste aus, der den ursprünglichen FB-Typ ersetzen soll.

    Sobald Sie einen anderen FB-Typ auswählen, wechselt das REFACTORING-Fenster in den Modus 'FB-Typen-Refactoring' (angezeigt mit dem Untertitel 'FB-Typen-Refactoring' in der Kopfzeile) und die Kontrollkästchen für alle Instanzvariablen werden zusätzlich aktiviert.

  4. Aktivieren oder deaktivieren Sie die Orte der FB-Aufrufe und die entsprechenden Instanzvariablen, die Sie ändern möchten.

    Sie können die Symbole und in der Symbolleiste verwenden, um alle Orte zu markieren oder alle Markierungen aufzuheben.

  5. Stellen Sie sicher, dass
    • Sie die Anweisungen im Gefahrenhinweis am Beginn dieser Vorgehensweise befolgt haben, und
    • Ihre Auswahl zu keinem Codefehler aufgrund von Inkonsistenzen führt.

    Klicken Sie auf das Symbol in der Symbolleiste, um das Refactoring auf die ausgewählten FB-Aufrufe und Instanzvariablen anzuwenden.

    Die Typen aller gewählten FB-Aufrufe und die Typen der gewählten Instanzvariablen werden mit dem in der Auswahlliste 'Typ' ausgewählten FB-Typ aktualisiert.

  6. Nach der Operation:

    • Prüfen Sie das MELDUNGEN-Fenster auf Fehler, die durch die Operation aufgetreten sind.
    • Validieren und prüfen Sie die Applikation sorgfältig bezüglich der vom Refactoring geänderten FB-Aufrufe und Instanzvariablen.