欢迎分享,转载请注明来源:夏雨云
在介绍之前,还是先介绍一下项目的背景,这是一个针对某个火炉的温度控制系统,其中,需要对几个关键的工艺参数变量实现查询。主要有DATA,PIHAO,LUCI等。这几个变量在WINCC系统中属于内部变量,在对其查询之前要先建立用户归档,这样WINCC会自动将这些变量按照设定的存储规则存放到SQL数据库中。而对历史数据操作的核心就是对SQL数据库的正确操作以导出我们需要的数据。通过VBS语言对按钮对象编辑一个脚本程序就可以方便地实现此功能。下面,我将对查询的具体步骤与注意的地方一一详述。1、定义连接字符串,可以通过ODBC方便地访问数据库的。使用VBS连接数据库,我们要知道以下信息:数据库名,数据源名。然后打开SQL数据库,这时候看到Databases下有很多的数据库,WINCC建立的数据库名是有规则的,一般是CC_工程名_年_月_日_时_分_秒R。 2、定义查询的SQL命令。 3、连接数据库。定义好了连接字符串与查询字符串,我们就可以访问SQL数据库了。 4、显示数据。我使用WINCC提供的ListView控件显示数据。“控件2”就是我建立的ListView控件的名字1、脚本在编写完毕之后,系统只会发现语法错误,如关键字拼写错误等,如果有逻辑错误,脚本不能运行,是不会有任何提示的刚开始运行时,一直不能取出相应的数据,后来发现是我的数据库名写错了。系统是不会提示你找不到数据库的。2、取出数据之后,在ListView控件上显示的数据一直是杂乱无序并且是乱码,并非应当显示的那种数据库中的排列方式,且在程序中定义的列名不显示。最后发现是控件属性设置的问题,ListView的默认显示类型并非报表类型,因此显示的是无次序的数据,所以,当我们修改其属性为报表类型之后,就会看到与数据库中一样的显示效果,并且列名也会正常显示。所以,WINCC中属性的设置就尤为重要了。3、在解决了上面问题之后,虽然显示的序列是对的,但是显示的内容还是与预期的不符,尤其是时期这一列,显示的是一串纯数字。这个问题很明显,是显示格式的问题。因此,在程序中,对要显示的内容要转换成字符串的形式(CStr()函数)。4、查询字符串的格式对于能否正确查询有着很重要的影响。例如:如果在数据库中日期的格式是MM-DD-YYYY(比如07-09-2014),那么,在SQL语句查询时,就不能用7-9-2014,这种方式的查询是没有结果的。然而启动机器后又提示重新启动机器,然而反复重新启动仍然出现这样的提示,导致软件不能安装。现在给出解决方案:在注册表内“HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\ ”中删除注册表值 “PendingFileRenameOperations” 不要重新启动,继续安装软件。 现在可以安装更多程序而无需重启计算机了。
赞
(0)
打赏
微信扫一扫
支付宝扫一扫
白杨SEO案例第2篇:B2C网站SEO该如何做
上一篇
2023-06-28
为什么文件服务器不能直接保存文件?
下一篇2023-06-28
评论列表(0条)