From 49a39bc0d4d1e94e6540de9eecf251efd2fefb88 Mon Sep 17 00:00:00 2001 From: beka makharadze Date: Tue, 8 Jul 2025 19:49:55 +0400 Subject: [PATCH 1/6] MTN6-25 --- .../views/Main-Views/CommandControl/view.json | 1167 +---------------- .../CommandControlActions/view.json | 293 ++++- .../CommandControlStatus/view.json | 173 ++- .../ControllerStatus/view.json | 164 +-- 4 files changed, 416 insertions(+), 1381 deletions(-) diff --git a/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/Main-Views/CommandControl/view.json b/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/Main-Views/CommandControl/view.json index ec5ac7b..ed84ea5 100644 --- a/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/Main-Views/CommandControl/view.json +++ b/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/Main-Views/CommandControl/view.json @@ -1,23 +1,23 @@ { "custom": { - "PLCs": "{\n \"FSC1\": [\"FSC1\"],\n \"FSC2\": [\"FSC2\"],\n \"FSC_Cells\": [\"FSC_Cells\"],\n \"FSC_Induct_1-4\": [\"FSC_Induct_1-4\"],\n \"FSC_Induct_5-8\": [\"FSC10\"],\n \"PLC01\": [\"PLC01\"],\n \"PLC02\": [\n \"PLC02\",\n \"PLC98\"\n ],\n \"PLC03\": [\"PLC03\"],\n \"PLC06\": [\n \"PLC06\",\n \"PLC07\"\n ],\n \"PLC08\": [\n \"PLC08\",\n \"PLC99\"\n ],\n \"PLC09\": [\"PLC09\"],\n \"PLC09_Receiving2\": [\"PLC09_Receiving2\"],\n \"PLC09_Receiving3\": [\"PLC09_Receiving3\"],\n \"PLC1000\": [\"PLC1000\"],\n \"PLC1000_Receiving4\": [\"PLC1000_Receiving4\"],\n \"PLC1301\": [\"ARSAW1301\"],\n \"PLC1302\": [\"ARSAW1302\"],\n \"PLC1303\": [\"ARSAW1303\"],\n \"PLC1304\": [\"ARSAW1304\"],\n \"PLC1305\": [\"ARSAW1305\"],\n \"PLC1306\": [\"ARSAW1306\"],\n \"PLC1307\": [\"ARSAW1307\"],\n \"PLC1308\": [\"ARSAW1308\"],\n \"PLC1309\": [\"ARSAW1309\"],\n \"PLC1310\": [\"ARSAW1310\"],\n \"PLC1311\": [\"ARSAW1311\"],\n \"PLC1312\": [\"ARSAW1312\"],\n \"PLC13_SC1\": [\"PLC13\"],\n \"PLC13_SC2\": [\"PLC13_SC2\"],\n \"PLC14\": [\"PLC14\"],\n \"PLC1501\": [\"ARSAW1501\"],\n \"PLC1502\": [\"ARSAW1502\"],\n \"PLC1503\": [\"ARSAW1503\"],\n \"PLC1504\": [\"ARSAW1504\"],\n \"PLC1505\": [\"ARSAW1505\"],\n \"PLC1506\": [\"ARSAW1506\"],\n \"PLC1507\": [\"ARSAW1507\"],\n \"PLC1508\": [\"ARSAW1508\"],\n \"PLC1509\": [\"ARSAW1509\"],\n \"PLC1510\": [\"ARSAW1510\"],\n \"PLC1511\": [\"ARSAW1511\"],\n \"PLC1512\": [\"ARSAW1512\"],\n \"PLC15_SC1\": [\"PLC15\"],\n \"PLC15_SC2\": [\"PLC15_SC2\"],\n \"PLC16\": [\"PLC16\"],\n \"PLC20_Tote1-3\": [\"PLC20\"],\n \"PLC20_Tote4-8\": [\"PLC20_Tote4-8\"],\n \"PLC21_22\": [\n \"PLC21\",\n \"PLC22\"\n ],\n \"PLC23\": [\"PLC23\"],\n \"PLC24\": [\n \"PLC24\",\n \"PLC97\"\n ],\n \"PLC25\": [\"PLC25\"],\n \"PLC26\": [\"PLC26\"],\n \"PLC27\": [\"PLC27\"],\n \"PLC30\": [\"PLC30\"],\n \"PLC31\": [\"PLC31\"],\n \"PLC32\": [\"PLC32\"],\n \"PLC60\": [\"PLC60\"],\n \"PLC61\": [\"PLC61\"],\n \"PLC69\": [\"PLC69\"],\n \"PLC70\": [\n \"PLC70\",\n \"PLC71\"\n ],\n \"PLC80_81_82\": [\n \"PLC80\",\n \"PLC81\",\n \"PLC82\"\n ]\n}", + "PLCs": "{ \"MCM07 Bypass\": [ \"MCM07\" ], \t\"MCM06 Non Con\": [ \"MCM06\" ],\t \t\"MCM05 South Bulk Inbound, Fluid Outbound and Problem Solve\": [ \"MCM05\" ],\t \t\"MCM04 North Bulk Inbound, Fluid Outbound and Problem Solve\": [ \"MCM04\" ], \t\"MCM03 Non Con\": [ \"MCM03\" ], \t\"MCM02 Fluid Inbound Merges 5-7\": [ \"MCM02\" ], \t\"MCM01 Fluid Inbound Merges 1-4\": [ \"MCM01\" ]}", "activityLogger": { "alt_pageid": "command_control", "start_time": { "$": [ "ts", 192, - 1715227222179 + 1751987721218 ], - "$ts": 1715227222179 + "$ts": 1751987721218 } }, "devices": { - "ARSAW1301": { - "area": "AR FLOOR/ARSAW\r\r", - "name": "ARSAW1301", + "MCM01": { + "area": "Fluid Inbound Merges 1-4", + "name": "MCM01", "tagProps": [ - "ARSAW1301", + "MCM01", "value", "value", "value", @@ -29,11 +29,11 @@ "value" ] }, - "ARSAW1302": { - "area": "AR FLOOR/ARSAW\r\r", - "name": "ARSAW1302", + "MCM02": { + "area": "Fluid Inbound Merges 5-7", + "name": "MCM02", "tagProps": [ - "ARSAW1302", + "MCM02", "value", "value", "value", @@ -45,11 +45,11 @@ "value" ] }, - "ARSAW1303": { - "area": "AR FLOOR/ARSAW\r\r", - "name": "ARSAW1303", + "MCM03": { + "area": "Non Con Merge", + "name": "MCM03", "tagProps": [ - "ARSAW1303", + "MCM03", "value", "value", "value", @@ -61,11 +61,11 @@ "value" ] }, - "ARSAW1304": { - "area": "AR FLOOR/ARSAW\r\r", - "name": "ARSAW1304", + "MCM04": { + "area": "South Bulk Inbound, Fluid Outbound and Problem Solve", + "name": "MCM04", "tagProps": [ - "ARSAW1304", + "MCM04", "value", "value", "value", @@ -77,11 +77,11 @@ "value" ] }, - "ARSAW1305": { - "area": "AR FLOOR/ARSAW\r\r", - "name": "ARSAW1305", + "MCM05": { + "area": "North Bulk Inbound, Fluid Outbound and Problem Solve", + "name": "MCM05", "tagProps": [ - "ARSAW1305", + "MCM05", "value", "value", "value", @@ -93,11 +93,11 @@ "value" ] }, - "ARSAW1306": { - "area": "AR FLOOR/ARSAW\r\r", - "name": "ARSAW1306", + "MCM06": { + "area": "Non Con Sorters", + "name": "MCM06", "tagProps": [ - "ARSAW1306", + "MCM06", "value", "value", "value", @@ -109,1003 +109,11 @@ "value" ] }, - "ARSAW1307": { - "area": "AR FLOOR/ARSAW\r\r", - "name": "ARSAW1307", + "MCM07": { + "area": "Bypass", + "name": "MCM07", "tagProps": [ - "ARSAW1307", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "ARSAW1308": { - "area": "AR FLOOR/ARSAW\r\r", - "name": "ARSAW1308", - "tagProps": [ - "ARSAW1308", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "ARSAW1309": { - "area": "AR FLOOR/ARSAW\r\r", - "name": "ARSAW1309", - "tagProps": [ - "ARSAW1309", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "ARSAW1310": { - "area": "AR FLOOR/ARSAW\r\r", - "name": "ARSAW1310", - "tagProps": [ - "ARSAW1310", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "ARSAW1311": { - "area": "AR FLOOR/ARSAW\r\r", - "name": "ARSAW1311", - "tagProps": [ - "ARSAW1311", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "ARSAW1312": { - "area": "AR FLOOR/ARSAW\r\r", - "name": "ARSAW1312", - "tagProps": [ - "ARSAW1312", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "ARSAW1501": { - "area": "AR FLOOR/ARSAW\r\r", - "name": "ARSAW1501", - "tagProps": [ - "ARSAW1501", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "ARSAW1502": { - "area": "AR FLOOR/ARSAW\r\r", - "name": "ARSAW1502", - "tagProps": [ - "ARSAW1502", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "ARSAW1503": { - "area": "AR FLOOR/ARSAW\r\r", - "name": "ARSAW1503", - "tagProps": [ - "ARSAW1503", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "ARSAW1504": { - "area": "AR FLOOR/ARSAW\r\r", - "name": "ARSAW1504", - "tagProps": [ - "ARSAW1504", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "ARSAW1505": { - "area": "AR FLOOR/ARSAW\r\r", - "name": "ARSAW1505", - "tagProps": [ - "ARSAW1505", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "ARSAW1506": { - "area": "AR FLOOR/ARSAW\r\r", - "name": "ARSAW1506", - "tagProps": [ - "ARSAW1506", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "ARSAW1507": { - "area": "AR FLOOR/ARSAW\r\r", - "name": "ARSAW1507", - "tagProps": [ - "ARSAW1507", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "ARSAW1508": { - "area": "AR FLOOR/ARSAW\r\r", - "name": "ARSAW1508", - "tagProps": [ - "ARSAW1508", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "ARSAW1509": { - "area": "AR FLOOR/ARSAW\r\r", - "name": "ARSAW1509", - "tagProps": [ - "ARSAW1509", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "ARSAW1510": { - "area": "AR FLOOR/ARSAW\r\r", - "name": "ARSAW1510", - "tagProps": [ - "ARSAW1510", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "ARSAW1511": { - "area": "AR FLOOR/ARSAW\r\r", - "name": "ARSAW1511", - "tagProps": [ - "ARSAW1511", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "ARSAW1512": { - "area": "AR FLOOR/ARSAW\r\r", - "name": "ARSAW1512", - "tagProps": [ - "ARSAW1512", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "FSC1": { - "area": "/\r\r", - "name": "FSC1", - "tagProps": [ - "FSC1", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "FSC10": { - "area": "OUTBOUND/FSC\r\r", - "name": "FSC10", - "tagProps": [ - "FSC10", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "FSC2": { - "area": "/\r\r", - "name": "FSC2", - "tagProps": [ - "FSC2", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "FSC_Cells": { - "area": "/\r\r", - "name": "FSC_Cells", - "tagProps": [ - "FSC_Cells", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "FSC_Induct_1-4": { - "area": "/\r\r", - "name": "FSC_Induct_1-4", - "tagProps": [ - "FSC_Induct_1-4", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "PLC01": { - "area": "OUTBOUND/SHIP\r\r", - "name": "PLC01", - "tagProps": [ - "PLC01", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "PLC02": { - "area": "OUTBOUND/SHIP\r\r", - "name": "PLC02", - "tagProps": [ - "PLC02", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "PLC03": { - "area": "OUTBOUND/KO \u0026 REJECT\r\r", - "name": "PLC03", - "tagProps": [ - "PLC03", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "PLC06": { - "area": "OUTBOUND/TOTE ROUTER\r\r", - "name": "PLC06", - "tagProps": [ - "PLC06", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "PLC07": { - "area": "OUTBOUND/TOTE ROUTER\r\r", - "name": "PLC07", - "tagProps": [ - "PLC07", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "PLC08": { - "area": "OUTBOUND/TOTE FEED\r\r", - "name": "PLC08", - "tagProps": [ - "PLC08", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "PLC09": { - "area": "INBOUND/RECEIVING\r\r", - "name": "PLC09", - "tagProps": [ - "PLC09", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "PLC09_Receiving2": { - "area": "/\r\r", - "name": "PLC09_Receiving2", - "tagProps": [ - "PLC09_Receiving2", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "PLC09_Receiving3": { - "area": "/\r\r", - "name": "PLC09_Receiving3", - "tagProps": [ - "PLC09_Receiving3", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "PLC1000": { - "area": "INBOUND/RECEIVING\r\r", - "name": "PLC1000", - "tagProps": [ - "PLC1000", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "PLC1000_Receiving4": { - "area": "/\r\r", - "name": "PLC1000_Receiving4", - "tagProps": [ - "PLC1000_Receiving4", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "PLC13": { - "area": "AR FLOOR/ARSAW P2\r\r", - "name": "PLC13", - "tagProps": [ - "PLC13", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "PLC13_SC2": { - "area": "/\r\r", - "name": "PLC13_SC2", - "tagProps": [ - "PLC13_SC2", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "PLC14": { - "area": "/\r\r", - "name": "PLC14", - "tagProps": [ - "PLC14", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "PLC15": { - "area": "AR FLOOR/ARSAW P3\r\r", - "name": "PLC15", - "tagProps": [ - "PLC15", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "PLC15_SC2": { - "area": "/\r\r", - "name": "PLC15_SC2", - "tagProps": [ - "PLC15_SC2", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "PLC16": { - "area": "AR FLOOR/PICK TO REBIN P3\r\r", - "name": "PLC16", - "tagProps": [ - "PLC16", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "PLC20": { - "area": "OUTBOUND/AFE1 TOTE 1-3\r\r", - "name": "PLC20", - "tagProps": [ - "PLC20", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "PLC20_Tote4-8": { - "area": "/\r\r", - "name": "PLC20_Tote4-8", - "tagProps": [ - "PLC20_Tote4-8", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "PLC21": { - "area": "OUTBOUND/AFE TRAY ROUTER\r\r", - "name": "PLC21", - "tagProps": [ - "PLC21", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "PLC22": { - "area": "OUTBOUND/AFE TRAY ROUTER\r\r", - "name": "PLC22", - "tagProps": [ - "PLC22", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "PLC23": { - "area": "OUTBOUND/AFE1 TRAY FEED\r\r", - "name": "PLC23", - "tagProps": [ - "PLC23", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "PLC24": { - "area": "OUTBOUND/AFE1 WALL 1-2\r\r", - "name": "PLC24", - "tagProps": [ - "PLC24", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "PLC25": { - "area": "OUTBOUND/AFE1 WALL 3-4\r\r", - "name": "PLC25", - "tagProps": [ - "PLC25", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "PLC26": { - "area": "OUTBOUND/AFE1 WALL 5-6\r\r", - "name": "PLC26", - "tagProps": [ - "PLC26", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "PLC27": { - "area": "OUTBOUND/AFE1 WALL 7-8\r\r", - "name": "PLC27", - "tagProps": [ - "PLC27", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "PLC30": { - "area": "OUTBOUND/AFE1 PACK 1-4\r\r", - "name": "PLC30", - "tagProps": [ - "PLC30", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "PLC31": { - "area": "OUTBOUND/AFE1 PACK 5-8\r\r", - "name": "PLC31", - "tagProps": [ - "PLC31", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "PLC32": { - "area": "OUTBOUND/AFE1 EMP. TOTE\r\r", - "name": "PLC32", - "tagProps": [ - "PLC32", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "PLC60": { - "area": "OUTBOUND/S.PACKING 1\r\r", - "name": "PLC60", - "tagProps": [ - "PLC60", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "PLC61": { - "area": "OUTBOUND/S.PACKING 2\r\r", - "name": "PLC61", - "tagProps": [ - "PLC61", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "PLC69": { - "area": "OUTBOUND/GIFT WRAP\r\r", - "name": "PLC69", - "tagProps": [ - "PLC69", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "PLC70": { - "area": "OUTBOUND/TRANSSHIP\r\r", - "name": "PLC70", - "tagProps": [ - "PLC70", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "PLC71": { - "area": "OUTBOUND/TRANSSHIP\r\r", - "name": "PLC71", - "tagProps": [ - "PLC71", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "PLC80": { - "area": "OUTBOUND/SMART PACKING\r\r", - "name": "PLC80", - "tagProps": [ - "PLC80", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "PLC81": { - "area": "OUTBOUND/SMART PACKING\r\r", - "name": "PLC81", - "tagProps": [ - "PLC81", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "PLC82": { - "area": "OUTBOUND/SMART PACKING\r\r", - "name": "PLC82", - "tagProps": [ - "PLC82", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "PLC97": { - "area": "SAFETY PLC/\r\r", - "name": "PLC97", - "tagProps": [ - "PLC97", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "PLC98": { - "area": "SAFETY PLC/\r\r", - "name": "PLC98", - "tagProps": [ - "PLC98", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value", - "value" - ] - }, - "PLC99": { - "area": "SAFETY PLC/\r\r", - "name": "PLC99", - "tagProps": [ - "PLC99", + "MCM07", "value", "value", "value", @@ -1200,118 +208,6 @@ }, "root": { "children": [ - { - "children": [ - { - "meta": { - "name": "Label" - }, - "position": { - "basis": "300px" - }, - "propConfig": { - "position.display": { - "binding": { - "config": { - "path": "session.custom.command_auth.enabled" - }, - "type": "property" - } - }, - "props.text": { - "binding": { - "config": { - "expression": "\u0027Control Enabled Timeout: \u0027 + ({session.custom.command_auth.timeout_sp} - {session.custom.command_auth.auth_timeout}) + \u0027 seconds\u0027" - }, - "type": "expr" - } - } - }, - "props": { - "style": { - "color": "#000000", - "fontFamily": "Arial", - "fontSize": 14, - "fontWeight": "bold", - "marginBottom": 15, - "marginTop": 15 - } - }, - "type": "ia.display.label" - }, - { - "events": { - "component": { - "onActionPerformed": { - "config": { - "script": "\tif self.session.custom.command_auth.enabled:\n\t\t\tself.session.custom.command_auth.enabled \u003d False\n\telse:\n\t\t#self.session.custom.command_auth.enabled \u003d True\n\t\tsystem.perspective.openPopup(\u0027command-auth\u0027, \u0027PopUp-Views/Command-Authenticate\u0027, showCloseIcon \u003d False, draggable \u003d False, modal \u003d True, overlayDismiss \u003d True)" - }, - "scope": "G", - "type": "script" - } - } - }, - "meta": { - "name": "Button_0", - "tooltip": { - "enabled": true - } - }, - "position": { - "basis": "175px" - }, - "propConfig": { - "meta.tooltip.text": { - "binding": { - "config": { - "expression": "//if({this.props.enabled}, \u0027Re-Authenticate to Enable Command Controls\u0027, \u0027Insufficient Privileges - User Role Required: \u0027 + {session.custom.fc} + \u0027-rme-all\u0027)\r\nif({session.custom.command_auth.enabled},\u0027Click to Disable Controls.\u0027, \u0027Re-Authenticate to Enable Command Controls \\nUser Role Required: \u0027 + {session.custom.fc} + \u0027-rme-all\u0027)" - }, - "type": "expr" - } - }, - "props.image.icon.path": { - "binding": { - "config": { - "expression": "if({session.custom.command_auth.enabled},\u0027material/lock_open\u0027,\u0027material/lock\u0027)" - }, - "type": "expr" - } - }, - "props.text": { - "binding": { - "config": { - "expression": "if({session.custom.command_auth.enabled},\u0027Disable Controls\u0027,\u0027Enable Controls\u0027)" - }, - "type": "expr" - } - } - }, - "props": { - "image": { - "icon": {} - }, - "primary": false, - "style": { - "marginBottom": 15, - "marginRight": 5, - "marginTop": 15 - } - }, - "type": "ia.input.button" - } - ], - "meta": { - "name": "FlexContainer" - }, - "position": { - "basis": "70px", - "shrink": 0 - }, - "props": { - "justify": "flex-end" - }, - "type": "ia.container.flex" - }, { "meta": { "name": "Table" @@ -1738,6 +634,7 @@ ], "dragOrderable": false, "pager": { + "activeOption": 50, "initialOption": 50 }, "rows": { diff --git a/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/Symbol-Views/Controller-Views/CommandControlActions/view.json b/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/Symbol-Views/Controller-Views/CommandControlActions/view.json index ef23621..ff7215a 100644 --- a/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/Symbol-Views/Controller-Views/CommandControlActions/view.json +++ b/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/Symbol-Views/Controller-Views/CommandControlActions/view.json @@ -25,7 +25,7 @@ "props": { "defaultSize": { "height": 50, - "width": 300 + "width": 396 } }, "root": { @@ -35,7 +35,7 @@ "component": { "onActionPerformed": { "config": { - "script": "\ttags_to_read \u003d system.tag.readBlocking([\"Configuration/FC\"])\n\twhid \u003d tags_to_read[0].value\n\tid \u003d self.view.params.value.tagProps[0]\n\tcommandTarget\u003dstr(id)+\"/0\"#PLC01/0 --\u003etarget is the plc\n\tcommandParams\u003d\"\"\n\tif whid\u003d\u003d\"MAN2\" or whid\u003d\u003d\"BRS1\" or whid\u003d\u003d\"MAD6\":\n\t\tcommandTarget\u003d\"databridge/0\"\n\t\tcommandParams\u003d\"PLC\u003d\"+str(id)#this tells the target to data bridge\n\taction \u003d 1\n\tparameters\u003d{\"commandTarget\":commandTarget,\n\t\t\t\t\"commandCode\":1,\n\t\t\t\t\"commandTimestamp\":system.date.toMillis(system.date.now()),\n\t\t\t\t\"commandParams\":commandParams}\n\tCommands.button_commands.send_request(whid, action, parameters)" + "script": "\ttag_name \u003d self.view.params.value.tagProps[0]\n\ttag_path \u003d \"[\" + self.session.custom.fc+ \"_SCADA_TAG_PROVIDER]\"+tag_name+\"/Start_PB\"\n\tsystem.tag.writeBlocking([tag_path],[True])" }, "scope": "G", "type": "script" @@ -56,7 +56,7 @@ "meta.tooltip.text": { "binding": { "config": { - "expression": "if({this.props.enabled},\u0027Start \u0027 + {view.params.value.tagProps[0]},\"Re-Authentication Required - Press \u0027Enable Controls\u0027 button and re-enter password\")" + "expression": "if({this.props.enabled},\u0027Start \u0027 + {view.params.value.tagProps[0]},\"You do not have Maintenance or Administrator role!\")" }, "type": "expr" } @@ -64,7 +64,7 @@ "props.enabled": { "binding": { "config": { - "expression": "{session.custom.command_auth.enabled} \u0026\u0026 {parent.custom.has_role}" + "expression": "indexOf({session.props.auth.user.roles}, \"Administrator\") \u003e\u003d 0 || indexOf({session.props.auth.user.roles}, \"Maintenance\") \u003e\u003d 0" }, "type": "expr" } @@ -119,7 +119,7 @@ "component": { "onActionPerformed": { "config": { - "script": "\ttags_to_read \u003d system.tag.readBlocking([\"Configuration/FC\"])\n\twhid \u003d tags_to_read[0].value\n\tid \u003d self.view.params.value.tagProps[0]\n\tcommandTarget\u003dstr(id)+\"/0\"#PLC01/0 --\u003etarget is the plc\n\tcommandParams\u003d\"\"\n\tif whid\u003d\u003d\"MAN2\" or whid\u003d\u003d\"BRS1\" or whid\u003d\u003d\"MAD6\":\n\t\tcommandTarget\u003d\"databridge/0\"\n\t\tcommandParams\u003d\"PLC\u003d\"+str(id)#this tells the target to data bridge\n\taction \u003d 3\n\tparameters\u003d{\"commandTarget\":commandTarget,\n\t\t\t\t\"commandCode\":3,\n\t\t\t\t\"commandTimestamp\":system.date.toMillis(system.date.now()),\n\t\t\t\t\"commandParams\":commandParams}\n\tCommands.button_commands.send_request(whid, action, parameters)" + "script": "\ttag_name \u003d self.view.params.value.tagProps[0]\n\ttag_path \u003d \"[\" + self.session.custom.fc+ \"_SCADA_TAG_PROVIDER]\"+tag_name+\"/Stop_PB\"\n\tsystem.tag.writeBlocking([tag_path],[True])" }, "scope": "G", "type": "script" @@ -127,7 +127,7 @@ } }, "meta": { - "name": "Reset", + "name": "Stop", "tooltip": { "enabled": true, "location": "top-left" @@ -140,7 +140,7 @@ "meta.tooltip.text": { "binding": { "config": { - "expression": "if({this.props.enabled},\u0027Reset \u0027 + {view.params.value.tagProps[0]},\"Re-Authentication Required - Press \u0027Enable Controls\u0027 button and re-enter password\") " + "expression": "if({this.props.enabled},\u0027Stop \u0027 + {view.params.value.tagProps[0]},\"You do not have Maintenance or Administrator role!\")" }, "type": "expr" } @@ -148,7 +148,91 @@ "props.enabled": { "binding": { "config": { - "expression": "{session.custom.command_auth.enabled} \u0026\u0026 {parent.custom.has_role}" + "expression": "indexOf({session.props.auth.user.roles}, \"Administrator\") \u003e\u003d 0 || indexOf({session.props.auth.user.roles}, \"Maintenance\") \u003e\u003d 0" + }, + "type": "expr" + } + }, + "props.image.icon.color": { + "binding": { + "config": { + "expression": "if({this.props.enabled},\u0027#4A4A4A\u0027,\u0027#979797\u0027)" + }, + "type": "expr" + } + }, + "props.style.borderStyle": { + "binding": { + "config": { + "expression": "if({this.props.enabled},\u0027solid\u0027,\u0027none\u0027)" + }, + "type": "expr" + } + } + }, + "props": { + "image": { + "height": 32, + "icon": { + "path": "material/stop_circle" + }, + "position": "top", + "width": 32 + }, + "style": { + "backgroundColor": "#D4D4D4", + "borderColor": "#4A4A4A", + "borderWidth": 2, + "classes": "\n", + "marginBottom": 5, + "marginLeft": 5, + "marginRight": 5, + "marginTop": 5 + }, + "text": "", + "textStyle": { + "fontSize": 12, + "fontWeight": "bold", + "textAlign": "center" + } + }, + "type": "ia.input.button" + }, + { + "events": { + "component": { + "onActionPerformed": { + "config": { + "script": "\ttag_name \u003d self.view.params.value.tagProps[0]\n\ttag_path \u003d \"[\" + self.session.custom.fc+ \"_SCADA_TAG_PROVIDER]\"+tag_name+\"/Motor_Fault_Reset_PB\"\n\tsystem.tag.writeBlocking([tag_path],[True])" + }, + "scope": "G", + "type": "script" + } + } + }, + "meta": { + "name": "MotorFaultReset", + "tooltip": { + "enabled": true, + "location": "top-left" + } + }, + "position": { + "basis": "80px" + }, + "propConfig": { + "meta.tooltip.text": { + "binding": { + "config": { + "expression": "if({this.props.enabled},\u0027Motor Fault Reset \u0027 + {view.params.value.tagProps[0]},\"You do not have Maintenance or Administrator role!\")" + }, + "type": "expr" + } + }, + "props.enabled": { + "binding": { + "config": { + "expression": "indexOf({session.props.auth.user.roles}, \"Administrator\") \u003e\u003d 0 || indexOf({session.props.auth.user.roles}, \"Maintenance\") \u003e\u003d 0" }, "type": "expr" } @@ -199,6 +283,185 @@ "type": "ia.input.button" }, { + "events": { + "component": { + "onActionPerformed": { + "config": { + "script": "\ttag_name \u003d self.view.params.value.tagProps[0]\n\ttag_path \u003d \"[\" + self.session.custom.fc+ \"_SCADA_TAG_PROVIDER]\"+tag_name+\"/Power_Branch_Fault_Reset_PB\"\n\tsystem.tag.writeBlocking([tag_path],[True])" + }, + "scope": "G", + "type": "script" + } + } + }, + "meta": { + "name": "PowerBranchFaultReset", + "tooltip": { + "enabled": true, + "location": "top-left" + } + }, + "position": { + "basis": "80px" + }, + "propConfig": { + "meta.tooltip.text": { + "binding": { + "config": { + "expression": "if({this.props.enabled},\u0027Power Branch Fault Reset \u0027 + {view.params.value.tagProps[0]},\"You do not have Maintenance or Administrator role!\")" + }, + "type": "expr" + } + }, + "props.enabled": { + "binding": { + "config": { + "expression": "indexOf({session.props.auth.user.roles}, \"Administrator\") \u003e\u003d 0 || indexOf({session.props.auth.user.roles}, \"Maintenance\") \u003e\u003d 0" + }, + "type": "expr" + } + }, + "props.image.icon.color": { + "binding": { + "config": { + "expression": "if({this.props.enabled},\u0027#4A4A4A\u0027,\u0027#979797\u0027)" + }, + "type": "expr" + } + }, + "props.style.borderStyle": { + "binding": { + "config": { + "expression": "if({this.props.enabled},\u0027solid\u0027,\u0027none\u0027)" + }, + "type": "expr" + } + } + }, + "props": { + "image": { + "height": 32, + "icon": { + "path": "material/power" + }, + "position": "top", + "width": 32 + }, + "style": { + "backgroundColor": "#D4D4D4", + "borderColor": "#4A4A4A", + "borderWidth": 2, + "classes": "\n", + "marginBottom": 5, + "marginLeft": 5, + "marginRight": 5, + "marginTop": 5 + }, + "text": "", + "textStyle": { + "fontSize": 12, + "fontWeight": "bold", + "textAlign": "center" + } + }, + "type": "ia.input.button" + }, + { + "events": { + "component": { + "onActionPerformed": { + "config": { + "script": "\ttag_name \u003d self.view.params.value.tagProps[0]\n\ttag_path \u003d \"[\" + self.session.custom.fc+ \"_SCADA_TAG_PROVIDER]\"+tag_name+\"/Low_Air_Pressure_Reset_PB\"\n\tsystem.tag.writeBlocking([tag_path],[True])" + }, + "scope": "G", + "type": "script" + } + } + }, + "meta": { + "name": "LowAirPressureReset", + "tooltip": { + "enabled": true, + "location": "top-left" + } + }, + "position": { + "basis": "80px" + }, + "propConfig": { + "meta.tooltip.text": { + "binding": { + "config": { + "expression": "if({this.props.enabled},\u0027Low Air Pressure Reset \u0027 + {view.params.value.tagProps[0]},\"You do not have Maintenance or Administrator role!\")" + }, + "type": "expr" + } + }, + "props.enabled": { + "binding": { + "config": { + "expression": "indexOf({session.props.auth.user.roles}, \"Administrator\") \u003e\u003d 0 || indexOf({session.props.auth.user.roles}, \"Maintenance\") \u003e\u003d 0" + }, + "type": "expr" + } + }, + "props.image.icon.color": { + "binding": { + "config": { + "expression": "if({this.props.enabled},\u0027#4A4A4A\u0027,\u0027#979797\u0027)" + }, + "type": "expr" + } + }, + "props.style.borderStyle": { + "binding": { + "config": { + "expression": "if({this.props.enabled},\u0027solid\u0027,\u0027none\u0027)" + }, + "type": "expr" + } + } + }, + "props": { + "image": { + "height": 32, + "icon": { + "path": "material/waves" + }, + "position": "top", + "width": 32 + }, + "style": { + "backgroundColor": "#D4D4D4", + "borderColor": "#4A4A4A", + "borderWidth": 2, + "classes": "\n", + "marginBottom": 5, + "marginLeft": 5, + "marginRight": 5, + "marginTop": 5 + }, + "text": "", + "textStyle": { + "fontSize": 12, + "fontWeight": "bold", + "textAlign": "center" + } + }, + "type": "ia.input.button" + }, + { + "events": { + "component": { + "onActionPerformed": { + "config": { + "script": "\ttag_name \u003d self.view.params.value.tagProps[0]\n\ttag_path \u003d \"[\" + self.session.custom.fc+ \"_SCADA_TAG_PROVIDER]\"+tag_name+\"/Jam_Restart_PB\"\n\tsystem.tag.writeBlocking([tag_path],[True])" + }, + "scope": "G", + "type": "script" + } + } + }, "meta": { "name": "JAM_Reset", "tooltip": { @@ -213,7 +476,7 @@ "meta.tooltip.text": { "binding": { "config": { - "expression": "if({this.props.enabled},\u0027Jam Reset \u0027 + {view.params.value.tagProps[0]},\"Re-Authentication Required - Press \u0027Enable Controls\u0027 button and re-enter password\")" + "expression": "if({this.props.enabled},\u0027Jam Reset \u0027 + {view.params.value.tagProps[0]},\"You do not have Maintenance or Administrator role!\")" }, "type": "expr" } @@ -221,7 +484,7 @@ "props.enabled": { "binding": { "config": { - "expression": "{session.custom.command_auth.enabled} \u0026\u0026 {parent.custom.has_role}" + "expression": "indexOf({session.props.auth.user.roles}, \"Administrator\") \u003e\u003d 0 || indexOf({session.props.auth.user.roles}, \"Maintenance\") \u003e\u003d 0" }, "type": "expr" } @@ -276,7 +539,7 @@ "component": { "onActionPerformed": { "config": { - "script": "\ttags_to_read \u003d system.tag.readBlocking([\"Configuration/FC\"])\n\twhid \u003d tags_to_read[0].value\n\tid \u003d self.view.params.value.tagProps[0]\n\tcommandTarget\u003dstr(id)+\"/0\"#PLC01/0 --\u003etarget is the plc\n\tcommandParams\u003d\"\"\n\tif whid\u003d\u003d\"MAN2\" or whid\u003d\u003d\"BRS1\" or whid\u003d\u003d\"MAD6\":\n\t\tcommandTarget\u003d\"databridge/0\"\n\t\tcommandParams\u003d\"PLC\u003d\"+str(id)#this tells the target to data bridge\n\taction \u003d 2\n\tparameters\u003d{\"commandTarget\":commandTarget,\n\t\t\t\t\"commandCode\":2,\n\t\t\t\t\"commandTimestamp\":system.date.toMillis(system.date.now()),\n\t\t\t\t\"commandParams\":commandParams}\n\tCommands.button_commands.send_request(whid, action, parameters)" + "script": "\ttag_name \u003d self.view.params.value.tagProps[0]\n\ttag_path \u003d \"[\" + self.session.custom.fc+ \"_SCADA_TAG_PROVIDER]\"+tag_name+\"/Setup_Motor_Speeds\"\n\tsystem.tag.writeBlocking([tag_path],[True])" }, "scope": "G", "type": "script" @@ -284,7 +547,7 @@ } }, "meta": { - "name": "Stop", + "name": "SetupMotorSpeeds", "tooltip": { "enabled": true, "location": "top-left" @@ -297,7 +560,7 @@ "meta.tooltip.text": { "binding": { "config": { - "expression": "if({this.props.enabled},\u0027Stop \u0027 + {view.params.value.tagProps[0]},\"Re-Authentication Required - Press \u0027Enable Controls\u0027 button and re-enter password\") " + "expression": "if({this.props.enabled},\u0027Setup Motor Speeds \u0027 + {view.params.value.tagProps[0]},\"You do not have Maintenance or Administrator role!\")" }, "type": "expr" } @@ -305,7 +568,7 @@ "props.enabled": { "binding": { "config": { - "expression": "{session.custom.command_auth.enabled} \u0026\u0026 {parent.custom.has_role}" + "expression": "indexOf({session.props.auth.user.roles}, \"Administrator\") \u003e\u003d 0 || indexOf({session.props.auth.user.roles}, \"Maintenance\") \u003e\u003d 0" }, "type": "expr" } @@ -331,7 +594,7 @@ "image": { "height": 32, "icon": { - "path": "material/stop_circle" + "path": "material/speed" }, "position": "top", "width": 32 diff --git a/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/Symbol-Views/Controller-Views/CommandControlStatus/view.json b/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/Symbol-Views/Controller-Views/CommandControlStatus/view.json index 1e5a023..acecdcb 100644 --- a/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/Symbol-Views/Controller-Views/CommandControlStatus/view.json +++ b/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/Symbol-Views/Controller-Views/CommandControlStatus/view.json @@ -1,9 +1,42 @@ { - "custom": {}, + "custom": { + "state": { + "$": [ + "ds", + 192, + 1751989690818 + ], + "$columns": [ + { + "data": [ + null + ], + "name": "Location", + "type": "String" + }, + { + "data": [ + "Low" + ], + "name": "Priority", + "type": "String" + }, + { + "data": [ + 1 + ], + "name": "Count", + "type": "Long" + } + ] + }, + "status": "" + }, "params": { + "key": "value", "value": { "tagProps": [ - "", + "value", "value", "value", "value", @@ -17,6 +50,30 @@ } }, "propConfig": { + "custom.state": { + "binding": { + "config": { + "polling": { + "enabled": true, + "rate": "1" + }, + "queryPath": "GetActiveAlarmsByLocationAndPriority" + }, + "type": "query" + }, + "onChange": { + "enabled": null, + "script": "\tMCM \u003d self.params.value.tagProps[0]\n\t\n\tqueryData \u003d currentValue.value\n\t\n\tif not queryData:\n\t\tself.custom.status \u003d \"Healty\"\n\t\n\t# Define priority order from highest to lowest\n\tpriority_order \u003d [\"Critical\", \"High\", \"Medium\", \"Low\", \"Diagnostic\"]\n\t\n\t# Set to store which priorities exist for the given MCM\n\texisting_priorities \u003d set()\n\t\n\tmyPriority \u003d \"\"\n\t\n\t# Populate the set\n\tfor row in range(queryData.rowCount):\n\t mcm_val \u003d queryData.getValueAt(row, 0)\n\t severity \u003d queryData.getValueAt(row, 1).capitalize()\n\t count \u003d queryData.getValueAt(row, 2)\n\t\n\t if mcm_val \u003d\u003d MCM and count \u003e 0:\n\t existing_priorities.add(severity)\n\t\n\t# Find the highest one that exists\n\tfor priority in priority_order:\n\t if priority in existing_priorities:\n\t myPriority \u003d priority\n\t\n\tself.custom.status \u003d myPriority" + }, + "persistent": true + }, + "custom.status": { + "persistent": true + }, + "params.key": { + "paramDirection": "input", + "persistent": true + }, "params.value": { "paramDirection": "input", "persistent": true @@ -35,7 +92,7 @@ "dom": { "onClick": { "config": { - "script": "\tnavigation.navigate_to_page.detailed_view(self, self.view.params.value.tagProps[0],self.view.params.value.tagProps[0], self.view.params.value.tagProps[3])" + "script": "#\tnavigation.navigate_to_page.detailed_view(self, self.view.params.value.tagProps[0],self.view.params.value.tagProps[0], self.view.params.value.tagProps[3])" }, "scope": "G", "type": "script" @@ -49,59 +106,35 @@ "grow": 1 }, "propConfig": { - "custom.status": { - "binding": { - "config": { - "path": "/root.custom.status" - }, - "type": "property" - } - }, "props.style.classes": { "binding": { "config": { - "path": "this.custom.status" + "path": "view.custom.status" }, "transforms": [ { - "fallback": "State-Styles/State0", + "fallback": "State-Styles/Background-Fill/State5", "inputType": "scalar", "mappings": [ { - "input": 1, + "input": "High", "output": "State-Styles/Background-Fill/State1" }, { - "input": 2, + "input": "Medium", "output": "State-Styles/Background-Fill/State2" }, { - "input": 3, + "input": "Low", "output": "State-Styles/Background-Fill/State3" }, { - "input": 4, + "input": "Diagnostic", "output": "State-Styles/Background-Fill/State4" - }, - { - "input": 5, - "output": "State-Styles/Background-Fill/State5" - }, - { - "input": 6, - "output": "State-Styles/Background-Fill/State6" - }, - { - "input": 0, - "output": "State-Styles/State0" } ], "outputType": "style-list", "type": "map" - }, - { - "expression": "if({session.custom.colours.colour_impaired},{value}+\u0027_Alt\u0027,{value})", - "type": "expression" } ], "type": "property" @@ -110,36 +143,28 @@ "props.text": { "binding": { "config": { - "path": "this.custom.status" + "path": "view.custom.status" }, "transforms": [ { - "fallback": null, + "fallback": "HEALTHY", "inputType": "scalar", "mappings": [ { - "input": 5, - "output": "HEALTHY" - }, - { - "input": 4, + "input": "Diagnostic", "output": "DIAGNOSTIC" }, { - "input": 3, - "output": "PROCESS DEGRADED" + "input": "Low", + "output": "HALF WORKFLOW" }, { - "input": 2, - "output": "STOPPED" + "input": "Medium", + "output": "CONTROLLED STOP" }, { - "input": 1, - "output": "FAULTED" - }, - { - "input": 6, - "output": null + "input": "High", + "output": "UNCONTROLLED STOP" } ], "outputType": "scalar", @@ -184,54 +209,6 @@ "type": "expr" } }, - "custom.status": { - "binding": { - "config": { - "fallbackDelay": 2.5, - "mode": "indirect", - "references": { - "0": "{view.params.value.tagProps[0]}", - "fc": "{session.custom.fc}" - }, - "tagPath": "[{fc}_SCADA_TAG_PROVIDER]{0}/ALARMST" - }, - "transforms": [ - { - "expression": "if(isNull({value}), 0, {value})", - "type": "expression" - }, - { - "fallback": null, - "inputType": "scalar", - "mappings": [ - { - "input": 4, - "output": 1 - }, - { - "input": 3, - "output": 2 - }, - { - "input": 2, - "output": 3 - }, - { - "input": 1, - "output": 4 - }, - { - "input": 0, - "output": 5 - } - ], - "outputType": "scalar", - "type": "map" - } - ], - "type": "tag" - } - }, "custom.tag_path_to_lookup": { "binding": { "config": { diff --git a/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/Symbol-Views/Controller-Views/ControllerStatus/view.json b/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/Symbol-Views/Controller-Views/ControllerStatus/view.json index c9c14d9..5e0ef42 100644 --- a/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/Symbol-Views/Controller-Views/ControllerStatus/view.json +++ b/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/Symbol-Views/Controller-Views/ControllerStatus/view.json @@ -208,146 +208,43 @@ "type": "ia.display.label" }, { - "events": { - "dom": { - "onClick": { - "config": { - "script": "\tself.session.custom.covert\u003d False\n\tnavigation.navigate_to_page.detailed_view(self, self.view.params.tagProps[0],self.view.params.tagProps[0], self.view.params.tagProps[3])" - }, - "enabled": false, - "scope": "G", - "type": "script" - } - } - }, "meta": { - "name": "Label" + "name": "EmbeddedView" }, "position": { - "basis": "236px" + "basis": "200px" }, "propConfig": { - "custom.status": { + "props.params.value.tagProps[0]": { "binding": { "config": { - "path": "/root.custom.status" + "expression": "{view.params.tagProps[0]}" }, - "type": "property" - } - }, - "props.style.classes": { - "binding": { - "config": { - "path": "this.custom.status" - }, - "transforms": [ - { - "fallback": "State-Styles/State0", - "inputType": "scalar", - "mappings": [ - { - "input": 1, - "output": "State-Styles/Background-Fill/State1" - }, - { - "input": 2, - "output": "State-Styles/Background-Fill/State2" - }, - { - "input": 3, - "output": "State-Styles/Background-Fill/State3" - }, - { - "input": 4, - "output": "State-Styles/Background-Fill/State4" - }, - { - "input": 5, - "output": "State-Styles/Background-Fill/State5" - }, - { - "input": 6, - "output": "State-Styles/Background-Fill/State6" - }, - { - "input": 0, - "output": "State-Styles/State0" - } - ], - "outputType": "style-list", - "type": "map" - }, - { - "expression": "if({session.custom.colours.colour_impaired},{value}+\u0027_Alt\u0027,{value})", - "type": "expression" - } - ], - "type": "property" - } - }, - "props.text": { - "binding": { - "config": { - "path": "this.custom.status" - }, - "transforms": [ - { - "fallback": null, - "inputType": "scalar", - "mappings": [ - { - "input": 5, - "output": "HEALTHY" - }, - { - "input": 4, - "output": "DIAGNOSTIC" - }, - { - "input": 3, - "output": "PROCESS DEGRADED" - }, - { - "input": 2, - "output": "STOPPED" - }, - { - "input": 1, - "output": "FAULTED" - }, - { - "input": 6, - "output": null - } - ], - "outputType": "scalar", - "type": "map" - } - ], - "type": "property" + "type": "expr" } } }, "props": { - "style": { - "borderBottomLeftRadius": 5, - "borderBottomRightRadius": 5, - "borderColor": "#555555", - "borderStyle": "solid", - "borderTopLeftRadius": 5, - "borderTopRightRadius": 5, - "borderWidth": 2, - "marginBottom": 10, - "marginLeft": 50, - "marginRight": 10, - "marginTop": 10 + "params": { + "key": "value", + "value": { + "tagProps": [ + null, + "value", + "value", + "value", + "value", + "value", + "value", + "value", + "value", + "value" + ] + } }, - "textStyle": { - "fontSize": 12, - "textAlign": "center" - } + "path": "Symbol-Views/Controller-Views/CommandControlStatus" }, - "type": "ia.display.label" + "type": "ia.display.view" } ], "meta": { @@ -357,6 +254,7 @@ "basis": "80px" }, "props": { + "justify": "space-around", "style": { "borderBottomColor": "#555555", "borderBottomStyle": "solid", @@ -530,7 +428,7 @@ "basis": "32px" }, "props": { - "text": 2, + "text": 0, "textStyle": { "fontSize": 10, "textAlign": "center" @@ -588,7 +486,7 @@ "basis": "32px" }, "props": { - "text": 3, + "text": 0, "textStyle": { "fontSize": 10, "textAlign": "center" @@ -617,7 +515,7 @@ "basis": "32px" }, "props": { - "text": 1, + "text": 0, "textStyle": { "fontSize": 10, "textAlign": "center" @@ -646,7 +544,7 @@ "basis": "32px" }, "props": { - "text": 6, + "text": 0, "textStyle": { "fontSize": 10, "textAlign": "center" @@ -711,9 +609,9 @@ "custom": { "counts": { "Critical": 0, - "Diagnostic": 1, - "High": 2, - "Low": 3, + "Diagnostic": 0, + "High": 0, + "Low": 0, "Medium": 0 } }, From 98bdda8c32ba3eb5598353487146fca1cba9c81d Mon Sep 17 00:00:00 2001 From: beka makharadze Date: Tue, 8 Jul 2025 19:51:47 +0400 Subject: [PATCH 2/6] Fix script remove stuff --- .../CommandControlStatus/view.json | 33 ++----------------- 1 file changed, 2 insertions(+), 31 deletions(-) diff --git a/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/Symbol-Views/Controller-Views/CommandControlStatus/view.json b/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/Symbol-Views/Controller-Views/CommandControlStatus/view.json index acecdcb..c9185c2 100644 --- a/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/Symbol-Views/Controller-Views/CommandControlStatus/view.json +++ b/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/Symbol-Views/Controller-Views/CommandControlStatus/view.json @@ -4,7 +4,7 @@ "$": [ "ds", 192, - 1751989690818 + 1751989861336 ], "$columns": [ { @@ -33,7 +33,6 @@ "status": "" }, "params": { - "key": "value", "value": { "tagProps": [ "value", @@ -70,10 +69,6 @@ "custom.status": { "persistent": true }, - "params.key": { - "paramDirection": "input", - "persistent": true - }, "params.value": { "paramDirection": "input", "persistent": true @@ -92,7 +87,7 @@ "dom": { "onClick": { "config": { - "script": "#\tnavigation.navigate_to_page.detailed_view(self, self.view.params.value.tagProps[0],self.view.params.value.tagProps[0], self.view.params.value.tagProps[3])" + "script": "\tnavigation.navigate_to_page.detailed_view(self, self.view.params.value.tagProps[0],self.view.params.value.tagProps[0], self.view.params.value.tagProps[3])" }, "scope": "G", "type": "script" @@ -194,30 +189,6 @@ "meta": { "name": "root" }, - "propConfig": { - "custom.has_role": { - "binding": { - "config": { - "expression": "{session.custom.fc}" - }, - "transforms": [ - { - "code": "\trme_role \u003d value +\"-rme-all\"\n\troles \u003d (self.session.props.auth.user.roles)\n\tif (rme_role.lower() in roles \n\tor rme_role.upper() in roles):\n\t\treturn True\n\telse:\n\t\treturn False", - "type": "script" - } - ], - "type": "expr" - } - }, - "custom.tag_path_to_lookup": { - "binding": { - "config": { - "expression": " \"[\\\"\" + {view.params.value.tagProps[0]} + \"\\\"]\"" - }, - "type": "expr" - } - } - }, "props": { "direction": "column" }, From e010d180945215ea23b3214896526990ccff6ae3 Mon Sep 17 00:00:00 2001 From: beka makharadze Date: Wed, 9 Jul 2025 12:06:36 +0400 Subject: [PATCH 3/6] Fix Script --- .../Symbol-Views/Controller-Views/CommandControlStatus/view.json | 1 + 1 file changed, 1 insertion(+) diff --git a/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/Symbol-Views/Controller-Views/CommandControlStatus/view.json b/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/Symbol-Views/Controller-Views/CommandControlStatus/view.json index c9185c2..64ada47 100644 --- a/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/Symbol-Views/Controller-Views/CommandControlStatus/view.json +++ b/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/Symbol-Views/Controller-Views/CommandControlStatus/view.json @@ -63,6 +63,7 @@ "onChange": { "enabled": null, "script": "\tMCM \u003d self.params.value.tagProps[0]\n\t\n\tqueryData \u003d currentValue.value\n\t\n\tif not queryData:\n\t\tself.custom.status \u003d \"Healty\"\n\t\n\t# Define priority order from highest to lowest\n\tpriority_order \u003d [\"Critical\", \"High\", \"Medium\", \"Low\", \"Diagnostic\"]\n\t\n\t# Set to store which priorities exist for the given MCM\n\texisting_priorities \u003d set()\n\t\n\tmyPriority \u003d \"\"\n\t\n\t# Populate the set\n\tfor row in range(queryData.rowCount):\n\t mcm_val \u003d queryData.getValueAt(row, 0)\n\t severity \u003d queryData.getValueAt(row, 1).capitalize()\n\t count \u003d queryData.getValueAt(row, 2)\n\t\n\t if mcm_val \u003d\u003d MCM and count \u003e 0:\n\t existing_priorities.add(severity)\n\t\n\t# Find the highest one that exists\n\tfor priority in priority_order:\n\t if priority in existing_priorities:\n\t myPriority \u003d priority\n\t\n\tself.custom.status \u003d myPriority" + "script": "\tMCM \u003d self.params.value.tagProps[0]\n\tqueryData \u003d currentValue.value\n\t\n\tif not queryData:\n\t self.custom.status \u003d \"\"\n\t\n\t# Define priority order from highest to lowest\n\tpriority_order \u003d [\"Critical\", \"High\", \"Medium\", \"Low\", \"Diagnostic\"]\n\texisting_priorities \u003d set()\n\tmyPriority \u003d \"\"\n\t\n\t# Populate the set\n\tfor row in range(queryData.rowCount):\n\t mcm_val \u003d queryData.getValueAt(row, 0)\n\t severity \u003d queryData.getValueAt(row, 1).capitalize()\n\t count \u003d queryData.getValueAt(row, 2)\n\t\n\t if mcm_val \u003d\u003d MCM and count \u003e 0:\n\t existing_priorities.add(severity)\n\t\n\t# Find the highest one that exists\n\tfor priority in priority_order:\n\t if priority in existing_priorities:\n\t myPriority \u003d priority\n\t break\n\t\n\tself.custom.status \u003d myPriority" }, "persistent": true }, From c0d785bea03b5c9850c97f8dbb867fee088b659e Mon Sep 17 00:00:00 2001 From: beka makharadze Date: Wed, 9 Jul 2025 17:15:24 +0400 Subject: [PATCH 4/6] Update CommandControl page --- .../Information-Docked-East-MCM/view.json | 22 +- .../CommandControlActions/view.json | 282 ++++++++++++++++-- .../CommandControlAlarms/view.json | 50 ++-- 3 files changed, 299 insertions(+), 55 deletions(-) diff --git a/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/PopUp-Views/Controller-Equipment/Information-Docked-East-MCM/view.json b/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/PopUp-Views/Controller-Equipment/Information-Docked-East-MCM/view.json index 8d0ce2f..1905b88 100644 --- a/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/PopUp-Views/Controller-Equipment/Information-Docked-East-MCM/view.json +++ b/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/PopUp-Views/Controller-Equipment/Information-Docked-East-MCM/view.json @@ -2459,7 +2459,7 @@ "0": "{view.params.tagProps[0]}", "fc": "{session.custom.fc}" }, - "tagPath": "[{fc}_SCADA_TAG_PROVIDER]{0}/Motor_Fault_Reset_PB" + "tagPath": "[{fc}_SCADA_TAG_PROVIDER]{0}/Motor_Fault_Reset_PB_STATE" }, "transforms": [ { @@ -2491,7 +2491,7 @@ "image": { "icon": { "color": "#000000", - "path": "material/sync_problem" + "path": "material/refresh" } }, "style": { @@ -2597,7 +2597,7 @@ "image": { "icon": { "color": "#000000", - "path": "material/sync_problem" + "path": "material/power" } }, "style": { @@ -2671,7 +2671,7 @@ "0": "{view.params.tagProps[0]}", "fc": "{session.custom.fc}" }, - "tagPath": "[{fc}_SCADA_TAG_PROVIDER]{0}/Low_Air_Pressure_Reset_PB" + "tagPath": "[{fc}_SCADA_TAG_PROVIDER]{0}/Low_Air_Pressure_Reset_PB_STATE" }, "transforms": [ { @@ -2702,7 +2702,7 @@ "props": { "image": { "icon": { - "path": "material/sync_problem" + "path": "material/waves" } }, "style": { @@ -2785,8 +2785,12 @@ "inputType": "scalar", "mappings": [ { - "input": 1, + "input": 2, "output": "JAM RESTART PRESSED" + }, + { + "input": 4, + "output": "" } ], "outputType": "scalar", @@ -2900,6 +2904,12 @@ } }, "props": { + "image": { + "icon": { + "color": "#000000", + "path": "material/speed" + } + }, "style": { "classes": "Background-Styles/Controller" }, diff --git a/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/Symbol-Views/Controller-Views/CommandControlActions/view.json b/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/Symbol-Views/Controller-Views/CommandControlActions/view.json index ff7215a..d782399 100644 --- a/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/Symbol-Views/Controller-Views/CommandControlActions/view.json +++ b/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/Symbol-Views/Controller-Views/CommandControlActions/view.json @@ -3,7 +3,7 @@ "params": { "value": { "tagProps": [ - "", + "MCM01", "value", "value", "value", @@ -35,7 +35,7 @@ "component": { "onActionPerformed": { "config": { - "script": "\ttag_name \u003d self.view.params.value.tagProps[0]\n\ttag_path \u003d \"[\" + self.session.custom.fc+ \"_SCADA_TAG_PROVIDER]\"+tag_name+\"/Start_PB\"\n\tsystem.tag.writeBlocking([tag_path],[True])" + "script": "\ttag_name \u003d self.view.params.value.tagProps[0]\n\ttag_path \u003d \"[\" + self.session.custom.fc+ \"_SCADA_TAG_PROVIDER]\"+\"System/\"+tag_name +\"/\" + tag_name+\"/Start_PB\"\n\tsystem.tag.writeBlocking([tag_path],[True])\n\t" }, "scope": "G", "type": "script" @@ -72,11 +72,47 @@ "props.image.icon.color": { "binding": { "config": { - "expression": "if({this.props.enabled},\u0027#4A4A4A\u0027,\u0027#979797\u0027)" + "expression": "if({this.props.enabled},\u0027#FFFFFF\u0027,\u0027#979797\u0027)" }, "type": "expr" } }, + "props.style.backgroundColor": { + "binding": { + "config": { + "fallbackDelay": 2.5, + "mode": "indirect", + "references": { + "0": "{view.params.value.tagProps[0]}", + "fc": "{session.custom.fc}" + }, + "tagPath": "[{fc}_SCADA_TAG_PROVIDER]System/{0}/{0}/Start_PB_STATE" + }, + "transforms": [ + { + "expression": "coalesce({value},{view.params.forceFaultStatus},0)", + "type": "expression" + }, + { + "fallback": "#00A700", + "inputType": "scalar", + "mappings": [ + { + "input": 2, + "output": "#41E841" + }, + { + "input": 4, + "output": "#41E841" + } + ], + "outputType": "color", + "type": "map" + } + ], + "type": "tag" + } + }, "props.style.borderStyle": { "binding": { "config": { @@ -96,7 +132,6 @@ "width": 32 }, "style": { - "backgroundColor": "#D4D4D4", "borderColor": "#4A4A4A", "borderWidth": 2, "classes": "\n", @@ -107,6 +142,7 @@ }, "text": "", "textStyle": { + "color": "#000000", "fontSize": 12, "fontWeight": "bold", "textAlign": "center" @@ -119,7 +155,7 @@ "component": { "onActionPerformed": { "config": { - "script": "\ttag_name \u003d self.view.params.value.tagProps[0]\n\ttag_path \u003d \"[\" + self.session.custom.fc+ \"_SCADA_TAG_PROVIDER]\"+tag_name+\"/Stop_PB\"\n\tsystem.tag.writeBlocking([tag_path],[True])" + "script": "\ttag_name \u003d self.view.params.value.tagProps[0]\n\ttag_path \u003d \"[\" + self.session.custom.fc+ \"_SCADA_TAG_PROVIDER]\"+\"System/\"+tag_name +\"/\" + tag_name+\"/Stop_PB\"\n\tsystem.tag.writeBlocking([tag_path],[True])" }, "scope": "G", "type": "script" @@ -156,11 +192,43 @@ "props.image.icon.color": { "binding": { "config": { - "expression": "if({this.props.enabled},\u0027#4A4A4A\u0027,\u0027#979797\u0027)" + "expression": "if({this.props.enabled},\u0027#FFFFFF\u0027,\u0027#979797\u0027)" }, "type": "expr" } }, + "props.style.backgroundColor": { + "binding": { + "config": { + "fallbackDelay": 2.5, + "mode": "indirect", + "references": { + "0": "{view.params.value.tagProps[0]}", + "fc": "{session.custom.fc}" + }, + "tagPath": "[{fc}_SCADA_TAG_PROVIDER]System/{0}/{0}/Stop_PB" + }, + "transforms": [ + { + "expression": "coalesce({value},{view.params.forceFaultStatus},0)", + "type": "expression" + }, + { + "fallback": "#CA0D0D", + "inputType": "scalar", + "mappings": [ + { + "input": 1, + "output": "#FF0000" + } + ], + "outputType": "color", + "type": "map" + } + ], + "type": "tag" + } + }, "props.style.borderStyle": { "binding": { "config": { @@ -180,7 +248,6 @@ "width": 32 }, "style": { - "backgroundColor": "#D4D4D4", "borderColor": "#4A4A4A", "borderWidth": 2, "classes": "\n", @@ -203,7 +270,7 @@ "component": { "onActionPerformed": { "config": { - "script": "\ttag_name \u003d self.view.params.value.tagProps[0]\n\ttag_path \u003d \"[\" + self.session.custom.fc+ \"_SCADA_TAG_PROVIDER]\"+tag_name+\"/Motor_Fault_Reset_PB\"\n\tsystem.tag.writeBlocking([tag_path],[True])" + "script": "\ttag_name \u003d self.view.params.value.tagProps[0]\n\ttag_path \u003d \"[\" + self.session.custom.fc+ \"_SCADA_TAG_PROVIDER]\"+\"System/\"+tag_name +\"/\" + tag_name+\"/Motor_Fault_Reset_PB\"\n\tsystem.tag.writeBlocking([tag_path],[True])" }, "scope": "G", "type": "script" @@ -240,11 +307,47 @@ "props.image.icon.color": { "binding": { "config": { - "expression": "if({this.props.enabled},\u0027#4A4A4A\u0027,\u0027#979797\u0027)" + "expression": "if({this.props.enabled},\u0027#000000\u0027,\u0027#979797\u0027)" }, "type": "expr" } }, + "props.style.backgroundColor": { + "binding": { + "config": { + "fallbackDelay": 2.5, + "mode": "indirect", + "references": { + "0": "{view.params.value.tagProps[0]}", + "fc": "{session.custom.fc}" + }, + "tagPath": "[{fc}_SCADA_TAG_PROVIDER]System/{0}/{0}/Motor_Fault_Reset_PB_STATE" + }, + "transforms": [ + { + "expression": "coalesce({value},{view.params.forceFaultStatus},0)", + "type": "expression" + }, + { + "fallback": "#DCDC03", + "inputType": "scalar", + "mappings": [ + { + "input": 2, + "output": "#FCFF86" + }, + { + "input": 4, + "output": "#FCFF86" + } + ], + "outputType": "color", + "type": "map" + } + ], + "type": "tag" + } + }, "props.style.borderStyle": { "binding": { "config": { @@ -264,7 +367,6 @@ "width": 32 }, "style": { - "backgroundColor": "#D4D4D4", "borderColor": "#4A4A4A", "borderWidth": 2, "classes": "\n", @@ -287,7 +389,7 @@ "component": { "onActionPerformed": { "config": { - "script": "\ttag_name \u003d self.view.params.value.tagProps[0]\n\ttag_path \u003d \"[\" + self.session.custom.fc+ \"_SCADA_TAG_PROVIDER]\"+tag_name+\"/Power_Branch_Fault_Reset_PB\"\n\tsystem.tag.writeBlocking([tag_path],[True])" + "script": "\ttag_name \u003d self.view.params.value.tagProps[0]\n\ttag_path \u003d \"[\" + self.session.custom.fc+ \"_SCADA_TAG_PROVIDER]\"+\"System/\"+tag_name +\"/\" + tag_name+\"/Power_Branch_Fault_Reset_PB\"\n\tsystem.tag.writeBlocking([tag_path],[True])" }, "scope": "G", "type": "script" @@ -324,11 +426,47 @@ "props.image.icon.color": { "binding": { "config": { - "expression": "if({this.props.enabled},\u0027#4A4A4A\u0027,\u0027#979797\u0027)" + "expression": "if({this.props.enabled},\u0027#000000\u0027,\u0027#979797\u0027)" }, "type": "expr" } }, + "props.style.backgroundColor": { + "binding": { + "config": { + "fallbackDelay": 2.5, + "mode": "indirect", + "references": { + "0": "{view.params.value.tagProps[0]}", + "fc": "{session.custom.fc}" + }, + "tagPath": "[{fc}_SCADA_TAG_PROVIDER]System/{0}/{0}/Power_Branch_Fault_Reset_PB_STATE" + }, + "transforms": [ + { + "expression": "coalesce({value},{view.params.forceFaultStatus},0)", + "type": "expression" + }, + { + "fallback": "#DCDC03", + "inputType": "scalar", + "mappings": [ + { + "input": 2, + "output": "#FCFF86" + }, + { + "input": 4, + "output": "#FCFF86" + } + ], + "outputType": "color", + "type": "map" + } + ], + "type": "tag" + } + }, "props.style.borderStyle": { "binding": { "config": { @@ -348,7 +486,6 @@ "width": 32 }, "style": { - "backgroundColor": "#D4D4D4", "borderColor": "#4A4A4A", "borderWidth": 2, "classes": "\n", @@ -371,7 +508,7 @@ "component": { "onActionPerformed": { "config": { - "script": "\ttag_name \u003d self.view.params.value.tagProps[0]\n\ttag_path \u003d \"[\" + self.session.custom.fc+ \"_SCADA_TAG_PROVIDER]\"+tag_name+\"/Low_Air_Pressure_Reset_PB\"\n\tsystem.tag.writeBlocking([tag_path],[True])" + "script": "\ttag_name \u003d self.view.params.value.tagProps[0]\n\ttag_path \u003d \"[\" + self.session.custom.fc+ \"_SCADA_TAG_PROVIDER]\"+\"System/\"+tag_name +\"/\" + tag_name+\"/Low_Air_Pressure_Reset_PB\"\n\tsystem.tag.writeBlocking([tag_path],[True])" }, "scope": "G", "type": "script" @@ -408,11 +545,47 @@ "props.image.icon.color": { "binding": { "config": { - "expression": "if({this.props.enabled},\u0027#4A4A4A\u0027,\u0027#979797\u0027)" + "expression": "if({this.props.enabled},\u0027#FFFFFF\u0027,\u0027#979797\u0027)" }, "type": "expr" } }, + "props.style.backgroundColor": { + "binding": { + "config": { + "fallbackDelay": 2.5, + "mode": "indirect", + "references": { + "0": "{view.params.value.tagProps[0]}", + "fc": "{session.custom.fc}" + }, + "tagPath": "[{fc}_SCADA_TAG_PROVIDER]System/{0}/{0}/Low_Air_Pressure_Reset_PB_STATE" + }, + "transforms": [ + { + "expression": "coalesce({value},{view.params.forceFaultStatus},0)", + "type": "expression" + }, + { + "fallback": "#0A0AA4", + "inputType": "scalar", + "mappings": [ + { + "input": 2, + "output": "#5D5DFF" + }, + { + "input": 4, + "output": "#5D5DFF" + } + ], + "outputType": "color", + "type": "map" + } + ], + "type": "tag" + } + }, "props.style.borderStyle": { "binding": { "config": { @@ -432,7 +605,6 @@ "width": 32 }, "style": { - "backgroundColor": "#D4D4D4", "borderColor": "#4A4A4A", "borderWidth": 2, "classes": "\n", @@ -455,7 +627,7 @@ "component": { "onActionPerformed": { "config": { - "script": "\ttag_name \u003d self.view.params.value.tagProps[0]\n\ttag_path \u003d \"[\" + self.session.custom.fc+ \"_SCADA_TAG_PROVIDER]\"+tag_name+\"/Jam_Restart_PB\"\n\tsystem.tag.writeBlocking([tag_path],[True])" + "script": "\ttag_name \u003d self.view.params.value.tagProps[0]\n\ttag_path \u003d \"[\" + self.session.custom.fc+ \"_SCADA_TAG_PROVIDER]\"+\"System/\"+tag_name +\"/\" + tag_name+\"/Jam_Restart_PB\"\n\tsystem.tag.writeBlocking([tag_path],[True])" }, "scope": "G", "type": "script" @@ -492,11 +664,47 @@ "props.image.icon.color": { "binding": { "config": { - "expression": "if({this.props.enabled},\u0027#4A4A4A\u0027,\u0027#979797\u0027)" + "expression": "if({this.props.enabled},\u0027#000000\u0027,\u0027#979797\u0027)" }, "type": "expr" } }, + "props.style.backgroundColor": { + "binding": { + "config": { + "fallbackDelay": 2.5, + "mode": "indirect", + "references": { + "0": "{view.params.value.tagProps[0]}", + "fc": "{session.custom.fc}" + }, + "tagPath": "[{fc}_SCADA_TAG_PROVIDER]System/{0}/{0}/Jam_Restart_PB_STATE" + }, + "transforms": [ + { + "expression": "coalesce({value},{view.params.forceFaultStatus},0)", + "type": "expression" + }, + { + "fallback": "#D4D4D4", + "inputType": "scalar", + "mappings": [ + { + "input": 4, + "output": "#FFFFFF" + }, + { + "input": 2, + "output": "#FFFFFF" + } + ], + "outputType": "color", + "type": "map" + } + ], + "type": "tag" + } + }, "props.style.borderStyle": { "binding": { "config": { @@ -516,7 +724,6 @@ "width": 32 }, "style": { - "backgroundColor": "#D4D4D4", "borderColor": "#4A4A4A", "borderWidth": 2, "classes": "\n", @@ -539,7 +746,7 @@ "component": { "onActionPerformed": { "config": { - "script": "\ttag_name \u003d self.view.params.value.tagProps[0]\n\ttag_path \u003d \"[\" + self.session.custom.fc+ \"_SCADA_TAG_PROVIDER]\"+tag_name+\"/Setup_Motor_Speeds\"\n\tsystem.tag.writeBlocking([tag_path],[True])" + "script": "\ttag_name \u003d self.view.params.value.tagProps[0]\n\ttag_path \u003d \"[\" + self.session.custom.fc+ \"_SCADA_TAG_PROVIDER]\"+\"System/\"+tag_name +\"/\" + tag_name+\"/Setup_Motor_Speeds\"\n\tsystem.tag.writeBlocking([tag_path],[True])" }, "scope": "G", "type": "script" @@ -576,11 +783,43 @@ "props.image.icon.color": { "binding": { "config": { - "expression": "if({this.props.enabled},\u0027#4A4A4A\u0027,\u0027#979797\u0027)" + "expression": "if({this.props.enabled},\u0027#000000\u0027,\u0027#979797\u0027)" }, "type": "expr" } }, + "props.style.backgroundColor": { + "binding": { + "config": { + "fallbackDelay": 2.5, + "mode": "indirect", + "references": { + "0": "{view.params.value.tagProps[0]}", + "fc": "{session.custom.fc}" + }, + "tagPath": "[{fc}_SCADA_TAG_PROVIDER]System/{0}/{0}/Setup_Motor_Speeds" + }, + "transforms": [ + { + "expression": "coalesce({value},{view.params.forceFaultStatus},0)", + "type": "expression" + }, + { + "fallback": "#D4D4D4", + "inputType": "scalar", + "mappings": [ + { + "input": 1, + "output": "#FFFFFF" + } + ], + "outputType": "color", + "type": "map" + } + ], + "type": "tag" + } + }, "props.style.borderStyle": { "binding": { "config": { @@ -600,7 +839,6 @@ "width": 32 }, "style": { - "backgroundColor": "#D4D4D4", "borderColor": "#4A4A4A", "borderWidth": 2, "classes": "\n", diff --git a/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/Symbol-Views/Controller-Views/CommandControlAlarms/view.json b/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/Symbol-Views/Controller-Views/CommandControlAlarms/view.json index 1e09026..479275f 100644 --- a/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/Symbol-Views/Controller-Views/CommandControlAlarms/view.json +++ b/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/Symbol-Views/Controller-Views/CommandControlAlarms/view.json @@ -3,34 +3,32 @@ "counts": { "Critical": 0, "Diagnostic": 0, - "High": 0, - "Low": 0, + "High": 1, + "Low": 1, "Medium": 0, - "Total": 0 + "Total": 2 }, "totalAlarms": { "$": [ "ds", 192, - 1751448128142 + 1752066852881 ], "$columns": [ { "data": [ + null, "MCM01", - "MCM01", - "MCM01", - "MCM02" + "MCM01" ], "name": "Location", "type": "String" }, { "data": [ - "Diagnostic", + "Low", "High", - "Medium", - "Diagnostic" + "Low" ], "name": "Priority", "type": "String" @@ -38,7 +36,6 @@ { "data": [ 1, - 2, 1, 1 ], @@ -51,7 +48,7 @@ "params": { "value": { "tagProps": [ - "", + "MCM01", "value", "value", "value", @@ -66,35 +63,34 @@ }, "propConfig": { "custom.counts": { - "binding": { - "config": { - "struct": { - "PLC": "{view.params.value.tagProps[0]}" - }, - "waitOnAll": true - }, - "transforms": [ - { - "code": " MCM \u003d value.PLC\n queryData \u003d self.custom.totalAlarms\n\n # Initialize counts\n counts \u003d {\n \"Critical\": 0,\n \"High\": 0,\n \"Medium\": 0,\n \"Low\": 0,\n \"Diagnostic\": 0,\n \"Total\": 0\n }\n\n # Loop through dataset and aggregate\n for row in range(queryData.rowCount):\n mcm_val \u003d queryData.getValueAt(row, 0)\n severity \u003d queryData.getValueAt(row, 1)\n count \u003d queryData.getValueAt(row, 2)\n\n if mcm_val \u003d\u003d MCM:\n \n key \u003d severity.capitalize()\n if key in counts:\n counts[key] +\u003d count\n counts[\"Total\"] +\u003d count\n\n return counts", - "type": "script" - } - ], - "type": "expr-struct" - }, "persistent": true }, "custom.totalAlarms": { "binding": { "config": { + "polling": { + "enabled": true, + "rate": "3" + }, "queryPath": "GetActiveAlarmsByLocationAndPriority" }, "type": "query" }, + "onChange": { + "enabled": null, + "script": "\tMCM \u003d self.params.value.tagProps[0]\n\tqueryData \u003d currentValue.value\n\t\n\t# Initialize counts\n\tcounts \u003d {\n\t \"Critical\": 0,\n\t \"High\": 0,\n\t \"Medium\": 0,\n\t \"Low\": 0,\n\t \"Diagnostic\": 0,\n\t \"Total\": 0\n\t}\n\t\n\t# Loop through dataset and aggregate\n\tfor row in range(queryData.rowCount):\n\t mcm_val \u003d queryData.getValueAt(row, 0)\n\t severity \u003d queryData.getValueAt(row, 1)\n\t count \u003d queryData.getValueAt(row, 2)\n\t\n\t if mcm_val \u003d\u003d MCM:\n\t key \u003d severity.capitalize()\n\t if key in counts:\n\t counts[key] +\u003d count\n\t counts[\"Total\"] +\u003d count\n\t \n\tself.custom.counts \u003d counts" + }, "persistent": true }, "params.value": { "paramDirection": "input", "persistent": true + }, + "params.value.tagProps": { + "onChange": { + "enabled": null, + "script": "\tsystem.perspective.print(currentValue.value[0])" + } } }, "props": { From 98304fc7d9f64b387cb525af02049b85f0535861 Mon Sep 17 00:00:00 2001 From: beka makharadze Date: Wed, 9 Jul 2025 19:16:18 +0400 Subject: [PATCH 5/6] Update MCM docked-east --- .../Information-Docked-East-MCM/view.json | 128 +++--------------- 1 file changed, 19 insertions(+), 109 deletions(-) diff --git a/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/PopUp-Views/Controller-Equipment/Information-Docked-East-MCM/view.json b/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/PopUp-Views/Controller-Equipment/Information-Docked-East-MCM/view.json index 1905b88..90b170a 100644 --- a/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/PopUp-Views/Controller-Equipment/Information-Docked-East-MCM/view.json +++ b/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/PopUp-Views/Controller-Equipment/Information-Docked-East-MCM/view.json @@ -10,12 +10,12 @@ "MCM07" ], "running_state": -1, - "state": 0, + "state": 2, "views_data": [] }, "params": { "tagProps": [ - "MCM", + "System/MCM01/MCM01", "value", "value", "value", @@ -2443,14 +2443,6 @@ } }, "props.style.backgroundColor": { - "binding": { - "config": { - "expression": "if(\r\n {this.props.enabled} \u003d False,\r\n \"#BCBC52\",\r\n if(\r\n {this.props.text} \u003d \"MOTOR FAULT RESET PRESSED\",\r\n \"#FCFF86\",\r\n if(\r\n {this.props.text} \u003d \"MOTOR FAULT RESET\",\r\n \"#DCDC03\",\r\n \"#FFFFFF\"\r\n )\r\n )\r\n)\r\n" - }, - "type": "expr" - } - }, - "props.text": { "binding": { "config": { "fallbackDelay": 2.5, @@ -2467,20 +2459,8 @@ "type": "expression" }, { - "fallback": "MOTOR FAULT RESET", - "inputType": "scalar", - "mappings": [ - { - "input": 2, - "output": "MOTOR FAULT RESET PRESSED" - }, - { - "input": 4, - "output": "MOTOR FAULT RESET PRESSED" - } - ], - "outputType": "scalar", - "type": "map" + "expression": "if(\r\n {this.props.enabled} \u003d False,\r\n \"#BCBC52\",\r\n if(\r\n {value} \u003d 2 || {value} \u003d 4,\r\n \"#FCFF86\",\r\n if(\r\n {value},\r\n \"#DCDC03\",\r\n \"#FFFFFF\"\r\n )\r\n )\r\n)\r\n", + "type": "expression" } ], "type": "tag" @@ -2497,6 +2477,7 @@ "style": { "classes": "Background-Styles/Controller" }, + "text": "MOTOR FAULT RESET", "textStyle": { "color": "#000000" } @@ -2549,14 +2530,6 @@ } }, "props.style.backgroundColor": { - "binding": { - "config": { - "expression": "if(\r\n {this.props.enabled} \u003d False,\r\n \"#BCBC52\",\r\n if(\r\n {this.props.text} \u003d \"POWER BRANCH FAULT RESET PRESSED\",\r\n \"#FCFF86\",\r\n if(\r\n {this.props.text} \u003d \"POWER BRANCH FAULT RESET\",\r\n \"#DCDC03\",\r\n \"#FFFFFF\"\r\n )\r\n )\r\n)\r\n" - }, - "type": "expr" - } - }, - "props.text": { "binding": { "config": { "fallbackDelay": 2.5, @@ -2573,20 +2546,8 @@ "type": "expression" }, { - "fallback": "POWER BRANCH FAULT RESET", - "inputType": "scalar", - "mappings": [ - { - "input": 2, - "output": "POWER BRANCH FAULT RESET PRESSED" - }, - { - "input": 4, - "output": "POWER BRANCH FAULT RESET PRESSED" - } - ], - "outputType": "scalar", - "type": "map" + "expression": "if(\r\n {this.props.enabled} \u003d False,\r\n \"#BCBC52\",\r\n if(\r\n {value} \u003d 2 || {value} \u003d 4,\r\n \"#FCFF86\",\r\n if(\r\n {value},\r\n \"#DCDC03\",\r\n \"#FFFFFF\"\r\n )\r\n )\r\n)\r\n", + "type": "expression" } ], "type": "tag" @@ -2603,6 +2564,7 @@ "style": { "classes": "Background-Styles/Controller" }, + "text": "POWER BRANCH FAULT", "textStyle": { "color": "#000000" } @@ -2655,14 +2617,6 @@ } }, "props.style.backgroundColor": { - "binding": { - "config": { - "expression": "if(\r\n {this.props.enabled} \u003d False,\r\n \"#9090C2\",\r\n if(\r\n {this.props.text} \u003d \"LOW AIR PRESSURE RESET PRESSED\",\r\n \"#5D5DFF\",\r\n if(\r\n {this.props.text} \u003d \"LOW AIR PRESSURE RESET\",\r\n \"#0A0AA4\",\r\n \"#FFFFFF\"\r\n )\r\n )\r\n)\r\n" - }, - "type": "expr" - } - }, - "props.text": { "binding": { "config": { "fallbackDelay": 2.5, @@ -2679,20 +2633,8 @@ "type": "expression" }, { - "fallback": "LOW AIR PRESSURE RESET", - "inputType": "scalar", - "mappings": [ - { - "input": 2, - "output": "LOW AIR PRESSURE RESET PRESSED" - }, - { - "input": 4, - "output": "LOW AIR PRESSURE RESET PRESSED" - } - ], - "outputType": "scalar", - "type": "map" + "expression": "if(\r\n {this.props.enabled} \u003d False,\r\n \"#9090C2\",\r\n if(\r\n {value} \u003d 2 || {value} \u003d 4,\r\n \"#5D5DFF\",\r\n if(\r\n {value},\r\n \"#0A0AA4\",\r\n \"#FFFFFF\"\r\n )\r\n )\r\n)\r\n", + "type": "expression" } ], "type": "tag" @@ -2707,7 +2649,8 @@ }, "style": { "classes": "Background-Styles/Controller" - } + }, + "text": "LOW AIR PRESSURE RESET" }, "type": "ia.input.button" } @@ -2757,14 +2700,6 @@ } }, "props.style.backgroundColor": { - "binding": { - "config": { - "expression": "if(\r\n {this.props.enabled} \u003d False,\r\n \"#A1A1A1\",\r\n if(\r\n {this.props.text} \u003d \"JAM RESTART PRESSED\",\r\n \"#FFFFFF\",\r\n if(\r\n {this.props.text} \u003d \"JAM RESTART\",\r\n \"#D4D4D4\",\r\n \"#FFFFFF\"\r\n )\r\n )\r\n)\r\n" - }, - "type": "expr" - } - }, - "props.text": { "binding": { "config": { "fallbackDelay": 2.5, @@ -2781,20 +2716,8 @@ "type": "expression" }, { - "fallback": "JAM RESTART", - "inputType": "scalar", - "mappings": [ - { - "input": 2, - "output": "JAM RESTART PRESSED" - }, - { - "input": 4, - "output": "" - } - ], - "outputType": "scalar", - "type": "map" + "expression": "if(\r\n {this.props.enabled} \u003d False,\r\n \"#A1A1A1\",\r\n if(\r\n {value} \u003d 2 || {value} \u003d 4,\r\n \"#FFFFFF\",\r\n if(\r\n {value},\r\n \"#D4D4D4\",\r\n \"#FFFFFF\"\r\n )\r\n )\r\n)", + "type": "expression" } ], "type": "tag" @@ -2811,6 +2734,7 @@ "style": { "classes": "Background-Styles/Controller" }, + "text": "JAM RESTART", "textStyle": { "color": "#000000" } @@ -2863,14 +2787,6 @@ } }, "props.style.backgroundColor": { - "binding": { - "config": { - "expression": "if(\r\n {this.props.enabled} \u003d False,\r\n \"#A1A1A1\",\r\n if(\r\n {this.props.text} \u003d \"SETUP MOTOR SPEEDS PRESSED\",\r\n \"#FFFFFF\",\r\n if(\r\n {this.props.text} \u003d \"SETUP MOTOR SPEEDS\",\r\n \"#D4D4D4\",\r\n \"#FFFFFF\"\r\n )\r\n )\r\n)\r\n" - }, - "type": "expr" - } - }, - "props.text": { "binding": { "config": { "fallbackDelay": 2.5, @@ -2887,16 +2803,8 @@ "type": "expression" }, { - "fallback": "SETUP MOTOR SPEEDS", - "inputType": "scalar", - "mappings": [ - { - "input": 1, - "output": "SETUP MOTOR SPEEDS PRESSED" - } - ], - "outputType": "scalar", - "type": "map" + "expression": "if(\r\n {this.props.enabled} \u003d False,\r\n \"#A1A1A1\",\r\n if(\r\n {value} \u003d 1,\r\n \"#FFFFFF\",\r\n \"#D4D4D4\"\r\n )\r\n)\r\n", + "type": "expression" } ], "type": "tag" @@ -2913,6 +2821,7 @@ "style": { "classes": "Background-Styles/Controller" }, + "text": "SETUP MOTOR SPEEDS", "textStyle": { "color": "#000000" } @@ -2977,6 +2886,7 @@ "grow": 1 }, "props": { + "currentTabIndex": 2, "menuType": "modern", "tabSize": { "width": 1000 From 76c3b93ba99b24bb7266953a893da34802cf1547 Mon Sep 17 00:00:00 2001 From: beka makharadze Date: Thu, 10 Jul 2025 15:26:42 +0400 Subject: [PATCH 6/6] Remove script --- .../Enternet Windows/DPMs/MCM04-DPM/view.json | 52 ++++++++++--------- .../Information-Docked-East-MCM/view.json | 4 +- 2 files changed, 30 insertions(+), 26 deletions(-) diff --git a/MTN6_SCADA/com.inductiveautomation.perspective/views/Windows/Tabs/Enternet Windows/DPMs/MCM04-DPM/view.json b/MTN6_SCADA/com.inductiveautomation.perspective/views/Windows/Tabs/Enternet Windows/DPMs/MCM04-DPM/view.json index 4670c93..5da109f 100644 --- a/MTN6_SCADA/com.inductiveautomation.perspective/views/Windows/Tabs/Enternet Windows/DPMs/MCM04-DPM/view.json +++ b/MTN6_SCADA/com.inductiveautomation.perspective/views/Windows/Tabs/Enternet Windows/DPMs/MCM04-DPM/view.json @@ -15,7 +15,7 @@ }, "params": { "tagProps": [ - "MCMVALUE", + "System/MCM04/MCM04", "System/MCM04/Field_Devices/DPM/PRS3_5_DPM1", "System/MCM04/Field_Devices/DPM/PS11_7_DPM1", "System/MCM04/Field_Devices/DPM/VSC_DPM3", @@ -43,7 +43,7 @@ }, "transforms": [ { - "expression": "coalesce({value},{view.params.forceFaultStatus},0)", + "expression": "coalesce({value},{view.params.forceFaultStatus},1)", "type": "expression" }, { @@ -51,7 +51,7 @@ "inputType": "scalar", "mappings": [ { - "input": 1, + "input": 0, "output": true } ], @@ -76,7 +76,7 @@ }, "transforms": [ { - "expression": "coalesce({value},{view.params.forceFaultStatus},0)", + "expression": "coalesce({value},{view.params.forceFaultStatus},1)", "type": "expression" }, { @@ -84,7 +84,7 @@ "inputType": "scalar", "mappings": [ { - "input": 1, + "input": 0, "output": true } ], @@ -109,7 +109,7 @@ }, "transforms": [ { - "expression": "coalesce({value},{view.params.forceFaultStatus},0)", + "expression": "coalesce({value},{view.params.forceFaultStatus},1)", "type": "expression" }, { @@ -117,7 +117,7 @@ "inputType": "scalar", "mappings": [ { - "input": 1, + "input": 0, "output": true } ], @@ -142,7 +142,7 @@ }, "transforms": [ { - "expression": "coalesce({value},{view.params.forceFaultStatus},0)", + "expression": "coalesce({value},{view.params.forceFaultStatus},1)", "type": "expression" }, { @@ -150,7 +150,7 @@ "inputType": "scalar", "mappings": [ { - "input": 1, + "input": 0, "output": true } ], @@ -175,7 +175,7 @@ }, "transforms": [ { - "expression": "coalesce({value},{view.params.forceFaultStatus},0)", + "expression": "coalesce({value},{view.params.forceFaultStatus},1)", "type": "expression" }, { @@ -184,6 +184,10 @@ "mappings": [ { "input": 1, + "output": false + }, + { + "input": 0, "output": true } ], @@ -208,7 +212,7 @@ }, "transforms": [ { - "expression": "coalesce({value},{view.params.forceFaultStatus},0)", + "expression": "coalesce({value},{view.params.forceFaultStatus},1)", "type": "expression" }, { @@ -216,7 +220,7 @@ "inputType": "scalar", "mappings": [ { - "input": 1, + "input": 0, "output": true } ], @@ -241,7 +245,7 @@ }, "transforms": [ { - "expression": "coalesce({value},{view.params.forceFaultStatus},0)", + "expression": "coalesce({value},{view.params.forceFaultStatus},1)", "type": "expression" }, { @@ -249,7 +253,7 @@ "inputType": "scalar", "mappings": [ { - "input": 1, + "input": 0, "output": true } ], @@ -274,7 +278,7 @@ }, "transforms": [ { - "expression": "coalesce({value},{view.params.forceFaultStatus},0)", + "expression": "coalesce({value},{view.params.forceFaultStatus},1)", "type": "expression" }, { @@ -282,7 +286,7 @@ "inputType": "scalar", "mappings": [ { - "input": 1, + "input": 0, "output": true } ], @@ -307,7 +311,7 @@ }, "transforms": [ { - "expression": "coalesce({value},{view.params.forceFaultStatus},0)", + "expression": "coalesce({value},{view.params.forceFaultStatus},1)", "type": "expression" }, { @@ -315,7 +319,7 @@ "inputType": "scalar", "mappings": [ { - "input": 1, + "input": 0, "output": true } ], @@ -340,7 +344,7 @@ }, "transforms": [ { - "expression": "coalesce({value},{view.params.forceFaultStatus},0)", + "expression": "coalesce({value},{view.params.forceFaultStatus},1)", "type": "expression" }, { @@ -348,7 +352,7 @@ "inputType": "scalar", "mappings": [ { - "input": 1, + "input": 0, "output": true } ], @@ -373,7 +377,7 @@ }, "transforms": [ { - "expression": "coalesce({value},{view.params.forceFaultStatus},0)", + "expression": "coalesce({value},{view.params.forceFaultStatus},1)", "type": "expression" }, { @@ -381,7 +385,7 @@ "inputType": "scalar", "mappings": [ { - "input": 1, + "input": 0, "output": true } ], @@ -406,7 +410,7 @@ }, "transforms": [ { - "expression": "coalesce({value},{view.params.forceFaultStatus},0)", + "expression": "coalesce({value},{view.params.forceFaultStatus},1)", "type": "expression" }, { @@ -414,7 +418,7 @@ "inputType": "scalar", "mappings": [ { - "input": 1, + "input": 0, "output": true } ], diff --git a/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/PopUp-Views/Controller-Equipment/Information-Docked-East-MCM/view.json b/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/PopUp-Views/Controller-Equipment/Information-Docked-East-MCM/view.json index 90b170a..5d3f440 100644 --- a/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/PopUp-Views/Controller-Equipment/Information-Docked-East-MCM/view.json +++ b/SCADA_PERSPECTIVE_PARENT_PROJECT/com.inductiveautomation.perspective/views/PopUp-Views/Controller-Equipment/Information-Docked-East-MCM/view.json @@ -10,7 +10,7 @@ "MCM07" ], "running_state": -1, - "state": 2, + "state": 0, "views_data": [] }, "params": { @@ -2676,7 +2676,7 @@ "component": { "onActionPerformed": { "config": { - "script": "\ttag_name \u003d self.view.params.tagProps[0]\n\ttag_path \u003d \"[\" + self.session.custom.fc+ \"_SCADA_TAG_PROVIDER]\"+tag_name+\"/Jam_Restart_PB\"\n\tsystem.tag.writeBlocking([tag_path],[True])\n\tsystem.perspective.print(tag_path)" + "script": "\ttag_name \u003d self.view.params.tagProps[0]\n\ttag_path \u003d \"[\" + self.session.custom.fc+ \"_SCADA_TAG_PROVIDER]\"+tag_name+\"/Jam_Restart_PB\"\n\tsystem.tag.writeBlocking([tag_path],[True])" }, "scope": "G", "type": "script"