# Alarm Status Table and Alarm Journal Components

**URL:** <https://forum.inductiveautomation.com/t/alarm-status-table-and-alarm-journal-components/29873>\
**Category:** Ignition\
**Created:** [November 12, 2019, 1:26pm UTC](https://forum.inductiveautomation.com/t/alarm-status-table-and-alarm-journal-components/29873 "2019-11-12T13:26:18Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![bbranison](https://avatars.discourse-cdn.com/v4/letter/b/74df32/32.png) [@bbranison](https://forum.inductiveautomation.com/u/bbranison)\
**Post date:** [November 12, 2019, 1:26pm UTC](https://forum.inductiveautomation.com/t/alarm-status-table-and-alarm-journal-components/29873/1 "2019-11-12T13:26:18Z")

</div>

Two items relating to alarms:

1. Since there is no way to export the visible dataset of the Alarm Journal component, I am using the system.alarm.queryJournal function but the called dataset is not showing the columns we need. (i.e. acked by, ack notes, alarm name, etc…) Any way to include these columns in the dataset?

range = event.source.parent.getComponent(‘Date Range’)  
table = system.alarm.queryJournal(journalName=‘Journal’, startDate = range.startDate, endDate = range.endDate, includeSystem=True, includeData=True)  
filePath = system.dataset.exportExcel(“data.xls”, 1, table.getDataset())  
if filePath != None:  
system.net.openURL(“file://”+filePath)

1. Is there a way to configure the Alarm Status Table component to reference a dataset of selectable acknowledgement choices rather than using the text area?

Thanks,  
Ben

---

<div class="post-metadata">

**Author:** ![jciatti](https://avatars.discourse-cdn.com/v4/letter/j/3da27b/32.png) [@jciatti](https://forum.inductiveautomation.com/u/jciatti)\
**Post date:** [April 22, 2020, 4:13pm UTC](https://forum.inductiveautomation.com/t/alarm-status-table-and-alarm-journal-components/29873/2 "2020-04-22T16:13:50Z")

</div>

Ben,

Did you ever find a solution to this? We are in the same situation.

Thanks

---

<div class="post-metadata">

**Author:** ![JordanCClark](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/jordancclark/32/83362_2.png) [@JordanCClark](https://forum.inductiveautomation.com/u/JordanCClark)\
**Post date:** [April 22, 2020, 4:42pm UTC](https://forum.inductiveautomation.com/t/alarm-status-table-and-alarm-journal-components/29873/3 "2020-04-22T16:42:21Z")

</div>

It should be stored in the alarm\_event\_data table. There were some earlier issues with this as descibe in this thread:

> [@\[11961\] Ignition 7.9.10 - possible bug with alarm journal - missed data in alarm\_event\_data?](http://forum.inductiveautomation.com/t/11961-ignition-7-9-10-possible-bug-with-alarm-journal-missed-data-in-alarm-event-data/23635):
>
> Does anybody noticed any similar issue about alarm journal ? #91766 - alarm journal query - label With the component alarm journal query, the label is correctly displayed for alarm in state : active unack and clear unack. For the row for the alarm in state clear ack, the label is replaced by the alarm name It seems to me that the label is not stored in the alarm\_event\_data for the ack events. #91770 - Acknowledge alarm don’t capture associated data When an alarm go active or cleared, alarm…

---

<div class="post-metadata">

**Author:** ![bbranison](https://avatars.discourse-cdn.com/v4/letter/b/74df32/32.png) [@bbranison](https://forum.inductiveautomation.com/u/bbranison)\
**Post date:** [April 22, 2020, 5:17pm UTC](https://forum.inductiveautomation.com/t/alarm-status-table-and-alarm-journal-components/29873/4 "2020-04-22T17:17:31Z")

</div>

Below is the solution I ended up using for this:

from com.inductiveautomation.ignition.common.alarming.config import CommonAlarmProperties

range = event.source.parent.getComponent(‘Date Range’)  
table = system.alarm.queryJournal(journalName=‘Journal’, startDate = range.startDate, endDate = range.endDate, includeSystem=True, includeData=True)

ackUserData = []  
for row in table:  
ackUserData.append(str(row.get(CommonAlarmProperties.AckUserName)))  
ackNotes = []  
for row in table:  
ackNotes.append(str(row.get(CommonAlarmProperties.AckNotes)))   
nameData = []   
for row in table:  
nameData.append(str(row.get(CommonAlarmProperties.Name)))

tableData = table.getDataset()  
tableData = system.dataset.addColumn(tableData,ackUserData,‘Ack User’,type(str()))  
tableData = system.dataset.addColumn(tableData,ackNotes,‘Ack Notes’,type(str()))  
tableData = system.dataset.addColumn(tableData,nameData,‘Label’,type(str()))

filePath = system.dataset.exportExcel(“data.xls”, 1, tableData)  
if filePath != None:  
system.net.openURL(“file://”+filePath)

---

<div class="post-metadata">

**Author:** ![jciatti](https://avatars.discourse-cdn.com/v4/letter/j/3da27b/32.png) [@jciatti](https://forum.inductiveautomation.com/u/jciatti)\
**Post date:** [April 22, 2020, 6:21pm UTC](https://forum.inductiveautomation.com/t/alarm-status-table-and-alarm-journal-components/29873/5 "2020-04-22T18:21:34Z")

</div>

Thanks, That’s the route I was going down. Appreciate your fast response.
