-

Refactoring von Variablen

Refactoring bedeutet 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, d.h. in jeder Variablentabelle, Datenliste, an jeder Codestelle und innerhalb der HMI-Applikation. So kann bspw. ein Objekt in nur einem Schritt und ohne funktionelle Auswirkung auf den Code umbenannt werden.

Den 'Refactoring'-Befehl finden Sie im Kontextmenü des Objekts in folgenden Editoren, sofern exakt ein Objekt selektiert ist:

WARNUNG
Unbeabsichtigter Betriebszustand des Geräts
  • Stellen Sie vor dem Refactoring von sicherheitsbezogenen Variablen sicher, dass geeignete organisatorische Maßnahmen (gemäß zutreffender Sektornormen) getroffen wurden, um Gefährdungen im Falle einer ungewollten oder falschen Funktion der Anwendungslogik zu vermeiden.
  • Verifizieren Sie, wie sich das Refactoring von Variablen auswirkt.

Gehen Sie folgendermaßen vor:

  1. Wählen Sie aus dem Kontextmenü des zu ändernden Objekts den Befehl 'Refactoring' aus. Im Cross-Funktionen-Bereich öffnet sich nun das REFACTORING-Fenster.

    Das Fenster zeigt alle Stellen an, an denen das jeweilige Objekt in ihrem Projekt verwendet wird:

    • Deklarationen,
    • Code-Zugriffe im Standard-Code,
    • Code-Zugriffe im sicherheitsbezogenen Code.
    • Verwendungen in der HMI-Applikation.

    Doppelklicken auf einen Ort in der Liste öffnet den Editor (Datenliste, Code-Arbeitsblatt etc.) und markiert dort das betreffende Objekt.

  2. Geben Sie hier die neuen Werte in die Felder 'Name', 'Typ' oder 'Kommentar' ein oder wählen Sie, falls verfügbar, Werte aus Dropdownlisten. (Es können nur für 'Name', 'Typ' oder 'Kommentar' Werte eingegeben werden.)
  3. Per Voreinstellung sind die Kontrollkästchen aller Orte des Objekts aktiviert, d.h. die neuen Werte ersetzen alle vorhandenen Werte, sobald Sie den Refactoring-Befehl ausführen.

    Deaktivieren Sie das Kontrollkästchen für jeden Ort, der nicht geändert werden soll. Stellen Sie sicher, dass das Deaktivieren einer Eigenschaft zu keinem Codefehler aufgrund von Inkonsistenzen führt.

    Mit dem Kontextmenübefehl oder Symbol 'Alle Orte abwählen' können Sie alle Orte auf einmal abwählen. Um alle Orte auszuwählen, verwenden Sie den Befehl 'Alle Orte auswählen' im Kontextmenü oder in der Symbolleiste.

  4. Klicken Sie in der Symbolleiste auf oder wählen Sie den Befehl 'Refactoring aller markierten Elemente' aus dem Kontextmenü des Fensters, um die neuen Werte an allen gewählten Orten anzuwenden. Die Liste mit den Orten wird automatisch mit den neuen Werten aktualisiert, sobald das Refactoring abgeschlossen ist.

    Hinweis
    Wenn der Instanzname eines Funktionsbausteins geändert wird, dann wird die zugehörige Instanzvariable in der entsprechenden Variablentabelle umbenannt, sofern dort exakt eine Variable mit dem alten Namen aber noch keine Variable mit dem neuen Namen vorhanden ist.