the BASIC idea is that the Cross-Reference tool will identify how different tags are INTER-RELATED ... specifically, how the LOGIC involved with separate tags is "tied-together" ... a "Find All" search won't reveal how the program's logic is inter-related ...
in the example below, someone has incorrectly assigned the alias tagname ALARM_LAMP_RED to an existing tag ... the base tagname is Local:2:O.Data.7 ... that base tagname had already been correctly assigned the alias LO_PRESSURE_PUMP – and the pump had been working perfectly for years ...
but ...
when "Little Johnnie" the new programmer clicked to assign his new alias "ALARM_LAMP_RED" to the tag Local:2:O.Data.15, he accidentally aimed his mouse too high – and clicked on the pump's bit instead ... oops! ... this results in a "double-coil" arrangement when Johnnie tries to control his lamp in the ladder logic ...
the actual LO_PRESSURE_PUMP device in the field starts "acting funny" because of the "double-coil" arrangement which results ... specifically, two OTE instructions are now both fighting over the control of the tagname Local:2:O.Data.7 ...
doing a "Find All" search for the LO_PRESSURE_PUMP would NOT (I repeat - would NOT) be able to find this problem ... on the other hand, if properly done, a "Cross Reference" search WILL find the problem – because the "Cross Reference" tool can track down the inter-relationship of the control which is affecting the LO_PRESSURE_PUMP ...
going further: believe it or not, doing a "Find All" search for the base tagname "Local:2:O.Data.7" wouldn't find this problem either ... that's because the original programmer did NOT use the base tagname when he wrote the code to control the pump ... specifically, he used the alias tagname "LO_PRESSURE_PUMP" instead ... on the other hand, doing a "Cross Reference" for the tagname Local:2:O.Data.7 WOULD be able to find this problem – because the "Cross Reference" DOES indeed reveal the inter-relationship of the "alias" with the "base tagname" ...
background:
I get MANY technicians in my classes who have been working successfully with RSLogix5 and RSLogix500 for years – but who are now having a hard time troubleshooting problems in RSLogix5000 ... in the older software, each "symbol" (for example: PUMP) had to be tied to a particular address (for example: O:6.0/7) – and only ONE "symbol" was allowed for each particular address ...
but ...
in RSLogix5000 it is possible to have several different "aliases" tied to just ONE address ... (for example: the alias "ALARM_LAMP_RED" and the alias "LO_PRESSURE_PUMP" can BOTH be tied to just the ONE address "Local:2:O.Data.7") ...
so ...
in the older RSLogix5 and RSLogix500 software, the "Find All" search worked quite well – and many (most?) technicians never even used the Cross Reference tool ... now times have changed – and the Cross Reference is an indispensable part of every successful technician's tool kit ...
and thank you, Mark, for the kind compliments ... you'll probably remember the exercise shown below from the class ...
.