WinCC有多个同样结构的报表处理,这时考虑用结构变量,读写数据库的VBS全局脚本用项目函数,然后每个实例动作调用。现在项目函数中SQL语句的insert没问题可以添加数据到数据表,但更新(update)遇到问题,无法成功修改。比如“DEV_NUM" 是设备编号,也是动作调用时填的数字(1,2,3),向数据库添加数据如下 strSQL="INSERT INTO ReportPc"& DEV_NUM & " (设备编号, ...) "//字段名
strSQL=strSQL & " VALUES ("& temp2 &",...);"//变量 测试是OK的,现在就是更新数据,如果不采用项目函数调用,直接脚本更新一个具体表的数据是没问题的,比如更新1号设备表的最新一条记录数据如下;
strSQL= "UPDATE ReportPc1 Set [测试批次]= '" & temp2 &"', [瓶1编号] = '" & temp6 & "' where ID= (Select Max(ID) from ReportPc1)" (这个是正常的,更新了2条数据,调试OK)。
现在问题是如果跟上面添加数据一样采用函数调用,更新的脚本调试很长时间也没通过,下面是我测试的一段脚本(无法实现):
strSQL= "UPDATE ReportPc" & DEV_NUM & "Set 测试批次= '" & temp2 &"', 瓶1编号 = '" & temp6 & "'" &" where ID= (Select Max(ID) from ReportPc)"
大家帮忙指导下,谢谢!