wincc如何实现查询多个归档变量的数据

我想用listview控件实现两个归档变量的数据查询,但是总是做不出来,希望各位高手给提点建议!

Dim sPro
Dim sDsn
Dim sSer
Dim sCon
Dim sSql
Dim oRs
Dim conn
Dim oCom
Dim oItem
Dim m, n, s
Dim oList
Set oList = ScreenItems("listview1")
oList.View =3
oList.ListItems.Clear
sPro = "Provider=WinCCOLEDBProvider.1;"
sDsn = "Catalog=CC_jjin_12_10_29_16_49_51R;"
sSer = "Data Source=PC-201210291444\WinCC"
sCon = sPro + sDsn + sSer
sSql = "TAG:R,(12;15),'2013-03-20 00:01:00.000','2013-03-20 19:00:00.000'"
MsgBox "Open with:" & vbCr & sCon & vbCr & sSql & vbCr
Set conn = CreateObject("ADODB.Connection")
conn.ConnectionString = sCon
conn.CursorLocation = 3
conn.Open
Set oRs = CreateObject("ADODB.Recordset")
Set oCom = CreateObject("ADODB.Command")
oCom.CommandType = 1
Set oCom.ActiveConnection = conn
oCom.CommandText = sSql
Set oRs = oCom.Execute
m = oRs.Fields.Count
MsgBox "Open with:" & vbCr & m & vbCr 
oList.ColumnHeaders.Clear
oList.ColumnHeaders.Add , , CStr(oRs.Fields(0).Name), 150
oList.ColumnHeaders.Add , , CStr(oRs.Fields(1).Name), 150
oList.ColumnHeaders.Add , , CStr(oRs.Fields(2).Name), 150
If (m > 0) Then
oRs.MoveFirst 
n = 0
MsgBox "Open with:" & vbCr & m & vbCr 
Do While Not ors.eof
n=n+1

s=Left(CStr(ors.Fields(1).Value),23)
Set oitem= oList.ListItems.Add()
oitem.Text=Left(CStr(ors.Fields(1).Value),23)                           
oitem.SubItems(1)=FormatNumber(ors.Fields(2).Value,4)
oitem.SubItems(2)=FormatNumber(ors.Fields(0).Value,4)
ors.MoveNext
Loop
ors.Close
Else
End If
Set ors=Nothing
conn.close
Set conn=Nothing

问题补充:
我想用listview控件实现归档数据的查询,单变量可以实现,但是两个变量的无法实现,希望各位提出宝贵的建议!

最佳答案

每次只查询一个,循环着来。

貌似你即便能够一次查询出来多个,也没法直接用RECORDSET直接将结果赋值到LIST控件。ADO得到的数据矩阵,并不是你我想要的布局格式。
所以还是要编程循环。

提问者对于答案的评价:
嗯,我已经实现了,就是采用循环的方式实现的!

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2018年12月3日 下午3:48
下一篇 2018年12月3日 下午3:48

相关推荐

  • 上位机按钮有时自动变为"1"的怪现象

    上位机创建的pc 站通过opc应用与400h冗余cpu  进行通讯,最近发生一个怪现象 上位机wincc画面里的按钮会无缘无故的变成1,按钮…

    SIMATIC WinCC 2021年7月5日
  • 关于wincc中的c脚本和excel之间的问题

    我之前用pExcel->Worksheets("sheet1")->Range("A1")->Value=GetTagFl…

    SIMATIC WinCC 2017年10月29日
  • 12寸 平板工控机的订货号是多少?

    SIMATIC IPC477D,12寸 平板工控机的订货号是多少? 钻石用户推荐最佳答案 精智面板TP1200:6AV21240MC010AX0精智面板KP12…

    SIMATIC WinCC 2021年7月5日
  • wincc7.0读wincc5.1数据

    旧系统使用的是wincc5.1,由于数据量较大,调用曲线显示时非常慢,现打算新增一附助系统,能否用Wincc7.0读取5.1的实时数据?以什么方式读取效率更高?用7.0的SQL&n…

    SIMATIC WinCC 2019年6月11日
  • 请教把PROTOOL面板的功能做在WINCC里!

    问题是这样的,原来我们的现场操作面板是op27后来op27没有买的了,就用op270来代替,我想再不久270也会没有卖了,所以想用电脑来代替面板,但才做一个点就出现问题了!就是27…

    SIMATIC WinCC 2019年6月11日
  • WinCC 及PLC问题

    问题1:我在变量管理创建了S7 的驱动程序,然后在PROFIBUS创建驱动程序连接,在属性项里有站地址、段ID号、机架号、插槽号要设置,机架号是指CPU机架吗?插槽号是指…

    SIMATIC WinCC 2019年6月11日
  • wincc6.2与CP343通过上位机的普通网卡TP-LINK连接问题

    我是初学者,现在遇到问题是wincc6.2安装完成后TCP/IP单元选择网卡时没有本机的网卡,但是本机可以上网网卡正常,是不是还需要什么软件?SOFTNET?希望大家帮下我这个初学…

    SIMATIC WinCC 2019年6月11日
  • 求wincc7.0下载地址

    给个可以目标另存为的下载地址 迅雷 bt  电驴都不行哦 最佳答案 西门子这边不是有吗?在全球资源里,注册一下,就行了,我正在下,目标另存为…

    SIMATIC WinCC 2019年6月11日
  • Wincc 服务器周期性掉线

    Win10专业版1909,博途V15.1 professional,单服务器+客户机架构。服务器运行约7个小时就会出现如图报警,掉线。然后自动恢复运行。服务器报警后即使恢…

    SIMATIC WinCC 2020年11月1日
  • WINCC程序打包

    求助高手,请问能不能将WinCC设计的人机界面程序,打包成一个可以安装/卸载的可执行文件。这样就不用每次都要先运行WinCC,然后再运行程序了的? 问题补充:谢谢各位,我想问一下R…

    SIMATIC WinCC 2019年6月11日