New to B&R: Best practices for tracking variables (List Usage / Cross-Ref) and tracing physical I/Os?

Hi everyone,

I am relatively new to B&R and am currently learning my way around Automation Studio.

So far, I have figured out how to use the standard “Find in Files” option to do a text search for a point , but I know text searching has its limitations on larger projects. I want to move past basic text searches and master the advanced, native PLC diagnostic tools built into the interface.

Specifically, I want to learn how to efficiently search, track, and navigate any local or global variable across all my code blocks using native tools like List Usage (or any other cross-referencing tools). I am also trying to understand how to trace those same software points directly back to their physical hardware connections and electrical channels using the Properties and I/O Mapping windows.

When I try to use the Cross Reference / List Usage feature right now, sometimes it shows nothing or I am not entirely sure how to interpret the Read/Write access columns correctly.

Could anyone point me toward the best workflow, tips, or public tutorial videos/documentation that visually explain how these window layouts behave when navigating live code variables? Any advice or best practices you use daily would be greatly appreciated!

Thanks in advance for your help!

Hi and welcome Aditya,

As someone who has been using Automation Studio for seven years now, I still use Find In Files almost daily. In my opinion at least, it’s the best way to search the project. You can check the Case Sensitive and Match Whole Words Only boxes if you know exactly what variable you’re looking for to limit results. You can also use the filters to search the specific file type(s) that you’re interested in. And if you aren’t really sure what you need, it will search the whole project for you.

I think that the List Usage and Cross Reference features only index during a project build. Or you can go to Project → Build Cross Reference. Find In Files however is just a text search, so it always works.

Hi @aditya.shwetank ,
not clear for me how I can help you, if I understood correctly you already use “Find in Files” and “Cross Reference”, but you have found some limitations on “Cross Reference”…so if this the case please report the issues to our Support in your area so they can report them to R&D.

Regarding documentation or video, not sure I have to check…you just need to build the cross reference list first and then enter your variable in the Filter:

I see some information in AS Help: cross references window

======================
Automation Studio Code could also help: Ever lost track of where a variable is used? You’re not alone. :magnifying_glass_tilted_left::laptop: You change a variable in one place… but where else does it show up? Manually searching across files can feel like looking for a… | B&R Industrial Automation

Ciao
Valerio

Hello,

The CrossReference must be generated for the Project. This is normaly not done in Background, you have to set up the generation.

Manual creation via Menü

Automatic generation while Build

I am still Stuck with FindInFiles.
You may have to remove the Filter for the File types, to also find Variables in IO-Mapping or Properties.

Greetings
Michael

good to know Michael, so far I manually command a build of cross-references when I need it.
Thanks
Ciao
Valerio

Thanks guys for the detailed explanation.

I found Find in Filter very handy, and thanks for showing me how to clear the filter as well.

I am currently building cross-references as shown in the attached screenshot, but I’ve come across an issue. For example, q_Runtime is used within a code, however it doesn’t appear in Cross Reference results. On the other hand, if I search for the same point using Find in Filter, I can see all the relevant references and links.

Is there a reason why Cross Reference is not picking it up? Am I missing a configuration step or is there a limitation with how Cross Reference works?

Hi @aditya.shwetank ,
I see some limitations (I’m doing some tests with latest AS 6.5.3.11), not sure if all of them are documented.

  1. Can cross-reference find a structure variable? yes:

  1. Can cross-reference find an item inside a structure variable? no:

  1. Can cross-reference find a simple global variable inside an action? yes:

but in your case no, so which AS version are you using?

Based on my tests sincerely I’m more comfortable with classic CTRL+Shift+F.

What about Automation Studio Code (6.5.1)?:

  1. Can AS code “Find All References” find an item inside a structure variable? yes:

  1. Can AS code “Find All References” find a structure variable? yes:

=================
VSCode is an alternative editor + we have an Interesting note (Regular Expressions) from Vanessa in this post: Cross reference doesn’t work - Ask Questions / Controls & Vision - B&R Community

Ciao
Valerio

Hi Valerio, I am using 6.5.3.11 (2026-05-15).

That’s the only version I have used, fairly new to B&R only started using it 1 month ago.

Thanks @aditya.shwetank for your answer.
it’s clear in your prj AS doesn’t build in correct way the information for cross-references so please report the issue to our local Support in your area.
In couple of weeks we should have new AS release 6.7 (with that I’ll start my study with Safety+…), it would be interesting to see if the new version has already fixed your issue.

Ciao
Valerio