# How to make a table/list from OPC struct tags

**URL:** <https://forum.inductiveautomation.com/t/how-to-make-a-table-list-from-opc-struct-tags/101404>\
**Category:** Maker\
**Tags:** ignition81, ignition80, perspective\
**Created:** [January 27, 2025, 8:39am UTC](https://forum.inductiveautomation.com/t/how-to-make-a-table-list-from-opc-struct-tags/101404 "2025-01-27T08:39:42Z")\
**Posts on this page:** 1\
**Showing post:** 2

<div class="post-metadata">

**Author:** ![zacht](https://avatars.discourse-cdn.com/v4/letter/z/ea5d25/32.png) [@zacht](https://forum.inductiveautomation.com/u/zacht)\
**Post date:** [January 27, 2025, 4:49pm UTC](https://forum.inductiveautomation.com/t/how-to-make-a-table-list-from-opc-struct-tags/101404/2 "2025-01-27T16:49:46Z")

</div>

Have you looked at the alarm status table? This may get you what you want without having to build a table yourself.

> **[Perspective - Alarm Status Table | Ignition User Manual](https://www.docs.inductiveautomation.com/docs/8.1/appendix/components/perspective-components/perspective-display-palette/perspective-alarm-status-table)**
>
> The Alarm Status Table allows you to view currently active alarm events in the system

To make many UDT instances quickly, there are a few options.

1. [Spreadsheet Import Tool](https://forum.inductiveautomation.com/t/spreadsheet-import-tool/93500)
  - This tool is supposed to let you create Ignition tags from a well-formatted spreadsheet. I haven't used it personally, but I've heard good things.

2. Scripting
  - [system.tag.getConfiguration | Ignition User Manual](https://www.docs.inductiveautomation.com/docs/8.1/appendix/scripting-functions/system-tag/system-tag-getConfiguration)
  - [system.tag.configure | Ignition User Manual](https://www.docs.inductiveautomation.com/docs/8.1/appendix/scripting-functions/system-tag/system-tag-configure)
  - The easiest scripting workflow would be:
    1. Create one UDT instance by hand.
    2. Read the configuration using system.tag.getConfiguration().
    3. Make copies of the original UDT instance, varying parameters as necessary.
    4. When you've made all the copies you want, write the configuration back using system.tag.configure()

3. Using a similar workflow as 2, use JSON files created and imported with [system.tag.exportTags](https://www.docs.inductiveautomation.com/docs/8.1/appendix/scripting-functions/system-tag/system-tag-exportTags) and [system.tag.importTags](https://www.docs.inductiveautomation.com/docs/8.1/appendix/scripting-functions/system-tag/system-tag-importTags) respectively.

---

_[View the full topic](https://forum.inductiveautomation.com/t/how-to-make-a-table-list-from-opc-struct-tags/101404)._
