⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 收费管理.frm

📁 物业管理系统,VB做的,小试牛刀,不吝赐教
💻 FRM
📖 第 1 页 / 共 4 页
字号:
   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 + -