`
tubaluer
  • 浏览: 1447821 次
文章分类
社区版块
存档分类
最新评论
  • sblig: c / c++ 是不一样的都会输出 100
    j = j++

机房收费系统之充值窗体

 
阅读更多

该窗体功能:为卡充值金额,并对最新余额进行更新。

步骤:

1,输入卡号后,判断该卡是否未注册或者已注销(通过学生信息表查询),若是则提示信息。

2,输入充值金额后判断该金额是否小于基本数据表中的最少金额,若少于则提示不能充值。

3,充值成功后将该卡号的充值信息添加到充值表中并在窗体中显示出来。

4,在最新余额表中队该卡号的最新余额进行更新

窗体代码:

Option Explicit
'确定充值
Private Sub cmdOk_Click()
Dim strSQL As String
Dim MsgString As String
Dim mrs As ADODB.Recordset
Dim mrss1 As ADODB.Recordset
Dim mrss2 As ADODB.Recordset
Dim mrss3 As ADODB.Recordset
Dim Balance As Single
Dim Number As String
Dim LeastFee As Single
If Trim(txtCardNo.Text) = "" Then
MsgBox "卡号不能为空!", vbExclamation + vbOKOnly, "警告"
txtCardNo.Text = ""
txtCardNo.SetFocus
Exit Sub
End If
'判断该卡是否已注册
strSQL = "select * from Studentinfo where CardNo='" & Trim(txtCardNo.Text) & "'"
Set mrss1 = ExecuteSQL(strSQL, MsgString)
If mrss1.EOF Then
MsgBox "该卡没有注册!", vbExclamation + vbOKOnly, "警告"
txtCardNo.Text = ""
txtCardNo.SetFocus
Exit Sub
End If
'获得学号
Number = Trim(mrss1.Fields(1))
'判断充值金额是否为空和数字
If Trim(txtRechargeMoney.Text) = "" Then
MsgBox "请输入充值金额!", vbExclamation + vbOKOnly, "警告"
txtRechargeMoney.Text = ""
txtRechargeMoney.SetFocus
Exit Sub
End If
If IsNumeric(Trim(txtRechargeMoney.Text)) = False Then
MsgBox "请输入数字!", vbExclamation + vbOKOnly, "警告"
txtRechargeMoney.Text = ""
txtRechargeMoney.SetFocus
Exit Sub
End If
strSQL = "select * from Basicdata"
Set mrs = ExecuteSQL(strSQL, MsgString)
mrs.MoveLast
LeastFee = Val(Trim(CStr(mrs.Fields(4))))
mrs.Close
If Val(Trim(txtRechargeMoney.Text)) < LeastFee Then
MsgBox "最少充值为" & LeastFee & "元!", vbExclamation + vbOKOnly, "充值金额"
txtRechargeMoney.Text = ""
txtRechargeMoney.SetFocus
Exit Sub
End If
'获取上次余额
strSQL = "select * from LastBalance where Cardno='" & Trim(txtCardNo.Text) & "'"
Set mrss2 = ExecuteSQL(strSQL, MsgString)
Balance = Trim(mrss2.Fields(2))
mrss2.Close
'向数据库中的充值表中添加信息
strSQL = "select * from Recharge where CardNo='" & Trim(txtCardNo.Text) & "'"
Set mrs = ExecuteSQL(strSQL, MsgString)
mrs.AddNew
mrs.Fields(0) = Trim(txtCardNo.Text)
mrs.Fields(1) = Trim(txtRechargeMoney.Text)
mrs.Fields(2) = Balance
mrs.Fields(3) = Trim(Val(mrs.Fields(2)) + Val(mrs.Fields(1)))
Balance = Trim(mrs.Fields(3))
mrs.Fields(4) = Time
mrs.Fields(5) = Date
mrs.Fields(6) = Trim(strName)
mrs.Fields(7) = "未结账"
mrs.Fields(8) = Number
mrs.Update
strSQL = "select * from LastBalance where Cardno='" & Trim(txtCardNo.Text) & "'"
Set mrss2 = ExecuteSQL(strSQL, MsgString)
If mrss2.EOF Then Exit Sub
mrss2.Fields(2).Value = Trim(mrs.Fields(3))
mrss2.Update
mrss2.Close
'显示信息
lblCardNo.Caption = "充值卡号:" & Trim(txtCardNo.Text)
lblLastBalance.Caption = "上次卡内余额:" & Trim(mrs.Fields(2))
lblNowBalance.Caption = "现在卡内余额:" & Trim(mrs.Fields(3))
lblRechargeDate.Caption = "充值日期:" & Trim(mrs.Fields(5))
lblRechargeTime.Caption = "充值时间:" & Trim(mrs.Fields(4))
lblRechargeTeacher.Caption = "充值教师:" & Trim(mrs.Fields(6))
mrs.Close
lblCardNo.Visible = True
lblLastBalance.Visible = True
lblNowBalance.Visible = True
lblRechargeDate.Visible = True
lblRechargeTime.Visible = True
lblRechargeTeacher.Visible = True
MsgBox "充值成功!", vbInformation + vbOKOnly, "充值成功"
Unload Me
Call Form_Load
Exit Sub
End Sub
'初始化
Private Sub Form_Load()
Me.Show
txtCardNo.Text = ""
txtRechargeMoney.Text = ""
txtCardNo.SetFocus
lblCardNo.Visible = False
lblLastBalance.Visible = False
lblNowBalance.Visible = False
lblRechargeDate.Visible = False
lblRechargeTime.Visible = False
lblRechargeTeacher.Visible = False

End Sub

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics