OAProfessor

Deep OA Product Insight

User Tools

Site Tools


alertfiltering

Most of the time people like the concept that the alert banner or the alarm screen (AEScreen) shows the most recent alarms for the entire system. What if you wanted to see only alarms from a certain system in a distributed network? This is really very easy, there are internal data points under the DPT: _AESProperties.

To change the system name:  AESdp.Both.Systems.Selections = "System1"
To filter on data points:  AESdp.Alerts.Filter.DpList = "ExampleDP*.**"

The trick is to know which DP to write the filter strings! There could be 100 DPs of this type in your system. The system will create at least two for each UI manager number that connects to the server and the alarm viewing object is visible. Furthermore, the built-in alert screen is different from the alert banner, which may also be different if you have embedded an AlarmRow on any screen. Let's understand how these files are named:

_AESPropertiesRT - is the general name for the runtime data point.

_AESPropertiesRT_?_WinCC_OA-AES_Bot and _AESPropertiesRT_?_WinCC_OA-AES_Top represent the full alarm panel where the ? is the UI Manager number for the connected UI. If you have ever opened the “Alarm and Events Screen” you will notice that alerts are on the top, the events are on the bottom. Depending on what you want to filter, be sure to pick _Top for alerts, _Bot for events.

_AESPropertiesRT_?_WinCC_OA-AES_Top gives us another clue as the naming system. When you open the full alarm panel, you can see at the top that the module name is: “WinCC_OA-AES”. This applies to the other names you see in the _AESProperties data type. _AESPropertiesRTRow_?_infoModule_1_Top is from a standard topology where “infoModule” is the module name for the alarm banner.

_AESPropertiesRTRow_?_infoModule_1_Top has some more information that needs to be decoded. The “Row” part of the name is the object displayed in the module. From the GEDI Catalog for All Objects, in the STD_PANELS tab, you will find AESRow object. This is what is embedded in the infoModule and sized to display multiple rows of alert information.

_AESPropertiesRTRow_?_infoModule_1_Top - lastly, the “_1_Top” has the number of the monitor! If you have a multi-monitor system and you can display the same panel on more than one monitor, the last number specifies the monitor number (starting at 1).

Now that you understand the DP names, let's write a little code to change the alarm banner based on the area you are viewing.

string AESdp;
  AESdp = "_AESPropertiesRTRow_"+myUiNumber()+"_infoModule_1_Top";
  dpSet(AESdp+".Alerts.Filter.DpList", "TC_*.**");                 // demo project traffic tags
alertfiltering.txt · Last modified: 2021/10/26 18:25 by toddmalone

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki