做这个充值属实费劲,卡了得有三四天把,报出“多步oled”问题,最后改了两个表所有的数据类型和字段,才调试好。过程很是艰辛,不管怎么样现在做好了还是挺开心的。
这里会少一个最小金额的判断,因为还没有创建后面的表所以,后期再添加上。
Option Explicit
Private Sub cmdok_Click()
Dim mrc As ADODB.Recordset
Dim MsgText As String
Dim txtSQL As String
Dim mrc1 As ADODB.Recordset
Dim MsgText1 As String
Dim txtSQL1 As String
If Trim(txtCardNumber.Text = "") Then
MsgBox "卡号为空,请输入卡号!", vbOKOnly + vbExclamation, "警告"
txtCardNumber.SetFocus
End If
If Trim(txtMoney.Text = "") Then
MsgBox "充值金额为空!", vbOKOnly + vbExclamation, "警告"
txtCardNumber.SetFocus
End If
txtSQL = "select * from student_Info where cardno ='" & txtCardNumber.Text & "'"
Set mrc = ExecuteSQL(txtSQL, MsgText)
If mrc.EOF Then
MsgBox "没有当前卡号,请重新输入!", vbOKOnly + vbExclamation, "警告"
txtCardNumber.Text = ""
txtMoney.Text = ""
txtCardNumber.SetFocus
End If
txtSQL1 = "select * from ReCharge_Info where cardno ='" & txtCardNumber.Text & "'"
Set mrc1 = ExecuteSQL(txtSQL1, MsgText1)
mrc1.AddNew
mrc1.Fields(1) = mrc.Fields(1)
mrc1.Fields(2) = mrc.Fields(0)
mrc1.Fields(3) = mrc.Fields(7)
mrc1.Fields(4) = Date
mrc1.Fields(5) = Time
mrc1.Fields(6) = mrc.Fields(9)
mrc1.Fields(7) = mrc.Fields(10)
txtRechargeNumber.Text = mrc1.Fields(2)
txtRechargeDate.Text = mrc1.Fields(4)
txtBeforeMoney = mrc.Fields(7)
txtlblRechargeTime.Text = mrc1.Fields(5)
txtTeacher.Text = mrc1.Fields(6)
txtNowMoney.Text = Val(txtBeforeMoney.Text) + Val(txtMoney.Text)
mrc.Fields(7) = txtNowMoney.Text
mrc.Update
mrc.Close
mrc1.Update
mrc1.Close
MsgBox "充值成功!"
End Sub