4.5 使用Spreadsheet控件显示数据-数据集方式
经过上面的测试,结果有点出乎我的意外,本来以为即便把数据区域隐藏,数据刷新时间也得有7-8秒,结果可能比我下面的测试还快,不过既然已经做了,那就也得把这种方案列出来,给大家提供一种思路。
Spreadsheet控件也支持使用数据源,连接数据库,然后执行SQL语句,查询得到的数据集直接显示出来,写到这里,突然想起来,Spreadsheet控件本身应该是也支持SQL语句,好像可以直接把组合好的SQl语句通过命令问题属性赋值给控件,让表格控件自动执行,然后测试了一下,还真的可以.....于是又有了两种方案
4.5.1 表格控件的组态
Spreadsheet控件组态主要就是设置一下数据库的数据源。
在数据源选项卡,点击连接输入框右侧的编辑,在弹出的对话框里面,

> 1. 服务器名:选择"本地计算机名\WINCC"的服务器;
> 2. 登录服务器信息:选择使用WindowsNT集成安全设置
> 3. 数据库:选择运行的WinCC项目后带R的数据库
然后点击确认即可,在连接输入框里面出现SQL数据库连接文本:
Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=CC_suqinhua_22_05_04_10_22_56R;Data Source=WIN7\WINCC;PASSWORD=;
在执行完数据源的设置轴,在控件表格里面会自动插入一个表,你可以选择新插入的这个表,这样运行之后,默认显示的就是数据源查询的数据,这个新插入的表不能删除,要不然,脚本就没有办法执行...在控件的工作簿选项卡里面,也可以把用不着的表删除并重命名,只保留数据源显示的内容。下图为我设置好数据源之后的表格:Sheet1是默认的,Sheet2是数据源的

通过右边的次序按钮,可以选择默认显示的工作表,图中默认就是显示的数据集所在的工作表。
4.5.2 使用VBS脚本获取数据集
控件组态完成后,剩下的就都是脚本了,先介绍使用VBS脚本执行数据的查询,只把数据集返回到控件的表内进行显示。
全部的脚本如下:

经测试,数据读取时间在6-8s
脚本太长,只要用图片来显示了