機房收費系統剛解決了乙個組合查詢的問題,接著又要放大招了——上下機。關於上下機的問題,可能是因為要考慮的東西太多的原因,覺得很是在最後實現這個功能比較好。要不讓打擊了自己的積極性,影響了後面的發揮就不好了。下面就說說,我對上下機的理解,雖然會有沒有考慮到的地方,但是大致的理解還是有的。
1、因為在上機的時候,只要輸入卡號就可以了,所以要有乙個提示。可以用乙個label框,在卡號的後面加上提示。
2、要判斷卡號是否為空。
if not testtxt(text1(0).text) then
msgbox "請輸入卡號!", vbokonly + vbexclamation, "警告"
text1(0).setfocus
text1(0).text = ""
exit sub
end if
3、判斷卡號是否正確
'卡號新增的是否正確
txtsql = "select *from student_info where cardno='" & text1(0).text & "'"
set mrc = executesql(txtsql, msgstring)
'在最後一行之前檢視,卡號是否正確
if mrc.eof then '如果不正確,則給予警告,重新新增
msgbox "此卡不存在或已停止使用", vbokonly + vbexclamation, "警告"
text1(0).text = ""
text1(0).setfocus
exit sub
end if
if not mrc.eof then
a(0) = mrc.fields(8)
a(1) = mrc.fields(1)
end if
4、判斷餘額是否足夠上機
'判斷餘額是否夠消費
txtsql = "select * from basicdata_info"
set mrc1 = executesql(txtsql, msgstring)
if not mrc.eof then
a(2) = mrc1.fields(0)
a(3) = mrc1.fields(1)
end if
if trim(a(1)) = "固定使用者" then
if val(a(0)) < val(a(2)) then
msgbox "餘額不足,請及時充值", vbokonly + vbexclamation, "警告"
text1(0).text = ""
text1(0).setfocus
exit sub
end if
end if
if trim(a(1)) = "臨時使用者" then
if val(a(0)) < val(a(2)) then
msgbox "餘額不足,請及時充值", vbokonly + vbexclamation, "警告"
text1(0).text = ""
text1(0).setfocus
exit sub
end if
end if
5、判斷輸入卡號是否正在上機
'連線上機資料庫
txtsql = "select *from online_info where cardno='" & text1(0).text & "'"
set mrcc = executesql(txtsql, msgstring)
'判斷該卡號是否正在上機
if not mrcc.eof then
msgbox "此卡正在上機", vbokonly + vbexclamation, "警告"
'如果正在上機把記錄中的資料新增到窗體上
text1(0).text = mrcc.fields(0)
for i = 1 to 7
text1(i).text = mrcc.fields(i)
next i
text2(4).text = a(0)
exit sub
end if
'如果沒有上機,則把一般使用者的記錄調出放到窗體上
for i = 0 to 5
text1(i).text = mrc.fields(i)
next
text1(6).text = date
text1(7).text = time
text2(4).text = mrc.fields(8)
'如果沒有上機,則把資料新增到上機表中
mrcc.addnew
if not mrcc.eof then
mrcc.fields(0) = text1(0).text
for i = 1 to 7
mrcc.fields(i) = text1(i).text
next i
mrcc.fields(8) = environ("username")
mrcc.fields(9) = now
end if
mrcc.update
mrcc.close '關閉上機資料庫
6、統計上機人數
'統計上機總數
txtsql = "select count(*)from online_info"
set mrcc = executesql(txtsql, msgstring)
s = mrcc.fields(0)
label13.caption = "當前上機人數為:" & s
7、把資料添到下機表中
'連線下機表
txtsql = "select * from line_info "
set mrc = executesql(txtsql, msgstring)
mrc.addnew '把記錄新增到庫中
' if not mrc.eof then
mrc.fields(1) = trim(text1(0).text)
for i = 1 to 7
mrc.fields(i + 1) = trim(text1(i).text)
next i
mrc.fields(14) = environ("username")
mrc.fields(15) = "未結賬"
mrc.fields(16) = "true"
' end if
mrc.update
mrc.close
【總結】
在上機功能實現的的過程中,邏輯關係一定要清晰,第一步做什麼,接下來做什麼,最後做什麼,這個關係一定要清楚,有時候我們可能回想不到這麼多的問題,這就要求我們把知識變成活的去學,在學習過程中我們需要學會聯絡實際情況,想想在去圖書館上機、網咖上機的時候的情況。再者就是,我們可以一點點的去完善,等我們想起來某個功能限制的時候,在回來補充。世界那麼大,機房要完善的地方那麼多,偉大的機房還等著你去拯救,何必在這耗死,迂迴包抄,我們可以做的更好。
機房收費系統 上機
檢查乙個卡號能否使用,需要檢查以下幾點 只有這幾點同時滿足,此卡才能正常上機。1 當然不用多說,不輸入卡號當然不能使用。2 與要求的最小餘額進行比較,小於最小餘額則禁止上機使用 3 此卡沒用註冊,登錄檔中沒有這條記錄 4 次卡正在處於上機狀態,提示正在上機,一卡禁止重複上機使用 下面的這段 僅為借鑑...
機房收費系統 上機
上機在機房系統是至關重要的,只要捋清思路,把大問題分解成乙個個的小問題再去解決,困惑就自然迎刃而解了。來看看我的思路吧!片段 private sub cmdonline click dim txtsql as string dim msgtext as string dim mrc as adodb...
機房收費系統 上機
其實相比起下機,上機的功能相對簡單的多。我總結了一句話大概可以概括了上機的功能 讓賬戶裡錢夠的目前沒有上機的已經註冊過的使用者上機。關鍵點資料表 含義 賬戶裡的錢夠 student info 當使用者餘額高於最少錢數 目前沒有上機 online info online 表中不存在的使用者可上機 已經...