From 506b860093a4986d56d66cf8dc6c9f38f71e91ca Mon Sep 17 00:00:00 2001 From: "b.makharadze" <81828475+bmidf@users.noreply.github.com> Date: Thu, 29 May 2025 10:35:42 +0400 Subject: [PATCH] Add S02_130CH and S02_230CH --- .../views/Windows/Status/view.json | 78 ++++++++++++------- .../named-query/Status/Lane Status/query.sql | 27 ++++--- 2 files changed, 61 insertions(+), 44 deletions(-) diff --git a/MTN6_SCADA/com.inductiveautomation.perspective/views/Windows/Status/view.json b/MTN6_SCADA/com.inductiveautomation.perspective/views/Windows/Status/view.json index 04f715c..b5432f7 100644 --- a/MTN6_SCADA/com.inductiveautomation.perspective/views/Windows/Status/view.json +++ b/MTN6_SCADA/com.inductiveautomation.perspective/views/Windows/Status/view.json @@ -3,7 +3,7 @@ "currentTab": null }, "params": { - "Tab_ID": 1, + "Tab_ID": 0, "Table": "Status_tab" }, "propConfig": { @@ -1100,6 +1100,7 @@ "config": { "expression": "now(1000)" }, + "previewEnabled": false, "type": "expr" }, "onChange": { @@ -1454,37 +1455,37 @@ "data": [ { "value": { - "FullCount": 0, - "FullDuration": "00:00:00", - "JamCount": 5, - "JamDuration": "00:00:40", + "FullCount": 1, + "FullDuration": "00:07:48", + "JamCount": 1, + "JamDuration": "00:07:48", "Lane": "S02_101CH" } }, { "value": { - "FullCount": 8, - "FullDuration": "00:01:02", - "JamCount": 8, - "JamDuration": "00:01:16", + "FullCount": 6, + "FullDuration": "00:28:44", + "JamCount": 4, + "JamDuration": "00:27:24", "Lane": "S02_102CH" } }, { "value": { - "FullCount": 1, - "FullDuration": "00:03:02", - "JamCount": 1, - "JamDuration": "00:00:08", + "FullCount": 0, + "FullDuration": "00:00:00", + "JamCount": 0, + "JamDuration": "00:00:00", "Lane": "S02_103CH" } }, { "value": { - "FullCount": 1, - "FullDuration": "00:03:31", - "JamCount": 1, - "JamDuration": "00:04:09", + "FullCount": 0, + "FullDuration": "00:00:00", + "JamCount": 0, + "JamDuration": "00:00:00", "Lane": "S02_104CH" } }, @@ -1535,10 +1536,10 @@ }, { "value": { - "FullCount": 0, - "FullDuration": "00:00:00", - "JamCount": 0, - "JamDuration": "00:00:00", + "FullCount": 1, + "FullDuration": "00:18:19", + "JamCount": 1, + "JamDuration": "00:18:19", "Lane": "S02_110CH" } }, @@ -1706,13 +1707,22 @@ }, { "value": { - "FullCount": 0, - "FullDuration": "00:00:00", + "FullCount": 2, + "FullDuration": "00:00:46", "JamCount": 0, "JamDuration": "00:00:00", "Lane": "S02_129CH" } }, + { + "value": { + "FullCount": 2, + "FullDuration": "00:19:03", + "JamCount": 1, + "JamDuration": "00:00:13", + "Lane": "S02_130CH" + } + }, { "value": { "FullCount": 0, @@ -1973,6 +1983,15 @@ "JamDuration": "00:00:00", "Lane": "S02_229CH" } + }, + { + "value": { + "FullCount": 0, + "FullDuration": "00:00:00", + "JamCount": 0, + "JamDuration": "00:00:00", + "Lane": "S02_230CH" + } } ], "filter": { @@ -2173,7 +2192,6 @@ "y": -0.0011 }, "props": { - "currentTabIndex": 1, "tabs": [ "Enternet", "Lane Status", @@ -3891,7 +3909,7 @@ }, "props": { "dismissOnSelect": false, - "formattedValue": "May 28, 2025 5:12 PM", + "formattedValue": "May 29, 2025 9:57 AM", "formattedValues": { "date": "Mar 26, 2021", "datetime": "Mar 26, 2021 12:00 AM", @@ -3901,9 +3919,9 @@ "$": [ "ts", 192, - 1748439758604 + 1748500031797 ], - "$ts": 1748437958000 + "$ts": 1748498231000 } }, "type": "ia.input.date-time-input" @@ -4051,7 +4069,7 @@ }, "props": { "dismissOnSelect": false, - "formattedValue": "May 28, 2025 5:42 PM", + "formattedValue": "May 29, 2025 10:27 AM", "formattedValues": { "date": "Mar 29, 2021", "datetime": "Mar 29, 2021 1:37 PM", @@ -4061,9 +4079,9 @@ "$": [ "ts", 192, - 1748439758604 + 1748500031797 ], - "$ts": 1748439758000 + "$ts": 1748500031000 } }, "type": "ia.input.date-time-input" diff --git a/MTN6_SCADA/ignition/named-query/Status/Lane Status/query.sql b/MTN6_SCADA/ignition/named-query/Status/Lane Status/query.sql index 001fc15..d479b22 100644 --- a/MTN6_SCADA/ignition/named-query/Status/Lane Status/query.sql +++ b/MTN6_SCADA/ignition/named-query/Status/Lane Status/query.sql @@ -4,14 +4,14 @@ WITH DesiredLanes AS ( SELECT 101 + n AS lane_number FROM ( SELECT a.N + b.N * 10 AS n FROM (SELECT 0 AS N UNION SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4 UNION SELECT 5 UNION SELECT 6 UNION SELECT 7 UNION SELECT 8 UNION SELECT 9) a, - (SELECT 0 AS N UNION SELECT 1 UNION SELECT 2) b - ) numbers WHERE n <= 28 -- 101 to 129 + (SELECT 0 AS N UNION SELECT 1 UNION SELECT 2 UNION SELECT 3) b + ) numbers WHERE n <= 29 -- 101 to 130 UNION SELECT 201 + n FROM ( SELECT a.N + b.N * 10 AS n FROM (SELECT 0 AS N UNION SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4 UNION SELECT 5 UNION SELECT 6 UNION SELECT 7 UNION SELECT 8 UNION SELECT 9) a, - (SELECT 0 AS N UNION SELECT 1 UNION SELECT 2) b - ) numbers WHERE n <= 28 -- 201 to 229 + (SELECT 0 AS N UNION SELECT 1 UNION SELECT 2 UNION SELECT 3) b + ) numbers WHERE n <= 29 -- 201 to 230 ) lanes ), AlarmData AS ( @@ -50,28 +50,28 @@ LaneMapping AS ( WHEN strvalue LIKE '%Chute[%' THEN CASE WHEN CAST(SUBSTRING(strvalue, LOCATE('Chute[', strvalue) + 6, - LOCATE(']', strvalue, LOCATE('Chute[', strvalue)) - LOCATE('Chute[', strvalue) - 6) AS UNSIGNED) BETWEEN 1 AND 29 + LOCATE(']', strvalue, LOCATE('Chute[', strvalue)) - LOCATE('Chute[', strvalue) - 6) AS UNSIGNED) BETWEEN 1 AND 30 THEN 101 + (CAST(SUBSTRING(strvalue, LOCATE('Chute[', strvalue) + 6, LOCATE(']', strvalue, LOCATE('Chute[', strvalue)) - LOCATE('Chute[', strvalue) - 6) AS UNSIGNED) - 1) WHEN CAST(SUBSTRING(strvalue, LOCATE('Chute[', strvalue) + 6, - LOCATE(']', strvalue, LOCATE('Chute[', strvalue)) - LOCATE('Chute[', strvalue) - 6) AS UNSIGNED) BETWEEN 30 AND 59 + LOCATE(']', strvalue, LOCATE('Chute[', strvalue)) - LOCATE('Chute[', strvalue) - 6) AS UNSIGNED) BETWEEN 31 AND 60 THEN 201 + (CAST(SUBSTRING(strvalue, LOCATE('Chute[', strvalue) + 6, LOCATE(']', strvalue, LOCATE('Chute[', strvalue)) - LOCATE('Chute[', strvalue) - 6) AS UNSIGNED) - 31) ELSE NULL END WHEN strvalue LIKE '%Chute[_%' THEN CASE - WHEN CAST(SUBSTRING(strvalue, LOCATE('Chute_', strvalue) + 6) AS UNSIGNED) BETWEEN 1 AND 29 + WHEN CAST(SUBSTRING(strvalue, LOCATE('Chute_', strvalue) + 6) AS UNSIGNED) BETWEEN 1 AND 30 THEN 101 + (CAST(SUBSTRING(strvalue, LOCATE('Chute_', strvalue) + 6) AS UNSIGNED) - 1) - WHEN CAST(SUBSTRING(strvalue, LOCATE('Chute_', strvalue) + 6) AS UNSIGNED) BETWEEN 30 AND 59 + WHEN CAST(SUBSTRING(strvalue, LOCATE('Chute_', strvalue) + 6) AS UNSIGNED) BETWEEN 31 AND 60 THEN 201 + (CAST(SUBSTRING(strvalue, LOCATE('Chute_', strvalue) + 6) AS UNSIGNED) - 31) ELSE NULL END WHEN strvalue LIKE '%Chute%' THEN CASE - WHEN CAST(REGEXP_SUBSTR(strvalue, '[0-9]+') AS UNSIGNED) BETWEEN 1 AND 29 + WHEN CAST(REGEXP_SUBSTR(strvalue, '[0-9]+') AS UNSIGNED) BETWEEN 1 AND 30 THEN 101 + (CAST(REGEXP_SUBSTR(strvalue, '[0-9]+') AS UNSIGNED) - 1) - WHEN CAST(REGEXP_SUBSTR(strvalue, '[0-9]+') AS UNSIGNED) BETWEEN 30 AND 59 + WHEN CAST(REGEXP_SUBSTR(strvalue, '[0-9]+') AS UNSIGNED) BETWEEN 31 AND 60 THEN 201 + (CAST(REGEXP_SUBSTR(strvalue, '[0-9]+') AS UNSIGNED) - 31) ELSE NULL END @@ -80,9 +80,8 @@ LaneMapping AS ( FROM alarm_event_data WHERE propname = 'Tag' AND strvalue LIKE '%Chute%' ), --- Pre-aggregate jam and full events separately to avoid cross-joins JamEvents AS ( - SELECT + SELECT DISTINCT lm.lane_number, ad.event_uuid, ad.active_time, @@ -93,14 +92,14 @@ JamEvents AS ( WHERE aed.propname = 'Jam' AND aed.strvalue = '1' ), FullEvents AS ( - SELECT + SELECT DISTINCT lm.lane_number, ad.event_uuid, ad.active_time, ad.clear_time FROM LaneMapping lm INNER JOIN AlarmData ad ON lm.record_id = ad.record_id - INNER JOIN alarm_event_data aed ON ad.record_id = aed.id + INNER JOIN alarm_event_data aed ON ad.record_id = ad.record_id WHERE aed.propname = 'Full' AND aed.strvalue = '1' ), Aggregated AS (