wincc如何通过VB脚本读取报警数据库归档内容

刚接触wincc,下面脚本是根据帮助文档VB实例修改,但读取不到归档内容,系统内置报警控件中能读到数据,请大神指点。
' 1.1 Create connection string for ADO access
Dim ProviderName
Dim CatalogName
Dim DataSourceName
Dim ConnectionString
Dim CommandString
Dim snam1,Rtname
Dim ServerName1
Set ServerName1 = HMIRuntime.Tags("@ServerName")          
      ServerName1.Read 
Dim DatasourceNameRT
Set DatasourceNameRT = HMIRuntime.Tags("@DatasourceNameRT")
      DatasourceNameRT.Read 
      Rtname=DatasourceNameRT.Value 
      snam1=ServerName1.Value
ConnectionString = "provider=WinCCOLEDBProvider.1;catalog=" & Rtname & ";data source=" & snam1 & "\WinCC"       
' 1.2 Define command string for access (relative time range, last 10 minutes)
CommandString = "ALARMVIEW:Select * from algviewcht WHERE DateTime > '2017-11-30 00:00:00.000' " 
Dim DBConnection
Dim DBCommand
Dim DBRecordset
' 2.1 Open connection
'HMIRuntime.Trace "before open connection" & vbNewLine 
Set DBConnection = CreateObject("ADODB.Connection")
DBConnection.ConnectionString = ConnectionString
DBConnection.CursorLocation = 3             
DBConnection.open 
Set DBRecordset = CreateObject("ADODB.Recordset")
' 2.2 Execute command
'HMIRuntime.Trace "before execute command" & vbNewLine 
Set DBCommand = CreateObject("ADODB.Command")
DBCommand.CommandType = 1
DBCommand.ActiveConnection = DBConnection
DBCommand.CommandText = CommandString
Set DBRecordset = DBCommand.Execute
Dim lngCount                                  
Dim lngValue,aa
' 2.3 Record structure and first record data (test)
lngCount = DBRecordset.Fields.Count 
aa = DBRecordset.RecordCount 
HMIRuntime.Trace "RecordSet.Field.Count=" & lngCount & vbNewLine 
HMIRuntime.Trace "RecordSet.RecordCount=" & aa & vbNewLine 
If (aa>0) Then 
    DBRecordset.movefirst  
Else
    HMIRuntime.Trace "Selection returned no fields" & vbNewLine 
End If
' 4.1 Clean up
DBRecordset.Close
Set DBRecordset = Nothing
Set DBCommand = Nothing
DBConnection.Close
Set DBConnection = Nothing
HMIRuntime.Trace "Connection closed again" & vbNewLine

问题补充:
数据库已经连接上,脚本调试输出如图,显示库中无数据。

图片说明:

wincc如何通过VB脚本读取报警数据库归档内容    wincc如何通过VB脚本读取报警数据库归档内容   

最佳答案

Rtname=DatasourceNameRT.Value 
 snam1=ServerName1.Value
改成
Rtname=DatasourceNameRT.Read
 snam1=ServerName1.Read
试试

详细参考:
WinCC数据开放性
https://support.industry.siemens.com/cs/cn/zh/view/78682604
在WinCC中如何使用VBS读取报警记录数据到EXCEL
https://support.industry.siemens.com/cs/cn/zh/view/77938393
WinCC、Excel、VBA、脚本、连通性软件包
https://support.industry.siemens.com/cs/cn/zh/view/71676391
WinCC/连通性软件包 V7.4 SP1
https://support.industry.siemens.com/cs/cn/zh/view/109746336
补充:
按我的方法试过了吗?
另外您可以先把WHERE去掉,直接查询所有的,试试,如果能查询到了,再加上条件

提问者对于答案的评价:
谢谢你的回答,找到问题出在哪儿了,软件语言是中文简体,查询的是繁体的归档数据库表,ALGVIEWEXCHT改为ALGVIEWEXCHS就可以了。

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc362472.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2021年7月5日 下午12:23
下一篇 2021年7月5日 下午12:23

相关推荐

  • WinCC V7怎么安装“脚本调试器”?

    Win7系统里,WinCC V7 是采用最全的方式安装的。按照书上的说法,在[程序-附件]中没找到Microsoft Script Debu…

    SIMATIC WinCC 2017年7月26日
  • WinCC flexible报警窗口的弹出

    请问怎么设置才使报警窗口不弹出? 最佳答案 把模板上的报警控件删了就好了 提问者对于答案的评价:谢谢,解决了

    SIMATIC WinCC 2018年3月6日
  • Wincc 客户端AutoStart启动慢

    现场有三台电脑做客户端,一台服务器,Wincc项目存放在服务器上,三台客户端电脑访问服务器的项目,现在情况①.服务器和客户机都设置了Autostart但是开机启动的时间四五分钟才弹…

    SIMATIC WinCC 2021年7月5日
  • 播放窗口空白

    WinCC跟我做:使用状态显示对象实现动画 课程编号:V0568 本视频介绍了使用“状态显示”对象创建动画…. 点击这里,打开新窗口观看完整视频 该视频下的所有用户提问列表 播…

    2021年7月5日
  • 我需要哪些授权

    我单位新上了一套西门子S7-200系统,安装的是STEP7软件,不知道STEP7软件是否必须有授权,组态软件是WINCC,WINCC软件运行时的授权一定要装在硬盘里吗?我是维护系统…

    SIMATIC WinCC 2019年6月11日
  • wincc v6.0 sp2 图形编辑器中的库

    各位,我安装winccv6.0 sp2亚洲版的,在图形编辑器中使用库文件时文件图标不能预览,都是同样的图标(和图形编辑器的图标一样),请问这是为什么?如何解决这个问题?系…

    SIMATIC WinCC 2019年6月11日
  • wincc 7.0 中文授权问题

    我已购买wincc6.2的server和2个客户端的授权,现在买了6.2到7.0的升级包,授权要单独买吗?那个6.2到7.0的升级包有什么东西? 最佳答案 wincc6.2升级到w…

    SIMATIC WinCC 2019年6月11日
  • 查询用户归档并显示

    大家好,想查询用户归档,条件为:起始日期,终止日期;并将结果显示在excel或PDF中,望高人开解;另外用户归档中的LastAccess是怎么回事,还有里面有一个类型是:日期/时间…

    SIMATIC WinCC 2019年6月11日
  • MP 277的SD

    MP 277的SD卡中的.pdz文件能打开并编辑吗 最佳答案 该文件将压缩的项目文件与运行系统项目一同传送到HMI 设备,在下载是选择了“启用回传”(Enabl…

    SIMATIC WinCC 2020年11月1日
  • 博途组态HMI中棒图值的变化

    用仿真软件来进行的实验,通过触摸屏向CPU写入数据,液位设定值小数位数为2时,棒图中液位的值便扩大100倍,设定值小数位数为0,则棒图显示值是对的,棒图中小数位数设成几也不管用,求…

    2017年7月30日

发表回复

登录后才能评论