機房收費系統之註冊
流程
註冊—判斷卡號是否為空—為空,輸入卡號—不為空,連線資料庫判斷是否存在—存在,進行金額查詢—不存在,註冊資訊存入存檔—清除資訊,為了使用者方便,一鍵清除所有的資訊
注意:combobox不能手動輸入,只能選擇;存檔存入資訊有條件限制,充值有條件:輸入的金額不能低於餘額
挫折
所遇到的問題,其實都是小問題,但總是出錯還會卡很久;具體問題如下:
1)未找到資料或方法,原來是我的窗體沒加frm
2)comboBox控制元件顯示有問題不能出現下拉內容,原來是Form打錯了。
3)型別不匹配:發現student打錯了,最終原因mrc後面沒有EOF
4)塊If沒有end if
5)子函式未定義:If not testtxt(txtcardno.text) then 打錯了
6)型別不匹配:同樣的語法位置也很講究
7)實時錯誤3021:連線Basicdate_info有問題,程式碼沒問題,改了邏輯,還是報錯,最終發現可能是limitCash = ‘" & Trim(txtCash.Text) & "’"這句話與If mrc2!limitcash > Trim(txtCash.Text) Then有衝突。
8)在文字框的屬性列表中把multiline 改為 true,把.ScrollBars 改為 3
程式碼展示
## 充值部分
txtsql2 = “select * from basicdata_info”
Set mrc2 = ExecuteSQL(txtsql2, msgtext)
If mrc2!limitcash > Trim(txtCash.Text) Then
MsgBox “金額小於最低餘額充值!”, 48, “警告”
Exit Sub
Else
’ End If
mrc1.AddNew
mrc1.Fields(0) = txtcardno.Text
mrc1.Fields(1) = txtstudentNo.Text
mrc1.Fields(2) = txtName.Text
mrc1.Fields(3) = cbSex.Text
mrc1.Fields(4) = txtdepartment.Text
mrc1.Fields(5) = txtgrade.Text
mrc1.Fields(6) = txtClass.Text
mrc1.Fields(7) = txtCash.Text
mrc1.Fields(8) = txtexplain.Text
mrc1.Fields(9) = “” & Trim(UserName) & “”
mrc1.Fields(10) = cbStatus.Text
mrc1.Fields(11) = “未結賬”
mrc1.Fields(12) = Date
mrc1.Fields(13) = Time
mrc1.Fields(14) = cbType.Text
txtrecharge.Text = txtCash.Text
mrc1.Update
'添加註冊時充值記錄 txtsql1 = "select * from Recharge_Info" Set mrc1 = ExecuteSQL(txtsql1, msgtext) mrc1.AddNew mrc1!studentno = txtstudentNo.Text mrc1!cardno = txtstudentNo.Text mrc1!addmoney = txtCash.Text mrc1!Date = Date mrc1!Time = Time mrc1!UserID = "" & Trim(UserID) & "" mrc1!Status = "未結賬" mrc1.Update MsgBox "註冊成功", 48, "提示" '註冊成功後清除文字框 cbSex.ListIndex = -1 '移除按鈕不可用 cbStatus.ListIndex = -1 cbType.ListIndex = -1 txtcardno.Text = "" txtstudentNo.Text = "" end if
總結
記是永遠記不住的