Intouch 报 表 制 作 流 程
前言:
介绍Intouch10制作Excel报表的流程,分为2部分,一部分是数据录入,一部分是数据查询。数据录入根据使用的软件不同,录入方法也不同,而查询可以用同一个模板。
数据库:
前提条件:假设我们需要录入三个变量 A B C
数据库准备:使用SQLServer,服务器名字如下图所示:

打开数据库管理器,在Master数据库里面,新建一个表格,

第一个用于存储日期,例如(2013-03-02 11:23:50),后面三个字段用于存储变量的值,变量多就增加相应的字段。数据表存储为DongTRU:

至此,数据库已经创建完毕。
Intouch数据录入。
1) 首先建立三个变量A B C的标签。(这里以内部变量代替)

A B C完全一致。
再建立一个标签riqi用于存储当前的日期数据(Intouch日期和时间变量是分开的),数据类型为内存消息型。

添加一个数据改变程序,变量为$Second,目的是每秒钟获取一个当前的系统时间,如下图:

变量处理完毕后,就需要建立绑定列表了,将Intouch的变量标签和数据库表格里面的字段一一对应起来。
2)创建绑定列表


这样就创建了一个绑定列表LIST。
3) 连接数据库,进行数据的插入
首先在应用程序脚本里面(启动)写脚本,连接数据库

ResultCode=SQLConnect(ConnectionID,"driver=sql server;server=PC-20121027HGMX\WINCC;DATABASE=Master;uid=haha;pwd=haha");
代码解释如下:
ResultCode:内存整形变量,查看连接成功与否;
ConnectionID:连接ID,系统会为每个连接自动分配一个ID。
SQLConnect:是Intouch提供的连接数据库的函数。
PC-20121027HGMX\WINCC:SQLSERVER服务器的名字。
Master:需要连接的数据库的名字。
uid=haha;pwd=haha:SQL server提供的账户名和密码。
关闭时,断开连接,释放资源:

代码如下:不做解释。
ResultCode=SQLDisconnect(ConnectionID);
最重要的就是每个一分钟往数据库写入数据了。

条件:$Second ==0 实现按分钟录入(其余的条件可以自己根据需要编写)
条件类型:为真时,保证一分钟只写入一条数据。
脚本代码:
ResultCode=SQLInsert(ConnectionID,"DongTRU","LIST");
解释如下:
SQLInsert:Intouch提供的插入函数;
ConnectionID:前面用SQLConnect函数产生的ID
DongTRU:数据库表名
"LIST":INTOUCH建立的绑定列表名。
至此,运行intouch程序,就可以实现数据每隔一分钟往数据库写入一条数据。
最终运行一段时间后的结果如下:

下一次介绍:如何利用EXCEL从数据库中查询数据,制作日报,月报,年报等。
---------------------------------------------------------------
长按下面的二位码,会有更多的惊喜哦!


