Structure alarms by area or system zone.

ReferenceModulesAlarmsUIItems | Groups | Areas | Global | Monitor


Alarm Areas (Reference)  provide hierarchical organization for alarm management in your FrameworX solution, Alarm Areas enable:

  • Hierarchical grouping of alarms
  • Plant or process area organization
  • Filtering and navigation in displays
  • Area-based acknowledgment
  • Responsibility assignment via auxiliary values

Areas create a tree structure for organizing alarms by location, system, or functional grouping.


Configuration Properties

PropertyDescriptionRequired
NameArea identifierYes
ParentParent area for hierarchyNo (root level)
DescriptionArea purpose and detailsNo
AuxValueAdditional information (e.g., responsible team)No
EnabledEnable/disable entire areaYes

Creating Alarm Areas

  1. Navigate to Alarms → Areas
  2. Click Plus icon
  3. Enter Name
  4. Select Parent for hierarchy (leave blank for root)
  5. Add Description
  6. Press Enter to save

Hierarchical Structure

Example plant hierarchy:

  • Plant
    • Production 
      • Line 1
      • Lline 2
      • Line 3
    • Utilities
      • Power
      • Water
      • HAVC
    • Storage
      • RawMaterials
      • FinishedGoods

Configure AlarmItems:

AlarmItem.Area = "Plant.Production.Line1"

Using Auxiliary Values

Assign responsibility or metadata:

Area: Utilities.Power
AuxValue: "Electrical Team"

Area: Production.Line1  
AuxValue: "Shift A Supervisor"

Access in scripts:

csharp

string responsible = @Alarm.Area.Utilities.Power.AuxValue;
// Returns: "Electrical Team"

Area-Based Operations

Acknowledge by Area

csharp

// Acknowledge all alarms in Production area
@Alarm.Area.Production.AckAll();

// Acknowledge specific sub-area
@Alarm.Area.Production.Line1.AckAll();

Filter Alarms

csharp

// Get active alarms for area
var productionAlarms = @Alarm.Area.Production.ActiveAlarms;

// Count alarms in area
int utilityCount = @Alarm.Area.Utilities.AlarmCount;

Enable/Disable Areas

csharp

// Disable all alarms in maintenance area
@Alarm.Area.Storage.Enabled = false;

Display Integration

AlarmAreas work with display controls for visualization:

AlarmViewer Filtering

Filter display to show only specific areas:

  • Set AlarmViewer.AreaFilter = "Production.Line1"
  • Users see only relevant alarms

Area Navigation Tree

Use AlarmArea control for hierarchical navigation:

  • Tree view of all areas
  • Click to filter associated alarms
  • Visual indicators for active alarms per area

Common Hierarchies

By Location

  • Site
    • Building_1
      • Floor_1
      • Floor_2
    • Building_B
      • Floor_1
      • Floor_2

By Function

  • Operations
    • Process
    • Quality
    • Safety

By System

  •  PlantSystems
    • FeedSystem
    • ReactorSystem
    • ProductSystem



Runtime Namespace

Access areas programmatically:

csharp

// Navigate hierarchy
var area = @Alarm.Area["Plant.Production.Line1"];

// Get area properties
string areaName = area.Name;
string responsible = area.AuxValue;
bool isEnabled = area.Enabled;

// Area statistics
int activeCount = area.ActiveAlarmCount;
int unackedCount = area.UnacknowledgedCount;

// Area operations
area.AckAll();           // Acknowledge all
area.Enabled = false;    // Disable area

Best Practices Checklist

  • Match plant structure - Mirror physical or logical layout
  • Consistent naming - Use standard naming conventions
  • Limit depth - 3-4 levels maximum for usability
  • Group functionally - Related equipment in same area
  • Document responsibility - Use AuxValue for team assignments
  • Plan hierarchy early - Harder to restructure later
  • Test filtering - Verify displays show correct areas

Troubleshooting

Alarms not appearing in area:

  • Verify Area property in AlarmItem
  • Check area name spelling/path
  • Confirm area is Enabled

Cannot acknowledge by area:

  • Check user permissions
  • Verify AlarmGroup.AckRequired
  • Confirm alarms are active

Area tree not showing:

  • Verify Parent relationships
  • Check for circular references
  • Confirm root areas have no Parent

In this section...