Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Overview

This section discusses how to configure the AlarmWindow componentThe AlarmViewer component displays alarm events configured in the Alarms Module. It allows users to quickly select alarm properties to display, such as acknowledgment status, active time, tag name, and priority. Users can filter, sort, and reorder columns, merge high-priority alarms, and view detailed information like user comments and duration. The component supports dynamic updates, links to other data sources, and displays time with millisecond precision, facilitating effective alarm management and analysis.

On this page:

Table of Contents
maxLevel3
stylenone


Requirements

Defining the alarm item in Alarms / Item is the only requirement to use it. This component is Portable. It runs both on Windows (WPF) and on Web Pages hosted in any platform.


Anchor
Configuring an alarm window
Configuring an alarm window

Configuring an Alarm Window

Configuration

  1. Go to Displays / Draw.
  2. On the Components Panel, select Modules, then AlarmViewer.
  3. Click or drag-and-drop it on the Drawing area to use it.
  4. Double-click
any Alarm Window object in
  1. the
display to configure it
  1. component to open the configuration window.
Defines a name for the control so it can be accessed in the CodeBehind script. See Display Code Behind.

Alarm

Window

Viewer settings

Field

Description

Control Name

MaxLines

Maximum number of lines to display in the window.

List

Select Selects the type source of alarms to display in the windowviewer. Options include:

  1. OnlineAlarms

— Displays only active alarms. Alarms only display while the alarm is in the alarm state.
  • AlarmHistory — Displays only past alarms.
  • AuditTrail — Displays only the SystemEvents (Edit → Alarms → Groups).
  • AlarmHistory+Events — Displays past alarms and SystemEvents.
  • Merge Hi and HiHi Lines

    Combines alarms configured as Hi and HiHi into a single row.

    History Interval/To

    Enter the start and end dates for the alarms. The Alarm Window object execute this query from the database.
    If this field is empty, the value used will be the lowest ActiveTime_Ticks to DateTime.UTCNow.Ticks.

    Show Column Titles

    Select to display the column titles.

    Ack by Page

    Enter a tag name which acknowledges the alarms in the alarm window when triggered.

    Show Header

    Enter text to display above the column titles.

    AllowSort

    Select to allow users to sort the data by column.

    Allow Column Reorder

    Select to allow users to change the order of the columns.

    Display value column as string

    Set the format of the value column to string

    Filter

    Enter SQL statement to limit the alarms displayed.

    Display Milliseconds

    Select to include milliseconds in the alarm time.

    Ack Selected Line

    Configure settings for acknowledging an alarm.

    Columns

    For each column in the list, select the column and configure the settings to the right of the list (described below).

    Visible

    Select so the column is displayed in the alarm window.

    Allow Filter

    Select to allow users to filter the column.

    Show in Column Chooser

    Select to include the column in the column chooser, which allows users to select the columns that display.

    Title

    Enter the text for the column title.

    Width

    Enter the initial column width, in WPF units (device-independent pixels).

    Sort

    Select how to initially sort the column.

    1. : Displays real-time alarms that are currently active or have been recently triggered in the system.

    2. AlarmHistory: Shows a historical record of alarms, including those that have been resolved or acknowledged. This option provides insights into past alarm events.

    3. AuditTrail: Presents a log of changes and actions taken within the system, including user activities and system modifications. Helps track who did what and when.

    4. AlarmHistory+AuditTrail: Combines both historical alarm records and audit trail logs. This integrated view helps correlate alarm events with user actions and system changes.

    MaxLines

    Sets the maximum number of alarm lines to display in the grid. Default is 1024.

    Ack Selected line

    Allows acknowledging the selected alarm line when checked.

    ListChange Link

    Links the alarm viewer to another list or data source, allowing dynamic updates based on changes in the linked list.

    Merge Hi and HiHi lines

    Merges high-priority (Hi) and very high-priority (HiHi) alarm lines into a single view when enabled.

    Show column titles

    Displays the column titles in the alarm grid when checked.

    Ack by page

    Allows acknowledging alarms by page number.

    Show Header

    Enables users to drag column titles to group data based on those columns.

    AllowSort

    Enables sorting of the columns within the grid.

    Allow Column Reorder

    Allows users to reorder the columns by dragging them.

    Display Value column as string

    Displays the values in the grid as strings when checked.

    Filter

    Provides a text box for filtering the alarm entries based on specific criteria.

    Display Milliseconds

    Shows the time with millisecond precision when enabled.

    Columns

    Lists all the available columns that can display in the alarm viewer grid. Users can select which columns to show or hide.

    Visible

    Shows the column in the grid when checked.

    Show in column chooser

    Makes the column available in the column chooser tool.

    Column Details

    Allows configuring specific details for each column.

    Title

    Sets the title for the selected column.

    Width

    Sets the width of the column in pixels.

    Sort

    Specifies the sorting order for the column (None, Ascending, Descending).


    Alarm Column Settings


    Expand
    titleColumns


    Columns

    Description

    AckStatus

    Shows the acknowledgment status of the alarm.

    ActiveTime_Ticks

    Displays the active time of the alarm in ticks.

    TagName

    Shows the name of the tag associated with the alarm.

    Group

    Displays the group to which the alarm belongs.

    Value

    Shows the current value of the alarm.

    AckRequired

    Indicates if acknowledgment is required.

    Condition

    Shows the condition that triggered the alarm.

    Area

    Displays the area or location related to the alarm.

    Priority

    Shows the priority level of the alarm.

    NormTime_Ticks

    Displays normalized time in ticks.

    AckTime_Ticks

    Shows the acknowledgment time in ticks.

    UserName

    Displays the name of the user who acknowledged the alarm.

    Comments

    Shows any comments related to the alarm.

    ColorFG

    Displays the foreground color for the alarm display.

    ColorBG

    Shows the background color for the alarm display.

    NotSync

    Indicates if the alarm is not synchronized.

    Level

    Shows the level of the alarm.

    Message

    Displays the message associated with the alarm.

    Duration

    Shows the duration of the alarm.

    Category

    Displays the category of the alarm.

    DateCreated_Ticks

    Shows the creation date of the alarm in ticks.

    AuxValue

    Displays an auxiliary value associated with the alarm.

    AlarmLimit

    Shows the limit that triggered the alarm.

    PreviousValue

    Displays the previous value before the alarm was triggered.

    UserFullName

    Shows the full name of the user who acknowledged the alarm.

    AuxValue2

    Displays a second auxiliary value.

    AuxValue3

    Shows a third auxiliary value.




    Customizations for Alarm window

    Touch-Sensitive Control for Alarm window

    To make the TAlarmViewer work with a touch-sensitive screen, follow these steps:

    1. Go to Scripts  Task.
    2. Double-click ClientStartup.
    3. In the CodeBehind editor, type the following C# code.


    Code Block
    @Client.DisableMultiTouch = true



    Scrolling Controls for Alarm window

    The following methods and properties were created to enable programmatic scrolling for the control:

    Methods

    Code Block
    languagec#
    //Scrolls the content upward by the specified step size.
    public void ScrollUp(double step)


    Code Block
    languagec#
    //Scrolls the content upward by the default step size of 1.
    public void ScrollUp()


    Code Block
    languagec#
    //Scrolls the content downward by the specified step size.
    public void ScrollDown(double step)


    Code Block
    languagec#
    //Scrolls the content downward by the default step size of 1.
    public void ScrollDown()

    Properties

    Code Block
    languagec#
    //Manages the visibility of the vertical scrollbar for the control.
    public ScrollBarVisibility VerticalScrollBarVisibility


    Code Block
    languagec#
    //Manages the visibility of the horizontal scrollbar for the control.
    public ScrollBarVisibility HorizontalScrollBarVisibility



    Note

    The same methods and properties are available for DataGrid Control.



    Customizing Alarm window appearance

    The following properties enable window customization for the AlarmViewer control:

    Properties

    Code Block
    languagec#
    //Flag to toggle visibility of RowSelectorPane (WPF Only).
    public bool ShowRowSelectorPane


    Code Block
    languagec#
    //Set BorderThickness for Alarm window.
    public Thickness GridBorderThickness


    Note

    The same properties are available for DataGrid Control.



    Runtime Execution

    During runtime, the AlarmViewer component displays real-time and historical alarm events as configured in the Alarms Module. Users can interact with the AlarmViewer to monitor, filter, and manage alarms effectively. The component dynamically updates to reflect the current status of alarms, providing a comprehensive view of alarm activities.

    For example, if an alarm is triggered in the “Cooling System” area, it will appear in the AlarmViewer with details such as acknowledgment status, active time, tag name, and priority. Users can acknowledge this alarm directly from the AlarmViewer interface, which will update the status of the alarm across all linked displays. Additionally, users can filter the alarms to show only high-priority events, sort the columns to view the most recent alarms first, and merge high-priority (Hi) and very high-priority (HiHi) alarms into a single view for easier management.

    The AlarmViewer also supports linking to other data sources, allowing for dynamic updates based on changes in the linked list. Users can view detailed information such as user comments and the duration of each alarm, and they can display time with millisecond precision for accurate monitoring.

    Image Added


    In this section:

    TAlarmWindow Touch-Sensitive Control

    To make the TAlarmWindow work with a touch-sensitive screen, you can open "Edit > Scripts > Tasks" and double-click on "ClientStartup". In this CodeBehind, you can type the following code in CSharp:

    Task > ClientStartup code: 

    Code Block
    @Client.DisableMultiTouch = true

    Save the script and run the project, your touch-sensitive screen will be working.

    In this section...

    Page Tree
    root@parent
    spacesV10