# Display Pop-Up based on tag value (boolean)

**URL:** <https://forum.inductiveautomation.com/t/display-pop-up-based-on-tag-value-boolean/114640>\
**Category:** Ignition\
**Tags:** perspective, scripting\
**Created:** [March 24, 2026, 12:05pm UTC](https://forum.inductiveautomation.com/t/display-pop-up-based-on-tag-value-boolean/114640 "2026-03-24T12:05:55Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![tejas200010](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/tejas200010/32/81552_2.png) [@tejas200010](https://forum.inductiveautomation.com/u/tejas200010)\
**Post date:** [March 24, 2026, 12:05pm UTC](https://forum.inductiveautomation.com/t/display-pop-up-based-on-tag-value-boolean/114640/1 "2026-03-24T12:05:55Z")

</div>

Hey folks! Quick logic question: I need a popup to trigger whenever a specific tag (memory tag) goes high. The catch is it needs to show up on **every page** (whichever one is currently open).

Does anyone have a recommendation for handling global triggers like this without duplicating the logic on every single screen? Thanks in advance!

---

<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:** [March 24, 2026, 12:16pm UTC](https://forum.inductiveautomation.com/t/display-pop-up-based-on-tag-value-boolean/114640/2 "2026-03-24T12:16:06Z")

</div>

Use a **global** docked view, and bind the tag to a view custom property within it. Add a change script to that prop that opens the popup.

---

<div class="post-metadata">

**Author:** ![tejas200010](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/tejas200010/32/81552_2.png) [@tejas200010](https://forum.inductiveautomation.com/u/tejas200010)\
**Post date:** [March 24, 2026, 12:22pm UTC](https://forum.inductiveautomation.com/t/display-pop-up-based-on-tag-value-boolean/114640/3 "2026-03-24T12:22:51Z")

</div>

Hi,  
Thanks for the reply!  
Can you please attach any reference scripts available ?

---

<div class="post-metadata">

**Author:** ![ryan.white](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/ryan.white/32/73193_2.png) [@ryan.white](https://forum.inductiveautomation.com/u/ryan.white)\
**Post date:** [March 24, 2026, 2:57pm UTC](https://forum.inductiveautomation.com/t/display-pop-up-based-on-tag-value-boolean/114640/4 "2026-03-24T14:57:59Z")

</div>

> **[system.perspective.openPopup | Ignition User Manual](https://www.docs.inductiveautomation.com/docs/8.1/appendix/scripting-functions/system-perspective/system-perspective-openPopup)**
>
> Open a popup view over the given page.

> **[Perspective Property Change Scripts | Ignition User Manual](https://www.docs.inductiveautomation.com/docs/8.1/ignition-modules/perspective/scripting-in-perspective/perspective-property-change-scripts)**
>
> With Perspective, individual component properties can have a property change script. When a change script is set up on a property, it will run when the property changes its value. Multiple different properties on the same component can each have...

---

<div class="post-metadata">

**Author:** ![tejas200010](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/tejas200010/32/81552_2.png) [@tejas200010](https://forum.inductiveautomation.com/u/tejas200010)\
**Post date:** [March 25, 2026, 12:41am UTC](https://forum.inductiveautomation.com/t/display-pop-up-based-on-tag-value-boolean/114640/5 "2026-03-25T00:41:38Z")

</div>

Hi,

I went through a few posts posted in this forum for similar topic.

And i have come across this code

```python
    popupId = "pop1"
    viewPath = "Nav Link" # insert your view path here
    logger = system.util.getLogger("POPUP")
    sessions = system.perspective.getSessionInfo()
    for session in sessions:
        for pageId in session.pageIds:
            logger.info("{0} | {1}".format(session.id, pageId))
    
            if currentValue and currentValue.value: # I added an additional safety check for first time use here
                system.perspective.openPopup(popupId, viewPath, sessionId=session.id, pageId=pageId)
                logger.info("openPopup complete")
            else:
                # note no viewPath arg
                system.perspective.closePopup(popupId, sessionId=session.id, pageId=pageId)

```

the pop up is not displayed in the page and got this error in the log

 ![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/2/4/24d807f19b7bc500f946b9660d7fcc0debac84e7.png)

---

<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:** [March 25, 2026, 12:53am UTC](https://forum.inductiveautomation.com/t/display-pop-up-based-on-tag-value-boolean/114640/6 "2026-03-25T00:53:15Z")

</div>

The whole point of my advice to use a dock was to avoid having to loop through session information. The change event on the docked view's custom property can be a simple one-line call to `system.perspective.openPopup()`. Perhaps another line to make it conditional.

---

<div class="post-metadata">

**Author:** ![tejas200010](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/tejas200010/32/81552_2.png) [@tejas200010](https://forum.inductiveautomation.com/u/tejas200010)\
**Post date:** [March 30, 2026, 5:50am UTC](https://forum.inductiveautomation.com/t/display-pop-up-based-on-tag-value-boolean/114640/7 "2026-03-30T05:50:46Z")

</div>

That’s quite an effective approach. Previously, I was using a top docked view as a header, but I’ve now implemented custom tags bound to OPC UA tags and added a change script to trigger the popup based on the tag value.

Thanks @pturmel it did work.
