# Program Scoped PLC UDT Tags With Same Name

**URL:** <https://forum.inductiveautomation.com/t/program-scoped-plc-udt-tags-with-same-name/39685>\
**Category:** Ignition Early Access\
**Created:** [October 14, 2020, 7:47pm UTC](https://forum.inductiveautomation.com/t/program-scoped-plc-udt-tags-with-same-name/39685 "2020-10-14T19:47:58Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![rfedyk](https://avatars.discourse-cdn.com/v4/letter/r/45deac/32.png) [@rfedyk](https://forum.inductiveautomation.com/u/rfedyk)\
**Post date:** [October 14, 2020, 7:47pm UTC](https://forum.inductiveautomation.com/t/program-scoped-plc-udt-tags-with-same-name/39685/1 "2020-10-14T19:47:58Z")

</div>

Ignition 8.0.15  
Vision Designer  
Rockwell L84S

I have a PLC program with Multiple UDT instances of the same name. i.e. they are program scoped in the PLC.  
If I insert a new data type it asks for the tag name.  
How do I parameterize this to be the program scoped tag?

I started doing it another way by just structuring my folders accordingly, then dragging and dropping the UDT folders from the OPC Browser, but this does not create a UDT instance.  
It works, but I would prefer to have the UDT instance to drag and drop.

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [October 14, 2020, 8:49pm UTC](https://forum.inductiveautomation.com/t/program-scoped-plc-udt-tags-with-same-name/39685/2 "2020-10-14T20:49:28Z")

</div>

UDTs in Ignition do not automatically map to UDTs in your PLCs. In fact, the user-defined type in a Logix PLC is not actually exposed as a _type_ to OPC clients. You are going to have to connect these up yourself. Probably should have a parameter in your Ignition UDT that will have the base OPC item path.

---

<div class="post-metadata">

**Author:** ![rfedyk](https://avatars.discourse-cdn.com/v4/letter/r/45deac/32.png) [@rfedyk](https://forum.inductiveautomation.com/u/rfedyk)\
**Post date:** [October 14, 2020, 10:21pm UTC](https://forum.inductiveautomation.com/t/program-scoped-plc-udt-tags-with-same-name/39685/3 "2020-10-14T22:21:52Z")

</div>

I have setup the UDTs in ignition and matching in ignition designer with the tags.  
In fact, it seems the easiest (I have found) is to drop a UDT from the OPC browser and reconfigure the OPC item path for each tag.

Item path is currently:

ns=1;s=[{PLC}]{InstanceName}.{TagName}

So, I am assuming that I would add a parameter such as {PathToTag} before the instance name and this would be my program reference e.g. ‘Program:ToolX’.

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [October 14, 2020, 11:10pm UTC](https://forum.inductiveautomation.com/t/program-scoped-plc-udt-tags-with-same-name/39685/4 "2020-10-14T23:10:25Z")

</div>

Yes, and each tag in the Ignition UDT would have that plus a constant `.MemberName`.
