wincc 按照时间查询数据

在wincc 想通过时间条件来查询,通过 data time picker控件获取系统时间,或者是通过脚本将系统时间赋值给了一个内部变量。然后想通过数据库查询语言将时间变量值与后天数据库数据时间值比较来查询数据,但是怎么也实现不了,我做的有一下2种方法,请各位大神给我看一下:
1、sql="select * from Table_5 where timer between '"& StartData &"' and '"& StopData &"'
2、TAG:R方式来查询
时建类型为datatime,不知道如何可以实现这种类型的数据比较,各位大神有没有好的建议,谢谢。

最佳答案

查询语句应该是
sql="select * from Table_5 where timer between ''"& StartData &"'' and ''"& StopData &"''ORDER BY timer "
下面是我做的一个类似的时间查询画面
其中查询按钮下面的脚本为
Dim i, n, k, n1, a1, b1, c1,e1, f1,h1,j1
Dim Sql, oCom, conn, sql1, oCom1,oItem
Dim j, b, z
Dim ylp, wdp, llp, ylx, wdx, llx, yld, wdd, lld
Dim zlp, dyp, sdp, zlx, dyx, sdx, zld, dyd, sdd
Dim strcn, cn
Dim a, shi, t, x
Dim oRs, oRs1
Dim  Text2
Dim BeginDate 
Dim EndDate  
Dim By, Bm, Bd
Dim Ny, Nm, Nd, c, e, f
Dim Date1,Date2
Dim t31,y1,m1,d1,s1,y2,m2,d2,s2
Set y1=ScreenItems("控件1")
Set m1=ScreenItems("控件4")
Set d1=ScreenItems("控件6")
Set s1=ScreenItems("控件7")
Set y2=ScreenItems("控件10")
Set m2=ScreenItems("控件11")
Set d2=ScreenItems("控件12")
Set s2=ScreenItems("控件13")


Set dyx = ScreenItems("控件19")
dyx.ListItems.Clear 
By=y1.Text
Bm=m1.Text
Bd=d1.Text
Ny=y2.Text
Nm=m2.Text
Nd=d2.Text

If By > Ny Or By = Ny And Bm > Nm Or By = Ny And Bm = Nm And Bd > Nd Or Bd=Nd And s1.Text>s2.Text  Then
MsgBox "输入的时间不正确", vbOK, "错误的起始时间"
Else

BeginDate = By&"/"&Bm&"/"&Bd&" "&s1.Text&":00:00"
EndDate = Ny&"/"&Nm&"/"&Nd&" "&s2.Text&":59:59"
''CONVERT(char(19),shijian, 20) AS
''建立连接
 Sql = "SELECT * FROM 一楼温度记录  WHERE shijian BETWEEN ''" & BeginDate & "'' and ''" & EndDate & "'' ORDER BY shijian "
 strcn = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist SecurityInfo=False;Initial Catalog=wanda;Data Source=.\wincc"
   Set conn = CreateObject("ADODB.Connection")
    conn.ConnectionString = strcn
    conn.CursorLocation = 3
    conn.Open
''使用命令文本查询
    Set oRs = CreateObject("ADODB.Recordset")    
    Set oCom = CreateObject("ADODB.Command")
    oCom.CommandType = 1
    Set oCom.ActiveConnection = conn
    oCom.CommandText = Sql 
   Set oRs = oCom.Execute
    
   n = oRs.RecordCount

 
  

If n = 0 Then
MsgBox "对不起,没有找到符合条件的数据", vbOK, "没有相关数据"
End If
oRs.Requery


If (n > 0) Then
        oRs.MoveFirst       
        i = 0       
 End If
Do While Not oRs.EOF

 Set oItem = dyx.ListItems.Add()''添加新行
 oItem.Text=CStr(oRs.Fields(0).Value)
 oItem.SubItems(1)=CStr(oRs.Fields(1).Value)
 oItem.SubItems(2)=CStr(oRs.Fields(2).Value)
 oItem.SubItems(3)=Formatnumber((oRs.Fields(3).Value),2)
 oItem.SubItems(4)=Formatnumber((oRs.Fields(4).Value),2)
 oItem.SubItems(5)=Formatnumber((oRs.Fields(5).Value),2)
 oItem.SubItems(6)=CStr(oRs.Fields(6).Value)
 oItem.SubItems(7)=CStr(oRs.Fields(7).Value)

  
oRs.MoveNext   
 Loop
 End If 
   oRs.close''这是后加的,退出程序前,关闭与数据库,记录集的连接
  ''ors1.close''这是后加的
  conn.close''这是后加的

希望对你有所帮助

图片说明:

wincc 按照时间查询数据  wincc 按照时间查询数据  

提问者对于答案的评价:
对于时间查询,我选择data timepicker 将系统时间赋值给内部变量,时间值为字符串,用数据库语句就可以实现了,不需要TAG:R的方式来实现查询。谢谢各位的答复,谢谢。

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

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

相关推荐

  • wincc安装时Microsoft Message Queuing v5.0

    安装wincc是出现Microsoft Message Queuing v5.0缺失。按照已经说的方法:Microsoft Message&…

    SIMATIC WinCC 2019年6月11日
  • 求助 所选结构元素不能单独复制

    我现在需要将wincc里MPI的变量弄到TCP/IP的变量组里,但是复制的时候提示所选的结构元素不能复制,系统是用结构变量做的,几台机器的变量表都是相同的。请问怎么才能把变量拷贝出…

    SIMATIC WinCC 2019年6月11日
  • WINCC编程软件

    请问官网上有免费的WINCC的软件吗? 最佳答案 软件直接找当地的代理商要一个就行了,免费的,没有授权可以在演示模式下用两个小时.授权需要购买的. 提问者对于答案的评价:谢谢!

    SIMATIC WinCC 2021年7月5日
  • Wincc鼠标动作同时满足画面调用和BOOL型变量置0

    在WINCC中添加了一张图片,使这张图片作为按钮功能。要实现两个功能:1、切换画面操作,(已经完成)2、同时完成给内部变量BOOL型,赋值0的操作,不知道这步在C动作中应该如何添加…

    2021年7月5日
  • WinCC Flexible安装包

    求一个WinCC Flexible安装包,希望有安装教程,详细点,且能够和博图V15.0WinCC兼容,是在同一台电脑上安装的 问题补充:我的是V15.0,也兼容吧 最佳…

    2021年7月5日
  • wincc pro 中用VBS脚本过滤报警信息

    用VBS脚本指定筛选的SQL语句,实现了按照报警ID过滤信息,但在做按照日期时间筛选报警信息的时候出错了。我用报警视图自带的过滤器查看了,脚本生成的SQL语句不是我设置的时间日期 …

    2021年7月5日
  • wincc6.2 客户机与服务器操作系统兼容问题

    各位大侠好:我想问下wincc6.2服务器与客户机操作系统兼容的问题,服务器装server2003还是2008,客户机又装什么系统呢? 最佳答案 xp就可以的~没必要装2003.可…

    SIMATIC WinCC 2019年6月10日
  • wincc7.3 项目无法激活

    wincc7.3建的项目,点击激活,出现如下提示。 图片说明:       最佳答案 检查操作系统 系统不可以是ghost的操作系…

    2021年7月5日
  • 虚拟机安装wincc flexible 2008sp5后无法运行

    显示:无法与自动化许可证管理器服务建立连接。将关闭此应用程序,也试过安装授权和重启,但还是这样显示 图片说明:    钻石用户推荐最佳答案 1、虚拟机的系统是不…

    2021年7月5日
  • 中英文切换,WCC是英文,系统是英文版

    小弟遇到一问题,不知道怎么做了1、文本库的文本是报警记录的文本吗?是不是随着报警记录自己生成的2、由于WCC是英文版,添加的语言室中国(台湾),我把文本库导出来,在中国台湾中输入我…

    SIMATIC WinCC 2019年6月11日

发表回复

登录后才能评论