Symbol:
Function: This command opens the “Cross Reference List” view.
Call: Menu bar: “View”, or “Edit Browse Browse Cross References”.
This view shows a list of cross-references for a symbol in the project. The symbol can be a variable, a POU (program, function block, function), or a user-specific data type (DUT). The cross-reference list offer two basic types of searches:
-
Text search: By specifying a symbol name, the cross-references of all symbols in the project are displayed with their names. If multiple symbols with the same are found, then the display can be limited to individual declarations by means of the context menu.
-
Declaration search: The symbol can be selected by means of the input assistant or by specifying a qualified path (for example,
Device.Application.PLC_PRG.i
or__POOL.POU.a
). Then only the occurrence locations of this symbol are displayed, even if there exist other symbols with the same name.
Input field |
Symbol name (variable name, POU name, DUT name). Input options:
More options outside of cross-reference list view:
The following input is valid:
|
|
Open input assistant for selecting a symbol |
|
Perform a search |
|
Define columns to search for the string. |
Input field |
String that is searched for in the selected columns. The result locations are marked in yellow. Cross references without this string are hidden. |
|
Show source position of previous cross-reference, [Shift]+[F4] |
|
Show source position of next cross-reference, [F4] |
|
Limit results to current declaration: Available if multiple declarations are found for a symbol. Limits the display to the declaration that you have selected in the list. |
|
Show source position of selected cross-reference: The focus jumps to the occurrence location of the symbol. |
|
Print cross-reference list: The default dialog opens for setting up a print job. |
The cross references are displayed with the following information: |
|
“Symbol” |
The result locations for the symbols (variables, POUs, or DUTs) are grouped by declaration. The declaration occurrence comprises the root node and the occurrence locations in the project are indented below. The precise expression is displayed that has the symbol at the occurrence location. Example: If there is a global variable |
“POU” |
Block name; also a task name if a block call in the task configuration. |
“Variable” |
Only the variable name (for example, |
“Access” |
Type of access to the variable at the occurrence location: “Declaration” / “Read” / “Write” / “Call”. Special case for pointers: An assignment type |
“Type” |
Data type of the variable |
“Address” |
IEC address if variables are assigned Example: " |
“Position” |
Location of the occurrence in the POU editor, for example line number, network number,
declaration part, or implementation part. Example: " |
“Object” |
POU name plus complete path of the occurrence location in brackets (if this is found
in the “Devices” view). Example: " |
“Comment” |
Comments if available in the declaration of the variable |
The search yields all result locations in the project and in included, uncompiled libraries.
Right-click commands in the cross-reference list
“Show source position”: Opens the respective POU and marks the occurrence: for root entries, the declaration, and for subordinate entries, the respective occurrence location. As an alternative, you can double-click a line.
“Limit Results to Selected Declaration”: Limits the display of results to the selected symbol declaration if multiple declarations are found.
“Expand All”: In the list, every single result location is shown.
“Collapse All”: In the list, only the root nodes of the result locations are shown.