使用VB编写的程序如下:
Sub OnLButtonDown(ByVal Item, ByVal Flags, ByVal x, ByVal y) '---------------------------------------
Dim con
Dim kongjian1
Set kongjian1 = ScreenItems("控件4")
kongjian1.Visible = 1
Dim str
'Dim blnOK
Dim sql
Dim it
Dim i
Dim rst
Dim cmd
Dim obj
Dim ok
Dim qyear
Dim qmonth
Dim qday
Dim qhour
Dim qendyear
Dim qendmonth
Dim qendday
Dim qendhour
Dim t1,t2
On Error Resume Next
Set obj=ScreenItems("控件4")
obj.listitems.clear
Set con=CreateObject("ADODB.Connection")
str="Provider=MSDASQL;DSN=yx;Uid=sa;Pwd=;"
con.ConnectionString=str
con.Open
If con.State=1 Then
Dim rili
Set rili=ScreenItems("rq1")
qyear=rili.year
qmonth=rili.month
qday=rili.day
qhour=rili.hour
if qmonth<10 then
if qday<10 then
t1=qyear & "-0" & qmonth & "-0" & qday
Else
t1=qyear & "-0" & qmonth & "-" & qday
End If
End If
If qmonth>=10 Then
If qday<10 Then
t1=qyear & "-" & qmonth & "-0" & qday else
t1=qyear & "-" & qmonth & "-" & qday
End If
End If
Dim d1
Dim d2
d1=t1 & " 00" & ":00" & ":00"
d2=t1 & " 23" & ":59" & ":00"
sql="select * from dbo.日报表 where 时间>= '"&d1&"' and 时间<='"&d2&"' order by 时间 ASC"
Set cmd=CreateObject("ADODB.Command")
cmd.ActiveConnection=con
cmd.CommandText=sql
Set rst=CreateObject("ADODB.Recordset")
Set rst=cmd.Execute i=1
Do Until rst.EOF
Set it=obj.listItems.Add
it.Text =i
it.subitems(1)=rst.Fields("时间").value
it.subitems(2)=rst.fields("进水液位").value
it.subitems(3)=rst.fields("进水1_液位差").value
it.subitems(4)=rst.fields("进水2_液位差").value
it.subitems(5)=rst.fields("进水温度").value
it.subitems(6)=rst.fields("进水氨氮").value
it.subitems(7)=rst.fields("进水COD").value
it.subitems(8)=rst.fields("进水PH").value
it.subitems(9)=rst.fields("细格栅1_液位差").value
it.subitems(10)=rst.fields("细格栅2_液位差").value
it.subitems(11)=rst.fields("进水瞬时流速").value
it.subitems(12)=rst.fields("氧化池1_溶解氧1").value
it.subitems(13)=rst.fields("氧化池1_污泥浓度1").value
it.subitems(14)=rst.fields("氧化池1_溶解氧2").value
it.subitems(15)=rst.fields("氧化池1_污泥浓度2").value
it.subitems(16)=rst.fields("氧化池2_溶解氧1").value
it.subitems(17)=rst.fields("氧化池2_污泥浓度1").value
it.subitems(18)=rst.fields("氧化池2_溶解氧2").value
it.subitems(19)=rst.fields("回流污泥瞬时流速").value
it.subitems(20)=rst.fields("配水井液位").value
it.subitems(21)=rst.fields("贮泥池液位").value
it.subitems(22)=rst.fields("出水COD").value
it.subitems(23)=rst.fields("出水SS").value
it.subitems(24)=rst.fields("出水PH").value
it.subitems(25)=rst.fields("出水氨氮").value
it.subitems(26)=rst.fields("出水瞬时流速").value
it.subitems(27)=rst.fields("进水总流量").value
it.subitems(28)=rst.fields("出水总流量").value
it.subitems(29)=rst.fields("回流污泥总流量").value
i=i+1
rst.movenext
Loop
rst.close
Set rst=Nothing
Set cmd=Nothing
'MsgBox "执行成功",vbOKOnly,"提示"
con.Close
End If
Set con=Nothing
End Sub
运行后listview控件中显示满足查询条件的行数,例如,数据库中有10行数据满足要求,就显示1,2,3.... 10,不知道哪里出现问题,求大神帮忙,急救。
Sub OnLButtonDown(ByVal Item, ByVal Flags, ByVal x, ByVal y) '---------------------------------------
Dim con
Dim kongjian1
Set kongjian1 = ScreenItems("控件4")
kongjian1.Visible = 1
Dim str
'Dim blnOK
Dim sql
Dim it
Dim i
Dim rst
Dim cmd
Dim obj
Dim ok
Dim qyear
Dim qmonth
Dim qday
Dim qhour
Dim qendyear
Dim qendmonth
Dim qendday
Dim qendhour
Dim t1,t2
On Error Resume Next
Set obj=ScreenItems("控件4")
obj.listitems.clear
Set con=CreateObject("ADODB.Connection")
str="Provider=MSDASQL;DSN=yx;Uid=sa;Pwd=;"
con.ConnectionString=str
con.Open
If con.State=1 Then
Dim rili
Set rili=ScreenItems("rq1")
qyear=rili.year
qmonth=rili.month
qday=rili.day
qhour=rili.hour
if qmonth<10 then
if qday<10 then
t1=qyear & "-0" & qmonth & "-0" & qday
Else
t1=qyear & "-0" & qmonth & "-" & qday
End If
End If
If qmonth>=10 Then
If qday<10 Then
t1=qyear & "-" & qmonth & "-0" & qday else
t1=qyear & "-" & qmonth & "-" & qday
End If
End If
Dim d1
Dim d2
d1=t1 & " 00" & ":00" & ":00"
d2=t1 & " 23" & ":59" & ":00"
sql="select * from dbo.日报表 where 时间>= '"&d1&"' and 时间<='"&d2&"' order by 时间 ASC"
Set cmd=CreateObject("ADODB.Command")
cmd.ActiveConnection=con
cmd.CommandText=sql
Set rst=CreateObject("ADODB.Recordset")
Set rst=cmd.Execute i=1
Do Until rst.EOF
Set it=obj.listItems.Add
it.Text =i
it.subitems(1)=rst.Fields("时间").value
it.subitems(2)=rst.fields("进水液位").value
it.subitems(3)=rst.fields("进水1_液位差").value
it.subitems(4)=rst.fields("进水2_液位差").value
it.subitems(5)=rst.fields("进水温度").value
it.subitems(6)=rst.fields("进水氨氮").value
it.subitems(7)=rst.fields("进水COD").value
it.subitems(8)=rst.fields("进水PH").value
it.subitems(9)=rst.fields("细格栅1_液位差").value
it.subitems(10)=rst.fields("细格栅2_液位差").value
it.subitems(11)=rst.fields("进水瞬时流速").value
it.subitems(12)=rst.fields("氧化池1_溶解氧1").value
it.subitems(13)=rst.fields("氧化池1_污泥浓度1").value
it.subitems(14)=rst.fields("氧化池1_溶解氧2").value
it.subitems(15)=rst.fields("氧化池1_污泥浓度2").value
it.subitems(16)=rst.fields("氧化池2_溶解氧1").value
it.subitems(17)=rst.fields("氧化池2_污泥浓度1").value
it.subitems(18)=rst.fields("氧化池2_溶解氧2").value
it.subitems(19)=rst.fields("回流污泥瞬时流速").value
it.subitems(20)=rst.fields("配水井液位").value
it.subitems(21)=rst.fields("贮泥池液位").value
it.subitems(22)=rst.fields("出水COD").value
it.subitems(23)=rst.fields("出水SS").value
it.subitems(24)=rst.fields("出水PH").value
it.subitems(25)=rst.fields("出水氨氮").value
it.subitems(26)=rst.fields("出水瞬时流速").value
it.subitems(27)=rst.fields("进水总流量").value
it.subitems(28)=rst.fields("出水总流量").value
it.subitems(29)=rst.fields("回流污泥总流量").value
i=i+1
rst.movenext
Loop
rst.close
Set rst=Nothing
Set cmd=Nothing
'MsgBox "执行成功",vbOKOnly,"提示"
con.Close
End If
Set con=Nothing
End Sub
运行后listview控件中显示满足查询条件的行数,例如,数据库中有10行数据满足要求,就显示1,2,3.... 10,不知道哪里出现问题,求大神帮忙,急救。
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货