Skip to end of metadata
Go to start of metadata
General

Component Palette Icon:



IULocgo


Alarm Status Table

Description

The alarm status table displays the current state of the alarm system. It can be configured to show active, unacknowledged, cleared, and acknowledged alarms. By default it shows all non-cleared/non-ack'ed alarms.

Acknowledgement is handled by selecting (checking) alarms and pressing the "Acknowledge" button. If any of the selected alarms require acknowledge notes, then a small text area will be presented in which the operator must add notes to the acknowledgement.

Shelving is supported by pressing the "Shelve" button when an alarm is selected. This will temporarily remove the alarm from the entire alarm system (not just the local client). When the time is up, if the alarm is still active, it will pop back into the alarm system. The times shown to the user are customizable by editing the values inside the "Shelving Times" dataset property. The alarms that have been shelved can be un-shelved by pushing the shelf management button in the lower right-hand side of the component.

If a more simplified alarm status table is needed, many of the features of the status table can be removed, for example, the header, footer, and multi-selection checkboxes. If a very short alarm status table is needed, turn on the "Marquee Mode" option, which will automatically scroll through any alarms if there is not enough vertical space to show all of them at once.

To change the columns that are displayed, the order of the columns, and/or the column width, put the Designer into preview mode. Then right-click on the table header to show/hide columns. Click and drag to re-order columns, and drag the margins of the columns to resize their width. No further action is necessary - the column configuration will remain in place after the window is saved.

For alarms that originate from Tags that have Tag history turned on, users can see an automatic ad-hoc chart for the value of the source Tag by pressing the chart button.

An Example of configuring the Alarm Status Table can be found on the Alarm Status Table Component page.

Properties
NameDescriptionProperty TypeScriptingCategory
AntialiasDraw the component with antialias on. This makes text look smootherboolean.antialiasAppearance
BorderThe border surrounding this component. NOTE that the border is unaffected by rotation.Border.borderCommon
Chart ResolutionThe resolution for the ad-hoc tag historian chart.int.chartResolutionBehavior
Data QualityThe data quality code for any tag bindings on this component.int.dataQualityData
Date FormatA date format pattern used to format dates in the table. If blank, the default format for the locale is used.String.dateFormatAppearance
Display Path FilterFilter alarms by alarm display path, falling back to the source path if a custom display path isn't set. Specify multiple paths by separating them with commas. This field supports the wildcard "*" to match any number of characters.String.displayPathFilterFilters
EnabledIf disabled, a component cannot be used.boolean.componentEnabledCommon
Flash IntervalThe time interval to use for flashing row styles.int.flashIntervalAppearance
Journal NameThe name of the alarm journal to query for the chart's annotations. Leave this blank to automatically pick the journal if there is only one.String.alarmJournalNameBehavior
Marquee ModeTurn the table into a scrolling marqueeboolean.marqueeModeBehavior
Min PriorityThe minimum priority alarm to be displayed by this table.int.minPriorityFilters
Multi SelectAllow multi select. Will show/hide the checkbox column.boolean.multiSelectBehavior
NameThe name of this component.String.nameCommon
Notes Area BorderThe border surrounding the notes area.Border.notesAreaBorderAppearance
Notes Area FontThe font for the notes area.Font.notesAreaFontAppearance
Notes Area LocationThe location of the notes display areaint.notesAreaLocationAppearance
Notes Area SizeThe size of the notes area, in pixels.int.notesAreaSizeAppearance
Number FormatA number format string to control the format of the value column.String.numberFormatAppearance
Refresh RateThe rate at which this table will poll changes to the alarm status, in milliseconds.long.refreshRateBehavior
Row HeightThe height, in pixels, for each row of the table.int.rowHeightAppearance
Row StylesA dataset containing the different styles configured for different alarm states.Dataset.rowStylesAppearance
Scroll DelayThe time (in mSec) to wait between performing each step in a scrollint.scrollDelayBehavior
Selected AlarmsA dataset containing each selected alarm. (Read-only)Dataset.selectedAlarmsData
Selection ColorThe color of the selection borderColor.selectionColorAppearance
Selection ThicknessThe size of the selection borderint.selectionThicknessAppearance
Shelving TimesThis dataset holds the times that are suggested when shelving an alarm. Allowable units are "second", "minute", or "hour".Dataset.shelvingTimesData
Show Ack ButtonShow the acknowledge button on the footer panel.boolean.showAckAppearance
Show Active and AckedShow alarms that are active and acknowledged.boolean.activeAndAckedFilters
Show Active and UnackedShow alarms that are active and unacknowledged.boolean.activeAndUnackedFilters
Show Chart ButtonShow the chart button on the footer panel.boolean.showChartAppearance
Show Clear and AckedShow alarms that are cleared and acknowledged.boolean.clearAndAckedFilters
Show Clear and UnackedShow alarms that are cleared and unacknowledged.boolean.clearAndUnackedFilters
Show Details ButtonShow the view details button on the footer panel.boolean.showDetailsAppearance
Show FooterShow a footer with acknowledge and shelf functions below the alarms.boolean.showFooterPanelAppearance
Show Header PopupToggles the table header's built-in column selection popup menu.boolean.showTableHeaderPopupAppearance
Show Manage Shelf ButtonShow the manage shelf button on the footer panel.boolean.showManageShelfAppearance
Show Shelve ButtonShow the shelve button on the footer panel.boolean.showShelveAppearance
Show Table HeaderToggles visibility of the table's header.boolean.showTableHeaderAppearance
Sort Oldest FirstSort times by oldest first.boolean.sortOldestFirstBehavior
Sort OrderThe default sort order for alarms in the status table.int.sortOrderBehavior
Source FilterFilter alarms by alarm source path. Specify multiple paths by separating them with commas. This field supports the wildcard "*" to match any number of characters.String.sourceFilterFilters
Stay DelayThe time (in mSec) to wait between scrollsint.stayDelayBehavior
Table BackgroundThe background of the alarm table.Color.tableBackgroundAppearance
Table Header FontThe font for the table header.Font.tableHeaderFontAppearance
Touchscreen ModeControls when this input component responds if touchscreen mode is enabled.int.touchscreenModeBehavior
VisibleIf disabled, the component will be hidden.boolean.visibleCommon
Scripting
Scripting Functions
 .print(fitWidth, headerFormat, footerFormat, showDialog, landscape)
  • Description

This specialized print function will paginate the table onto multiple pages. This function accepts keyword-style invocation.

  • Keyword Args

boolean fitWidth - If true, the table's width will be stretched to fit across one page's width. Rows will still paginate normally. If false, thetable will paginate columns onto extra pages. (default = true) [optional]

string headerFormat - A string to use as the table's page header. The substring "{0}" will be replaced with the current page number. (default = None) [optional]

string footerFormat - A string to use as the table's page footer. The substring "{0}" will be replaced with the current page number. (default = "Page {0}") [optional]

boolean showDialog - Whether or not the print dialog should be shown to the user. Default is true. [optional]

boolean landscape - Used to specify portrait (0) or landscape (1) mode. Default is portrait (0). [optional]

  • Return

Boolean- True if the print job was successful.

  • Scope

Client

 .getAlarms()

This feature is new in Ignition version 7.9.7
Click here to check out the other new features

  • Description

Returns a dataset of the alarms currently displayed in the Alarm Status Table component. The columns will be: EventId, Source, DisplayPath, EventTime, State, and Priority.

  • Keyword Args

None

  • Return

Dataset - A dataset of alarms.

  • Scope

Client

Extension Functions
 createPopupMenu
  • Description

Returns a popup menu that will be displayed when the user triggers a popup menu (right click) in the table. Use system.gui.PopupMenu() to create the popup menu.

  • Parameters

Component self- A reference to the component that is invoking this function.

List selectedAlarmEvents - The alarm events selected on the Alarm Status Table. For an individual alarm Event, call alarmEvent.get('propertyName') to inspect. Common properties: 'name', 'source', 'priority'.

  • Return

Object - the popup menu.

  • Scope

Client

 filterAlarm
  • Description

Called for each event loaded into the alarm status table. Return false to hide this event from the table. This code is executed in a background thread.

  • Parameters

Component self- A reference to the component that is invoking this function.

Alarm Event alarmEvent - The alarm event itself. Call alarmEvent.get('propertyName') to inspect. Common properties: 'name', 'source','priority'.

  • Return

Boolean- Returns true or false for every alarm event in the table. True will show the alarm. False will not show the alarm.

  • Scope

Client

 isAcknowledgeEnabled
  • Description

Returns a boolean that represents whether the selected alarm can be acknowledged

  • Parameters

Component self- A reference to the component that is invoking this function.

List selectedAlarmEvents - The alarm events selected on the Alarm Status Table. For an individual alarmEvent, call alarmEvent.get('propertyName') to inspect. Common properties: 'name','source','priority'.

  • Return

Boolean- Returns true or false for every alarm event in the table.

  • Scope

Client

 isShelvedEnabled
  • Description

Returns a boolean that represents whether the selected alarm can be shelved.

  • Parameters

Component self- A reference to the component that is invoking this function.

List selectedAlarmEvents - The alarm events selected on the Alarm Status Table. For an individual alarmEvent, call alarmEvent.get('propertyName') to inspect. Common properties: 'name', 'source', 'priority'.

  • Return

Boolean- Returns true or false for every alarm event in the table.

  • Scope

Client

 onDoubleClicked
  • Description

Called when an alarm is double-clicked on to provide custom functionality.

  • Parameters

Component self- A reference to the component that is invoking this function.

Alarm Event alarmEvent - The alarm event that was double clicked. For an individual alarmEvent, call alarmEvent.get('propertyName') to inspect. Common properties: 'name', 'source', 'priority'.

  • Return

Nothing

  • Scope

Client

 onAcknowledge
  • Description

Called when the Acknowledge button is pressed; the script runs before the ack happens. Return False to abort the acknowledgement, return True to continue as normal.

  • Parameters

Component self- A reference to the component that is invoking this function.

List alarms - A list of the alarms to be acknowledged.

  • Return

Boolean- Returns true or false for every alarm event that is selected.

  • Scope

Client


Event Handlers
 propertyChange
 propertyChange

Fires whenever a bindable property of the source component changes. This works for standard and custom (dynamic) properties.

.sourceThe component that fired this event
.newValueThe new value that this property changed to.
.oldValueThe value that this property was before it changed. Note that not all components include an accurate oldValue in their events.
.propertyNameThe name of the property that changed. NOTE: remember to always filter out these events for the property that you are looking for! Components often have many properties that change.
Customizers
Alarm Row Styles

The Alarm Status Table has a customizer.

Examples

Code Snippet
#The following code is an example of the filter alarm expression function. 
#The function results in advanced filtering for the alarm table. 
#In this example the alarm table will only show alarms with a name that matches the value of the "AreaName" property located on the container the Alarm Status Table resides in.

name = self.parent.AreaName
if name == alarmEvent.get('name'):
	return True
else:
	return False
Gallery

Alarm Status Table with a Single Alarm

  • No labels