In my element hierarchy my top element is one of our many plants. It is then followed by section, and each section has many equipment units.
Each plant has its own shift structure (number of shifts, shift start times, etc.). One of the attributes we implement at the top level (plant) is the CurrentShift_Number, that varies along the day (1, 2 or 3). Based on the defined schedule we calculate which shift that is currently in service for each plant, and the result is stored in a tag.
We then bring the value of this attribute down the hierarchy, across plant sections all the way down to elements representing single equipment units. We do so using a series of string builders that call the value from the parent element: " ..\|CurrentShift_Number"
In essence, we are using a series of such string builders down the hierarchy of the plant and we never really invoke the tag containing the current shift number... so, only string builder data references.
We thought we were doing it right until we noticed that something was up with one of our calculations at the machine level that used the CurrentShift_Number attribute. This attribute was being incorrectly evaluated (at execution time and preview) but it behaved correctly, once instead of using String Builder data reference I used the Pi Point.
So, I was surprised at this behavior, and clearly there is something about the system I do not know. Could anyone clarify why the String Builder would be an incorrect data reference in this case?
Thanks a lot!
Recently, we noticed that