using Global; using System; using System.Collections.Generic; using System.Data; using static DtWebApiDT.DataAccess; //using static SqlManage.ExecSql; /// /// /// namespace DTTest { /// /// 对于数据库的操作 /// public partial class SqlOperation { public class SqlSignalTree { public static DataTable Select_Connect() { string sql = @" DECLARE @ProjectCode NVARCHAR(50) = '" + PP.ProjectCode + "'" + @" SELECT [DeviceCode],[Name],[IP],[DeviceType],[IsEnable],[Explain] FROM [SignalViewer]" + $" WHERE [ProjectCode] = @ProjectCode AND [Varieties] = '{ Type_Device.Connect}' OR [Varieties] = '{ Type_Device.ConnectRobot}'" + $" ORDER BY [IP]"; ExecuteDataset(sql, PP.ConnectionStr, out DataSet ds, out string errorMessage); return ds.Tables[0]; } public static DataTable Select_Connect(string PP_ProjectCode) { string sql = @" DECLARE @ProjectCode NVARCHAR(50) = '" + PP_ProjectCode + "'" + @" SELECT [DeviceCode],[Name],[IP],[DeviceType],[IsEnable],[Explain] FROM [SignalViewer]" + $" WHERE [ProjectCode] = @ProjectCode AND [Varieties] = '{ Type_Device.Connect}' OR [Varieties] = '{ Type_Device.ConnectRobot}'" + $" ORDER BY [IP]"; ExecuteDataset(sql, PP.ConnectionStr, out DataSet ds, out string errorMessage); return ds.Tables[0]; } /// /// /// /// OutGUID.Get_CS_GUID() /// /// /// /// /// /// Type_Device.Connect public static void Insert_Connect(string deviceCode,string connName, string connType, string connSvr, string connDescribe,string PP_ProjectCode, string type_Device) { string datetime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff"); string sql = @" DECLARE @DeviceCode NVARCHAR(50) = '" + deviceCode + "'" + @" DECLARE @DevicePid NVARCHAR(50) = '" + 0 + "'" + @" DECLARE @Varieties NVARCHAR(50) = '" + type_Device + "'" + @" DECLARE @Name NVARCHAR(50) = '" + connName + "'" + @" DECLARE @IP NVARCHAR(50) = '" + connSvr + "'" + @" DECLARE @DeviceType NVARCHAR(50) = '" + connType + "'" + @" DECLARE @IsEnable BIT = '" + 1 + "'" + @" DECLARE @Explain NVARCHAR(50) = '" + connDescribe + "'" + @" DECLARE @OperationTime NVARCHAR(50) = '" + datetime + "'" + @" DECLARE @ProjectCode NVARCHAR(50) = '" + PP_ProjectCode + "'" + @" INSERT INTO [SignalViewer]([DeviceCode],[DevicePid],[Varieties],[Name],[IP],[DeviceType],[IsEnable],[Explain],[OperationTime],[ProjectCode])" + $" VALUES(@DeviceCode,@DevicePid,@Varieties,@Name,@IP,@DeviceType,@IsEnable,@Explain,@OperationTime,@ProjectCode)"; ExecuteDataset(sql, PP.ConnectionStr, out DataSet ds2, out string errorMessage); } public static void Update_Connect(string connCode,string connName, string connType, string connSvr, string connDescribe,bool isEnable, string PP_ProjectCode) { string getdate = " '" + DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss") + "' "; string sql = @" DECLARE @DeviceCode NVARCHAR(50) = '" + connCode + "'" + @" DECLARE @Name NVARCHAR(50) = '" + connName + "'" + @" DECLARE @IP NVARCHAR(50) = '" + connSvr + "'" + @" DECLARE @DeviceType NVARCHAR(50) = '" + connType + "'" + @" DECLARE @IsEnable BIT = '" + isEnable.ToString() + "'" + @" DECLARE @Explain NVARCHAR(50) = '" + connDescribe + "'" + @" DECLARE @ProjectCode NVARCHAR(50) = '" + PP_ProjectCode + "'" + @" UPDATE [SignalViewer]" + @" SET [Name] = @Name,[IP] = @IP,[DeviceType] = @DeviceType,[IsEnable] = @IsEnable,[Explain] = @Explain,[OperationTime] = "+getdate + @" WHERE [ProjectCode] = @ProjectCode AND [DeviceCode] = @DeviceCode"; ExecuteDataset(sql, PP.ConnectionStr, out DataSet ds, out string errorMessage); } public static void DeleteDeviceTree(string connCode, string PP_ProjectCode) { string sql = @" DECLARE @DeviceCode NVARCHAR(50) = '" + connCode + "'" + @" DECLARE @ProjectCode NVARCHAR(50) = '" + PP_ProjectCode + "'" + @" DELETE [SignalViewer] WHERE [ProjectCode] = @ProjectCode AND [DeviceCode] = @DeviceCode"; ExecuteDataset(sql, PP.ConnectionStr, out DataSet ds, out string errorMessage); } /****************************************************************************************************************************/ /****************************************************************************************************************************/ /****************************************************************************************************************************/ /****************************************************************************************************************************/ /****************************************************************************************************************************/ /// /// 创建信号 /// /// /// /// Signal SignalRobot /// public static void CreateSignal(string tagName, string PP_ProjectCode,string signalType) { var tagID = SqlOperation.OutGUID.Get_CS_GUID(); var memory = false; var type = "BOOL"; var robotSignalName = ""; var address = "0.0"; var region = "Q"; var isEnable = true; var resources = ""; var explain = ""; var name = ""; if (tagName.Length < 1) { name = "手动新增信号" + tagID; } else { name = tagName; } var sql = @" DECLARE @TagID NVARCHAR(50) = '" + tagID + "'" + @" DECLARE @Memory BIT = '" + memory.ToString() + "'" + @" DECLARE @Type NVARCHAR(50) = '" + type + "'" + @" DECLARE @RobotSignalName NVARCHAR(50) = '" + robotSignalName + "'" + @" DECLARE @Address NVARCHAR(50) = '" + address + "'" + @" DECLARE @Region NVARCHAR(50) = '" + region + "'" + @" DECLARE @IsEnable BIT = '" + isEnable.ToString() + "'" + @" DECLARE @Resources NVARCHAR(50) = '" + resources + "'" + @" DECLARE @Explain NVARCHAR(50) = '" + explain + "'" + @" DECLARE @ProjectCode NVARCHAR(50) = '" + PP_ProjectCode + "'" + @" DECLARE @Name NVARCHAR(50) = '" + name + "'" + @" DECLARE @Varieties NVARCHAR(50) = '" + signalType + "'" + @" DECLARE @SequenceNo_MaxAddOne INT = (SELECT ISNULL(MAX([SequenceNo]),0) + 1 FROM [SignalViewer] WHERE [ProjectCode] = @ProjectCode) " + @" INSERT INTO [SignalViewer]([ProjectCode],[Checked],[DeviceCode],[Memory],[Type],[RobotSignalName],[Address],[Region],[Resources],[Explain],[SequenceNo] ,[Input],[Output],[LogicalBlock],[Force],[ForceValue],[IsEnable],[IsMonitor],[Name],[Varieties])" + @" VALUES(@ProjectCode,'True',@TagID,@Memory,@Type,@RobotSignalName,@Address,@Region,@Resources,@Explain,@SequenceNo_MaxAddOne,'0','0','无','False','0',@IsEnable,'True',@Name,@Varieties)"; ExecuteDataset(sql, PP.ConnectionStr, out DataSet ds2, out string errorMessage); } /// /// 导入数据标增加和修改数据 ///(导表的时候使用的) /// /// /// /// /// /// /// public static void AddOrUpdateSignal(string signalName, bool memory, string type, string robotSignalName, string address, string region, bool isEnable, string resources, string explain, string PP_ProjectCode) { //string sql = // @" DECLARE @DeviceCode NVARCHAR(50) = '" + signalName + "'" + // @" DECLARE @Memory BIT = '" + memory + "'" + // @" DECLARE @Type NVARCHAR(50) = '" + type + "'" + // @" DECLARE @RobotSignalName NVARCHAR(50) = '" + robotSignalName + "'" + // @" DECLARE @Address NVARCHAR(50) = '" + address + "'" + // @" DECLARE @Region NVARCHAR(50) = '" + region + "'" + // @" DECLARE @IsEnable BIT = '" + isEnable.ToString () + "'" + // @" DECLARE @Resources NVARCHAR(50) = '" + resources + "'" + // @" DECLARE @Explain NVARCHAR(50) = '" + explain + "'" + // @" DECLARE @ProjectCode NVARCHAR(50) = '" + PP.ProjectCode + "'" + // @" IF ((SELECT COUNT(1) FROM [SignalViewer] WHERE [ProjectCode] = @ProjectCode AND [SignalName] = @DeviceCode) > 0 )" + // @" BEGIN" + // @" UPDATE [SignalViewer] SET [Type] = @Type,[Address] = @Address,[Region] = @Region,[Resources] = '被修改的',[Explain] = @Explain WHERE [ProjectCode] = @ProjectCode AND [DeviceCode] = @DeviceCode" + // @" END ELSE BEGIN" + // @" INSERT INTO [SignalViewer]([ProjectCode],[Checked],[DeviceCode],[Memory],[Type],[RobotSignalName],[Address],[Region],[Resources],[Explain] ,[Input],[Output],[LogicalBlock],[Force],[ForceValue],[IsEnable],[IsMonitor])" + // @" VALUES(@ProjectCode,'False',@DeviceCode,@Memory,@Type,@RobotSignalName,@Address,@Region,@Resources,@Explain,'0','0','无','False','0',@IsEnable,'True')" + // @" END"; //ExecuteDataset(sql, PP.ConnectionStr, out DataSet ds, out string errorMessage); } /// /// 查询信号,按名称 /// 2021.10.6.llx /// 2021.11.17.LLX /// /// public static DataTable SelectSignal_UseSignalName(string signalName,bool isChecked, string PP_ProjectCode) { DataTable dt = new DataTable(); var sql = ""; if (isChecked)//查询仿真信号 { sql = @" DECLARE @ProjectCode NVARCHAR(50) = '" + PP_ProjectCode + "'" + $" SELECT [Name],[Input],[Output],[Force],[ForceValue]" + $" ,CASE WHEN CHARINDEX('DB',[Region]) = 1 THEN ([Region] + '.'+ [Address]) ELSE ([Region] + [Address]) END AS 'IECFormat'" + $" ,[RobotSignalName]+[RobotAddress] as [RobotSignalName],[Varieties],[LogicalBlock],[DeviceCode] FROM [SignalViewer]" + $" WHERE [ProjectCode] = @ProjectCode AND ([Varieties] = '{Type_Device.Signal}' OR [Varieties] = '{Type_Device.SignalRobot}') AND [Checked] = 'True' AND [Name] like '%{signalName}%'" + $" ORDER BY [SequenceNo]"; } else//查询信号视图 { sql = @" DECLARE @ProjectCode NVARCHAR(50) = '" + PP_ProjectCode + "'" + $" SELECT [SequenceNo],[Checked],[DeviceCode],[DevicePid],[Varieties],[Name],[Type]" + $" ,CASE WHEN CHARINDEX('DB',[Region]) = 1 THEN ([Region] + '.'+ [Address]) ELSE ([Region] + [Address]) END AS 'IECFormat'" + $" ,[Address],[Explain],[OperationTime],[Resources],[Memory],[RobotSignalName],[RobotAddress] ,[ID],[IsEnable],[IsMonitor],[Region] FROM [SignalViewer]" + $" WHERE [ProjectCode] = @ProjectCode AND ([Varieties] = '{Type_Device.Signal}' OR [Varieties] = '{Type_Device.SignalRobot}') AND [Name] like '%{signalName}%'" + $" ORDER BY [SequenceNo]"; } ExecuteDataset(sql, PP.ConnectionStr, out DataSet ds, out string errorMessage); try { dt = ds.Tables[0]; } catch { } return dt; } //public static DataTable SelectSignal_UseSignalName(string signalName, bool isChecked, string PP_ProjectCode) //{ // var sql = ""; // if (isChecked)//查询仿真信号 // { // sql = // @" DECLARE @ProjectCode NVARCHAR(50) = '" + PP_ProjectCode + "'" + // $" SELECT [Name],[Input],[Output],[Force],[ForceValue]" + // $" ,CASE WHEN CHARINDEX('DB',[Region]) = 1 THEN ([Region] + '.'+ [Address]) ELSE ([Region] + [Address]) END AS 'IECFormat'" + // $" ,[RobotSignalName]+[RobotAddress]as [RobotSignalName],[Varieties],[LogicalBlock],[DeviceCode] FROM [SignalViewer]" + // $" WHERE [ProjectCode] = @ProjectCode AND ([Varieties] = '{Type_Device.Signal}' OR [Varieties] = '{Type_Device.SignalRobot}') AND [Checked] = 'True' AND [Name] like '%{signalName}%'" + // $" ORDER BY [SequenceNo]"; // } // else//查询信号视图 // { // sql = // @" DECLARE @ProjectCode NVARCHAR(50) = '" + PP_ProjectCode + "'" + // $" SELECT [SequenceNo],[Checked],[DeviceCode],[DevicePid],[Name],[Type]" + // $" ,CASE WHEN CHARINDEX('DB',[Region]) = 1 THEN ([Region] + '.'+ [Address]) ELSE ([Region] + [Address]) END AS 'IECFormat'" + // $" ,[Address],[Explain],[OperationTime],[Resources],[Memory],[RobotSignalName]+[RobotAddress] as [RobotSignalName],[Varieties],[ID],[IsEnable],[IsMonitor],[Region] FROM [SignalViewer]" + // $" WHERE [ProjectCode] = @ProjectCode AND ([Varieties] = '{Type_Device.Signal}' OR [Varieties] = '{Type_Device.SignalRobot}') AND [Name] like '%{signalName}%'" + // $" ORDER BY [SequenceNo]"; // } // ExecuteDataset(sql, PP.ConnectionStr, out DataSet ds, out string errorMessage); // return ds.Tables[0]; //} /// /// 修改信号参数 /// /// public static void UpdateSignal(string tagID, bool checkedThis, bool memory, string type, string robotSignalName,string robotAddress, string address, bool isEnable, string sName, string explain, bool isMonitor, string PP_ProjectCode) { //robotAddress string getdate = " '" + DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss") + "' "; string sql = @" DECLARE @DeviceCode NVARCHAR(50) = '" + tagID + "'" + @" DECLARE @Checked BIT = '" + checkedThis + "'" + @" DECLARE @Memory BIT = '" + memory + "'" + @" DECLARE @Type NVARCHAR(50) = '" + type + "'" + @" DECLARE @RobotSignalName NVARCHAR(50) = '" + robotSignalName + "'" + @" DECLARE @RobotAddress NVARCHAR(50) = '" + robotAddress + "'" + @" DECLARE @Address NVARCHAR(50) = '" + address + "'" + @" DECLARE @IsEnable BIT = '" + isEnable.ToString () + "'" + @" DECLARE @Name NVARCHAR(500) = '" + sName + "'" + @" DECLARE @Explain NVARCHAR(500) = '" + explain + "'" + @" DECLARE @IsMonitor BIT = '" + isMonitor.ToString() + "'" + @" DECLARE @ProjectCode NVARCHAR(50) = '" + PP_ProjectCode + "'" + @" UPDATE [SignalViewer] " + @" SET[Checked] = @Checked,[Memory] = @Memory,[Type] = @Type," + @" [RobotSignalName] = @RobotSignalName,[RobotAddress] = @RobotAddress,[Address] = @Address,[IsEnable] = @IsEnable," + $" [Name] = @Name,[Explain] = @Explain,[OperationTime] = "+getdate + $" ,[IsMonitor] = @IsMonitor" + @" WHERE [ProjectCode] = @ProjectCode AND [DeviceCode] = @DeviceCode"; ExecuteDataset(sql, PP.ConnectionStr, out DataSet ds, out string errorMessage); } /// /// 删除信号 /// /// public static void DeleteSignal(int sequenceNo, string tagID, string PP_ProjectCode) { string sql = @" DECLARE @TagID NVARCHAR(50) = '" + tagID + "'" + @" DECLARE @ProjectCode NVARCHAR(50) = '" + PP_ProjectCode + "'" + @" DECLARE @SequenceNo INT = " + sequenceNo + " " + $" DELETE FROM [ProcesslLabelList] WHERE [ProjectCode] = @ProjectCode AND [ExecCode] = @TagID" + $" DELETE FROM [TagTriggerHandler] WHERE [ProjectCode] = @ProjectCode AND [TagID]= @TagID" + $" DELETE FROM [DeviceSignalSimTree] WHERE [ProjectCode] = @ProjectCode AND [TagID]= @TagID" + @" DELETE FROM [SignalViewer] WHERE [ProjectCode] = @ProjectCode AND [DeviceCode] = @TagID" + @" UPDATE [SignalViewer] SET[SequenceNo] = [SequenceNo] - 1 WHERE [ProjectCode] = @ProjectCode AND [SequenceNo] > @SequenceNo"; ExecuteDataset(sql, PP.ConnectionStr, out DataSet ds, out string errorMessage); } /// /// 2021.11.19.LLX /// /// /// public static void UpdateSignalChecked(string tagID,bool checkedThis, string PP_ProjectCode) { string sql = @" DECLARE @DeviceCode NVARCHAR(50) = '" + tagID + "'" + @" DECLARE @Checked BIT = '" + checkedThis + "'" + @" DECLARE @ProjectCode NVARCHAR(50) = '" + PP_ProjectCode + "'" + @" UPDATE [SignalViewer] SET[Checked] = @Checked WHERE [ProjectCode] = @ProjectCode AND [DeviceCode] = @DeviceCode"; ExecuteDataset(sql, PP.ConnectionStr, out DataSet ds, out string errorMessage); } /// /// 修改地址区域 /// 2021.11.19.LLX /// /// /// public static void UpdateSignalRegion(string tagID, string region, string PP_ProjectCode) { string sql = @" DECLARE @DeviceCode NVARCHAR(50) = '" + tagID + "'" + @" DECLARE @Region NVARCHAR(50) = '" + region + "'" + @" DECLARE @ProjectCode NVARCHAR(50) = '" + PP_ProjectCode + "'" + @" UPDATE [SignalViewer] SET[Region] = @Region WHERE [ProjectCode] = @ProjectCode AND [DeviceCode] = @DeviceCode"; ExecuteDataset(sql, PP.ConnectionStr, out DataSet ds, out string errorMessage); } /// /// 修改资源代码 /// 2022.02.17.LLX /// /// /// public static void UpdateSignalResources(string tagID, string modelCode, string PP_ProjectCode) { string sql = @" DECLARE @DeviceCode NVARCHAR(50) = '" + tagID + "'" + @" DECLARE @Resources NVARCHAR(50) = '" + modelCode + "'" + @" DECLARE @ProjectCode NVARCHAR(50) = '" + PP_ProjectCode + "'" + @" UPDATE [SignalViewer] SET[Resources] = @Resources WHERE [ProjectCode] = @ProjectCode AND [DeviceCode] = @DeviceCode"; ExecuteDataset(sql, PP.ConnectionStr, out DataSet ds, out string errorMessage); } /// /// 2021.6.15 /// 2021.11.17.LLX /// /// public static DataTable SelectSignalForOpc( string PP_ProjectCode) { string sql = $" SELECT * FROM [SignalViewer]" + $" WHERE [ProjectCode] = '{PP_ProjectCode}' AND [Varieties] = '{Type_Device.Signal}' AND [IsEnable] = 'True'"; ExecuteDataset(sql, PP.ConnectionStr, out DataSet ds, out string errorMessage); return ds.Tables[0]; } /// /// 查询信号SelectSignalForFindSignalName /// 2021.8.20 /// /// public static Dictionary SelectSignalForFindSignalName(string PP_ProjectCode) { var dc = new Dictionary(); var dt = SelectSignalForOpc( PP_ProjectCode); var count = dt.Rows.Count; if (count > 0) { for (int i = 0; i < count; i++) { var tagID = dt.Rows[i]["DeviceCode"].ToString(); var tagName = dt.Rows[i]["Explain"].ToString(); if (!dc.ContainsKey(tagID)) { dc.Add(tagID, tagName); } } } return dc; } /******************************************************************************************************/ /******************************************************************************************************/ /******************************************************************************************************/ /// /// 信号点上移 /// /// public static void MoveUpSignal(int sequenceNo, string PP_ProjectCode) { string sql = @" DECLARE @SequenceNo INT = " + sequenceNo + "" + @" DECLARE @ProjectCode NVARCHAR(50) = '" + PP_ProjectCode + "'" + @" DECLARE @TagID_Curr NVARCHAR(50)" + @" DECLARE @TagID_Up NVARCHAR(50)" + @" DECLARE @SequenceNo_Up INT" + @" SELECT @SequenceNo_Up = MAX([SequenceNo]) FROM [SignalViewer] WHERE [ProjectCode] = @ProjectCode AND [SequenceNo] < @SequenceNo" + @" SELECT @TagID_Curr = [DeviceCode] FROM [SignalViewer] WHERE [ProjectCode] = @ProjectCode AND [SequenceNo] = @SequenceNo" + @" SELECT @TagID_Up = [DeviceCode] FROM [SignalViewer] WHERE [ProjectCode] = @ProjectCode AND [SequenceNo] = @SequenceNo_Up" + @" UPDATE [SignalViewer] SET [SequenceNo] = @SequenceNo - 1 WHERE [ProjectCode] = @ProjectCode AND [DeviceCode] = @TagID_Curr" + @" UPDATE [SignalViewer] SET [SequenceNo] = @SequenceNo WHERE [ProjectCode] = @ProjectCode AND [DeviceCode] = @TagID_Up"; ExecuteDataset(sql, PP.ConnectionStr, out DataSet ds, out string errorMessage); } /// /// 信号点下移 /// /// /// public static void MoveDownSignal(int sequenceNo, string PP_ProjectCode) { string sql = @" DECLARE @SequenceNo INT = " + sequenceNo + "" + @" DECLARE @ProjectCode NVARCHAR(50) = '" + PP_ProjectCode + "'" + @" DECLARE @TagID_Curr NVARCHAR(50)" + @" DECLARE @TagID_Down NVARCHAR(50)" + @" DECLARE @SequenceNo_Down INT" + @" SELECT @SequenceNo_Down = MIN([SequenceNo]) FROM [SignalViewer] WHERE [ProjectCode] = @ProjectCode AND [SequenceNo] > @SequenceNo" + @" SELECT @TagID_Curr = [DeviceCode] FROM [SignalViewer] WHERE [ProjectCode] = @ProjectCode AND [SequenceNo] = @SequenceNo" + @" SELECT @TagID_Down = [DeviceCode] FROM [SignalViewer] WHERE [ProjectCode] = @ProjectCode AND [SequenceNo] = @SequenceNo_Down" + @" UPDATE [SignalViewer] SET [SequenceNo] = @SequenceNo + 1 WHERE [ProjectCode] = @ProjectCode AND [DeviceCode] = @TagID_Curr" + @" UPDATE [SignalViewer] SET [SequenceNo] = @SequenceNo WHERE [ProjectCode] = @ProjectCode AND [DeviceCode] = @TagID_Down"; ExecuteDataset(sql, PP.ConnectionStr, out DataSet ds, out string errorMessage); } /******************************************************************************************************/ /******************************************************************************************************/ /******************************************************************************************************/ /// /// 修改仿真信号 /// 属性 /// 2021.10.7.LLX /// /// /// /// public static void UpdateSimSignal(string tagID, int force, string PP_ProjectCode) { string sql = @" DECLARE @DeviceCode NVARCHAR(50) = '" + tagID + "'" + @" DECLARE @Force INT = " + force + "" + @" DECLARE @ProjectCode NVARCHAR(50) = '" + PP_ProjectCode + "'" + @" UPDATE [SignalViewer] SET [Force] = @Force" + @" WHERE [ProjectCode] = @ProjectCode AND [DeviceCode] = @DeviceCode"; ExecuteDataset(sql, PP.ConnectionStr, out DataSet ds, out string errorMessage); } /// /// 修改仿真信号的值 /// 强制值 /// /// /// /// public static void UpdateSimSignal_ForceValue(string tagID, string forceValue, string PP_ProjectCode) { string sql = @" DECLARE @DeviceCode NVARCHAR(50) = '" + tagID + "'" + @" DECLARE @ForceValue NVARCHAR(50) = '" + forceValue + "'" + @" DECLARE @ProjectCode NVARCHAR(50) = '" + PP_ProjectCode + "'" + @" UPDATE [SignalViewer] SET [ForceValue] = @ForceValue" + @" WHERE [ProjectCode] = @ProjectCode AND [DeviceCode] = @DeviceCode"; ExecuteNonQuery(sql, PP.ConnectionStr, out string errorMessage); } /// /// 修改信号连接 /// 2021.11.18.LLX /// /// /// public static void UpdateSimSignal_Connect(string tagID, string connectCode, string PP_ProjectCode) { string sql = @" DECLARE @DeviceCode NVARCHAR(50) = '" + tagID + "'" + @" DECLARE @DevicePid NVARCHAR(50) = '" + connectCode + "'" + @" DECLARE @ProjectCode NVARCHAR(50) = '" + PP_ProjectCode + "'" + @" UPDATE [SignalViewer] SET [DevicePid] = @DevicePid" + @" WHERE [ProjectCode] = @ProjectCode AND [DeviceCode] = @DeviceCode"; ExecuteNonQuery(sql, PP.ConnectionStr, out string errorMessage); } /// /// /// /// /// public static void UpdateSignal_DataType(string tagID, string signalType, string PP_ProjectCode) { string sql = @" DECLARE @DeviceCode NVARCHAR(50) = '" + tagID + "'" + @" DECLARE @Type NVARCHAR(50) = '" + signalType + "'" + @" DECLARE @ProjectCode NVARCHAR(50) = '" + PP_ProjectCode + "'" + @" UPDATE [SignalViewer] SET [Type] = @Type" + @" WHERE [ProjectCode] = @ProjectCode AND [DeviceCode] = @DeviceCode"; ExecuteNonQuery(sql, PP.ConnectionStr, out string errorMessage); } } } }