📄 收费管理.frm
字号:
If SSTab1.Tab = 0 Then
'添加数据后保存
If addw = 1 Then
'检测房间编号这个主键是否已经在表中存在
Dim rs_wcheck As New ADODB.Recordset
Dim sqlwCheck As String
sqlwCheck = "select * from WuYeFee where 收费编号= '" & (Text1(0 + k).Text) & "'"
rs_wcheck.Open sqlwCheck, conn, adOpenStatic, adLockOptimistic
If Not rs_wcheck.EOF And Not rs_wcheck.BOF Then
MsgBox "该收费编号已经存在,请重填一个!", vbOKOnly + vbInformation, "注意"
rs_wcheck.Close
Text1(0 + k).SetFocus
Text1(0 + k).Text = ""
Exit Sub
End If
rs_wcheck.Close
'主键不重复,可以加入表中
rs_wuye.AddNew
For i = 0 To 12
rs_wuye.Fields(i) = Text1(i + k).Text
Next i
rs_wuye.Update
'添加之后显示总共条数信息加 1
Text2.Text = Val(Text2.Text) + 1
'修改数据后的保存
Else
rs_wuye.Update
End If
ElseIf SSTab1.Tab = 1 Then
'添加数据后保存
If addy = 1 Then
'检测房间编号这个主键是否已经在表中存在
Dim rs_pcheck As New ADODB.Recordset
Dim sqlycheck As String
sqlycheck = "select * from YiBiaoFee where 收费编号= '" & (Text1(0 + k).Text) & "'"
rs_pcheck.Open sqlycheck, conn, adOpenStatic, adLockOptimistic
If Not rs_pcheck.EOF And Not rs_pcheck.BOF Then
MsgBox "该收费编号已经存在,请重填一个!", vbOKOnly + vbInformation, "注意"
rs_pcheck.Close
Text1(0 + k).SetFocus
Text1(0 + k).Text = ""
Exit Sub
End If
rs_pcheck.Close
'主键不重复,可以加入表中
rs_yibiao.AddNew
For i = 0 To 12
rs_yibiao.Fields(i) = Text1(i + k).Text
Next i
rs_yibiao.Update
'添加之后显示总共条数信息加 1
Text2.Text = Val(Text2.Text) + 1
'修改数据后的保存
Else
rs_yibiao.Update
End If
End If
MsgBox "保存数据成功!", vbOKOnly + vbInformation, "祝贺"
'保存后需要设置其他按钮可用,以及各个text框不可写
cmdAdd.Enabled = True
cmdEdit.Enabled = True
cmdDel.Enabled = True
cmdSave.Enabled = False
cmdCancel.Enabled = False
cmdFirst.Enabled = True
cmdPrev.Enabled = True
cmdNext.Enabled = True
cmdLast.Enabled = True
cmdQuery.Enabled = True
For i = 0 To 12
Text1(i + k).Enabled = False
Next i
End Sub
Private Sub Form_activate()
Dim X0 As Long
Dim Y0 As Long
'让窗体居中
X0 = Screen.Width
Y0 = Screen.Height
X0 = (X0 - Me.Width) / 2
Y0 = (Y0 - Me.Height) / 2
Me.Move X0, Y0
cmdSave.Enabled = False
cmdCancel.Enabled = False
'设置显示记录条数的Text2不可写
Text2.Enabled = False
'显示物业收费管理选项卡
If SSTab1.Tab = 0 Then
'如果不是查询显示,则显示第一条记录
'如果rs_wcount rs_wuye 当前状态是打开的,则先关闭之
If rs_wcount.State = adStateOpen Then
rs_wcount.Close
End If
If rs_wuye.State = adStateOpen Then
rs_wuye.Close
End If
'计算总共数据条数
'显示全表与查询表只是sql查询语句不同,因此如下设置
If queryWuYeFee = False Then
sqlwcount = "select count(*) from WuYeFee"
Else
sqlwcount = "select count(*) from WuYeFee " & sqlFee
End If
rs_wcount.Open sqlwcount, conn, adOpenStatic, adLockOptimistic
If rs_wcount.EOF Then
Text2.Text = 0
Else
Text2.Text = rs_wcount.Fields(0)
End If
If queryWuYeFee = False Then
sqlw = "select * from WuYeFee"
Else
sqlw = "select * from WuYeFee " & sqlFee
End If
rs_wuye.CursorLocation = adUseClient
rs_wuye.Open sqlw, conn, adOpenStatic, adLockOptimistic
'如果当前水表中有数据则显示第一条数据
If Not rs_wuye.EOF And Not rs_wuye.BOF Then
For i = 0 To 12
Text1(i).Text = rs_wuye.Fields(i)
Next i
'如果有记录,需要设置前翻后翻的按钮为可用
cmdFirst.Enabled = True
cmdPrev.Enabled = True
cmdNext.Enabled = True
cmdLast.Enabled = True
cmdEdit.Enabled = True
cmdDel.Enabled = True
Else
'如果是0条记录,需要设置前翻后翻的按钮为不可用
cmdFirst.Enabled = False
cmdPrev.Enabled = False
cmdNext.Enabled = False
cmdLast.Enabled = False
cmdEdit.Enabled = False
cmdDel.Enabled = False
For i = 0 To 12
Text1(i).Text = ""
Next i
If queryWuYeFee = False Then
MsgBox "该表中没有记录!", vbOKOnly + vbInformation, "注意"
Else
MsgBox "没有找到符合条件的记录", vbOKOnly + vbInformation, "注意"
End If
End If
'设置各个text框不可写
For i = 0 To 12
Text1(i).Enabled = False
Next i
'点击仪表收费管理选项卡
ElseIf SSTab1.Tab = 1 Then
'如果不是查询显示,则显示第一条记录
'如果rs_ycount rs_yibiao 当前状态是打开的,则先关闭之
If rs_ycount.State = adStateOpen Then
rs_ycount.Close
End If
If rs_yibiao.State = adStateOpen Then
rs_yibiao.Close
End If
'计算总共数据条数
If queryYiBiaoFee = False Then
sqlycount = "select count(*) from YiBiaoFee"
Else
sqlycount = "select count(*) from YiBiaoFee " & sqlFee
End If
rs_ycount.Open sqlycount, conn, adOpenStatic, adLockOptimistic
If rs_ycount.EOF Then
Text2.Text = 0
Else
Text2.Text = rs_ycount.Fields(0)
End If
If queryYiBiaoFee = False Then
sqly = "select * from YiBiaoFee"
Else
sqly = "select * from YiBiaoFee " & sqlFee
End If
rs_yibiao.CursorLocation = adUseClient
rs_yibiao.Open sqly, conn, adOpenStatic, adLockOptimistic
'如果当前水表中有数据则显示第一条数据
If Not rs_yibiao.EOF And Not rs_yibiao.BOF Then
For i = 14 To 26
Text1(i).Text = rs_yibiao.Fields(i - 14)
Next i
'如果有记录,需要设置前翻后翻的按钮为可用
cmdFirst.Enabled = True
cmdPrev.Enabled = True
cmdNext.Enabled = True
cmdLast.Enabled = True
cmdEdit.Enabled = True
cmdDel.Enabled = True
Else
'如果是0条记录,需要设置前翻后翻的按钮为不可用
cmdFirst.Enabled = False
cmdPrev.Enabled = False
cmdNext.Enabled = False
cmdLast.Enabled = False
cmdEdit.Enabled = False
cmdDel.Enabled = False
For i = 14 To 26
Text1(i).Text = ""
Next i
If queryYiBiaoFee = False Then
MsgBox "该表中没有记录!", vbOKOnly + vbInformation, "注意"
Else
MsgBox "没有找到符合条件的记录", vbOKOnly + vbInformation, "注意"
End If
End If
'设置各个text框不可写
For i = 14 To 26
Text1(i).Enabled = False
Next i
End If
End Sub
Private Sub Form_Unload(Cancel As Integer)
'关闭所有打开记录
If rs_wuye.State = adStateOpen Then
rs_wuye.Close
End If
If rs_wcount.State = adStateOpen Then
rs_wcount.Close
End If
If rs_yibiao.State = adStateOpen Then
rs_yibiao.Close
End If
If rs_ycount.State = adStateOpen Then
rs_ycount.Close
End If
'关闭时还需要设置2个查询判断变量为false
queryWuYeFee = False
queryYiBiaoFee = False
End Sub
Private Sub SSTab1_Click(PreviousTab As Integer)
'点击物业收费管理选项卡
If SSTab1.Tab = 0 Then
'如果不是查询显示,则显示第一条记录
'如果rs_wcount rs_wuye 当前状态是打开的,则先关闭之
If rs_wcount.State = adStateOpen Then
rs_wcount.Close
End If
If rs_wuye.State = adStateOpen Then
rs_wuye.Close
End If
'计算总共数据条数
'显示全表与查询表只是sql查询语句不同,因此如下设置
If queryWuYeFee = False Then
sqlwcount = "select count(*) from WuYeFee"
Else
sqlwcount = "select count(*) from WuYeFee " & sqlFee
End If
rs_wcount.Open sqlwcount, conn, adOpenStatic, adLockOptimistic
If rs_wcount.EOF Then
Text2.Text = 0
Else
Text2.Text = rs_wcount.Fields(0)
End If
If queryWuYeFee = False Then
sqlw = "select * from WuYeFee"
Else
sqlw = "select * from WuYeFee " & sqlFee
End If
rs_wuye.CursorLocation = adUseClient
rs_wuye.Open sqlw, conn, adOpenStatic, adLockOptimistic
'如果当前水表中有数据则显示第一条数据
If Not rs_wuye.EOF And Not rs_wuye.BOF Then
For i = 0 To 12
Text1(i).Text = rs_wuye.Fields(i)
Next i
'如果有记录,需要设置前翻后翻的按钮为可用
cmdFirst.Enabled = True
cmdPrev.Enabled = True
cmdNext.Enabled = True
cmdLast.Enabled = True
cmdEdit.Enabled = True
cmdDel.Enabled = True
Else
'如果是0条记录,需要设置前翻后翻的按钮为不可用
cmdFirst.Enabled = False
cmdPrev.Enabled = False
cmdNext.Enabled = False
cmdLast.Enabled = False
cmdEdit.Enabled = False
cmdDel.Enabled = False
For i = 0 To 12
Text1(i).Text = ""
Next i
If queryWuYeFee = False Then
MsgBox "该表中没有记录!", vbOKOnly + vbInformation, "注意"
Else
MsgBox "没有找到符合条件的记录", vbOKOnly + vbInformation, "注意"
End If
End If
'设置各个text框不可写
For i = 0 To 12
Text1(i).Enabled = False
Next i
'点击仪表收费管理选项卡
ElseIf SSTab1.Tab = 1 Then
'如果不是查询显示,则显示第一条记录
'如果rs_ycount rs_yibiao 当前状态是打开的,则先关闭之
If rs_ycount.State = adStateOpen Then
rs_ycount.Close
End If
If rs_yibiao.State = adStateOpen Then
rs_yibiao.Close
End If
'计算总共数据条数
If queryYiBiaoFee = False Then
sqlycount = "select count(*) from YiBiaoFee"
Else
sqlycount = "select count(*) from YiBiaoFee " & sqlFee
End If
rs_ycount.Open sqlycount, conn, adOpenStatic, adLockOptimistic
If rs_ycount.EOF Then
Text2.Text = 0
Else
Text2.Text = rs_ycount.Fields(0)
End If
If queryYiBiaoFee = False Then
sqly = "select * from YiBiaoFee"
Else
sqly = "select * from YiBiaoFee " & sqlFee
End If
rs_yibiao.CursorLocation = adUseClient
rs_yibiao.Open sqly, conn, adOpenStatic, adLockOptimistic
'如果当前水表中有数据则显示第一条数据
If Not rs_yibiao.EOF And Not rs_yibiao.BOF Then
For i = 14 To 26
Text1(i).Text = rs_yibiao.Fields(i - 14)
Next i
'如果有记录,需要设置前翻后翻的按钮为可用
cmdFirst.Enabled = True
cmdPrev.Enabled = True
cmdNext.Enabled = True
cmdLast.Enabled = True
cmdEdit.Enabled = True
cmdDel.Enabled = True
Else
'如果是0条记录,需要设置前翻后翻的按钮为不可用
cmdFirst.Enabled = False
cmdPrev.Enabled = False
cmdNext.Enabled = False
cmdLast.Enabled = False
cmdEdit.Enabled = False
cmdDel.Enabled = False
For i = 14 To 26
Text1(i).Text = ""
Next i
If queryYiBiaoFee = False Then
MsgBox "该表中没有记录!", vbOKOnly + vbInformation, "注意"
Else
MsgBox "没有找到符合条件的记录", vbOKOnly + vbInformation, "注意"
End If
End If
'设置各个text框不可写
For i = 14 To 26
Text1(i).Enabled = False
Next i
End If
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -