Hello All, Very basic question and might have been brought up by someone else too, point me to right direction if thats the case.
So question is I have fault codes for VFD and I have 1 memory Dataset tag which has list of INT vs String. this helps as codes stays with the UDT and next project ill have the list ready to go. Now each instance will have this tag on no scan but will be duplicated on instances. Is this a concern? I know example is for small amount of tags but thinking of standard approach and doing this on each device might matter.
Are you able to have the dataset tag stored outside of your UDT in a common top level location in your tag structure? And then reference it via direct tag path instead of relative tag path in the UDT?
If its in a common folder, you could export that specific folder and then import it into whichever gateway needs it when building another project. You could do this for all your devices and organize the folder by device type/version.
Yeah, We used to do that before but then We have some other process tags having very few instances and we store dataset right to UDT but then we would have multiple approach in same project. trying to find out if having memory tag not on scan can affect project on what extent.
This is a question that's hard to answer in absolute terms, because really it just depends.
Storing a dataset with a few dozen rows and only two column across a few dozen UDT instances? Totally fine.
Storing a dataset with thousands of rows and dozens of columns, across thousands of UDT instances? Potentially still fine, but definitely inefficient/wasteful.
Storing a dataset with hundreds of thousands of rows across hundreds of thousands of UDTs? Definitely a problem.
Not disputing Paul's ranges of acceptability, but real systems grow and initial assessments will blow up in your face. (Just say NO to query tags in UDTs, too.)
This just sounds like you want a lookup table to translate fault code 34 is XYZ happened? I’m assuming you’re trying to do this so you can display the text of the fault on the faceplate or dashboard. If so it’d be better served just storing the fault number in the UDT and then having a separate dataset with the fault code to string lookup that can be referenced at anytime.
When you go to display the text you just grab the fault number then go fetch the string to display. You could still make this modular so that next project you just import the one Fault Codes tag in and then you would still be able to reference them. In your UDT just have a path to the location of the fault codes tag so if it has to move next project you just update that one UDT path and the rest would still work.