归档变量,查询值为空

各位好!
背景:安装了connectivity pack安装包,授权成功,显示->正在使用;
 想通过Tag:R读取变量值到CSV文件;
现在是 能够读取输出 归档的表dbo.Archive中 value ID和 valueName,但是值一直为空,因为 objRecordset.RecordCount 监控发现=0,导致无法执行写入。为什么是空?
我用的是内部变量+变量仿真器做的啊,点控件的导出CSV还能看到数据在里面,用VBS为什么我失败了。

Set objConnection = CreateObject("ADODB.Connection")
 objConnection.ConnectionString=strConnection
 objConnection.CursorLocation=3
 objConnection.Open
 
 If Err.Number <> 0 Then
  GiveOut("DB_Connection_Error: "& Hex(Err.Number)& vbCrLf &"Descr: "& Err.Description)
 Else
  On Error Goto 0   ' allow exception 
  '===== command DB command ==============
  Set objRecordset = CreateObject("ADODB.Recordset")
  Set objCommand = CreateObject("ADODB.Command")
  objCommand.CommandType = 1 
  Set objCommand.ActiveConnection = objConnection

  '======= query ==========================
     ndat = arrOrder(3) 'arrOrder3/4是 UTC时间,确认过了,da
     'dat1 = Year(ndat)&"-"&Right("0"&Month(ndat),2)&"-"&Right("0"&Day(ndat),2)&" "&Right("0"& Hour(ndat),2)":"&Right("0"&Minute(ndat),2)":"&Right("0"&Second(ndat),2)
     dat1 = Year(ndat)&"-"&Right("0"&Month(ndat),2)&"-"&Right("0"&Day(ndat),2)&" "&FormatDateTime(ndat,vbLongTime)
     
     ndat = arrOrder(4) 
     dat2 = Year(ndat)&"-"&Right("0"&Month(ndat),2)&"-"&Right("0"&Day(ndat),2)&" "&FormatDateTime(ndat,vbLongTime)
         
strSqlQuery = "TAG:R,"&trendvar&",'"&dat1&".000','"&dat2&".000'"

objCommand.CommandText = strSqlQuery
            
   '======= Fill the recordset ===============
  
   Set objRecordset = objCommand.Execute
   If Err.Number <> 0 Then
    If Err.Number = &H80040E19 Then
     GiveOut("Melde keine Daten gefunden")
     Ord_exportTaglogToFile = 3 'keine taglogging Daten gefunden
    Else
     GiveOut("Taglogging, DB_Command_Error: "& Hex(Err.Number)&_
       vbCrLf &"Descr: "& Err.Description)
     Ord_exportTaglogToFile = 4 'error db request
    End If 
   End If
       
   nCols = objRecordset.Fields.Count
   nRows = objRecordset.RecordCount
If nRows <> 0 Then
......

以上是主要代码,关键是 recordcount=0.。。访问WINCC OLEDB语句没问题,因为我已经通过函数得到了CCProjectNameR--表dbo.archive中的 valueID和valueName,
DateAdd("h",-8,arrOrder(3))这些已经转为utc时间了。

问题补充:
trendvar 是 valueid, 我读出来后,用在for  循环的,这样就读出很多然后写入csv的。我和表对过ID,没有问题。测试发现是 recordset.execute之后,err.Number不等于0。。。。
现在很郁闷不知道错在哪

最佳答案

trendvar这个变量的内容是啥
关于读取归档可以参考:
http://mp.weixin.qq.com/mp/homepage?__biz=MzIwNTUyNTIwNg==&hid=4&sn=e1f84810a1c0f90d2a8829be52f126c2&scene=18#wechat_redirect

还有官方文档,介绍的很详细,稍微一改就可以:
在WinCC中如何使用VBS读取变量归档数据到EXCEL
https://support.industry.siemens.com/cs/cn/zh/view/77940055
通过VBS脚本在ListView控件中显示WinCC的变量记录
https://support.industry.siemens.com/cs/cn/zh/view/74932765
WinCC、Excel、VBA、脚本、连通性软件包
https://support.industry.siemens.com/cs/cn/zh/view/71676391

提问者对于答案的评价:
最后发现是 项目问题,我这个项目是7.0移植7.3的。解决方法我在技术论坛里面分享了

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

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

相关推荐

  • WINCC和LS产电的PLC怎么通信

    WINCC和LS产电的 XBC-DN64H能通信吗。我尝试用KEP和PLC(用PLC自带的RS232端子)通信,但连接不上。不知道是设置问题还是产品不支持 问题补充:设备…

    SIMATIC WinCC 2021年7月5日
  • [求助]wincc的spreadsheet控件怎么保存和打印

    wincc的spreadsheet控件怎么通过代码保存和打印指定区域谢谢 最佳答案 sheet1.export"E:\路径",false这句是把数据转出到Exc…

    SIMATIC WinCC 2017年6月3日
  • wincc6.2 s7-200通讯问题

    项目有2台PC机装wincc , 4个s7200的控制站装有CP243-1,都连接到交换机上,用PC Access通讯来读取变量,2台PC机内容相同。…

    SIMATIC WinCC 2019年6月11日
  • WinCC 变量 Excel 工具

    感觉组态王的DB导出很方便,而TAG Export Import并不是安装WinCC的标准配置,需要从WinCC安装文件中选择安装。那么,对于没有安装的,如何处…

    SIMATIC WinCC 2017年11月19日
  • c脚本语句的帮助

    if(条件1 与 条件2)中的“与”用c脚本语句是什么呢顺便说一下  “或”  “非”还有是否要“引用文件”呢&nbsp…

    2017年10月24日
  • WINCC2008安装问题

    安装WINCC2008时提示The 问题补充:安装WINCC2008时出现The "CT_NPLC.DLL" file has&n…

    SIMATIC WinCC 2019年6月11日
  • WINCC62中如何记录模拟值报警

    我用300读取仪表重量,在WINCC中对该重量做存盘、实时历史查询!同时监视该模拟值,越限报警!用限制值监控可以吗?请详细说下步骤和作法!!非常感谢 问题补充:能实现,上下限报警同…

    SIMATIC WinCC 2019年6月11日
  • SQL2005 安装问题

    以前电脑中D盘安装了SQL2005 ,后来电脑出问题,没有卸载SQL2005,直接重装系统; 为了装WINCC,直接把在D盘的SQL2005文件夹删除了,现在再…

    SIMATIC WinCC 2019年6月11日
  • wincc与c脚本

    我有很多内部变量,如a1-1,a1-2.a1-3,a2-1,……,我想在c语言中做成循环,来方便使用这些内部变量,不做循环,语句比较烦琐,修改起来工作量也较大,怎样实现?谢…

    SIMATIC WinCC 2019年6月11日
  • wincc 监视表

    wincc里面的监视表可以监控PLC里面的变量吗  如果可以是要先连接要监控的变量还是仿真在表里面输入变量 图片说明:    最佳答案 这是…

    2021年7月5日

发表回复

登录后才能评论