# UDT- Alarms on boolean

**URL:** <https://forum.inductiveautomation.com/t/udt-alarms-on-boolean/101745>\
**Category:** Ignition\
**Tags:** perspective\
**Created:** [February 3, 2025, 3:41am UTC](https://forum.inductiveautomation.com/t/udt-alarms-on-boolean/101745 "2025-02-03T03:41:55Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![Maryam\_Saeed](https://avatars.discourse-cdn.com/v4/letter/m/a5b964/32.png) [@Maryam\_Saeed](https://forum.inductiveautomation.com/u/Maryam_Saeed)\
**Post date:** [February 3, 2025, 3:41am UTC](https://forum.inductiveautomation.com/t/udt-alarms-on-boolean/101745/1 "2025-02-03T03:41:55Z")

</div>

I have a UDT with Product Level tag in it. I want to configure Alarms such that another expression tag in my UDT named "Active\_Alarm" which shows me the name of Alarm activated. I used the following expression

if(isAlarmActive({[.]Product Level}, "HH"), "HH",  
if(isAlarmActive({[.]Product Level}, "HA"), "HA",  
if(isAlarmActive({[.]Product Level}, "LA"), "LA",  
if(isAlarmActive({[.]Product Level},"LL"), "LL", "None"))))

I get "None" in my expression tag which is set to string.

I tried a double quotes method which gave me "Error Configuration"

I am stuck at this since 3-4 days. Anyone got tips?

---

<div class="post-metadata">

**Author:** ![Samuel\_Sueur](https://avatars.discourse-cdn.com/v4/letter/s/e36b37/32.png) [@Samuel\_Sueur](https://forum.inductiveautomation.com/u/Samuel_Sueur)\
**Post date:** [February 3, 2025, 12:54pm UTC](https://forum.inductiveautomation.com/t/udt-alarms-on-boolean/101745/2 "2025-02-03T12:54:17Z")

</div>

Hi,

This won't work as when you are specifying `{[.]Product Level}` you are in reality specifying the **value** of the tag, not its tagpath.  
The `isAlarmActive` expression function expects a tagpath as its first argument.

> **[isAlarmActive | Ignition User Manual](https://www.docs.inductiveautomation.com/docs/8.1/appendix/expression-functions/alarming/isAlarmActive#parameters)**
>
> Returns whether there are active alarms that match the provided criteria.

What you could do is specify the `.path` attribute, and maybe follow with a `*`wildcard.

Your expression would look like the below :

```python
if(isAlarmActive({[.]Product Level.path} + "*", "HH"), "HH",
if(isAlarmActive({[.]Product Level.path} + "*", "HA"), "HA",
if(isAlarmActive({[.]Product Level.path} + "*", "LA"), "LA",
if(isAlarmActive({[.]Product Level.path} + "*","LL"), "LL", "None"))))

```

This is untested but should work.  
Do not put your expression as "Event Driven", as the path of those tags does not change.  
Let me know if it doesn't work, then I'll do some testing on my end.

---

<div class="post-metadata">

**Author:** ![Maryam\_Saeed](https://avatars.discourse-cdn.com/v4/letter/m/a5b964/32.png) [@Maryam\_Saeed](https://forum.inductiveautomation.com/u/Maryam_Saeed)\
**Post date:** [February 4, 2025, 6:00am UTC](https://forum.inductiveautomation.com/t/udt-alarms-on-boolean/101745/3 "2025-02-04T06:00:13Z")

</div>

> [@Samuel\_Sueur](#):
>
> ```python
> if(isAlarmActive({[.]Product Level.path} + "*", "HH"), "HH",
> if(isAlarmActive({[.]Product Level.path} + "*", "HA"), "HA",
> if(isAlarmActive({[.]Product Level.path} + "*", "LA"), "LA",
> if(isAlarmActive({[.]Product Level.path} + "*","LL"), "LL", "None"))))
> 
> ```

I was stuck on this since a week 😐 Thanks a bunch! It works
