📄 frm1_ljcs.frm
字号:
Dim leijia1(2) As String
Dim k As Integer
If shijian = 0 Then
If MsgBox("是否确定执行该操作", vbYesNo, "确定") = vbYes Then
d1 = Text1.Text
k = d1 * dajia
leijia1(0) = Chr(k \ 128)
leijia1(1) = Chr(k Mod 128)
Winsock1.SendData "#01WB" & leijia1(0) & leijia1(1) & vbCr
shijian = 1
Timer1.Enabled = True
End If
Else
MsgBox "已有数据传输中.请等待"
End If
End Sub
Private Sub Command2_Click()
Dim d2 As Integer
Dim leijia2(2) As String
Dim k2 As Integer
If shijian2 = 0 Then
If MsgBox("是否确定执行该操作", vbYesNo, "确定") = vbYes Then
d2 = Text2.Text
k2 = d2 * danjia2
leijia2(0) = Chr(k2 \ 128)
leijia2(1) = Chr(k2 Mod 128)
Winsock2.SendData "#01WB" & leijia2(0) & leijia2(1) & vbCr
shijian2 = 1
Timer2.Enabled = True
End If
Else
MsgBox "已有数据传输中.请等待"
End If
End Sub
Private Sub Command3_Click()
Dim d3 As Integer
Dim leijia3(2) As String
Dim k3 As Integer
If shijian3 = 0 Then
If MsgBox("是否确定执行该操作", vbYesNo, "确定") = vbYes Then
d3 = Text3.Text
k3 = d3 * danjia3
leijia3(0) = Chr(k3 \ 128)
leijia3(1) = Chr(k3 Mod 128)
Winsock3.SendData "#01WB" & leijia3(0) & leijia3(1) & vbCr
shijian3 = 1
Timer3.Enabled = True
End If
Else
MsgBox "已有数据传输中.请等待"
End If
End Sub
Private Sub Command4_Click()
If shijian = 0 Then
Winsock2.Close
Winsock3.Close
Winsock1.Close
Winsock1.LocalPort = 2008
Winsock1.Listen
Else
MsgBox "已有数据传输中.请等待"
End If
End Sub
Private Sub Command5_Click()
If shijian2 = 0 Then
Winsock1.Close
Winsock3.Close
Winsock2.Close
Winsock2.LocalPort = 2009
Winsock2.Listen
Else
MsgBox "已有数据传输中.请等待"
End If
End Sub
Private Sub Command6_Click()
If shijian3 = 0 Then
Winsock1.Close
Winsock2.Close
Winsock3.Close
Winsock3.LocalPort = 3000
Winsock3.Listen
Else
MsgBox "已有数据传输中.请等待"
End If
End Sub
Private Sub Form_Load()
Adodc1.ConnectionString = PublicStr
Adodc1.RecordSource = "select * from sjcj where 冲水标志='有' and 点位编号=1"
Adodc1.Refresh
Set DataGrid1.DataSource = Adodc1
Adodc4.ConnectionString = PublicStr
Adodc4.RecordSource = "select max(时间)as 最新时间 from sjcj where 点位编号=1"
Adodc4.Refresh
datatime = Adodc4.Recordset.Fields("最新时间")
Adodc4.RecordSource = "select * from sjcj where 时间='" & datatime & "' "
Adodc4.Refresh
danjia = Adodc4.Recordset.Fields("单价")
Adodc2.ConnectionString = PublicStr
Adodc2.RecordSource = "select * from sjcj where 冲水标志='有' and 点位编号=2"
Adodc2.Refresh
Set DataGrid2.DataSource = Adodc2
Adodc5.ConnectionString = PublicStr
Adodc5.RecordSource = "select max(时间)as 最新时间 from sjcj where 点位编号=2"
Adodc5.Refresh
datatime2 = Adodc5.Recordset.Fields("最新时间")
Adodc5.RecordSource = "select * from sjcj where 时间='" & datatime2 & "'"
Adodc5.Refresh
danjia2 = Adodc5.Recordset.Fields("单价")
Adodc3.ConnectionString = PublicStr
Adodc3.RecordSource = "select * from sjcj where 冲水标志='有' and 点位编号=3"
Adodc3.Refresh
Set DataGrid3.DataSource = Adodc3
Adodc6.ConnectionString = PublicStr
Adodc6.RecordSource = "select max(时间)as 最新时间 from sjcj where 点位编号=3"
Adodc6.Refresh
datatime3 = Adodc6.Recordset.Fields("最新时间")
Adodc6.RecordSource = "select * from sjcj where 时间='" & datatime3 & " '"
Adodc6.Refresh
danjia3 = Adodc6.Recordset.Fields("单价")
rq = Date
End Sub
Private Sub Timer1_Timer()
shijian = 0
Timer1.Enabled = False
End Sub
Private Sub Timer2_Timer()
shijian2 = 0
Timer2.Enabled = False
End Sub
Private Sub Timer3_Timer()
shijian3 = 0
Timer3.Enabled = False
End Sub
Private Sub Winsock1_ConnectionRequest(ByVal requestID As Long)
If Winsock1.State <> sckclose Then _
Winsock1.Close
Winsock1.Accept requestID
Text4.Text = Winsock1.RemoteHostIP
End Sub
Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
Winsock1.GetData Strdata
Dim a1(15) As Single
Dim b1(15) As String
Dim X As String
If Len(Strdata) > 6 Then
X = Mid(Strdata, 2, 1)
If X = "v" Or X = "V" Then
Label3.Caption = "通信成功"
Command1.Enabled = True
Else
b1(0) = Mid(Strdata, 5, 1)
b1(1) = Mid(Strdata, 6, 1)
b1(2) = Mid(Strdata, 7, 1)
b1(3) = Mid(Strdata, 8, 1)
b1(4) = Mid(Strdata, 9, 1)
b1(5) = Mid(Strdata, 10, 1)
b1(6) = Mid(Strdata, 11, 1)
b1(7) = Mid(Strdata, 12, 1)
b1(8) = Mid(Strdata, 13, 1)
b1(9) = Mid(Strdata, 14, 1)
b1(10) = Mid(Strdata, 15, 1)
b1(11) = Mid(Strdata, 16, 1)
b1(12) = Mid(Strdata, 17, 1)
b1(13) = Mid(Strdata, 18, 1)
b1(14) = Mid(Strdata, 19, 1)
a1(0) = Asc(b1(0))
a1(1) = Asc(b1(1))
a1(2) = Asc(b1(2))
a1(3) = Asc(b1(3))
a1(4) = Asc(b1(4))
a1(5) = Asc(b1(5))
a1(6) = Asc(b1(6))
a1(7) = Asc(b1(7))
a1(8) = Asc(b1(8))
a1(9) = Asc(b1(9))
a1(10) = Asc(b1(10))
a1(11) = Asc(b1(11))
a1(12) = Asc(b1(12))
a1(13) = Asc(b1(13))
a1(14) = Asc(b1(14))
Text7.Text = (a1(0) * 128 + a1(1)) / 10 '当前吨数
Text8.Text = a1(2) * 128 + a1(3) '当月吨数
Text9.Text = ((a1(12) * 128 * 128) + (a1(13) * 128) + a1(14)) / 10 '总累计水量
Text10.Text = (a1(6) * 128 + a1(7)) / 10 '当前流量
danjia = (a1(8) * 128 + a1(9)) / 100 '单价
Text11.Text = danjia
Text12.Text = a1(4) * 128 + a1(5) '所余钱数
Text13.Text = (a1(4) * 128 + a1(5)) / ((a1(8) * 128 + a1(9)) / 100) '剩余水量
Adodc1.Recordset.AddNew
Adodc1.Recordset.Fields("点位编号") = 1
Adodc1.Recordset.Fields("单价") = Text11.Text
Adodc1.Recordset.Fields("当前吨数") = Text7.Text
Adodc1.Recordset.Fields("当前流量") = Text10.Text
Adodc1.Recordset.Fields("当月吨数") = Text8.Text
Adodc1.Recordset.Fields("总水量") = Text9.Text
Adodc1.Recordset.Fields("剩余水量") = Text13.Text
Adodc1.Recordset.Fields("剩余钱数") = Text12.Text
Adodc1.Recordset.Fields("时间") = Now()
Adodc1.Recordset.Fields("日期") = rq
If a1(10) = 0 Then
Adodc1.Recordset.Fields("阀门状态") = "开"
Else
Adodc1.Recordset.Fields("阀门状态") = "关"
End If
If a1(11) = 0 Then
Adodc1.Recordset.Fields("是否窃水") = "是"
Else
Adodc1.Recordset.Fields("是否窃水") = "否"
End If
Adodc1.Recordset.Fields("冲水标志") = "有"
Adodc1.Recordset.Update
Adodc1.Refresh
End If
End If
End Sub
Private Sub Winsock2_ConnectionRequest(ByVal requestID As Long)
If Winsock2.State <> sckclose Then _
Winsock2.Close
Winsock2.Accept requestID
Text5.Text = Winsock2.RemoteHostIP
End Sub
Private Sub Winsock2_DataArrival(ByVal bytesTotal As Long)
Winsock2.GetData Strdata2
Dim a2(15) As Single
Dim b2(15) As String
Dim X As String
If Len(Strdata2) > 6 Then
X = Mid(Strdata2, 2, 1)
If X = "v" Or X = "V" Then
Label6.Caption = "通信成功"
Command2.Enabled = True
Else
b2(0) = Mid(Strdata2, 5, 1)
b2(1) = Mid(Strdata2, 6, 1)
b2(2) = Mid(Strdata2, 7, 1)
b2(3) = Mid(Strdata2, 8, 1)
b2(4) = Mid(Strdata2, 9, 1)
b2(5) = Mid(Strdata2, 10, 1)
b2(6) = Mid(Strdata2, 11, 1)
b2(7) = Mid(Strdata2, 12, 1)
b2(8) = Mid(Strdata2, 13, 1)
b2(9) = Mid(Strdata2, 14, 1)
b2(10) = Mid(Strdata2, 15, 1)
b2(11) = Mid(Strdata2, 16, 1)
b2(12) = Mid(Strdata2, 17, 1)
b2(13) = Mid(Strdata2, 18, 1)
b2(14) = Mid(Strdata2, 19, 1)
a2(0) = Asc(b2(0))
a2(1) = Asc(b2(1))
a2(2) = Asc(b2(2))
a2(3) = Asc(b2(3))
a2(4) = Asc(b2(4))
a2(5) = Asc(b2(5))
a2(6) = Asc(b2(6))
a2(7) = Asc(b2(7))
a2(8) = Asc(b2(8))
a2(9) = Asc(b2(9))
a2(10) = Asc(b2(10))
a2(11) = Asc(b2(11))
a2(12) = Asc(b2(12))
a2(13) = Asc(b2(13))
a2(14) = Asc(b2(14))
Text14.Text = (a2(0) * 128 + a2(1)) / 10 '当前吨数
Text15.Text = a2(2) * 128 + a2(3) '当月吨数
Text16.Text = ((a2(12) * 128 * 128) + (a2(13) * 128) + a2(14)) / 10 '总累计水量
Text17.Text = (a2(6) * 128 + a2(7)) / 10 '当前流量
danjia2 = (a2(8) * 128 + a2(9)) / 100 '单价
Text18.Text = danjia2
Text19.Text = a2(4) * 128 + a2(5) '所余钱数
Text20.Text = (a2(4) * 128 + a2(5)) / ((a2(8) * 128 + a2(9)) / 100) '剩余水量
Adodc2.Recordset.AddNew
Adodc2.Recordset.Fields("点位编号") = 2
Adodc2.Recordset.Fields("单价") = Text18.Text
Adodc2.Recordset.Fields("当前吨数") = Text14.Text
Adodc2.Recordset.Fields("当前流量") = Text17.Text
Adodc2.Recordset.Fields("当月吨数") = Text15.Text
Adodc2.Recordset.Fields("总水量") = Text16.Text
Adodc2.Recordset.Fields("剩余水量") = Text20.Text
Adodc2.Recordset.Fields("剩余钱数") = Text19.Text
Adodc2.Recordset.Fields("时间") = Now()
Adodc2.Recordset.Fields("日期") = rq
If a2(10) = 0 Then
Adodc2.Recordset.Fields("阀门状态") = "开"
Else
Adodc2.Recordset.Fields("阀门状态") = "关"
End If
If a2(11) = 0 Then
Adodc2.Recordset.Fields("是否窃水") = "是"
Else
Adodc2.Recordset.Fields("是否窃水") = "否"
End If
Adodc2.Recordset.Fields("冲水标志") = "有"
Adodc2.Recordset.Update
Adodc2.Refresh
End If
End If
End Sub
Private Sub Winsock3_ConnectionRequest(ByVal requestID As Long)
If Winsock3.State <> sckclose Then _
Winsock3.Close
Winsock3.Accept requsetID
Text6.Text = Winsock3.RemoteHostIP
End Sub
Private Sub Winsock3_DataArrival(ByVal bytesTotal As Long)
Winsock3.GetData Strdata3
Dim a3(15) As Single
Dim b3(15) As String
Dim X As String
If Len(Strdata3) > 6 Then
X = Mid(Strdata3, 2, 1)
If X = "v" Or X = "V" Then
Label7.Caption = "通信成功"
Command3.Enabled = True
Else
b3(0) = Mid(Strdata3, 5, 1)
b3(1) = Mid(Strdata3, 6, 1)
b3(2) = Mid(Strdata3, 7, 1)
b3(3) = Mid(Strdata3, 8, 1)
b3(4) = Mid(Strdata3, 9, 1)
b3(5) = Mid(Strdata3, 10, 1)
b3(6) = Mid(Strdata3, 11, 1)
b3(7) = Mid(Strdata3, 12, 1)
b3(8) = Mid(Strdata3, 13, 1)
b3(9) = Mid(Strdata3, 14, 1)
b3(10) = Mid(Strdata3, 15, 1)
b3(11) = Mid(Strdata3, 16, 1)
b3(12) = Mid(Strdata3, 17, 1)
b3(13) = Mid(Strdata3, 18, 1)
b3(14) = Mid(Strdata3, 19, 1)
a3(0) = Asc(b3(0))
a3(1) = Asc(b3(1))
a3(2) = Asc(b3(2))
a3(3) = Asc(b3(3))
a3(4) = Asc(b3(4))
a3(5) = Asc(b3(5))
a3(6) = Asc(b3(6))
a3(7) = Asc(b3(7))
a3(8) = Asc(b3(8))
a3(9) = Asc(b3(9))
a3(10) = Asc(b3(10))
a3(11) = Asc(b3(11))
a3(12) = Asc(b3(12))
a3(13) = Asc(b3(13))
a3(14) = Asc(b3(14))
Text21.Text = (a3(0) * 128 + a3(1)) / 10 '当前吨数
Text22.Text = a3(2) * 128 + a3(3) '当月吨数
Text23.Text = ((a3(12) * 128 * 128) + (a3(13) * 128) + a3(14)) / 10 '总累计水量
Text24.Text = (a3(6) * 128 + a3(7)) / 10 '当前流量
danjia3 = (a3(8) * 128 + a3(9)) / 100 '单价
Text25.Text = danjia3
Text26.Text = a3(4) * 128 + a3(5) '所余钱数
Text27.Text = (a3(4) * 128 + a3(5)) / ((a3(8) * 128 + a3(9)) / 100) '剩余水量
Adodc3.Recordset.AddNew
Adodc3.Recordset.Fields("点位编号") = 3
Adodc3.Recordset.Fields("单价") = Text25.Text
Adodc3.Recordset.Fields("当前吨数") = Text22.Text
Adodc3.Recordset.Fields("当前流量") = Text24.Text
Adodc3.Recordset.Fields("当月吨数") = Text22.Text
Adodc3.Recordset.Fields("总水量") = Text23.Text
Adodc3.Recordset.Fields("剩余水量") = Text27.Text
Adodc3.Recordset.Fields("剩余钱数") = Text26.Text
Adodc3.Recordset.Fields("时间") = Now()
Adodc3.Recordset.Fields("日期") = rq
If a3(10) = 0 Then
Adodc3.Recordset.Fields("阀门状态") = "开"
Else
Adodc3.Recordset.Fields("阀门状态") = "关"
End If
If a3(11) = 0 Then
Adodc3.Recordset.Fields("是否窃水") = "是"
Else
Adodc3.Recordset.Fields("是否窃水") = "否"
End If
Adodc3.Recordset.Fields("冲水标志") = "有"
Adodc3.Recordset.Update
Adodc3.Refresh
End If
End If
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -