IFIX历史报警数据存储与查询

发布时间 : 星期六 文章IFIX历史报警数据存储与查询更新完毕开始阅读

关于IFIX历史报警数据存储与查询实例

一.ODBC服务的连接

开始-设置-控制面板-管理工具-数据源ODBC

选用户DNS-添加-选Microsoft Access Driver(*.mdb)

数据源名:Myalarm

选(或创建)数据库名:Alarm.mdb, 文件类型:Access,驱动器D:

连接池-禁止

二.系统SCU的配置

SCU-IFIX-配置-报警-报警ODBC服务,启动-修改-

区域(A):从报警区域数据库中选择- CLQS-ALM-增加-确定 配置:数据库类型:Access 数据库标识符:Myalarm 列配置:选9项

现在创建表:FIXALARMS(默认表名) 其它默认-确定 保存 退出

三.控件的引用

1.日期时间控件

典型装VB6.0后,

项目工具栏文件----工具栏----插入OLE对象

双击选Microsoft date and time picker控件

日期控件-属性-格式:1-dtpShortDate,有效前不打勾。其它默认,

时间控件-属性-格式:2-dtpTime, 有效前不打勾。其它默认

2.vxData控件(数据管道)

IFIX4.0工具箱底部vxData图标

右键-属性vxData对象----PROPERTIES VISICONXDATA VXDATA对象

提供者:Microsoft OLE DB Provider for ODBC Drivers

数据库:DNS名:Myalarm,用户名 密码 选项均空---测试连接-测试连接成功-确定

记录源:命令类型:SQL命令 应用-确定

3.vxGrid控件(显示)

工具箱底部vxGrid图标

选控件 vxGrid1-右键-动画-高级-高级动画配置-行为-ADORecords-动画打勾 数据源:报警记录一览表.vxData1.ADORecords 数据转换:对象

四.VBA脚本的编写 1.初始化脚本代码

'初始化设置

Private Sub CFixPicture_Initialize() '设定默认开始时间

Me.DTPFromDate = DateAdd(\

Me.DTPFromTime = (\

'设默认结束时间

Me.DTPEndDate = Now Me.DTPEndTime = Now '设置时间

'vxData1.QP1 = Format(Me.DTPFromDate.Value, \mat(Me.DTPFromTime.Value, \

'vxData1.QP2 = Format(Me.DTPEndDate.Value, \at(Me.DTPEndTime.Value, \ End Sub

2. 查询按扭CmbSearch代码如下:

'开始查询

Private Sub CmbSearch_Click()

'连接自动刷新

Me.vxData1.AutoRefresh = True 'Format函数用于设定时间格式

vxData1.QP1 = Format(Me.DTPFromDate.Value, \at(Me.DTPFromTime.Value, \

vxData1.QP2 = Format(Me.DTPEndDate.Value, \t(Me.DTPEndTime.Value, \'设定查询内容

'从数据库中查询符合时间段的数据

Me.vxData1.SQLCommand = \

\MELAST <= {ts 'QP2'})\ '刷新数据

Me.vxData1.Refresh Me.vxGrid1.Refresh End Sub

3. 完整的VBA按扭代码如下:

'初始化设置

Private Sub CFixPicture_Initialize() '设定默认开始时间

Me.DTPFromDate = DateAdd(\Me.DTPFromTime = (\

'设默认结束时间

Me.DTPEndDate = Now Me.DTPEndTime = Now '设置时间

'vxData1.QP1 = Format(Me.DTPFromDate.Value, \mat(Me.DTPFromTime.Value, \

'vxData1.QP2 = Format(Me.DTPEndDate.Value, \at(Me.DTPEndTime.Value, \

End Sub

Private Sub CFixPicture_KeyDown(ByVal KeyCode As Long, ByVal Shift As Long, ContinueProcessing As Boolean)

End Sub '开始查询

Private Sub CmbSearch_Click()

'连接自动刷新

Me.vxData1.AutoRefresh = True 'Format函数用于设定时间格式

vxData1.QP1 = Format(Me.DTPFromDate.Value, \at(Me.DTPFromTime.Value, \

vxData1.QP2 = Format(Me.DTPEndDate.Value, \t(Me.DTPEndTime.Value, \'设定查询内容

'从数据库中查询符合时间段的数据

Me.vxData1.SQLCommand = \

\MELAST <= {ts 'QP2'})\ '刷新数据

Me.vxData1.Refresh Me.vxGrid1.Refresh End Sub

以上工作结束后保存,退出。重新启动IFIX4.0,运行后即可使用

联系合同范文客服:xxxxx#qq.com(#替换为@)