Kreuzreferenz

Die Kreuzreferenz überprüft das Projekt auf die Verwendung von Variablen, Texten, Rechten und Einheitenklassen und weist auf potentielle Fehler hin. Zusätzlich zu diesen Definitionstypen können bei Modern UI Projekten Bindungen überprüft werden, bei Classic UI Projekten Fontklassen.

example: Sie können mit Hilfe der Kreuzreferenz Ihr Projekt z. B. darauf überprüfen, ob die Variablen, die in den Steuerelementen angebunden sind, in der Projektdatei existieren. Ist dies bei einer Variablen nicht der Fall, wird für diese Variable ein Fehler angezeigt. Sie können dann aus der Kreuzreferenz heraus zur Fehlerquelle „springen“, die Variablenanbindung korrigieren und so einen Systemfehler zur Laufzeit vermeiden.

Editor öffnen

Die Kreuzreferenz ist im Projektexplorer als letzter Eintrag im Knoten Projektkonfiguration eines Projekts zu finden. Jedes Projekt verfügt über eine eigene Kreuzreferenz.

Um den Editor der Kreuzreferenz zu öffnen, haben Sie folgende Möglichkeiten:

  • Klicken Sie mit der rechten Maustaste auf den Knoten Kreuzreferenz oder auf einen seiner Unterknoten und wählen Sie Editor anzeigen aus dem Kontextmenü.
  • Markieren Sie den Knoten Kreuzreferenz oder einen seiner Unterknoten und drücken Sie Enter.
  • Doppelklicken Sie auf den Knoten Kreuzreferenz oder auf einen seiner Unterknoten.

Der Editor wird in der Mitte der Entwicklungsumgebung auf einem Tab geöffnet.

Bedienelemente

Der Editor der Kreuzreferenz verfügt über folgende Bedienelemente:

Abbildung 1. Editor der Kreuzreferenz
Tab
Für jedes Projekt wird ein eigener Editor auf einem Tab in der Mitte des Programmfensters der Entwicklungsumgebung geöffnet.
Tipp: Sie können z. B. einen einzelnen Tab aus der Entwicklungsumgebung herausziehen, um ihn in einem separaten Fenster anzuzeigen, oder Tabs in Gruppen organisieren. Nähere Informationen dazu siehe Tabs.
Symbolleiste
Enthält die allgemeinen Funktionen und Funktionen zum Filtern der Ergebnisse.
Ansicht
Hier werden die Scan-Ergebnisse angezeigt. Es gibt je eine Ansicht für Bindungen, Variablen, Texte, Rechte, Fontklassen und Einheitenklassen. Um z. B. die Ergebnisse für Variablen im Editor anzuzeigen, klicken Sie auf den Unterknoten Variablen der Kreuzreferenz im Projektexplorer.
Suche
Sie können die Ergebnisliste auf die Ergebnisse reduzieren, die eine bestimmte Zeichenkette innerhalb der ersten Spalte enthalten. Dazu tippen Sie diese Zeichenkette in das Suchfeld ein. Die Anzahl der Treffer wird in einem Ausgabefeld neben dem Suchfeld angezeigt.
Details ein- und ausblenden
Hellgelb markiert sind die gefundenen Bindungen, Variablen, Texte etc. (Knoten). Sie können jeden Knoten per Klick auf das Plussymbol expandieren, um weitere Informationen, z. B. genauere Beschreibung des Fehlers und wo er vorkommt, anzuzeigen. Per Klick auf das Minussymbol können Sie die Informationen ausblenden.
Spalten
Sie können jede Spalte der Tabelle wie beim Tabelleneditor breiter oder schmaler ziehen oder per Doppelklick genau passend stellen. Mit einem Klick auf den Spaltenkopf können Sie die Ergebnisse sortieren. In den Spalten werden detaillierte Informationen zu den Ergebnissen angezeigt.
Statusleiste
Gibt den Zeitpunkt der letzten Analyse sowie die Anzahl der Fehler, Warnungen und korrekten Verwendungen in der Tabelle an.
Anmerkung:

Der Filter für Warnungen ist für Variablen und Texte in der Symbolleiste standardmäßig ausgeblendet. Auch in der Statusleiste werden Warnungen für Variablen und Texte nicht gezählt. Wollen Sie den Filter für Warnungen für Variablen und Texte verwenden und die Anzahl der Warnungen in der Statusleiste angezeigt bekommen, können Sie dies im Dialog Optionen einstellen. Expandieren Sie dazu den Knoten Entwicklungsumgebung im Dialog, wählen Sie die Ansicht Kreuzreferenz aus und aktivieren Sie die Optionen Variable definiert aber nicht verwendet und Lokalisierter Text definiert aber nicht verwendet.

Projekt scannen

Ist der Editor der Kreuzreferenz geöffnet, markieren Sie die gewünschte Ansicht, z. B. Variablen unterhalb des Knotens Kreuzreferenz im Projektexplorer und klicken Sie auf die Schaltfläche (Projekt scannen) oder (Projekt neu scannen) in der Symbolleiste des Editors.

Die Ergebnisse werden in einer Tabelle angezeigt.

Abbildung 2. Ergebnisse für Variablen

Ergebnisse filtern

In der Symbolleiste sind Filterfunktionen enthalten, welche die Ergebnisse in der Tabelle nach Status filtern.

Wenn Sie den Editor der Kreuzreferenz öffnen, sind alle Filter (bis auf den Filter Systemtexte anzeigen in der Ansicht Texte) zunächst aktiviert. Das bedeutet, dass die Ergebnisliste in der Regel recht lang wird. Für eine systematische Überprüfung können Sie die Ergebnisse filtern. Klicken Sie dazu auf den gewünschten Filter in der Symbolleiste, um ihn zu aktivieren oder zu deaktivieren.

example: Wollen Sie z. B. nur Ergebnisse mit dem Status Fehler sehen, lassen Sie nur den Schalter aktiviert und deaktivieren Sie die übrigen.

Ergebnisse sortieren

Sie können die angezeigten Datensätze per Klick auf den gewünschten Spaltenkopf auf- und absteigend sortieren. Ein kleines nach oben oder nach unten zeigendes Dreieck im Spaltenkopf zeigt die entsprechende Sortierung an (nach oben: aufsteigende Sortierung, nach unten: absteigende Sortierung).

example: Wollen Sie z. B. die Datensätze nach Status sortieren, klicken Sie einmal auf den Spaltenkopf Status. Die Datensätze werden in der Reihenfolge Korrekt–Warnung–Fehler (aufsteigend) sortiert. Klicken Sie ein zweites Mal auf den Spaltenkopf Status, werden die Datensätze in der Reihenfolge Fehler–Warnung–Korrekt (absteigend) sortiert.
In der Spalte Status Beschreibung können Sie wie folgt sortieren:
  • Aufsteigend:
    • Korrekt
    • Definiert, aber keine Verwendung gefunden
    • Verwendet, aber nicht definiert
    • Verwendungsfehler (Bitnummer)
  • Absteigend:
    • Verwendungsfehler (Bitnummer)
    • Verwendet, aber nicht definiert
    • Definiert, aber keine Verwendung gefunden
    • Korrekt
In allen übrigen Spalten wird die alphabetische Sortierung verwendet (aufsteigend: A-Z, 0-9; absteigend: Z-A, 9-0).

Details einblenden

Um einen Datensatz näher zu untersuchen, expandieren Sie zunächst den gewünschten Datensatz durch einen Klick auf das Plussymbol , um die Informationen dazu einzublenden. Sie können auch alle angezeigten Datensätze auf einmal durch einen Klick auf (Alle Knoten öffnen) in der Symbolleiste expandieren. Fehler werden rot markiert angezeigt, Warnungen gelb.

Abbildung 3. Alle Knoten geöffnet

In der expandierten Ansicht sind die genauen Informationen zu einem Datensatz in den Spalten Status Beschreibung, System, Verwendet in etc. sichtbar.

example: Im Screenshot oben wird Variable1 verwendet. Es handelt sich um einen Fehler, da die Variable zwar in der Applikation (Spalte System) verwendet wird, aber in der Projektdatei fehlt (Spalte Status Beschreibung). Verwendet wird Variable1 in der MainView1.xaml (Spalte Verwendet in) in der Eigenschaft VariableName (Spalte Quelle) eines Steuerelements vom Typ NumericVarIn (Spalte Quellgruppe).

Zur Quelle navigieren

Haben Sie einen Datensatz expandiert, können Sie direkt zu der Quelle einer Verwendung navigieren:

  • Doppelklicken Sie im Editor der Kreuzreferenz auf die gewünschte Zeile; die Spalte ist dabei irrelevant.
  • Klicken Sie einmal auf die Zeile und klicken Sie auf (Definition anzeigen) in der Symbolleiste des Editors.
  • Klicken Sie mit der rechten Maustaste auf die Zeile und wählen Sie Definition anzeigen aus dem Kontextmenü.

Ist die Verwendung auf einem Formular, einer View oder einer Page zu finden, dann wird das entsprechende Dokument im Designer geöffnet und die Verwendung markiert. Ist die Verwendung in einer Definition (z. B. in einem Alarm) zu finden, dann wird diese Definition im Tabelleneditor geöffnet und markiert.

Anmerkung:Automatisches Markieren im Modern UI

Damit das betroffene Steuerelement automatisch markiert wird, muss die View im Designer bereits geöffnet sein. Der Befehl Definition anzeigen muss also in der Regel zwei Mal ausgeführt werden: Beim ersten Mal wird die View im Designer geöffnet, beim zweiten Mal wird das Steuerelement markiert.

Abbildung 4. Verwendung im WPF Designer automatisch markiert

Im Modern UI können Sie auch die betroffene Stelle im XAML-Text markieren lassen. Dazu aktivieren Sie die Ansicht Xaml für die View und führen Sie den Befehl Definition anzeigen in der Kreuzreferenz erneut aus.

Abbildung 5. Verwendung in der XAML-Ansicht des WPF Designers automatisch markiert
Einschränkung: Im Web UI steht das automatische Markieren (noch) nicht zur Verfügung.

Fehler beheben und Kreuzreferenz aktualisieren

Nachdem Sie den Fehler behoben haben, z. B. die richtige Variable in der Eigenschaft VariableName des Steuerelements angegeben haben, speichern Sie das Dokument im Designer und scannen Sie das Projekt erneut, um die Daten der Kreuzreferenz zu aktualisieren.

Tipp: Sie können Dokumente im Designer automatisch speichern lassen. Öffnen Sie dazu den Dialog Optionen, expandieren Sie den Knoten Designer im Dialog, wählen Sie die Ansicht Dokumente aus und aktivieren Sie die Option Dokumente automatisch speichern. Zudem können Sie hier den Zeitraum, nach dem Dokumente automatisch gespeichert werden, einstellen. Bestätigen Sie Ihre Änderungen mit OK.