Refactoring von Variablen und FB-Typen
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:- Variablentabelle (lokale Deklarationen einer POE)
- Datenliste (globale IEC 61131-3-Deklarationen)
- Code-Editoren (Variablen und FB-Aufrufe)
- QUERVERWEISE
WARNUNG
|
Unbeabsichtigter Betriebszustand des Geräts
|
Gehen Sie folgendermaßen vor:
- Falls erforderlich: Nachdem Sie eine Variable hinzugefügt haben, erzeugen Sie das Projekt manuell neu ('Projekt > Neu erzeugen'). (Der 'Refactoring'-Befehl steht erst zur Verfügung, nachdem das Projekt neu erzeugt wurde oder wenn die Querverweise aktuell sind.)
- Wählen Sie aus dem Kontextmenü des zu ändernden Objekts den Befehl 'Refactoring' aus.Im Cross-Funktionen-Bereich öffnet sich nun das REFACTORING-Fenster.
In diesem Fenster sind alle Orte aufgelistet, an denen das betreffende Objekt in Ihrem Projekt verwendet wird: Deklarationen, Code-Zugriffe (im Standard- und sicherheitsbezogenen Code) sowie alle Verwendungen in der HMI-Applikation.Doppelklicken auf einen Ort in der Liste öffnet den entsprechenden Editor (Datenliste, Code etc.) und markiert dort das betreffende Objekt. - Geben (oder wählen) Sie in der ersten Tabellenzeile unter der Gruppe 'Neue Werte' einen neuen Namen, Typ oder Kommentar ein (alle anderen Eigenschaften sind schreibgeschützt).Das Feld 'Typ' enthält eine Liste der im Projekt vorhandenen Daten- und FB-Typen (FB-Namen). Wenn Sie einen anderen Typ wählen, stellen Sie sicher, dass dieser zum definierten Typ passt.
- Geben Sie alle Orte an, an denen die Eigenschaft durch die neuen Werte ersetzt werden soll.
: Beim Ausführen des Refactoring-Befehls werden alle vorhandenen Werte durch die neuen Werte ersetzt.
: Werte an diesem Ort bleiben unverändert.In der Symbolleiste des Fensters finden sich zwei Befehle zum Abwählen
oder Auswählen
aller Orte.
Hinweis
Stellen Sie sicher, dass Ihre Auswahl zu keinem Codefehler aufgrund von Inkonsistenzen führt. - Klicken Sie in der Symbolleiste auf
, um das Refactoring an allen gewählten Orten anzuwenden.Klicken Sie nach Beenden des Vorgangs in der Symbolleiste auf
, um den Inhalt des REFACTORING-Fensters zu aktualisieren.
Hinweis
Nach Beenden des Refactoring, prüfen Sie das MELDUNGEN-Fenster auf Fehler, die durch das Refactoring aufgetreten sind.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.Hinweis
Wenn eine Funktionsbausteintyp geändert wird, wird auch der entsprechende Typ der Instanzvariablen geändert.
Fenster-Symbolleiste
Doppelklicken auf einen Ort in der Liste öffnet den entsprechenden Editor (Datenliste, Code etc.) und markiert dort das betreffende Objekt.