From 0026ea3b1a6588f3e40b8276162f54b2a22bc7ae Mon Sep 17 00:00:00 2001
From: chenluhua1980 <Chenluhua@qq.com>
Date: 星期一, 19 一月 2026 14:32:27 +0800
Subject: [PATCH] 1.修复 : 多 PJ 支持仍是单槽实现:isProcessJobsEmpty/validate 仍只允许 1 个 PJ/CJ;Host 一次下多 PJ 或运行中追加 PJ 会被拒绝/无明确反馈。需要:协议上明示只支持 1,或补齐 ACK/NAK 与队列管理、PJobSpace 动态更新。

---
 SourceCode/Bond/Servo/CPageVarialbles.cpp |   12 ++++++++++++
 1 files changed, 12 insertions(+), 0 deletions(-)

diff --git a/SourceCode/Bond/Servo/CPageVarialbles.cpp b/SourceCode/Bond/Servo/CPageVarialbles.cpp
index 07f8123..f2c2587 100644
--- a/SourceCode/Bond/Servo/CPageVarialbles.cpp
+++ b/SourceCode/Bond/Servo/CPageVarialbles.cpp
@@ -162,6 +162,11 @@
 {
 	ASSERT(btnName);
 	if (_strcmpi(btnName, "鏂板") == 0) {
+		int rc = UX_CanExecute(L"addVarialbles");
+		if (rc != 1) {
+			AfxMessageBox("鎿嶄綔鏉冮檺涓嶈冻锛岃鑱旂郴绠$悊浜哄憳锛�");
+			return;
+		}
 		unsigned int newId = theApp.m_model.m_hsmsPassive.getMaxVariableId();
 		int newIdInt = static_cast<int>(newId + 1);
 		CVariableEditDlg2 dlg(_T("鏂板鍙橀噺"), newIdInt, _T("U1"), _T(""), _T(""), this);
@@ -172,6 +177,7 @@
 
 		int ret = theApp.m_model.m_hsmsPassive.addVariable(CT2A(name), CT2A(fmt), CT2A(remark), newIdInt);
 		if (ret == 0) {
+			UX_RecordAction(L"addVarialbles");
 			m_listCtrl.DeleteAllItems();
 			loadVariables();
 		}
@@ -208,6 +214,11 @@
 		auto pVar = reinterpret_cast<SERVO::CVariable*>(m_listCtrl.GetItemData(nItem));
 		if (pVar == nullptr) return;
 
+		int rc = UX_CanExecute(L"editVarialbles");
+		if (rc != 1) {
+			AfxMessageBox("鎿嶄綔鏉冮檺涓嶈冻锛岃鑱旂郴绠$悊浜哄憳锛�");
+			return;
+		}
 		CVariableEditDlg2 dlg(_T("缂栬緫鍙橀噺"),
 			pVar->getVarialbleId(),
 			CString(CA2T(SERVO::CVariable::formatToString(pVar->getFormat()).c_str())),
@@ -221,6 +232,7 @@
 
 		int ret = theApp.m_model.m_hsmsPassive.updateVariable(pVar->getVarialbleId(), CT2A(name), CT2A(fmt), CT2A(remark));
 		if (ret == 0) {
+			UX_RecordAction(L"editVarialbles");
 			m_listCtrl.DeleteAllItems();
 			loadVariables();
 		}

--
Gitblit v1.9.3