diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/COMMON/Faceplate/vac_warning_error.bob b/NON-APPROVED/COMMON/DEVICES/vacuum/COMMON/Faceplate/vac_warning_error.bob
index 29097058248998bccc1155c5dae20706df8e9436..c6cb1d15c9ad399fac5f2883203b850b7724ff1c 100644
--- a/NON-APPROVED/COMMON/DEVICES/vacuum/COMMON/Faceplate/vac_warning_error.bob
+++ b/NON-APPROVED/COMMON/DEVICES/vacuum/COMMON/Faceplate/vac_warning_error.bob
@@ -95,7 +95,7 @@
         </rule>
       </rules>
       <scripts>
-        <script file="$(WIDGET_ROOT)/$(WIDGET)/error.js">
+        <script file="$(WIDGET_ROOT)/$(WIDGET)/error.py">
           <pv_name>$(vacPREFIX):ErrorR</pv_name>
           <pv_name>$(vacPREFIX):ErrorCodeR</pv_name>
         </script>
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vpg/error.js b/NON-APPROVED/COMMON/DEVICES/vacuum/vpg/error.js
deleted file mode 100644
index 32e9ffa81170ba506d71be52055842d2d0ec485d..0000000000000000000000000000000000000000
--- a/NON-APPROVED/COMMON/DEVICES/vacuum/vpg/error.js
+++ /dev/null
@@ -1,76 +0,0 @@
-PVUtil = org.csstudio.display.builder.runtime.script.PVUtil;
-ScriptUtil = org.csstudio.display.builder.runtime.script.ScriptUtil;
-
-var errorMsg  = "";
-var errorCode = 0;
-
-if (PVUtil.getLong(pvs[0]))
-	errorCode = PVUtil.getLong(pvs[1]);
-
-switch (errorCode) {
-	case 99:
-		errorMsg = "Hardware Interlock";
-		break;
-	case 98:
-		errorMsg = "Software Interlock";
-		break;
-	case 97:
-		errorMsg = "Turbo-Pumps Controller Error";
-		break;
-	case 96:
-		errorMsg = "Power Supply Error";
-		break;
-	case 95:
-		errorMsg = "High Vacuum Manifold Vented - Pressure Interlock";
-		break;
-	case 94:
-		errorMsg = "Low Vacuum Manifold Vented - Pressure Interlock";
-		break;
-	case 93:
-		errorMsg = "93";
-		break;
-	case 92:
-		errorMsg = "Primary Pump Error";
-		break;
-	case 91:
-		errorMsg = "Primary Pump / Valve Error";
-		break;
-	case 90:
-		errorMsg = "Turbo-Pumps Not Available";
-		break;
-	case 89:
-		errorMsg = "Max Auto-Restart";
-		break;
-	case 88:
-		errorMsg = "Back-Up Primary Pumping System Error";
-		break;
-	case 15:
-		errorMsg = "Mode Selection Error - Vacuum Sector Vented";
-		break;
-	case 14:
-		errorMsg = "Mode Selection Error - Vacuum Sector Under Vacuum";
-		break;
-	case 13:
-		errorMsg = "Primary Pumping System: Rescue Primary System is Off";
-		break;
-	case 12:
-		errorMsg = "Primary Pumping System: Rescue Primary Not Available";
-		break;
-	case 11:
-		errorMsg = "Primary Pumping System: Primary Pump / Valve Error";
-		break;
-	case 10:
-		errorMsg = "Primary Pumping System: Start Disable";
-		break;
-
-	case 0:
-		break;
-	default:
-		errorMsg = "Error Code: " + PVUtil.getString(pvs[1]);
-		org.csstudio.display.builder.runtime.script.ScriptUtil.getLogger().severe("Unknown error code " + pvs[1] + " : " + errorCode);
-		break;
-}
-
-if (widget.getType() != "action_button")
-	widget.setPropertyValue("text", errorMsg);
-widget.setPropertyValue("tooltip", errorMsg);
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vpg/error.py b/NON-APPROVED/COMMON/DEVICES/vacuum/vpg/error.py
new file mode 100644
index 0000000000000000000000000000000000000000..db8a9fc161071fbfde3aee1488537d796252ed3f
--- /dev/null
+++ b/NON-APPROVED/COMMON/DEVICES/vacuum/vpg/error.py
@@ -0,0 +1,42 @@
+#Generated from VACUUM_VAC-VPG.def at 2020-06-11_16:29:09
+from org.csstudio.display.builder.runtime.script import PVUtil, ScriptUtil
+
+msg  = ""
+code = 0
+
+if PVUtil.getLong(pvs[0]):
+    code = PVUtil.getLong(pvs[1])
+
+    msgs = dict({
+                 99 : "Hardware Interlock",
+                 98 : "Software Interlock",
+                 97 : "Turbo-Pumps Controller Error",
+                 96 : "Power Supply Error",
+                 95 : "High Vacuum Manifold Vented - Pressure Interlock",
+                 94 : "Low Vacuum Manifold Vented - Pressure Interlock",
+                 92 : "Primary Pump Error",
+                 91 : "Primary Pump / Valve Error",
+                 90 : "Turbo-Pumps Not Available",
+                 89 : "Max Auto-Restart",
+                 88 : "Back-Up Primary Pumping System Error",
+                 15 : "Mode Selection Error - Vacuum Sector Vented",
+                 14 : "Mode Selection Error - Vacuum Sector Under Vacuum",
+                 13 : "Primary Pumping System: Rescue Primary System is Off",
+                 12 : "Primary Pumping System: Rescue Primary Not Available",
+                 11 : "Primary Pumping System: Primary Pump / Valve Error",
+                 10 : "Primary Pumping System: Start Disable",
+                 0 : ""
+                })
+
+    try:
+        msg = msgs[code]
+    except KeyError:
+        msg = "Error Code: " + PVUtil.getString(pvs[1])
+        ScriptUtil.getLogger().severe("Unknown error code {} : {}".format(pvs[1], code))
+
+try:
+    pvs[2].setValue(msg)
+except:
+    if widget.getType() != "action_button":
+        widget.setPropertyValue("text", msg)
+    widget.setPropertyValue("tooltip", msg)
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vpg/vac-vpg.bob b/NON-APPROVED/COMMON/DEVICES/vacuum/vpg/vac-vpg.bob
index f978f0dd469584a90b4719bfb6f137bc7de84218..7b9958a382a66748ad55d8ba69fcc2192c5a883e 100644
--- a/NON-APPROVED/COMMON/DEVICES/vacuum/vpg/vac-vpg.bob
+++ b/NON-APPROVED/COMMON/DEVICES/vacuum/vpg/vac-vpg.bob
@@ -697,7 +697,7 @@
     <actions>
     </actions>
     <scripts>
-      <script file="error.js">
+      <script file="error.py">
         <pv_name>$(vacPREFIX):ErrorR</pv_name>
         <pv_name>$(vacPREFIX):ErrorCodeR</pv_name>
       </script>
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vpp-vpdp/Faceplate/vac-vpdp-popup.bob b/NON-APPROVED/COMMON/DEVICES/vacuum/vpp-vpdp/Faceplate/vac-vpdp-popup.bob
index c28082e57fe2b838d5f27b28d3e7ade514749936..153e3f4485891979d4594f6e32b1d12c7a32e2a3 100644
--- a/NON-APPROVED/COMMON/DEVICES/vacuum/vpp-vpdp/Faceplate/vac-vpdp-popup.bob
+++ b/NON-APPROVED/COMMON/DEVICES/vacuum/vpp-vpdp/Faceplate/vac-vpdp-popup.bob
@@ -216,7 +216,7 @@
     <actions>
     </actions>
     <scripts>
-      <script file="../error.js">
+      <script file="../error.py">
         <pv_name>$(vacPREFIX):ErrorR</pv_name>
         <pv_name>$(vacPREFIX):ErrorCodeR</pv_name>
       </script>
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vpp-vpdp/error.js b/NON-APPROVED/COMMON/DEVICES/vacuum/vpp-vpdp/error.js
deleted file mode 100644
index 9b4bf83d8da0484bc595d55fc435a86acdd1ffc3..0000000000000000000000000000000000000000
--- a/NON-APPROVED/COMMON/DEVICES/vacuum/vpp-vpdp/error.js
+++ /dev/null
@@ -1,55 +0,0 @@
-PVUtil = org.csstudio.display.builder.runtime.script.PVUtil;
-ScriptUtil = org.csstudio.display.builder.runtime.script.ScriptUtil;
-
-var errorMsg  = "";
-var errorCode = 0;
-
-if (PVUtil.getLong(pvs[0]))
-	errorCode = PVUtil.getLong(pvs[1]);
-
-switch (errorCode) {
-	case 99:
-		errorMsg = "Controller Error (Hardware Error)";
-		break;
-	case 98:
-		errorMsg = "Pressure Interlock";
-		break;
-	case 97:
-		errorMsg = "Hardware Interlock";
-		break;
-	case 96:
-		errorMsg = "Software Interlock";
-		break;
-	case 95:
-		errorMsg = "Circuit Breaker Tripped";
-		break;
-	case 49:
-		errorMsg = "Controller Error (Hardware Error) - Auto Reset";
-		break;
-	case 48:
-		errorMsg = "Pressure Interlock - Auto Reset";
-		break;
-	case 47:
-		errorMsg = "Hardware Interlock - Auto Reset";
-		break;
-	case 46:
-		errorMsg = "Software Interlock - Auto Reset";
-		break;
-	case 2:
-		errorMsg = 'Pump Disconnected - Auto Reset (for Primary Pump Controller Type "Hilko Spoelstra")';
-		break;
-	case 1:
-		errorMsg = 'Local Control - Auto Reset (for Primary Pump Controller Type "Hilko Spoelstra")';
-		break;
-
-	case 0:
-		break;
-	default:
-		errorMsg = "Error Code: " + PVUtil.getString(pvs[1]);
-		org.csstudio.display.builder.runtime.script.ScriptUtil.getLogger().severe("Unknown error code " + pvs[1] + " : " + errorCode);
-		break;
-}
-
-if (widget.getType() != "action_button")
-	widget.setPropertyValue("text", errorMsg);
-widget.setPropertyValue("tooltip", errorMsg);
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vpp-vpdp/error.py b/NON-APPROVED/COMMON/DEVICES/vacuum/vpp-vpdp/error.py
new file mode 100644
index 0000000000000000000000000000000000000000..fd07195aa9bfd856a4b91c264438c3208533f047
--- /dev/null
+++ b/NON-APPROVED/COMMON/DEVICES/vacuum/vpp-vpdp/error.py
@@ -0,0 +1,36 @@
+#Generated from VACUUM_VAC-VPP_VAC-VPDP.def at 2020-06-11_16:17:53
+from org.csstudio.display.builder.runtime.script import PVUtil, ScriptUtil
+
+msg  = ""
+code = 0
+
+if PVUtil.getLong(pvs[0]):
+    code = PVUtil.getLong(pvs[1])
+
+    msgs = dict({
+                 99 : "Controller Error (Hardware Error)",
+                 98 : "Pressure Interlock",
+                 97 : "Hardware Interlock",
+                 96 : "Software Interlock",
+                 95 : "Circuit Breaker Tripped",
+                 49 : "Controller Error (Hardware Error) - Auto Reset",
+                 48 : "Pressure Interlock - Auto Reset",
+                 47 : "Hardware Interlock - Auto Reset",
+                 46 : "Software Interlock - Auto Reset",
+                 2 : 'Pump Disconnected - Auto Reset (for Primary Pump Controller Type "Hilko Spoelstra")',
+                 1 : 'Local Control - Auto Reset (for Primary Pump Controller Type "Hilko Spoelstra")',
+                 0 : ""
+                })
+
+    try:
+        msg = msgs[code]
+    except KeyError:
+        msg = "Error Code: " + PVUtil.getString(pvs[1])
+        ScriptUtil.getLogger().severe("Unknown error code {} : {}".format(pvs[1], code))
+
+try:
+    pvs[2].setValue(msg)
+except:
+    if widget.getType() != "action_button":
+        widget.setPropertyValue("text", msg)
+    widget.setPropertyValue("tooltip", msg)
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vpt/Faceplate/vac-vpt-popup.bob b/NON-APPROVED/COMMON/DEVICES/vacuum/vpt/Faceplate/vac-vpt-popup.bob
index f57af9d2bed0d33020fb23cc5d3d299c006aaaf7..d1ad44d3de906909c55d4750492f4df54e5da705 100644
--- a/NON-APPROVED/COMMON/DEVICES/vacuum/vpt/Faceplate/vac-vpt-popup.bob
+++ b/NON-APPROVED/COMMON/DEVICES/vacuum/vpt/Faceplate/vac-vpt-popup.bob
@@ -336,7 +336,7 @@
     <actions>
     </actions>
     <scripts>
-      <script file="$(WIDGET_ROOT)/vpt/error.js">
+      <script file="$(WIDGET_ROOT)/vpt/error.py">
         <pv_name>$(vacPREFIX):ErrorR</pv_name>
         <pv_name>$(vacPREFIX):ErrorCodeR</pv_name>
       </script>
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vpt/error.js b/NON-APPROVED/COMMON/DEVICES/vacuum/vpt/error.js
deleted file mode 100644
index a9e35eadb9359d6779aef5bd43667b7414bdcbd3..0000000000000000000000000000000000000000
--- a/NON-APPROVED/COMMON/DEVICES/vacuum/vpt/error.js
+++ /dev/null
@@ -1,46 +0,0 @@
-PVUtil = org.csstudio.display.builder.runtime.script.PVUtil;
-ScriptUtil = org.csstudio.display.builder.runtime.script.ScriptUtil;
-
-var errorMsg  = "";
-var errorCode = 0;
-
-if (PVUtil.getLong(pvs[0]))
-	errorCode = PVUtil.getLong(pvs[1]);
-
-switch (errorCode) {
-	case 99:
-		errorMsg = "Controller Error (Hardware Error)";
-		break;
-	case 98:
-		errorMsg = "Pressure Interlock";
-		break;
-	case 97:
-		errorMsg = "Hardware Interlock";
-		break;
-	case 96:
-		errorMsg = "Software Interlock";
-		break;
-	case 49:
-		errorMsg = "Controller Error (Hardware Error) - Auto Reset";
-		break;
-	case 48:
-		errorMsg = "Pressure Interlock - Auto Reset";
-		break;
-	case 47:
-		errorMsg = "Hardware Interlock - Auto Reset";
-		break;
-	case 46:
-		errorMsg = "Software Interlock - Auto Reset";
-		break;
-
-	case 0:
-		break;
-	default:
-		errorMsg = "Error Code: " + PVUtil.getString(pvs[1]);
-		org.csstudio.display.builder.runtime.script.ScriptUtil.getLogger().severe("Unknown error code " + pvs[1] + " : " + errorCode);
-		break;
-}
-
-if (widget.getType() != "action_button")
-	widget.setPropertyValue("text", errorMsg);
-widget.setPropertyValue("tooltip", errorMsg);
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vpt/error.py b/NON-APPROVED/COMMON/DEVICES/vacuum/vpt/error.py
new file mode 100644
index 0000000000000000000000000000000000000000..ffeb37de2ecbfafd625606ee623f2657203b7532
--- /dev/null
+++ b/NON-APPROVED/COMMON/DEVICES/vacuum/vpt/error.py
@@ -0,0 +1,33 @@
+#Generated from VACUUM_VAC-VPT.def at 2020-06-11_16:17:27
+from org.csstudio.display.builder.runtime.script import PVUtil, ScriptUtil
+
+msg  = ""
+code = 0
+
+if PVUtil.getLong(pvs[0]):
+    code = PVUtil.getLong(pvs[1])
+
+    msgs = dict({
+                 99 : "Controller Error (Hardware Error)",
+                 98 : "Pressure Interlock",
+                 97 : "Hardware Interlock",
+                 96 : "Software Interlock",
+                 49 : "Controller Error (Hardware Error) - Auto Reset",
+                 48 : "Pressure Interlock - Auto Reset",
+                 47 : "Hardware Interlock - Auto Reset",
+                 46 : "Software Interlock - Auto Reset",
+                 0 : ""
+                })
+
+    try:
+        msg = msgs[code]
+    except KeyError:
+        msg = "Error Code: " + PVUtil.getString(pvs[1])
+        ScriptUtil.getLogger().severe("Unknown error code {} : {}".format(pvs[1], code))
+
+try:
+    pvs[2].setValue(msg)
+except:
+    if widget.getType() != "action_button":
+        widget.setPropertyValue("text", msg)
+    widget.setPropertyValue("tooltip", msg)
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vva-vvf-vvg/Faceplate/vac-vv-popup.bob b/NON-APPROVED/COMMON/DEVICES/vacuum/vva-vvf-vvg/Faceplate/vac-vv-popup.bob
index 8e895b8d9ce5cbeac9a1576cbf37b5d9bc1fb1a5..d2d182709a154e4c694ba5837c06ad1acbe0e942 100644
--- a/NON-APPROVED/COMMON/DEVICES/vacuum/vva-vvf-vvg/Faceplate/vac-vv-popup.bob
+++ b/NON-APPROVED/COMMON/DEVICES/vacuum/vva-vvf-vvg/Faceplate/vac-vv-popup.bob
@@ -238,7 +238,7 @@
     <actions>
     </actions>
     <scripts>
-      <script file="$(WIDGET_ROOT)/$(WIDGET)/error.js">
+      <script file="$(WIDGET_ROOT)/$(WIDGET)/error.py">
         <pv_name>$(vacPREFIX):ErrorR</pv_name>
         <pv_name>$(vacPREFIX):ErrorCodeR</pv_name>
       </script>
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vva/error.js b/NON-APPROVED/COMMON/DEVICES/vacuum/vva/error.js
deleted file mode 100644
index 9a17abce98dbef1d98acd42c5e24b726da3bd04c..0000000000000000000000000000000000000000
--- a/NON-APPROVED/COMMON/DEVICES/vacuum/vva/error.js
+++ /dev/null
@@ -1,64 +0,0 @@
-PVUtil = org.csstudio.display.builder.runtime.script.PVUtil;
-ScriptUtil = org.csstudio.display.builder.runtime.script.ScriptUtil;
-
-var errorMsg  = "";
-var errorCode = 0;
-
-if (PVUtil.getLong(pvs[0]))
-	errorCode = PVUtil.getLong(pvs[1]);
-
-switch (errorCode) {
-	case 99:
-		errorMsg = "Open / On Status & Closed / Off Status Both Active";
-		break;
-	case 98:
-		errorMsg = "Valve Not Closed";
-		break;
-	case 97:
-		errorMsg = "Pressure Interlock No. 1";
-		break;
-	case 96:
-		errorMsg = "Hardware Interlock No. 1";
-		break;
-	case 95:
-		errorMsg = "Pressure Interlock No. 2";
-		break;
-	case 94:
-		errorMsg = "Hardware Interlock No. 2";
-		break;
-	case 93:
-		errorMsg = "Hardware Interlock No. 3";
-		break;
-	case 92:
-		errorMsg = 'Software Interlock (From "External" PLC Function)';
-		break;
-	case 49:
-		errorMsg = "Pressure Interlock No. 1 - Auto Reset";
-		break;
-	case 48:
-		errorMsg = "Hardware Interlock No. 1 - Auto Reset";
-		break;
-	case 47:
-		errorMsg = "Pressure Interlock No. 2 - Auto Reset";
-		break;
-	case 46:
-		errorMsg = "Hardware Interlock No. 2 - Auto Reset";
-		break;
-	case 45:
-		errorMsg = "Hardware Interlock No. 3 - Auto Reset";
-		break;
-	case 44:
-		errorMsg = "Software Interlock - Auto Reset";
-		break;
-
-	case 0:
-		break;
-	default:
-		errorMsg = "Error Code: " + PVUtil.getString(pvs[1]);
-		org.csstudio.display.builder.runtime.script.ScriptUtil.getLogger().severe("Unknown error code " + pvs[1] + " : " + errorCode);
-		break;
-}
-
-if (widget.getType() != "action_button")
-	widget.setPropertyValue("text", errorMsg);
-widget.setPropertyValue("tooltip", errorMsg);
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vva/error.py b/NON-APPROVED/COMMON/DEVICES/vacuum/vva/error.py
new file mode 100644
index 0000000000000000000000000000000000000000..2a3aac14e2b567016ac3bf47d0ca0a1500fda71b
--- /dev/null
+++ b/NON-APPROVED/COMMON/DEVICES/vacuum/vva/error.py
@@ -0,0 +1,39 @@
+#Generated from VACUUM_VAC-VVA_VAC-VVG.def at 2020-06-11_16:15:17
+from org.csstudio.display.builder.runtime.script import PVUtil, ScriptUtil
+
+msg  = ""
+code = 0
+
+if PVUtil.getLong(pvs[0]):
+    code = PVUtil.getLong(pvs[1])
+
+    msgs = dict({
+                 99 : "Open Status & Closed Status Both Active",
+                 98 : "Valve Not Closed",
+                 97 : "Pressure Interlock No. 1",
+                 96 : "Hardware Interlock No. 1",
+                 95 : "Pressure Interlock No. 2",
+                 94 : "Hardware Interlock No. 2",
+                 93 : "Hardware Interlock No. 3",
+                 92 : 'Software Interlock (From "External" PLC Function)',
+                 49 : "Pressure Interlock No. 1 - Auto Reset",
+                 48 : "Hardware Interlock No. 1 - Auto Reset",
+                 47 : "Pressure Interlock No. 2 - Auto Reset",
+                 46 : "Hardware Interlock No. 2 - Auto Reset",
+                 45 : "Hardware Interlock No. 3 - Auto Reset",
+                 44 : "Software Interlock - Auto Reset",
+                 0 : ""
+                })
+
+    try:
+        msg = msgs[code]
+    except KeyError:
+        msg = "Error Code: " + PVUtil.getString(pvs[1])
+        ScriptUtil.getLogger().severe("Unknown error code {} : {}".format(pvs[1], code))
+
+try:
+    pvs[2].setValue(msg)
+except:
+    if widget.getType() != "action_button":
+        widget.setPropertyValue("text", msg)
+    widget.setPropertyValue("tooltip", msg)
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vvf/error.js b/NON-APPROVED/COMMON/DEVICES/vacuum/vvf/error.js
deleted file mode 100644
index 9a17abce98dbef1d98acd42c5e24b726da3bd04c..0000000000000000000000000000000000000000
--- a/NON-APPROVED/COMMON/DEVICES/vacuum/vvf/error.js
+++ /dev/null
@@ -1,64 +0,0 @@
-PVUtil = org.csstudio.display.builder.runtime.script.PVUtil;
-ScriptUtil = org.csstudio.display.builder.runtime.script.ScriptUtil;
-
-var errorMsg  = "";
-var errorCode = 0;
-
-if (PVUtil.getLong(pvs[0]))
-	errorCode = PVUtil.getLong(pvs[1]);
-
-switch (errorCode) {
-	case 99:
-		errorMsg = "Open / On Status & Closed / Off Status Both Active";
-		break;
-	case 98:
-		errorMsg = "Valve Not Closed";
-		break;
-	case 97:
-		errorMsg = "Pressure Interlock No. 1";
-		break;
-	case 96:
-		errorMsg = "Hardware Interlock No. 1";
-		break;
-	case 95:
-		errorMsg = "Pressure Interlock No. 2";
-		break;
-	case 94:
-		errorMsg = "Hardware Interlock No. 2";
-		break;
-	case 93:
-		errorMsg = "Hardware Interlock No. 3";
-		break;
-	case 92:
-		errorMsg = 'Software Interlock (From "External" PLC Function)';
-		break;
-	case 49:
-		errorMsg = "Pressure Interlock No. 1 - Auto Reset";
-		break;
-	case 48:
-		errorMsg = "Hardware Interlock No. 1 - Auto Reset";
-		break;
-	case 47:
-		errorMsg = "Pressure Interlock No. 2 - Auto Reset";
-		break;
-	case 46:
-		errorMsg = "Hardware Interlock No. 2 - Auto Reset";
-		break;
-	case 45:
-		errorMsg = "Hardware Interlock No. 3 - Auto Reset";
-		break;
-	case 44:
-		errorMsg = "Software Interlock - Auto Reset";
-		break;
-
-	case 0:
-		break;
-	default:
-		errorMsg = "Error Code: " + PVUtil.getString(pvs[1]);
-		org.csstudio.display.builder.runtime.script.ScriptUtil.getLogger().severe("Unknown error code " + pvs[1] + " : " + errorCode);
-		break;
-}
-
-if (widget.getType() != "action_button")
-	widget.setPropertyValue("text", errorMsg);
-widget.setPropertyValue("tooltip", errorMsg);
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vvf/error.py b/NON-APPROVED/COMMON/DEVICES/vacuum/vvf/error.py
new file mode 100644
index 0000000000000000000000000000000000000000..2a3aac14e2b567016ac3bf47d0ca0a1500fda71b
--- /dev/null
+++ b/NON-APPROVED/COMMON/DEVICES/vacuum/vvf/error.py
@@ -0,0 +1,39 @@
+#Generated from VACUUM_VAC-VVA_VAC-VVG.def at 2020-06-11_16:15:17
+from org.csstudio.display.builder.runtime.script import PVUtil, ScriptUtil
+
+msg  = ""
+code = 0
+
+if PVUtil.getLong(pvs[0]):
+    code = PVUtil.getLong(pvs[1])
+
+    msgs = dict({
+                 99 : "Open Status & Closed Status Both Active",
+                 98 : "Valve Not Closed",
+                 97 : "Pressure Interlock No. 1",
+                 96 : "Hardware Interlock No. 1",
+                 95 : "Pressure Interlock No. 2",
+                 94 : "Hardware Interlock No. 2",
+                 93 : "Hardware Interlock No. 3",
+                 92 : 'Software Interlock (From "External" PLC Function)',
+                 49 : "Pressure Interlock No. 1 - Auto Reset",
+                 48 : "Hardware Interlock No. 1 - Auto Reset",
+                 47 : "Pressure Interlock No. 2 - Auto Reset",
+                 46 : "Hardware Interlock No. 2 - Auto Reset",
+                 45 : "Hardware Interlock No. 3 - Auto Reset",
+                 44 : "Software Interlock - Auto Reset",
+                 0 : ""
+                })
+
+    try:
+        msg = msgs[code]
+    except KeyError:
+        msg = "Error Code: " + PVUtil.getString(pvs[1])
+        ScriptUtil.getLogger().severe("Unknown error code {} : {}".format(pvs[1], code))
+
+try:
+    pvs[2].setValue(msg)
+except:
+    if widget.getType() != "action_button":
+        widget.setPropertyValue("text", msg)
+    widget.setPropertyValue("tooltip", msg)
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vvg/error.js b/NON-APPROVED/COMMON/DEVICES/vacuum/vvg/error.js
deleted file mode 100644
index 9a17abce98dbef1d98acd42c5e24b726da3bd04c..0000000000000000000000000000000000000000
--- a/NON-APPROVED/COMMON/DEVICES/vacuum/vvg/error.js
+++ /dev/null
@@ -1,64 +0,0 @@
-PVUtil = org.csstudio.display.builder.runtime.script.PVUtil;
-ScriptUtil = org.csstudio.display.builder.runtime.script.ScriptUtil;
-
-var errorMsg  = "";
-var errorCode = 0;
-
-if (PVUtil.getLong(pvs[0]))
-	errorCode = PVUtil.getLong(pvs[1]);
-
-switch (errorCode) {
-	case 99:
-		errorMsg = "Open / On Status & Closed / Off Status Both Active";
-		break;
-	case 98:
-		errorMsg = "Valve Not Closed";
-		break;
-	case 97:
-		errorMsg = "Pressure Interlock No. 1";
-		break;
-	case 96:
-		errorMsg = "Hardware Interlock No. 1";
-		break;
-	case 95:
-		errorMsg = "Pressure Interlock No. 2";
-		break;
-	case 94:
-		errorMsg = "Hardware Interlock No. 2";
-		break;
-	case 93:
-		errorMsg = "Hardware Interlock No. 3";
-		break;
-	case 92:
-		errorMsg = 'Software Interlock (From "External" PLC Function)';
-		break;
-	case 49:
-		errorMsg = "Pressure Interlock No. 1 - Auto Reset";
-		break;
-	case 48:
-		errorMsg = "Hardware Interlock No. 1 - Auto Reset";
-		break;
-	case 47:
-		errorMsg = "Pressure Interlock No. 2 - Auto Reset";
-		break;
-	case 46:
-		errorMsg = "Hardware Interlock No. 2 - Auto Reset";
-		break;
-	case 45:
-		errorMsg = "Hardware Interlock No. 3 - Auto Reset";
-		break;
-	case 44:
-		errorMsg = "Software Interlock - Auto Reset";
-		break;
-
-	case 0:
-		break;
-	default:
-		errorMsg = "Error Code: " + PVUtil.getString(pvs[1]);
-		org.csstudio.display.builder.runtime.script.ScriptUtil.getLogger().severe("Unknown error code " + pvs[1] + " : " + errorCode);
-		break;
-}
-
-if (widget.getType() != "action_button")
-	widget.setPropertyValue("text", errorMsg);
-widget.setPropertyValue("tooltip", errorMsg);
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vvg/error.py b/NON-APPROVED/COMMON/DEVICES/vacuum/vvg/error.py
new file mode 100644
index 0000000000000000000000000000000000000000..2a3aac14e2b567016ac3bf47d0ca0a1500fda71b
--- /dev/null
+++ b/NON-APPROVED/COMMON/DEVICES/vacuum/vvg/error.py
@@ -0,0 +1,39 @@
+#Generated from VACUUM_VAC-VVA_VAC-VVG.def at 2020-06-11_16:15:17
+from org.csstudio.display.builder.runtime.script import PVUtil, ScriptUtil
+
+msg  = ""
+code = 0
+
+if PVUtil.getLong(pvs[0]):
+    code = PVUtil.getLong(pvs[1])
+
+    msgs = dict({
+                 99 : "Open Status & Closed Status Both Active",
+                 98 : "Valve Not Closed",
+                 97 : "Pressure Interlock No. 1",
+                 96 : "Hardware Interlock No. 1",
+                 95 : "Pressure Interlock No. 2",
+                 94 : "Hardware Interlock No. 2",
+                 93 : "Hardware Interlock No. 3",
+                 92 : 'Software Interlock (From "External" PLC Function)',
+                 49 : "Pressure Interlock No. 1 - Auto Reset",
+                 48 : "Hardware Interlock No. 1 - Auto Reset",
+                 47 : "Pressure Interlock No. 2 - Auto Reset",
+                 46 : "Hardware Interlock No. 2 - Auto Reset",
+                 45 : "Hardware Interlock No. 3 - Auto Reset",
+                 44 : "Software Interlock - Auto Reset",
+                 0 : ""
+                })
+
+    try:
+        msg = msgs[code]
+    except KeyError:
+        msg = "Error Code: " + PVUtil.getString(pvs[1])
+        ScriptUtil.getLogger().severe("Unknown error code {} : {}".format(pvs[1], code))
+
+try:
+    pvs[2].setValue(msg)
+except:
+    if widget.getType() != "action_button":
+        widget.setPropertyValue("text", msg)
+    widget.setPropertyValue("tooltip", msg)
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vvs/Faceplate/vac-vvs-popup.bob b/NON-APPROVED/COMMON/DEVICES/vacuum/vvs/Faceplate/vac-vvs-popup.bob
index 2c990c25439f8c462423b4915e30d5fe825a3325..54fbb95bb54adafeb2ae021641b6b5d60f250148 100644
--- a/NON-APPROVED/COMMON/DEVICES/vacuum/vvs/Faceplate/vac-vvs-popup.bob
+++ b/NON-APPROVED/COMMON/DEVICES/vacuum/vvs/Faceplate/vac-vvs-popup.bob
@@ -109,7 +109,7 @@
     <actions>
     </actions>
     <scripts>
-      <script file="../error.js">
+      <script file="../error.py">
         <pv_name>$(vacPREFIX):ErrorR</pv_name>
         <pv_name>$(vacPREFIX):ErrorCodeR</pv_name>
       </script>
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vvs/Faceplate/vac_vvs.bob b/NON-APPROVED/COMMON/DEVICES/vacuum/vvs/Faceplate/vac_vvs.bob
index 8edc13fd5799d5cdaaf024b8bf323ce7097c1da9..4bb4f34f75b665a074c310312ebdd3a0d694be6c 100644
--- a/NON-APPROVED/COMMON/DEVICES/vacuum/vvs/Faceplate/vac_vvs.bob
+++ b/NON-APPROVED/COMMON/DEVICES/vacuum/vvs/Faceplate/vac_vvs.bob
@@ -230,7 +230,7 @@
         </rule>
       </rules>
       <scripts>
-        <script file="../error.js">
+        <script file="../error.py">
           <pv_name>$(DEVICENAME):ErrorR</pv_name>
           <pv_name>$(DEVICENAME):ErrorCodeR</pv_name>
         </script>
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vvs/error.js b/NON-APPROVED/COMMON/DEVICES/vacuum/vvs/error.js
deleted file mode 100644
index cfdc78655086b7dfb05f3540fb969216c14683f9..0000000000000000000000000000000000000000
--- a/NON-APPROVED/COMMON/DEVICES/vacuum/vvs/error.js
+++ /dev/null
@@ -1,38 +0,0 @@
-PVUtil = org.csstudio.display.builder.runtime.script.PVUtil;
-ScriptUtil = org.csstudio.display.builder.runtime.script.ScriptUtil;
-
-var errorMsg  = "";
-var errorCode = 0;
-
-if (PVUtil.getLong(pvs[0]))
-	errorCode = PVUtil.getLong(pvs[1]);
-
-switch (errorCode) {
-	case 99:
-		errorMsg = "Open / On Status & Close / Off Status Both Active";
-		break;
-	case 49:
-		errorMsg = "Previous Interlock";
-		break;
-	case 48:
-		errorMsg = "Next Interlock";
-		break;
-	case 47:
-		errorMsg = "Personnel Access Interlock";
-		break;
-
-	case 0:
-		break;
-	default:
-		errorMsg = "Error Code: " + PVUtil.getString(pvs[1]);
-		org.csstudio.display.builder.runtime.script.ScriptUtil.getLogger().severe("Unknown error code " + pvs[1] + " : " + errorCode);
-		break;
-}
-
-try {
-	pvs[2].setValue(errorMsg);
-} catch (err) {
-	if (widget.getType() != "action_button")
-		widget.setPropertyValue("text", errorMsg);
-	widget.setPropertyValue("tooltip", errorMsg);
-}
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vvs/error.py b/NON-APPROVED/COMMON/DEVICES/vacuum/vvs/error.py
new file mode 100644
index 0000000000000000000000000000000000000000..321b89f3e45d387a0f40a8981ae5ce7a501d1363
--- /dev/null
+++ b/NON-APPROVED/COMMON/DEVICES/vacuum/vvs/error.py
@@ -0,0 +1,29 @@
+#Generated from VACUUM_VAC-VVS.def at 2020-06-11_16:09:59
+from org.csstudio.display.builder.runtime.script import PVUtil, ScriptUtil
+
+msg  = ""
+code = 0
+
+if PVUtil.getLong(pvs[0]):
+    code = PVUtil.getLong(pvs[1])
+
+    msgs = dict({
+                 99 : "Open Status & Close Status Both Active",
+                 49 : "Previous Interlock",
+                 48 : "Next Interlock",
+                 47 : "Personnel Access Interlock",
+                 0 : ""
+                })
+
+    try:
+        msg = msgs[code]
+    except KeyError:
+        msg = "Error Code: " + PVUtil.getString(pvs[1])
+        ScriptUtil.getLogger().severe("Unknown error code {} : {}".format(pvs[1], code))
+
+try:
+    pvs[2].setValue(msg)
+except:
+    if widget.getType() != "action_button":
+        widget.setPropertyValue("text", msg)
+    widget.setPropertyValue("tooltip", msg)