first version of showing the alarm in the detailed view when clicking on it in the alarms table

This commit is contained in:
guga kakhadze 2025-06-26 14:03:40 +04:00
parent 2633c2703f
commit 0abb58ffdd
13 changed files with 661 additions and 25 deletions

View File

@ -1,6 +1,18 @@
{
"custom": {},
"params": {},
"params": {
"highlightTagPath": ""
},
"propConfig": {
"params.highlightTagPath": {
"onChange": {
"enabled": null,
"script": "\n\tutils.handleTagHighlight(self.view, currentValue)\n\n\t"
},
"paramDirection": "inout",
"persistent": true
}
},
"props": {
"defaultSize": {
"height": 1028,
@ -18254,6 +18266,40 @@
"path": "Symbol-Views/Equipment-Views/Status"
},
"type": "ia.display.view"
},
{
"meta": {
"name": "FL2078_2"
},
"position": {
"height": 20.05,
"width": 19.98,
"x": 153.37,
"y": 233.80263412475585
},
"props": {
"params": {
"directionLeft": false,
"forceFaultStatus": null,
"forceRunningStatus": null,
"has_state": false,
"isHighlighted": false,
"tagProps": [
"System/MCM01/Conveyor/FL2078_2_VFD1",
"value",
"value",
"value",
"value",
"value",
"value",
"value",
"value",
"value"
]
},
"path": "Symbol-Views/Equipment-Views/Status"
},
"type": "ia.display.view"
}
],
"meta": {

View File

@ -1,6 +1,18 @@
{
"custom": {},
"params": {},
"params": {
"highlightTagPath": ""
},
"propConfig": {
"params.highlightTagPath": {
"onChange": {
"enabled": null,
"script": "\tfound \u003d utils.handleTagHighlight(self.view, currentValue)\n\tif not found:\n\t\tMCM02_upper \u003d \"Detailed-Views/MCM02 Fluid Inbound Upper\"\n\t\tsystem.perspective.navigate(view \u003d MCM02_upper, params \u003d {\u0027highlightTagPath\u0027:currentValue})\n\t\t"
},
"paramDirection": "input",
"persistent": true
}
},
"props": {
"defaultSize": {
"height": 1028,
@ -11740,6 +11752,40 @@
"path": "Symbol-Views/Equipment-Views/Status"
},
"type": "ia.display.view"
},
{
"meta": {
"name": "UL1_4"
},
"position": {
"height": 20.05,
"width": 19.98,
"x": 153.37,
"y": 233.8
},
"props": {
"params": {
"directionLeft": false,
"forceFaultStatus": null,
"forceRunningStatus": null,
"has_state": true,
"isHighlighted": false,
"tagProps": [
"System/MCM02/Conveyor/UL11_4_VFD1",
"value",
"value",
"value",
"value",
"value",
"value",
"value",
"value",
"value"
]
},
"path": "Symbol-Views/Equipment-Views/Status"
},
"type": "ia.display.view"
}
],
"meta": {

View File

@ -1,6 +1,18 @@
{
"custom": {},
"params": {},
"params": {
"highlightTagPath": ""
},
"propConfig": {
"params.highlightTagPath": {
"onChange": {
"enabled": null,
"script": "\tutils.handleTagHighlight(self.view, currentValue)"
},
"paramDirection": "input",
"persistent": true
}
},
"props": {
"defaultSize": {
"height": 1028,
@ -3218,6 +3230,40 @@
"path": "Symbol-Views/Equipment-Views/ControlCabinet"
},
"type": "ia.display.view"
},
{
"meta": {
"name": "UL1_4"
},
"position": {
"height": 20.05,
"width": 19.98,
"x": 462.25543701171875,
"y": 144.8
},
"props": {
"params": {
"directionLeft": false,
"forceFaultStatus": null,
"forceRunningStatus": null,
"has_state": true,
"isHighlighted": false,
"tagProps": [
"System/MCM02/Conveyor/UL1_4_VFD1",
"value",
"value",
"value",
"value",
"value",
"value",
"value",
"value",
"value"
]
},
"path": "Symbol-Views/Equipment-Views/Status"
},
"type": "ia.display.view"
}
],
"meta": {

View File

@ -1,6 +1,18 @@
{
"custom": {},
"params": {},
"params": {
"highlightTagPath": ""
},
"propConfig": {
"params.highlightTagPath": {
"onChange": {
"enabled": null,
"script": "\tutils.handleTagHighlight(self.view, currentValue)"
},
"paramDirection": "input",
"persistent": true
}
},
"props": {
"defaultSize": {
"height": 1028,
@ -6684,6 +6696,40 @@
"path": "Custom-Views/Area_Nav_Button"
},
"type": "ia.display.view"
},
{
"meta": {
"name": "UL21_4"
},
"position": {
"height": 20.05,
"width": 19.98,
"x": 925.26,
"y": 368.2377040863037
},
"props": {
"params": {
"directionLeft": false,
"forceFaultStatus": null,
"forceRunningStatus": null,
"has_state": true,
"isHighlighted": false,
"tagProps": [
"System/MCM03/Conveyor/UL21_4_VFD1",
"value",
"value",
"value",
"value",
"value",
"value",
"value",
"value",
"value"
]
},
"path": "Symbol-Views/Equipment-Views/Status"
},
"type": "ia.display.view"
}
],
"meta": {

View File

@ -1,6 +1,18 @@
{
"custom": {},
"params": {},
"params": {
"highlightTagPath": ""
},
"propConfig": {
"params.highlightTagPath": {
"onChange": {
"enabled": null,
"script": "\tutils.handleTagHighlight(self.view, currentValue)"
},
"paramDirection": "input",
"persistent": true
}
},
"props": {
"defaultSize": {
"height": 1028,
@ -15144,6 +15156,40 @@
"path": "Symbol-Views/Equipment-Views/JR_Button"
},
"type": "ia.display.view"
},
{
"meta": {
"name": "UL31_4"
},
"position": {
"height": 20.05,
"width": 19.98,
"x": 238.53,
"y": 229.05
},
"props": {
"params": {
"directionLeft": false,
"forceFaultStatus": null,
"forceRunningStatus": null,
"has_state": true,
"isHighlighted": false,
"tagProps": [
"System/MCM04/Conveyor/UL31_3_VFD1",
"value",
"value",
"value",
"value",
"value",
"value",
"value",
"value",
"value"
]
},
"path": "Symbol-Views/Equipment-Views/Status"
},
"type": "ia.display.view"
}
],
"meta": {

View File

@ -1,6 +1,18 @@
{
"custom": {},
"params": {},
"params": {
"highlightTagPath": ""
},
"propConfig": {
"params.highlightTagPath": {
"onChange": {
"enabled": null,
"script": "\tfound \u003d utils.handleTagHighlight(self.view, currentValue)\n\tif not found:\n\t\tMCM04_Chutes \u003d \"Detailed-Views/MCM04 Chutes\"\n\t\tsystem.perspective.navigate(view \u003d MCM04_Chutes, params \u003d {\u0027highlightTagPath\u0027:currentValue})"
},
"paramDirection": "input",
"persistent": true
}
},
"props": {
"defaultSize": {
"height": 1028,

View File

@ -1,6 +1,18 @@
{
"custom": {},
"params": {},
"params": {
"highlightTagPath": ""
},
"propConfig": {
"params.highlightTagPath": {
"onChange": {
"enabled": null,
"script": "\tutils.handleTagHighlight(self.view, currentValue)"
},
"paramDirection": "input",
"persistent": true
}
},
"props": {
"defaultSize": {
"height": 1028,
@ -17644,6 +17656,40 @@
"path": "Symbol-Views/Equipment-Views/JR_Button"
},
"type": "ia.display.view"
},
{
"meta": {
"name": "UL41_4"
},
"position": {
"height": 20.05,
"width": 19.98,
"x": 817.5041870117187,
"y": 398.6770935058594
},
"props": {
"params": {
"directionLeft": false,
"forceFaultStatus": null,
"forceRunningStatus": null,
"has_state": true,
"isHighlighted": true,
"tagProps": [
"System/MCM05/Conveyor/UL41_4_VFD1",
"value",
"value",
"value",
"value",
"value",
"value",
"value",
"value",
"value"
]
},
"path": "Symbol-Views/Equipment-Views/Status"
},
"type": "ia.display.view"
}
],
"meta": {

View File

@ -1,6 +1,18 @@
{
"custom": {},
"params": {},
"params": {
"highlightTagPath": ""
},
"propConfig": {
"params.highlightTagPath": {
"onChange": {
"enabled": null,
"script": "\tfound \u003d utils.handleTagHighlight(self.view, currentValue)\n\tif not found:\n\t\tMCM05_Chutes \u003d \"Detailed-Views/MCM05 Chutes\"\n\t\tsystem.perspective.navigate(view \u003d MCM05_Chutes, params \u003d {\u0027highlightTagPath\u0027:currentValue})"
},
"paramDirection": "input",
"persistent": true
}
},
"props": {
"defaultSize": {
"height": 1028,

View File

@ -1,6 +1,18 @@
{
"custom": {},
"params": {},
"params": {
"highlightTagPath": ""
},
"propConfig": {
"params.highlightTagPath": {
"onChange": {
"enabled": null,
"script": "\tutils.handleTagHighlight(self.view, currentValue)"
},
"paramDirection": "input",
"persistent": true
}
},
"props": {
"defaultSize": {
"height": 1028,
@ -9794,6 +9806,40 @@
"path": "Symbol-Views/Equipment-Views/JR_Button"
},
"type": "ia.display.view"
},
{
"meta": {
"name": "UL51_4"
},
"position": {
"height": 20.05,
"width": 19.98,
"x": 477.18125,
"y": 287.8645935058594
},
"props": {
"params": {
"directionLeft": false,
"forceFaultStatus": null,
"forceRunningStatus": null,
"has_state": true,
"isHighlighted": false,
"tagProps": [
"System/MCM06/Conveyor/UL51_4_VFD1",
"value",
"value",
"value",
"value",
"value",
"value",
"value",
"value",
"value"
]
},
"path": "Symbol-Views/Equipment-Views/Status"
},
"type": "ia.display.view"
}
],
"meta": {

View File

@ -1,6 +1,18 @@
{
"custom": {},
"params": {},
"params": {
"highlightTagPath": ""
},
"propConfig": {
"params.highlightTagPath": {
"onChange": {
"enabled": null,
"script": "\tutils.handleTagHighlight(self.view, currentValue)"
},
"paramDirection": "input",
"persistent": true
}
},
"props": {
"defaultSize": {
"height": 1028,
@ -14075,6 +14087,40 @@
"path": "Symbol-Views/Equipment-Views/Button"
},
"type": "ia.display.view"
},
{
"meta": {
"name": "UL61_4"
},
"position": {
"height": 20.05,
"width": 19.98,
"x": 506.78416793823243,
"y": 218.8391774749756
},
"props": {
"params": {
"directionLeft": false,
"forceFaultStatus": null,
"forceRunningStatus": null,
"has_state": true,
"isHighlighted": false,
"tagProps": [
"System/MCM07/Conveyor/UL61_3_VFD1",
"value",
"value",
"value",
"value",
"value",
"value",
"value",
"value",
"value"
]
},
"path": "Symbol-Views/Equipment-Views/Status"
},
"type": "ia.display.view"
}
],
"meta": {

View File

@ -0,0 +1,25 @@
def handleTagHighlight(view, currentValue):
tag = currentValue.value
if tag == "":
return
components = view.rootContainer.getChildren()
for child in components:
params = child.props.get("params", {})
tagProps = params.get("tagProps", {})
tagsList = list(tagProps)
if len(tagsList) == 0:
continue
tagPath = tagsList[0]
if tag == tagPath:
child.props.params["isHighlighted"] = True
system.perspective.openDock('Docked-East-VFD', params={'tagProps': tagProps})
break
return True
return False

View File

@ -13,16 +13,10 @@
}
}
},
"params": {
"page_name": "Alarms-RealTime"
},
"params": {},
"propConfig": {
"custom.activityLogger": {
"persistent": true
},
"params.page_name": {
"paramDirection": "input",
"persistent": true
}
},
"props": {
@ -488,6 +482,7 @@
],
"custom": {
"priorities": {
"critical": false,
"diagnostic": false,
"high": false,
"low": false,
@ -691,6 +686,17 @@
{
"children": [
{
"events": {
"component": {
"onRowClick": {
"config": {
"script": "\tdata \u003d self.props.selection.data\n\tif not data or len(data) !\u003d 1:\n\t return\n\t\n\trow \u003d data[0]\n\tclickedTagPath \u003d row.get(\"FullTag\", \"\")\n\tMCM \u003d row.get(\"Location\", \"\")\n\t\n\tMCM_Pages_Map \u003d {\n\t\t\"MCM01\": \"Detailed-Views/MCM01 Fluid Inbound Merges 1-4\",\n\t\t\"MCM02\": \"Detailed-Views/MCM02 Fluid Inbound Merges 5-7\",\n\t\t\"MCM03\": \"Detailed-Views/MCM03 Non Con\",\n\t\t\"MCM04\": \"Detailed-Views/MCM04 North Bulk Inbound, Fluid Outbound and Problem Solve\",\n\t\t\"MCM05\": \"Detailed-Views/MCM05 South Bulk Inbound, Fluid Outbound and Problem Solve\",\n\t\t\"MCM06\": \"Detailed-Views/MCM06 Non Con\",\n\t\t\"MCM07\": \"Detailed-Views/MCM07 Bypass\",\n\t}\n\t\n\n\tpage \u003d MCM_Pages_Map.get(MCM)\n\t\n\tif not page:\n\t return\n\t\t\n\tdevice \u003d row.get(\"Device\", \"\")\n\t\n\tif not device or not clickedTagPath:\n\t\treturn\n\n\tindex \u003d clickedTagPath.find(device)\n\tif index \u003d\u003d -1:\n\t\treturn\n\t\n\tpathToDevice \u003d clickedTagPath[:index + len(device)]\n\t\t\n\t# Navigate to target view, passing the tag to highlight\n\tsystem.perspective.navigate(view \u003d page, params \u003d {\u0027highlightTagPath\u0027:pathToDevice})\n\t\n\t\n"
},
"scope": "G",
"type": "script"
}
}
},
"meta": {
"name": "Table"
},
@ -1179,7 +1185,7 @@
},
"render": "auto",
"resizable": true,
"sort": "none",
"sort": "ascending",
"sortable": true,
"strictWidth": false,
"style": {
@ -1379,6 +1385,192 @@
"viewPath": "",
"visible": true,
"width": 80
},
{
"align": "center",
"boolean": "checkbox",
"dateFormat": "MM/DD/YYYY",
"editable": false,
"field": "FullTag",
"filter": {
"boolean": {
"condition": ""
},
"date": {
"condition": "",
"value": ""
},
"enabled": false,
"number": {
"condition": "",
"value": ""
},
"string": {
"condition": "",
"value": ""
},
"visible": "on-hover"
},
"footer": {
"align": "center",
"justify": "left",
"style": {
"classes": ""
},
"title": ""
},
"header": {
"align": "center",
"justify": "left",
"style": {
"classes": ""
},
"title": ""
},
"justify": "auto",
"nullFormat": {
"includeNullStrings": false,
"nullFormatValue": "",
"strict": false
},
"number": "value",
"numberFormat": "0,0.##",
"progressBar": {
"bar": {
"color": "",
"style": {
"classes": ""
}
},
"max": 100,
"min": 0,
"track": {
"color": "",
"style": {
"classes": ""
}
},
"value": {
"enabled": true,
"format": "0,0.##",
"justify": "center",
"style": {
"classes": ""
}
}
},
"render": "auto",
"resizable": true,
"sort": "none",
"sortable": true,
"strictWidth": false,
"style": {
"classes": "",
"display": "none"
},
"toggleSwitch": {
"color": {
"selected": "",
"unselected": ""
}
},
"viewParams": {},
"viewPath": "",
"visible": true,
"width": ""
},
{
"align": "center",
"boolean": "checkbox",
"dateFormat": "MM/DD/YYYY",
"editable": false,
"field": "Device",
"filter": {
"boolean": {
"condition": ""
},
"date": {
"condition": "",
"value": ""
},
"enabled": false,
"number": {
"condition": "",
"value": ""
},
"string": {
"condition": "",
"value": ""
},
"visible": "on-hover"
},
"footer": {
"align": "center",
"justify": "left",
"style": {
"classes": ""
},
"title": ""
},
"header": {
"align": "center",
"justify": "left",
"style": {
"classes": ""
},
"title": ""
},
"justify": "auto",
"nullFormat": {
"includeNullStrings": false,
"nullFormatValue": "",
"strict": false
},
"number": "value",
"numberFormat": "0,0.##",
"progressBar": {
"bar": {
"color": "",
"style": {
"classes": ""
}
},
"max": 100,
"min": 0,
"track": {
"color": "",
"style": {
"classes": ""
}
},
"value": {
"enabled": true,
"format": "0,0.##",
"justify": "center",
"style": {
"classes": ""
}
}
},
"render": "auto",
"resizable": true,
"sort": "none",
"sortable": true,
"strictWidth": false,
"style": {
"classes": "",
"display": "none"
},
"toggleSwitch": {
"color": {
"selected": "",
"unselected": ""
}
},
"viewParams": {},
"viewPath": "",
"visible": true,
"width": ""
}
],
"emptyMessage": {
@ -2900,7 +3092,7 @@
"$": [
"ts",
192,
1750755617512
1750866213319
],
"$ts": 1750435156149
},
@ -2908,7 +3100,7 @@
"$": [
"ts",
192,
1750755617511
1750866213319
],
"$ts": 1750436956149
}
@ -3856,7 +4048,7 @@
"$": [
"ts",
192,
1750755617512
1750866213319
],
"$ts": 1750435156149
},
@ -3864,7 +4056,7 @@
"$": [
"ts",
192,
1750755617511
1750866213319
],
"$ts": 1750436956149
},
@ -4123,7 +4315,6 @@
"contentStyle": {
"classes": "Background-Styles/Grey-Background"
},
"currentTabIndex": 2,
"menuType": "modern",
"style": {
"classes": "Background-Styles/Grey-Background"

View File

@ -1,9 +1,10 @@
{
"custom": {
"alarm_message": null,
"covert_mode": true,
"disconnected": true,
"display_icon": true,
"plc": "value",
"plc": "System",
"priority": 0,
"priority_string": "No Active Alarms",
"running": false,
@ -16,8 +17,9 @@
"directionLeft": false,
"forceFaultStatus": null,
"forceRunningStatus": null,
"isHighlighted": false,
"tagProps": [
"value",
"System/MCM01/Conveyor/UL1_3_VFD1",
"value",
"value",
"value",
@ -300,6 +302,10 @@
"paramDirection": "input",
"persistent": true
},
"params.isHighlighted": {
"paramDirection": "input",
"persistent": true
},
"params.tagProps": {
"paramDirection": "inout",
"persistent": true
@ -502,6 +508,28 @@
],
"type": "property"
}
},
"props.style.classes": {
"binding": {
"config": {
"expression": "{view.params.isHighlighted}"
},
"transforms": [
{
"fallback": "",
"inputType": "scalar",
"mappings": [
{
"input": true,
"output": "State-Styles/State101"
}
],
"outputType": "style-list",
"type": "map"
}
],
"type": "expr"
}
}
},
"props": {