Skip to main content
Search

Visualization Element: Alarm Table

Symbol:

_visu_img_alarm_table.png

Category: Alarm Manager

The element displays alarms in a list. In the element properties, you specify which information is shown. You define the appearance of the element and the variables that control the element behavior.

Tip

In online mode, you can sort an alarm table by a specific column – even in the "classic" view. Click into the column header. A small triangle indicates the current sort order (ascending, descending). Clicking the symbol reverses the order.

Sorting inside the column depends on the type of the contained information. The Priority column is sorted numerically, and the Message and Class columns alphabetically. The Value and Latch columns may contain different value types. In this case, sorting is first by type (blank, BOOL, numeric value, string) and then either numerically or alphabetically depending on the type.

Tip

If an alarm history has been created, then you can programmatically delete it at runtime. The recording starts again from the time of deletion.

For more information, see: Visualizing Alarm Management

Tip

The Alarm Table visualization element cannot be inserted into a visualization in the POU pool.

Element properties

Are all element properties available?

All properties are available only after you select the Advanced option or the All categories filter in Properties.

Element name

Example GenElemInst_1

Tip

Assign individual names for elements so that they are found faster in the element list.

Element type

Alarm table

Data Source

Selection of the device and the application where the data to be visualized and the alarms are generated

  • Remote data source that accesses the remote device and further to a remote application and transmits the alarm configuration data

    Example: _visu_icon_data_sources.png DataSource_A

    Under the (now visible) property application the remote application is displayed as configured in the data source.

    Example: _cds_icon_application.png App_A

    Note

    If the data source is accessed symbolically using a symbol file (CODESYS Symbolic), then the symbol file required for this and the associated project must be saved in the same folder.

  • Local application under which the alarm configuration is located

    Example: _cds_icon_application.png <local application>

For more information see: Object: Data Source

Alarm Configuration

Alarm groups

Opens the Select Alarm Group dialog where you define the alarm groups that you want to display

Priority from

Lowest priority for alarm display (0 to 255)

Priority to

Highest priority for alarm display (0 to 255)

Alarm classes

Opens the Select Class Group dialog where you define the alarm classes that you want to display

Filter by latch 1

The generated alarms (previous and current) can be filtered by the contents of Latch variable 1, which is specified in the configuration of the alarm group. In Filter type, you define whether or not the filtering is performed by a string value or a numerical value.

  • Filter variable: Indicates what the alarms are filtered by.

    Possible entries:

    • Application variable of data type STRING or WSTRING

      Examples: PLC_PRG.strFilterVariable, 'STRING'

    • Directly a literal value

  • Filter type: Integer value that determines by which criteria the latch variable value is used for filtering.

    Possible entries:

    • Numeric variable from the application

      Example: PLC_PRG.diFilterType

    • Directly a value

      Example: 2

      Possible values

      • 0: No filtering

      • 1: Filter by alarms whose latch variable 1 contains the string specified in Filter variable.

        Example: Filter variable contains Error 1, latch variable 1 of various alarms of type STRING and has the value Error 1.

        Result: Only these alarms are displayed.

      • 2: Filter by alarms whose latch variable 1 contains the typed literal specified in filter variable according to IEC 61131-3.

        Example: T#1h2s, DINT#15, REAL#1.5, FALSE

      • 3: Filtering for alarms whose latch variable 1 contains a numeric value which corresponds to the specified LINT literal. The exact type is not relevant here. Therefore, the value of the latch variables has to be in the range of 9,223,372,036,854,775,808 to 9,223,372,036,854,775,807.

      • All other values: The behavior is not defined and can change in the future.

Filter by time range

The generated alarms (remote, historical, local) can be displayed for a specified time range.

Note

You use the Filter type to define whether filtering by time range is enabled or disabled.

  • Filter variable, from: Variable of data type DT or DATE_AND_TIME for the start time that the alarms are displayed

    Example: PLC_PRG.filterTimeFrom

  • Filter variable, to: Variable of data type DT or DATE_AND_TIME for the end time that the alarms are displayed.

    Example: PLC_PRG.filterTimeTo

  • Filter type: Variable of integer data type that determines whether Filter by time range is enabled or disabled

    Possible values:

    • 1: Filtering is enabled

    • 0: Filtering is disabled

General table configuration

Show row header

standard icon: Display of the row number at the beginning of the row.

Show column header

standard icon: Display of the column heading as defined in Column heading

Row height

Height of the table rows (in pixels)

Row header width

Width of the line header (in pixels)

Scroll bar size

Width of the scroll bar when it runs vertically. Width of the scroll bar when it runs horizontally

Specified in pixels

Automatic line break for alarm message

standard icon: If the message text is too long, then the end of the line is wrapped.

_cds_icon_option_deactivated.png: If the message text is too long, then the end of the column will be truncated.

Internationalization (format strings)

Options for specifying the format string

  • As a fixed string

    Example: yyyy-dd-MM

  • As a reference to a text list entry <text list name>.<ID>

    A format string is defined there for each language.

    _visu_elem_prop_formatstring_ref_to_tlentry.png

Date format

Example: DateTime.AlarmDate

Time format

Example: DateTime.AlarmTime

Columns: Column [<n>]

By default, columns [0] and [1] are preconfigured with Timestamp and Message.

Note

Animations (dynamic text, font variables), texts, and tooltips are not supported.

Create new

Adds another column

Delete

Deletes the selected column

Column header

The default header is set and changed here by specifying a new text.

Use text alignment in title

standard icon: The text in the column header is aligned according to the current definition in Text alignment.

_cds_icon_option_deactivated.png: The text in the column header is centered.

Width

Width of the column (in pixels)

Type of data

Note

Time stamp

For use in a TargetVisu or WebVisu, you can control the date and time format using global string variables of the Alarmmanager.library:

AlarmGlobals.g_sDateFormat

Example: AlarmGlobals.g_sDateFormat := 'MM.yyyy';

AlarmGlobals.g_sTimeFormat

Example: AlarmGlobals.g_sTimeFormat := 'HH:mm';

Possible information which can be displayed in the column:

  • Bitmap

  • Time stamp: Date and time of the last status change of the alarm.

  • Time stamp active: Date and time of the last activation of the alarm

  • Time stamp inactive: Date and time of the last deactivation of the alarm

  • Time stamp acknowledge: Date and time of the last acknowledgment

  • Value: Actual value of the expression

  • Message: Output of the message text

  • Priority: Alarm priority

  • Class: Alarm Class

  • State: Alarm state

  • Remote device:

  • Acknowledge comment: Comment when acknowledging

  • Confirm User ID: User ID when acknowledging

  • Latch variable <n>: Value of the selected latch variables

Text alignment

Alignment of the text in this column

  • Left

  • Centered

  • Right

Color settings

Activate color settings

Boolean variable for enabling and disabling the color settings defined here

Example: PLC_PRG.bColorSettings

Cell fill color

Color variable

Variable for specifying the cell fill color

Example: dwCellColor (hexadecimal color definition: 16#TTRRGGBB)

Use color also for column header:

standard icon: The color defined by Color variable is also used in the column header.

Text color

Color variable

Variable for defining the text color in the column

Example: dwTextColor (hexadecimal color definition: 16#TTRRGGBB)

Use color also for column header

_cds_icon_option_deactivated.png: The color defined by Color variable is also used in the column header.

Tip

You can programmatically switch the local time zone of the system time to universal time (UTC).

When the variable VisuElems.Visu_DateTime.DisplayUTC is set to TRUE, the system time is displayed as universal time (UTC). By default, the variable VisuElems.Visu_DateTime.DisplayUTC is set to FALSE so that the system time is displayed in the local time zone.

For the display of date and time values, you can extend the respective format string with the time zone code Z. For an output in local system time, the offset is then displayed in universal time (UTC). For example, dd:MM:yyyy HH:mm:ss:ms:Z outputs 01.08.2021 12:00:00:001:+02:00. When universal time (UTC) is displayed, the UTC code is also displayed. 01.08.2021 10:00:00:001:Z

Position

The position defines the location and size of the element in the visualization window. This is based on the Cartesian coordinate system. The origin is located in the upper left corner of the window. The positive horizontal X-axis runs to the right. The positive vertical Y-axis runs downwards.

X

The X-coordinate (in pixels) of the upper left corner of the element

Example: 10

Y

The Y-coordinate (in pixels) of the upper left corner of the element

Example: 10

Width

Specified in pixels

Example: 150

Height

Specified in pixels

Example: 30

Tip

You can also change the values by dragging the box _visu_icon_position_element.png symbols to other positions in the editor.

Text properties

The properties get fixed values for the text properties and act on the texts configured in Texts → Text or Texts → Tooltip.

Font

Example: Default

_cds_icon_three_dots.png: The Font dialog opens.

_cds_icon_arrow_down.png: List box with style fonts

Font color

Example: Black

_cds_icon_three_dots.png: The Color dialog opens.

_cds_icon_arrow_down.png: List box with style colors

Transparency

Integer (value range from 0 to 255)

The transparent value determines the transparency of the respective color.

255: The color is opaque.

0: The color is completely transparent.

Note

If the color is a style color and already has a transparency value, then this property is write-protected.

Selection

Selection color

Fill color of the selected row

Selection font color

Font color of the selected row

Frame around selected cells

standard icon: A frame is drawn around the selected cells at runtime.

Variable for alarm group

Name of the affected alarm group (STRING, WSTRING)

Variable for alarm ID

Alarm ID of the affected alarm group (STRING, WSTRING)

Variable for selected row

Index of the selected alarm line (0-based)

The index can be read and written; integer data type

Variable for valid row selection

TRUE: An alarm line is selected

FALSE: The selection is invalid, for example, for an empty alarm table or when an alarm is not selected yet.

Variable for alarm information

Information about the selected alarm of type AlarmSelectionInfo

For easy usage, the function block AlarmSelectionInfoDefault is provided. This FB fills the structure with the memory for 10 messages and 10 latch variables.

Example: myAlarmSelectionInfoDefault.AlarmSelectionInfo

. The following information is available:
  • sAlarmgroup

  • uialarmID

  • timeStampActive

  • timeStampInactive

  • timeStampAcknowledge

  • timeStampLast

  • paLatchVariables

  • iLatchVariablesCount

  • papwsAlarmMessages

  • dwAlarmMessageTextBufferSize

  • iAlarmMessagesCount

  • iSelectionChangedCounter

Control variables

Boolean variables are defined here for executing specific actions in the table can be executed at runtime.

Acknowledge selected

Variable (BOOL)

Example: PLC_PRG.bAckSelectedAlarms

If the assigned variable is TRUE, then the selected alarm is acknowledged.

Acknowledge all visible

Variable (BOOL)

Example: PLC_PRG.bAckVisibleAlarms

If the assigned variable is TRUE, then all alarms are acknowledged that are visible in the alarm table.

Acknowledge all

Variable (BOOL)

Example: bAck

If the assigned variable is TRUE, then all alarms are acknowledged, even those which are not visible.

Warning: All alarms, including those that are not visible, are acknowledged.

History

Variable (BOOL)

Example: PLC_PRG.bShowHistory

If the assigned variable is TRUE, then the history alarms are displayed in addition to the active alarms. In the classic view, the same sort options apply as in "normal" mode.

Note

Acknowledgement is not possible in this view.

Freeze scrolling position

Variable (BOOL)

Example: PLC_PRG.bFreezeScrollPosition

If the assigned variable is TRUE, then the scroll position set in the History view is retained, even if a new alarm is active. If not, then the scroll position jumps to the first table row (the newest alarm).

Count alarms

Variable (integer data type)

Example: PLC_PRG.iNumberOfAlarms.

Number of alarms that are currently displayed in the alarm table. Defined by the alarm table.

Count visible rows

Variable (integer data type)

Example: PLC_PRG.iNumberVisibleLines

Number of alarms that can be displayed on one page of the alarm table. Defined by the alarm table.

Current scroll index

Variable (integer data type)

Example: PLC_PRG.iScrollIndex

The index of the first visible row if the alarm table (0-based). The variable can be read and written.

Current sort column

Variable (integer data type)

Example: PLC_PRG.iColSort

The variable contains a value of the enumeration "VisuElemsAlarm.VisuEnumAlarmDataType". This value determines the column that sorts the alarm table.

Variable for the sorting direction

Variable (BOOL)

Example: PLC_PRG.xSortAscending

The variable determines the sort order for the entries in the alarm table (TRUE: ascending; FALSE: descending).

Acknowledge comment

Variable (STRING, WSTRING)

Variable which can contain a comment to acknowledge alarms. This is saved together with the current user in the database, whereby the user is determined automatically.

Note: Up to 255 characters are possible.

Tip

You can also use the Add Elements for Alarm Acknowledgment command to define buttons with predefined control variables.

Center

The properties contain fixed values for the coordinates of the point of rotation. The rotation point is displayed in the editor as the _visu_icon_center_point.png symbol and is used as the center for rotation and scaling.

Tip

You can also change the values by dragging the _visu_icon_center_point.png symbol to another position in the editor.

X

X-coordinate of the point of rotation

Y

Y-coordinate of the point of rotation

Absolute movement

The properties can be assigned to IEC variables for controlling the position of the element dynamically. The reference point is the upper left corner of the element. At runtime, the entire element is moved.

Movement

X

  • Variable (numeric data type) for the X-position (in pixels)

    Example: PLC_PRG.iPos_X

Increasing this value at runtime moves the element to the right.

Y

Increasing this value at runtime moves the element downwards.

Rotation

Variable (numeric data type) for the angle of rotation (in degrees)

Example: PLC_PRG.iAngle1

The midpoint of the element rotates at the Center point. This rotation point is shown as the _visu_icon_center_point.png symbol.

At runtime, the alignment of the element remains the same with respect to the coordinate system of the visualization. Increasing the value rotates the element to the right.

_visu_img_prp_rotation.png

Interior rotation

Variable (numeric data type) for the angle of rotation (in degrees)

Example: PLC_PRG.iAngle2

At runtime, the element rotates about the point of rotation specified in Center according to the value of the variable. In addition, the alignment of the element rotates according to the coordinate system of the visualization. Increasing the value in the code rotates clockwise.

The rotation point is shown as the _visu_icon_center_point.png symbol.

Note

If a static angle of rotation is specified in the Position → Angle property, then the static angle of rotation is added to the variable angle of rotation (offset) when the visualization is executed.

_visu_img_prp_inner_rotation.png

Tip

You can combine the variables to a Unit conversion.

Tip

The X, Y, Rotation, and Interior rotation properties are supported by the "Client Animation" functionality.

State variables

The variables control the element behavior dynamically.

Invisible

Variable (BOOL) for toggling the visibility of the element

TRUE: The element is not visible at runtime.

Tip

The Invisible property is supported by the "Client Animation" functionality.

Scrolling Variables

These variables can be used to control the scrolling of the alarm table either programmatically or via the input configuration.

Scrolling begin

Variable (BOOL)

Example: PLC_PRG.bScrollingBegin

In the case of a rising edge of the variable, the system scrolls to the beginning.

Scrolling single up

Variable (BOOL)

Example: PLC_PRG.bScrollingSingleUp

In the case of a rising edge of the variable, the system scrolls up one position.

Scrolling single down

Variable (BOOL)

Example: PLC_PRG.bScrollingSingleDown

In the case of a rising edge of the variable, the system scrolls down one position.

Scrolling page up

Variable (BOOL)

Example: PLC_PRG.bScrollingPageUp

In the case of a rising edge of the variable, the system scrolls up one page.

Scrolling page down

Variable (BOOL)

Example: PLC_PRG.bScrollingPageDown

In the case of a rising edge of the variable, the system scrolls down one page.

Scrolling end

Variable (BOOL)

Example: PLC_PRG.bScrollingEnd

In the case of a rising edge of the variable, the system scrolls to the end.

Animation

Tip

These properties are available only when you have selected the Support client animations and overlay of native elements option in the Visualization Manager.

Animation duration

Variable for the duration (in milliseconds) in which the element runs an animation

  • Variable (integer value)

    Example: Menu.tContent with VAR tContent : INT := 500; END_VAR

  • Integer literal

    Example: 500

. Animatable properties
  • Absolute movement, Movement, X, Y

  • Absolute movement, Rotation

  • Absolute movement, Interior rotation

  • Absolute movement, Exterior rotation

The animated movement is executed when at least one value of an animatable property has changed. The movement then executed is not jerky, but is smooth within the specified animation duration. The visualization element travels to the specified position while rotating dynamically. The transitions are smooth.

Move to foreground

Variable (BOOL) for setting the element in the foreground

TRUE: At runtime, the visualization element is displayed in the foreground.

FALSE: At runtime, the visualization element is displayed in the layer where it was inserted in the visualization editor.

Example: bIsInForeground with VAR bIsInForeground : BOOL := FALSE; END_VAR

Access Rights

Note

Available only when a user management is set up for visualization.

Access Rights button

Opens the Access Rights dialog. There you can edit the access privileges for the element.

. Status messages:
  • Not set. Full rights.: Access rights for all user groups : operable

  • Rights are set: Limited rights: Access is restricted for at least one group.