1. 程式人生 > >【機房收費系統】--充值

【機房收費系統】--充值

   最近在做機房收費系統,跟之前學生不同的是,每個窗體不僅查一個表,所有邏輯思維就顯得格外的重要。

   看師哥師姐的部落格會發現,他們在敲一個窗體的時候會畫一張流程圖,也可以說是自己的邏輯,先判斷什麼在判斷什麼,畫圖工具是一個網站,我把連線放在下面。

                       流程圖工具

   一張圖勝過前言萬語,這是我畫的充值窗體的流程圖!
這裡寫圖片描述

   思路理清了,就著手寫程式碼,我的程式碼有很多冗餘的地方,還請鑑賞!

    Dim mrc As ADODB.Recordset
    Dim txtsql As String
    Dim msgtext As String
    Dim mrcc As ADODB.Recordset
If Not testtxt(txtSID.Text) Then MsgBox "請輸入卡號!", 48, "警告" txtSID.SetFocus Exit Sub End If If Not testtxt(txtRecharge.Text) Then MsgBox "請輸入金額!", 48, "警告" txtRecharge.SetFocus Exit Sub End If txtsql = "select * from student_info where cardno = '"
& Trim(txtSID.Text) & "'" Set mrc = ExecuteSQL(txtsql, msgtext) If mrc.EOF Then MsgBox "該卡號不存在!", 48, "警告" mrc.Close txtSID.SetFocus Exit Sub Else mrc.Close End If txtsql = "select * from BasicData_info" Set mrc = ExecuteSQL(txtsql, msgtext) If Val(txtRecharge.Text
) < mrc.Fields(5) Then MsgBox "充值金額不能小於" & Trim(mrc.Fields(5)) & "元", 48, "警告" mrc.Close Exit Sub End If mrc.Close txtsql = "select * from recharge_info where cardno = '" & Trim(txtSID.Text) & "'" Set mrc = ExecuteSQL(txtsql, msgtext) txtsql = "select * from student_info where cardno = '" & Trim(txtSID.Text) & "'" Set mrcc = ExecuteSQL(txtsql, msgtext) If mrc.EOF Then mrc.AddNew mrc.Fields(1) = mrcc.Fields(1) mrc.Fields(2) = Trim(txtSID.Text) mrc.Fields(3) = Val(Trim(txtRecharge.Text)) + mrc.Fields(3) mrc.Fields(4) = Trim(Date) mrc.Fields(5) = Trim(Time) mrc.Fields(6) = UserName mrc.Fields(7) = Trim("未結賬") mrc.Update mrc.Close mrcc.Close Else mrc.Fields(1) = mrcc.Fields(1) mrc.Fields(2) = Trim(txtSID.Text) mrc.Fields(3) = Val(Trim(txtRecharge.Text)) + mrc.Fields(3) mrc.Fields(4) = Trim(Date) mrc.Fields(5) = Trim(Time) mrc.Fields(6) = UserName mrc.Fields(7) = Trim("未結賬") mrc.Update mrc.Close mrcc.Close End If txtsql = "select * from student_info where cardno = '" & Trim(txtSID.Text) & "'" Set mrc = ExecuteSQL(txtsql, msgtext) mrc.Fields(7) = Val(Trim(txtRecharge.Text)) + mrc.Fields(7) mrc.Fields(12) = Trim(Date) mrc.Fields(13) = Trim(Time) mrc.Update mrc.Close txtsql = "select * from student_info where cardno = '" & txtSID.text & "'" Set mrc = ExecuteSQL(txtsql, msgtext) Text1.Text = "充值卡號:" & txtSID.Text & vbCrLf & "上次卡內的餘額:" & Trim(mrc.Fields(7)) - txtRecharge.Text & vbCrLf & "現在卡內的餘額:" & mrc.Fields(7) & vbCrLf & "充值日期:" & mrc.Fields(12) & vbCrLf & "充值時間:" & mrc.Fields(13) & vbCrLf & "充值老師:" & UserName MsgBox "充值成功!", 48, "提示"

相關推薦

機房收費系統--

   最近在做機房收費系統,跟之前學生不同的是,每個窗體不僅查一個表,所有邏輯思維就顯得格外的重要。    看師哥師姐的部落格會發現,他們在敲一個窗體的時候會畫一張流程圖,也可以說是自己的邏輯,先判斷什麼在判斷什麼,畫圖工具是一個網站,我把連線放在下面。  

機房收費系統——知識點彙總

前言 經歷了兩個多月的機房收費系統算是結了,結了並不意味著不學了,在機房中還是有很多值得我們學習的知識點,值得讓我們思考的東西,有些邏輯思維還是很強的。現在將做的過程中感覺比較重要的一些知識點分享出來。 一、整體思路 在機房收費系統中有不同的級別,不同的級別有不同許可權,他們所做的事

機房收費系統——模組中程式碼的含義

本部落格來自轉載,對模組不太懂的可以好好看看。 前言 這篇部落格認認真真的總結了一天,不能夠理解機房還有學生中模組的程式碼的意思,決定去解決一下這部分內容,下面就是我對此部分的程式碼的理解!感覺這部分的程式碼不過如此,下來跟著我一起搞懂它吧! Public Function Ex

機房收費系統之收取金額查詢

前言:i+1的學習 收取金額查詢主要有兩部分:查詢和匯出Excel表。 查詢還OK。之前做學生時就有過很多次查詢,基本大同小異。 本窗體難點在於如何匯出Excel表。這就是需要我們學習和掌握的+1部分了。剛開始接觸時,我還挺懵的,不知道如何下手,不過查查百度、站在“巨人

機房收費系統之結賬

還沒開始做機房時,便聽到有人說,機房慢慢做,尤其結賬那一塊特別難。特別難,到底有多難呢?還沒開始做,心裡便有了一絲害怕。驗SQL視訊時,特意問了問師父,結賬是否真如他們所說,有那麼難。嘉穎師父誠懇地跟我說,沒事,只有你去做了,才知道做出來的成就感。有了嘉穎師父的定心丸,我心裡

機房收費系統——組合查詢

在機房收費系統中,其中的組合查詢僅僅在剛開始的時候構思了一點自己的想 法,但是並沒用付諸於行動,去嘗試自己的是否正確,而是選擇了去看之前看 到的一篇關於組合查詢的部落格,說起來有些愧疚的啊。還好的是當我理清思路 之後剩下的組合查詢都是自己的寫的了。

第一次機房收費系統——組合查詢

 機房收費系統中共有三個窗體用到了組合查詢,其也算是三大難點之一,我做的流程就是先根據源系統備好框架,然後再去網上看相關的部落格,這麼一來二往,多看幾遍也漸漸懂得了其中的一些“套路”。組合查詢,顧名思義大於等於一的行資料進行查詢,下面我以學生基本資訊維護的窗體為

機房收費系統之組合查詢

         在這個過程中,我明白了,在試著實現某個過程的時候,一定在理清思路的前提下,找到最好的程式碼形式,優中選優,不要在敲程式碼的過程中把自己繞住,能少用巢狀就少用巢狀,只要思路簡單,程式碼結構簡化,在後邊實現的過程中就會減少很多麻煩。這個過程中,我迷茫過,失落過,興奮過。在最後能夠執行的一刻突然感

機房收費系統之登入

對於一個應用程式而言,登入窗體是使用該程式的敲門磚。如果不能準確登入,就無法談及使用其功能了。登入也是一種安全措施,只可讓擁有許可權的人登入。而機房收費系統在登入視窗上相對而言,還是比較完美的。設定了只有擁有相應許可權的人,才能使用相應的功能。所以,登入就顯得尤為重要了。 機房登入與普通的登入程

機房收費系統之學生基本資訊維護

學生基本資訊維護主要包括兩大功能查詢和修改。這裡的查詢比之前做的簡單查詢稍稍複雜了點,此處要用到組合查詢。要成功實現查詢這一功能,首先要找到突破點,關鍵點就是組合關係。如果沒有選擇組合關係,便是一般的簡單查詢,反之,則是組合查詢。在組合查詢中,很重要的一點是將combobox中的中文字轉換成英文。這

機房收費系統之總結

        機房收費系統,這是VB階段性學習的最後的一個專案,也是一個比較具有考驗的專案。為什麼這麼說呢?因為在給的學習資料中,除了給了一個該系統的還不夠完美的實現效果程式外,再沒有其他可以信手拈來的東西了。沒有程式碼,沒有文件,這意味著你將自已真真正正地

機房收費系統——報表(一)

簡單的說:報表就是用表格、圖表等格式來動態顯示資料,可以用公式表示為:“報表 = 多樣的格式 + 動態的資料”。 在沒有計算機以前,人們利用紙和筆來記錄資料,比如:民間常常說的豆腐帳,就是賣豆腐的每

機房收費系統日結賬單報表實現

   【背景】    經過看同學們的部落格和自己的親身實踐,終於把報表這一塊弄明白了,是應該該寫個部落格總結一下了。這一篇部落格介紹簡單的報表製作過程,並以日結賬單為例,因為日結算是比較簡單,它沒有時

機房收費系統——安裝配置

前言   再小,再簡單的問題,當存在的時間長了,浪費的時間多了,它就會在你的心理迅速膨脹,給你的內心無限添堵(尤其是有強迫症的人)但你解決了的時候,你的心情會十分的舒暢,有一種莫名的成就感!   就

機房收費系統——結賬

       結賬,結的都是哪些賬,給誰結賬,結賬需要涉及到哪些表?這些都是開始設計程式碼之前首先要想的。        看到這個介面,你會怎麼想?你也許會想,這是給誰結賬,怎麼查的是操作員啊?不該給一般使用者結賬嗎?一個操作員每天給一般使用者進行註冊,充值,退卡等,這些工

機房收費系統--檢視學生上機狀態

   機房收費系統中檢視學生上機狀態窗體並不難,這個窗體可以檢視所有上機的學生,也可以讓他們下機。就在前幾天看了李光師哥的部落格,他說了這樣一個問題,機房有100名上機,我想讓16、29、45、78、92下機,我可以先把他們五個選中然後下機嗎?就是這種效果,在咱

第一次機房收費系統——上機

前言  最近在做機房收費系統,感觸真的特別深,就是那種忽然開竅的感覺,很爽,希望現在的你們也會和我一樣,雖然懂得不是很全面,但只要比原來會那麼一點點,足矣~偷偷告訴你們哈,做機房一定要畫流程圖,真的特別管用,下面是我的流程圖及程式碼分享給大家,希望可以給你們帶

機房收費系統--自動檢查餘額

   我們在網咖上網的時候,每次卡里快沒錢的時候就會提醒你去充值,如果不充值的話就強制下機了。我想機房收費系統也應該有這個功能吧,既然有這個想法,就要去做,我先從師哥師姐的部落格入手,但是沒有找到這個功能的思路,在從百度找一些相關資料,經過兩天還是沒有實現,就在

機房收費系統——問題總結(二)

接著上次的總結,我們繼續哈! 問題五:報表 由於我的進度較慢,所以我做到這塊的時候已經看到很多人的技術文章了,其中我覺得昌哥的博文最是清楚了。關於報表,我的印象最深刻的是動態資料這塊。週報表中有時間段

機房收費系統--日、周結賬單

   上篇部落格說了報表怎麼做,但是日、周結賬單製作報表還是不行的,還要把賬算清楚,機房的難點就是把賬算對了,不能虧錢,我的思路就是充退卡、充值、下機表中獲取總金額,然後相互加減,下面看一下我的程式碼吧。 日結賬單 Dim txtsql As Strin