bbs論壇管理系統(tǒng)說明書_第1頁
bbs論壇管理系統(tǒng)說明書_第2頁
bbs論壇管理系統(tǒng)說明書_第3頁
bbs論壇管理系統(tǒng)說明書_第4頁
bbs論壇管理系統(tǒng)說明書_第5頁
已閱讀5頁,還剩29頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、僅供個(gè)人參考濱州學(xué)院JAVA課程設(shè)計(jì)說明書bbs論壇管理系統(tǒng)班 級(jí):2006級(jí)軟件班姓 名:商慶濤,張家國,代江波李金玉,韓超指導(dǎo)老師:宋鋒計(jì)算機(jī)科學(xué)技術(shù)系2008年12月Bbs論壇管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)目錄一、序言和設(shè)計(jì)人員3二、需求分析說明書32.1 編寫目的32.2 系統(tǒng)介紹32.3 系統(tǒng)面向的用戶群體 42.4 系統(tǒng)的基本功能性需求 42.5 系統(tǒng)的開發(fā)目標(biāo)4三、可行性分析報(bào)告43.1 技術(shù)可行性 43.2 人員可能性 43.3 時(shí)間、設(shè)備可能性43.4 系統(tǒng)工作量 43.5 代碼工作量 43.6 文檔要求4四、開發(fā)環(huán)境與項(xiàng)目規(guī)劃44.1 開發(fā)環(huán)境44.2 項(xiàng)目規(guī)劃與管理5五、概要設(shè)計(jì)說

2、明書55.1 系統(tǒng)的劃分 55.2 用戶角色劃分55.3 結(jié)構(gòu)化編碼約定65.4 前臺(tái)服務(wù)的用例圖778 88六、軟件詳細(xì)設(shè)計(jì)說明書126.1 系統(tǒng)概述126.2 設(shè)計(jì)約束126.3 設(shè)計(jì)策略126.4 系統(tǒng)概要設(shè)計(jì)說明書13131414 14146.5 系統(tǒng)詳細(xì)設(shè)計(jì)說明書15151515八、軟件測(cè)試分析報(bào)告388.1 測(cè)試范圍與主要內(nèi)容 388.2 測(cè)試方法388.3 測(cè)試報(bào)告388.4 改進(jìn)建議與措施39參考資料39一、序言和設(shè)計(jì)人員在網(wǎng)絡(luò)技術(shù)逐漸滲入社會(huì)生活各個(gè)層面的今天,以前網(wǎng)站上的論壇管理系統(tǒng)要用戶登陸以 后才能進(jìn)行相關(guān)訪問及互動(dòng)。而隨著網(wǎng)絡(luò)互聯(lián)技術(shù)的進(jìn)步,現(xiàn)在網(wǎng)站投票只需打開網(wǎng)頁就

3、可進(jìn)行論壇留言。論壇對(duì)象是很多的,各個(gè)層次都可進(jìn)行論壇訪問,大至國家領(lǐng)導(dǎo),小至一個(gè)普通干部,訪問和留言從到指定用戶進(jìn)行表格到現(xiàn)在通過網(wǎng)絡(luò)直接點(diǎn)擊相應(yīng)就可進(jìn)行。網(wǎng)上論壇管理系統(tǒng)可解決游客訪問及留言,致使現(xiàn)在幾乎各個(gè)網(wǎng)站都有各種類型網(wǎng)站論壇管理系統(tǒng),用戶可選擇自己的看法。所以我提出了本課題的研究設(shè)計(jì)人員:李金玉商慶濤代江波 張家國 韓超二、需求分析說明書2.1 編寫目的在網(wǎng)絡(luò)技術(shù)逐漸滲入社會(huì)生活各個(gè)層面的今天,以前網(wǎng)站上的論壇管理系統(tǒng)要用戶登陸以后才能進(jìn)行相關(guān)訪問及互動(dòng)。而隨著網(wǎng)絡(luò)互聯(lián)技術(shù)的進(jìn)步,現(xiàn)在網(wǎng)站投票只需打開網(wǎng)頁就可進(jìn)行論壇留言。論壇對(duì)象是很多的,各個(gè)層次都可進(jìn)行論壇訪問,大至國家領(lǐng)導(dǎo),小

4、至一個(gè)普通干部, 訪問和留言從到指定用戶進(jìn)行表格到現(xiàn)在通過網(wǎng)絡(luò)直接點(diǎn)擊相應(yīng)就可進(jìn)行。網(wǎng)上論壇管理系統(tǒng)可解決游客訪問及留言, 致使現(xiàn)在幾乎各個(gè)網(wǎng)站都有各種類型網(wǎng)站論壇管理系統(tǒng),用戶可選擇自己的看法。所以我提出了本課題的研究。本系統(tǒng)開發(fā)的目的是為了學(xué)習(xí)這樣去做一個(gè)交互式的網(wǎng)頁以及了解這種強(qiáng)大的網(wǎng)絡(luò)編程工具,方便客戶端和瀏覽器端之間的交流。2.2 系統(tǒng)介紹系統(tǒng)包括主要的功能:新用戶的注冊(cè),會(huì)員密碼取回,會(huì)員登錄,用戶自己修改信息,管理 員刪除用戶,游客瀏覽留言,會(huì)員新增留言,會(huì)員留言回復(fù),管理員刪除留言這些功能,可以應(yīng) 付一般的用戶需要。2.3 系統(tǒng)面向的用戶群體網(wǎng)上論壇系統(tǒng)是一個(gè)會(huì)員登錄留言系統(tǒng)。

5、網(wǎng)上游客能夠?yàn)g覽論壇上的帖子,并且能夠注冊(cè)成為用戶。論壇注冊(cè)會(huì)員能夠修改自己的資料信息,申請(qǐng)版主,發(fā)表帖子,讓大家積極參 與討論。論壇管理員能夠便于管理論壇,包括瀏覽游客留言,審核留言,對(duì)于不健康或是不 利于社會(huì)穩(wěn)定的留言能進(jìn)行刪除操作,會(huì)員管理以及論壇版主管理等等。2.4 系統(tǒng)的基本功能性需求系統(tǒng)包括主要的功能:新用戶的注冊(cè),會(huì)員密碼取回,會(huì)員登錄,用戶自己修改信息, 管理員刪除用戶,游客瀏覽留言,會(huì)員新增留言,會(huì)員留言回復(fù),管理員刪除留言這些功能 ,可以應(yīng)付一般的用戶需要2.5 系統(tǒng)的開發(fā)目標(biāo)這個(gè)系統(tǒng)預(yù)期的目的是為了做成交互式的網(wǎng)頁,方便客戶端和瀏覽器端之間的交流。 通過論壇,人們能夠相互

6、交流溝通,把疑惑在論壇里公布,大家獻(xiàn)計(jì)獻(xiàn)策,共同學(xué)習(xí),共同 進(jìn)步O三、可行性分析報(bào)告3.1 技術(shù)可行性系統(tǒng)的性質(zhì)為BBS論壇管理軟件,因而數(shù)據(jù)庫的設(shè)計(jì)與操縱和 JSP的應(yīng)用是系統(tǒng)設(shè)計(jì)的 核心。我在教師的指導(dǎo)下實(shí)習(xí)過很多項(xiàng)目的開發(fā),具備一定的系統(tǒng)分析與設(shè)計(jì)能力,熟悉數(shù)據(jù)庫的設(shè)計(jì)與操縱;指導(dǎo)老師宋鋒多年從事數(shù)據(jù)庫的教學(xué)與研究工作,因而該系統(tǒng)的實(shí)現(xiàn)在技術(shù)上是可行的。3.2 人員可能性我們組都擁有一定的的開發(fā)經(jīng)驗(yàn),目前時(shí)間充足,可以完成開發(fā)任務(wù)。李金玉的計(jì)算機(jī)功底很深,可以參與系統(tǒng)的數(shù)據(jù)庫設(shè)計(jì)與開發(fā)。代江波有深厚的文字功底,可以參與用戶文檔的制作、內(nèi)部文檔整理、后期測(cè)試等任 務(wù)。所有人員均可立即投入開

7、發(fā)工作。3.3 時(shí)間、設(shè)備可能性系統(tǒng)設(shè)計(jì)與開發(fā)工作預(yù)計(jì)耗時(shí)一個(gè)月,所有參與開發(fā)的人員均能夠保證按時(shí)完成任 務(wù)。實(shí)驗(yàn)設(shè)備如:計(jì)算機(jī)、打印機(jī)、掃描儀等不足,上機(jī)任務(wù)可以完成,打印機(jī)、掃描儀 的實(shí)驗(yàn)根據(jù)具體條件暫時(shí)延緩執(zhí)行。3.4 系統(tǒng)工作量該系統(tǒng)的工作量相對(duì)于我們的開發(fā)小組來說很大,必須保證按進(jìn)度完成任務(wù)。實(shí)際工 作量預(yù)計(jì)超過一個(gè)月。如包含軟件維護(hù)及技術(shù)文檔的整理、制作,工作量將更大。3.5 代碼工作量預(yù)計(jì)需2個(gè)月左右。3.6 文檔要求依據(jù)國家計(jì)算機(jī)軟件產(chǎn)品開發(fā)文件編制指南和現(xiàn)代軟件工程的理論與原則編制 標(biāo)準(zhǔn)的軟件技術(shù)文檔。四、開發(fā)環(huán)境與項(xiàng)目規(guī)劃4.1 開發(fā)環(huán)境前臺(tái)開發(fā)環(huán)境:Eclipse 3.2

8、后臺(tái)數(shù)據(jù)庫環(huán)境: Microsoft Access 2000/20024.2 項(xiàng)目規(guī)劃與管理系統(tǒng)分析與設(shè)計(jì):商慶濤程序編制:李金玉數(shù)據(jù)庫設(shè)計(jì):張家國、韓超 文檔整理與制作:代江波 系統(tǒng)測(cè)試:全組人員五、概要設(shè)計(jì)說明書5.1 系統(tǒng)的劃分該網(wǎng)站建設(shè)包含以下子系統(tǒng):5.2 用戶角色劃分1、普通(游客)用戶是該論壇的一種用戶,普通用戶以游客身份登錄本系統(tǒng),只具有察看帖 子的功能,不能留言。2、注冊(cè)用戶具備普通用戶所有的能力。并且是已經(jīng)注冊(cè)了的用戶,可以登錄、修改個(gè)人 信息,并且可以發(fā)表留言。3、版主具備注冊(cè)用戶所有的能力,其主要權(quán)限是對(duì)分論壇進(jìn)行文章管理。4、管理員管理員登錄以后可以對(duì)論壇系統(tǒng)進(jìn)行管理

9、,包括論壇的基本信息、用戶設(shè)置,還可以修改管理員密碼。5.3 結(jié)構(gòu)化編碼約定編碼應(yīng)清晰、可讀性好,運(yùn)用縮進(jìn)、空行,結(jié)合大小寫區(qū)別等方法保持程序結(jié)構(gòu)良好。 凡與數(shù)據(jù)庫操作相關(guān)的模塊一律加上容錯(cuò)代碼,涉及多表操作的模塊應(yīng)運(yùn)用“事務(wù)”處理, 以保持?jǐn)?shù)據(jù)完整性。編碼風(fēng)格參照下例進(jìn)行:Public Sub CheckUser(userID As String, passwd As String)Dim userDB As DatabaseDim userRD As RecordsetDim dbName As StringDim STRSQL As StringScreen.MousePointer =

10、 11On Error GoTo errEnddbName = App.PathIf Right(dbName, 1) <> "、" Then dbName = dbName + "、"dbName = dbName + "DataBase、WFSSDataBase.mdb"STRSQL = "select 用戶身份from Admin where 用戶 ID=""" & userID & """ and 用戶密碼=""

11、;"& passwd & """"'打開數(shù)據(jù)庫Set userDB = DBEngine.Workspaces(0).OpenDatabase(dbName, False, True)'檢索用戶,驗(yàn)證密碼Set userRD = userDB.OpenRecordset(STRSQL, dbOpenSnapshot)If userRD.RecordCount > 0 Then設(shè)置用戶身份UserShenFen = userRD!用戶身份關(guān)閉數(shù)據(jù)庫userRD.CloseSet userRD = Nothin

12、guserDB.CloseSet userDB = Nothing'進(jìn)入用戶環(huán)境Load FrmMainFrmMain.ShowUnload FrmLogInlogOK = TrueuserName = userIDScreen.MousePointer = vbDefaultElse關(guān)閉數(shù)據(jù)庫userRD.CloseSet userRD = NothinguserDB.CloseSet userDB = Nothing logOK = FalseScreen.MousePointer = vbDefault", vbOKOnly + vbExclamation,"

13、登陸失敗"MsgBox "用戶名或密碼錯(cuò)誤!請(qǐng)重新輸入!End IfExit SuberrEnd :Screen.MousePointer = vbDefaultMsgBox Err.Description, vbOKOnly + vbExclamation," 登陸錯(cuò)誤 logOK = FalseErr.Clear關(guān)閉數(shù)據(jù)庫userRD.CloseSet userRD = NothinguserDB.CloseSet userDB = NothingExit SubEnd Sub5.4 前臺(tái)服務(wù)的用例圖不得用于商業(yè)用途(Tram啕占用仲I)Chom的臺(tái)用刪J僅供

14、個(gè)人參考<<inc叫號(hào)* 個(gè)人信息修改 一浜上"俗。E的白用例)O保存用戶的信息/出。加的含用例)0 /c一了注冊(cè)用戶、登錄系統(tǒng)/(from的M用01)/3在線注銷(from前白用便|)Z?(什0m整身者)清除用戶的CQQkie信息Cfrom前臺(tái)用便1),OL引用的方式回復(fù)<<inclmle>>一.一om由合用網(wǎng))只保存BBS信息食g»m的白雪1)發(fā)表日B£<<inclnde>>坨"1陽自閑倒)<<incluUe>>修改日日S內(nèi)容(from的日睜O /獨(dú)立地回復(fù)./

15、74;om的占用例j預(yù)覽日日S(Trom用臺(tái)用伊0不得用于商業(yè)用途CZ)的臺(tái)陽例)直看新帖/ 、 k 廠二小、早_一fl推薦給朋友二v7'A T (from用用戶'、用戶/(from/。對(duì)收藏夾中的信息操作C±)。JJ發(fā)表短消息短消息的查詢顯示 (hom前合用例)flrom菌占用例)僅供個(gè)人參考不得用于商業(yè)用途登錄者本人的信息的顯示(frorn的臺(tái)用伊I)用戶信息顯示仁 飛(from削占用例)積分交易的查詢顯示Cfrom的臺(tái)用伊I)新會(huì)員的信息顯示注冊(cè)用戶用戶(from琴號(hào)的(Jrcm朝導(dǎo)者)(fgE陽臺(tái)用例)帖子作者的信息顯示(1tam前舍用柳|)(fiom前臺(tái)用例

16、) «eyterud>><<exter(i>、.某個(gè)斑主的信息顯示六、軟件詳細(xì)設(shè)計(jì)說明書6.1 系統(tǒng)概述基于Struts框架的BBS論壇系統(tǒng)<BR>商要:<BR沛文從系統(tǒng)概述到系統(tǒng)詳細(xì)設(shè)計(jì)對(duì)基于struts框架的bbs論壇系統(tǒng)的設(shè)計(jì)做了深入而詳細(xì)的介紹.開發(fā)過程中使用到的開發(fā)工具有:web服務(wù)器tomcat ,數(shù)據(jù)庫服務(wù)器oracle ,集成開發(fā)工具 myeclipse和jdk。整個(gè)論壇 系統(tǒng)分為前臺(tái),和后臺(tái)兩個(gè)大的模塊。其中前臺(tái)模塊實(shí)現(xiàn)的基本功能主要有:用戶注冊(cè),用戶登陸,查看和修改用戶個(gè)人信息,瀏覽帖子,發(fā)表回復(fù),發(fā)表新帖子,注銷登

17、陸;后臺(tái)模 塊實(shí)現(xiàn)的基本功能主要有:管理員登陸,模糊查找用戶,編輯用戶權(quán)限,編輯論壇版塊,刪 除論壇版塊,模糊搜索帖子,刪除帖子6.2 設(shè)計(jì)約束系統(tǒng)將實(shí)現(xiàn)人員、帖子的全面管理,而帖子管理是系統(tǒng)的核心部件,怎樣實(shí)現(xiàn)二者的相互聯(lián)系,和帖子系統(tǒng)的管理,是本系統(tǒng)設(shè)計(jì)的難點(diǎn)。本系統(tǒng)必須實(shí)現(xiàn)對(duì)用戶權(quán)限的有效合理 控制。6.3 設(shè)計(jì)策略由于所有的帖子都需要有人員的活動(dòng)才能夠發(fā)生,因此,我們決定采用一種“人員活動(dòng) 對(duì)應(yīng)帖子流動(dòng)”的策略來解決人員管理與帖子管理的統(tǒng)一管理問題。這個(gè)想法是模擬現(xiàn)實(shí)而來的,比如說,只有已注冊(cè)人員進(jìn)行了 “發(fā)表帖子”活動(dòng),才會(huì) 將這個(gè)人的帖子放入這個(gè)人的帖子庫中。6.4 系統(tǒng)詳細(xì)設(shè)計(jì)說

18、明書全局變量定義:用戶身份標(biāo)志Public UserShenFen As String'登陸狀態(tài)Public logOK As Boolean用戶名Public userName As String'用戶名編號(hào)Public YongHuMingID As String會(huì)員卡號(hào)Public HuiY uanKaHao As String會(huì)員姓名Public HYXingMing As String會(huì)員等級(jí)Public HYDengJi As String 模塊名:CheckUser原型:Public Sub CheckUser(userID As String, passwd A

19、s String)代碼:Public Sub CheckUser(userID As String, passwd As String)Dim userDB As DatabaseDim userRD As RecordsetDim dbName As StringDim STRSQL As StringScreen.MousePointer = 11On Error GoTo errEnddbName = App.PathIf Right(dbName, 1) <> "" Then dbName = dbName + ""dbName =

20、dbName + "DataBaseWFSSDataBase.mdb"STRSQL = "select 用戶身份from Admin where 用戶 ID=""" & userID & """ and 用戶密碼="""& passwd & """"'打開數(shù)據(jù)庫Set userDB = DBEngine.Workspaces(0).OpenDatabase(dbName, False, True)

21、'檢索用戶,驗(yàn)證密碼Set userRD = userDB.OpenRecordset(STRSQL, dbOpenSnapshot)If userRD.RecordCount > 0 Then設(shè)置用戶身份UserShenFen = userRD!用戶身份 關(guān)閉數(shù)據(jù)庫 userRD.CloseSet userRD = Nothing userDB.CloseSet userDB = Nothing'進(jìn)入用戶環(huán)境Load FrmMainFrmMain.ShowUnload FrmLogIn logOK = True userName = userIDScreen.Mouse

22、Pointer = vbDefaultElse關(guān)閉數(shù)據(jù)庫userRD.CloseSet userRD = Nothing userDB.CloseSet userDB = Nothing logOK = FalseScreen.MousePointer = vbDefaultMsgBox "用戶名或密碼錯(cuò)誤!請(qǐng)重新輸入!", vbOKOnly + vbExclamation,"登陸失敗"End If Exit SuberrEnd:Screen.MousePointer = vbDefaultMsgBox Err.Description, vbOKOnly

23、 + vbExclamation," 登陸錯(cuò)誤" logOK = False Err.Clear 關(guān)閉數(shù)據(jù)庫 userRD.Close Set userRD = Nothing userDB.CloseSet userDB = Nothing Exit SubEnd Sub模塊名:LogOff模塊原型:Public Sub LogOff()代碼:Public Sub LogOff()Dim retVal As IntegerretVal = MsgBox("你確定要注銷嗎?", vbOKCancel + vbQuestion,”注銷當(dāng)前用戶")

24、If retVal = vbCancel Then Exit SubLoad FrmLogInFrmLogIn.ShowIf UserShenFen ="論壇總管理員"ThenUnload FrmAdminMainElseIf UserShenFen ="論壇模塊管理員"ThenUnload FrmCangGuanMainElseIf UserShenFen ="會(huì)員"ThenUnload FrmMemberMainElseUnload FrmGuestMainEnd IfUnload FrmMainUserShenFen =&quo

25、t;"logOK = FalseEnd Sub模塊名:Sys_exit模塊原型:Public Sub Sys_exit()代碼:Public Sub Sys_exit()Dim retVal As IntegerretVal = MsgBox("你確定要退出嗎?", vbOKCancel + vbQuestion,"退出系統(tǒng)")If retVal = vbCancel Then Exit SubIf UserShenFen ="論壇管理員"ThenUnload FrmAdminMainElseIf UserShenFen =

26、"論壇模塊管理員"ThenUnload FrmCangGuanMainElseIf UserShenFen ="會(huì)員"ThenUnload FrmMemberMainElseUnload FrmGuestMainEnd IfUnload FrmMainEndEnd Sub模塊名:Form_Load模塊原型:Private Sub Form_Load()代碼:Private Sub Form_Load()Dim dbName As StringDim connSTR As StringOn Error GoTo errEndChDir App.Pathdb

27、Name = App.PathIf Right(dbName, 1) <> "" Then dbName = dbName + ""dbName = dbName + "DataBaseWFSSDataBase.mdb"connSTR = "Provider=;Data Source=" & dbName & "Persist Security Info=False"Adodc1.ConnectionString = connSTRExit SuberrEnd:Msg

28、Box "連接數(shù)據(jù)庫失敗!”, vbOKOnly + vbExclamation,"打開數(shù)據(jù)庫出錯(cuò)"EndEnd Sub模塊名:GetHYDaZhe模塊原型:Public Function GetHYDaZhe(bianHao As String) As String代碼:Public Function GetHYDaZhe(bianHao As String) As StringOn Error GoTo errEndIf bianHao = " " ThenGetHYDaZhe = "1"Exit FunctionEnd

29、 IfAdodc1.CommandType = adCmdTextAdodc1.RecordSource = "select 打折from 會(huì)員政策where 會(huì)員級(jí)別="""& bianHao & """"Adodc1.RefreshIf > 0 ThenGetHYDaZhe = Adodc1.Recordset!打折ElseMsgBox "會(huì)員政策數(shù)據(jù)丟失,請(qǐng)與經(jīng)理聯(lián)系!", vbOKOnly + vbExclamation,"檢索錯(cuò)誤" GetHY

30、DaZhe = "1"End IfExit FunctionerrEnd:MsgBox "檢索數(shù)據(jù)庫出錯(cuò)!", vbOKOnly + vbExclamation,"檢索錯(cuò)誤"GetDingJia ="未知"End Function模塊名:GetKuCun模塊原型:Public Function GetKuCun(bianHao As String) As String代碼:Public Function GetKuCun(bianHao As String) As StringOn Error GoTo errEn

31、dAdodc1.CommandType = adCmdTextAdodc1.RecordSource = "select 庫存量from Book where 圖書編號(hào)="""& bianHao & """"Adodc1.RefreshIf > 0 ThenGetKuCun = Adodc1.Recordset!庫存量ElseMsgBox "圖書資料數(shù)據(jù)丟失,請(qǐng)與經(jīng)理聯(lián)系!", vbOKOnly + vbExclamation,"檢索錯(cuò)誤" GetKuC

32、un = "0"End IfExit FunctionerrEnd:MsgBox "檢索數(shù)據(jù)庫出錯(cuò)!", vbOKOnly + vbExclamation,"檢索錯(cuò)誤"GetDingJia ="未知"End Function模塊名:HYShengJi模塊原型:Public Function HYShengJi(HYKaHao As String) As Boolean代碼:Public Function HYShengJi(HYKaHao As String) As BooleanOn Error GoTo err

33、EndDim BiaoZhun As IntegerDim SUMBook As IntegerIf HYKaHao = "Guest" ThenHYShengJi = FalseExit FunctionEnd IfBeginTransAdodc1.CommandType = adCmdTextAdodc1.RecordSource = "select sum(實(shí)收金額)as 總金額from 售書記錄where 會(huì)員卡號(hào)="""&HYKaHao & """"Adodc1.Ref

34、reshIf > 0 ThenSUMBook = CInt(Adodc1.Recordset!總金額)ElseSUMBook = 0End IfAdodc1.CommandType = adCmdTextAdodc1.RecordSource = "select 會(huì)員標(biāo)準(zhǔn)from 會(huì)員政策where 會(huì)員級(jí)別尸'"Adodc1.RefreshBiaoZhun = CInt(Adodc1.Recordset!會(huì)員標(biāo)準(zhǔn))If SUMBook >= BiaoZhun ThenAdodc1.CommandType = adCmdTextAdodc1.Record

35、Source = "select * from 會(huì)員表where 會(huì)員卡號(hào)="""& HYKaHao & """"Adodc1.RefreshIf > 0 ThenAdodc1.Recordset!會(huì)員等級(jí) =""End IfEnd IfAdodcl.CommandType = adCmdTextAdodcl.RecordSource = "select 會(huì)員標(biāo)準(zhǔn)from 會(huì)員政策where 會(huì)員級(jí)別尸'"Adodcl.RefreshBiaoZh

36、un = CInt(Adodc1.Recordset!會(huì)員標(biāo)準(zhǔn))If SUMBook >= BiaoZhun ThenAdodcl.CommandType = adCmdTextAdodcl.RecordSource = "select * from 會(huì)員表where 會(huì)員卡號(hào)="""& HYKaHao & """"Adodcl.RefreshIf > 0 ThenAdodcI.Recordset!會(huì)員等級(jí) =""End IfEnd IfAdodcl.CommandT

37、ype = adCmdTextAdodcI.RecordSource = "select 會(huì)員標(biāo)準(zhǔn)from 會(huì)員政策where 會(huì)員級(jí)別尸'"AdodcI.RefreshBiaoZhun = CInt(Adodc1.Recordset!會(huì)員標(biāo)準(zhǔn))If SUMBook >= BiaoZhun ThenAdodc1.CommandType = adCmdTextAdodc1.RecordSource = "select * from 會(huì)員表where 會(huì)員卡號(hào)="""& HYKaHao & "&qu

38、ot;""Adodc1.RefreshIf > 0 ThenAdodc1.Recordset!會(huì)員等級(jí) =""End IfEnd IfAdodcl.CommandType = adCmdTextAdodcI.RecordSource = "select 會(huì)員標(biāo)準(zhǔn)from 會(huì)員政策where 會(huì)員級(jí)別尸'"AdodcI.RefreshBiaoZhun = CInt(Adodc1.Recordset!會(huì)員標(biāo)準(zhǔn))If SUMBook >= BiaoZhun ThenAdodcl.CommandType = adCmdTe

39、xtAdodcI.RecordSource = "select * from 會(huì)員表where 會(huì)員卡號(hào)="""& HYKaHao & """"AdodcI.RefreshIf > 0 ThenAdodcl.Recordset!會(huì)員等級(jí) =""End IfEnd IfAdodcl.CommandType = adCmdTextAdodcI.RecordSource = "select 會(huì)員標(biāo)準(zhǔn)from 會(huì)員政策where 會(huì)員級(jí)別尸'"Adodc

40、I.RefreshBiaoZhun = CInt(Adodc1.Recordset!會(huì)員標(biāo)準(zhǔn))If SUMBook >= BiaoZhun ThenAdodcl.CommandType = adCmdTextAdodcI.RecordSource = "select * from 會(huì)員表where 會(huì)員卡號(hào)="""& HYKaHao & """"Adodc1.RefreshIf > 0 ThenAdodc1.Recordset!會(huì)員等級(jí) =""End IfEnd If

41、CommitTransHYShengJi = FalseExit FunctionerrEnd:RollbackHYShengJi = TrueScreen.MousePointer = vbDefaultMsgBox "檢查會(huì)員是否應(yīng)升級(jí)時(shí)操作失??!", vbOKOnly + vbExclamation,"圖書銷售"CmdOK.Enabled = TrueEnd Function模塊名:CmdSellBook_Click模塊原型:Private Sub CmdSellBook_Click()代碼:Private Sub CmdSellBook_Clic

42、k()On Error GoTo errEndDim QD As IntegerCmdSellBook.Enabled = FalseIf TxtShuLiang.Text = "" ThenMsgBox ”請(qǐng)輸入交易的數(shù)量!", vbOKOnly + vbExclamation," 填寫數(shù)量"TxtShuLiang.SetFocusCmdSellBook.Enabled = TrueExit SubEnd IfIf GetKuCun(TuShuBianHao) <= 0 Or GetKuCun(TuShuBianHao) < Tx

43、tShuLiang.Text ThenMsgBox "該類圖書庫存量不足,請(qǐng)與倉庫管理員聯(lián)系!", vbOKOnly + vbExclamation,"庫存不足" TxtShuLiang.SetFocusCmdSellBook.Enabled = TrueExit SubEnd IfIf TxtZheKou.Text = "" ThenMsgBox "請(qǐng)輸入交易的實(shí)際折扣率 !", vbOKOnly + vbExclamation,"填寫折扣"TxtZheKou.SetFocusCmdSellB

44、ook.Enabled = TrueExit SubEnd IfIf TxtZheKou.Text <= 0 Or TxtZheKou.Text > 1 ThenMsgBox "實(shí)際折扣率填寫錯(cuò)誤!請(qǐng)?jiān)?與1之間選擇.",vbOKOnly + vbExclamation,"填寫折扣"TxtZheKou.SetFocusCmdSellBook.Enabled = TrueExit SubEnd IfIf TxtSJJinE.Text = "" ThenMsgBox ”請(qǐng)輸入交易的實(shí)際金額 !", vbOKOnly

45、+ vbExclamation," 填寫金額"TxtSJJinE.SetFocusCmdSellBook.Enabled = TrueExit SubEnd IfIf TxtMemo.Text = "" Then TxtMemo.Text =" 無"QD = MsgBox("確定入帳嗎?", vbOKCancel + vbQuestion,"確認(rèn)入帳")If QD = vbCancel ThenCmdSellBook.Enabled = TrueExit SubEnd If售書入帳Screen.

46、MousePointer = 11BeginTransAdodc1.CommandType = adCmdTableAdodc1.RecordSource ="售書記錄"Adodc1.RefreshAdodc1.Recordset!圖書編號(hào) =TuShuBianHaoAdodc1.Recordset!數(shù)量=TxtShuLiang.TextAdodc1.Recordset!會(huì)員卡號(hào)=HuiYuanKaHaoAdodc1.Recordset!實(shí)際打折 =TxtZheKou.TextAdodc1.Recordset!實(shí)收金額 =TxtSJJinE.TextAdodc1.Recor

47、dset!日期 =Year(Now) & "-" & Month(Now) & "-" & Day(Now) & "."Adodc1.Recordset!備注=TxtMemo.TextAdodcl.CommandType = adCmdText交易失敗"AdodcI.RecordSource = "select * from Book where 圖書編號(hào)="""& TuShuBianHao & AdodcI.RefreshIf

48、> 0 ThenAdodc1.Recordset!庫存量 =Adodc1.Recordset!庫存量-TxtShuLiang.TextElseRollbackScreen.MousePointer = vbDefaultMsgBox "圖書資料丟失,請(qǐng)與倉庫管理員聯(lián)系!", vbOKOnly + vbExclamation,"CmdSellBook.Enabled = TrueExit SubEnd IfIf HYShengJi(HuiYuanKaHao) Then RollbackCommitTransScreen.MousePointer = vbDef

49、aultMsgBox "恭喜您,交易成功!", vbOKOnly + vbInformation," 交易成功"Unload MeExit SuberrEnd:RollbackScreen.MousePointer = vbDefaultMsgBox Err.Description, vbOKOnly + vbExclamation," 操作數(shù)據(jù)庫出錯(cuò) 交易失敗 CmdSellBook.Enabled = TrueEnd Sub模塊名:checkGYSID模塊原型:Public Function checkGYSID(UID As String

50、) As Boolean代碼:Public Function checkGYSID(UID As String) As BooleanDim userDB As DatabaseDim userRD As RecordsetDim dbName As StringDim STRSQL As StringScreen.MousePointer = 11On Error GoTo errEnddbName = App.PathIf Right(dbName, 1) <> "" Then dbName = dbName + "" dbName =

51、dbName + "DataBaseWFSSDataBase.mdb"STRSQL = "select 圖書分類from 圖書分類where 圖書分類號(hào)="""& UID & """"打開數(shù)據(jù)庫Set userDB = DBEngine.Workspaces(0).OpenDatabase(dbName, False, True) '檢索用戶,驗(yàn)證密碼Set userRD = userDB.OpenRecordset(STRSQL, dbOpenSnapshot)If u

52、serRD.RecordCount > 0 Then關(guān)閉數(shù)據(jù)庫userRD.CloseSet userRD = NothinguserDB.CloseSet userDB = NothingcheckGYSID = TrueScreen.MousePointer = vbDefaultElse關(guān)閉數(shù)據(jù)庫userRD.CloseSet userRD = NothinguserDB.CloseSet userDB = NothingScreen.MousePointer = vbDefault checkGYSID = FalseEnd IfExit FunctionerrEnd:Scree

53、n.MousePointer = vbDefaultMsgBox Err.Description, vbOKOnly + vbExclamation,” 創(chuàng)建類另U "Err.Clear關(guān)閉數(shù)據(jù)庫userRD.CloseSet userRD = NothinguserDB.CloseSet userDB = NothingEnd Function模塊名:checkFenLei模塊原型:Public Function checkFenLei(UID As String) As Boolean 代碼:Public Function checkFenLei(UID As String) A

54、s BooleanDim userDB As DatabaseDim userRD As RecordsetDim dbName As StringDim STRSQL As StringScreen.MousePointer = 11On Error GoTo errEnddbName = App.PathIf Right(dbName, 1) <> "" Then dbName = dbName + "" dbName = dbName + "DataBaseWFSSDataBase.mdb"STRSQL = &quo

55、t;select 圖書分類from 圖書分類where 圖書分類="""& UID & """"'打開數(shù)據(jù)庫Set userDB = DBEngine.Workspaces(0).OpenDatabase(dbName, False, True) '檢索用戶,驗(yàn)證密碼Set userRD = userDB.OpenRecordset(STRSQL, dbOpenSnapshot)If userRD.RecordCount > 0 Then 關(guān)閉數(shù)據(jù)庫userRD.CloseSet use

56、rRD = NothinguserDB.CloseSet userDB = NothingcheckFenLei = TrueScreen.MousePointer = vbDefaultElse關(guān)閉數(shù)據(jù)庫userRD.CloseSet userRD = NothinguserDB.CloseSet userDB = NothingScreen.MousePointer = vbDefaultcheckFenLei = FalseEnd IfExit FunctionerrEnd:Screen.MousePointer = vbDefaultMsgBox Err.Description, vb

57、OKOnly + vbExclamation,” 創(chuàng)建類另U "Err.Clear關(guān)閉數(shù)據(jù)庫 userRD.Close Set userRD = Nothing userDB.CloseSet userDB = NothingEnd Function模塊名:CmdNewFenLei_Click模塊原型:Private Sub CmdNewFenLei_Click()代碼:Private Sub CmdNewFenLei_Click()On Error GoTo errEndIf TxtBianHao.Text = "" ThenMsgBox ”請(qǐng)?zhí)顚憟D書分類號(hào)!”

58、, vbOKOnly + vbExclamation,"創(chuàng)建分類" TxtBianHao.SetFocusExit SubEnd If If TxtLeiBie.Text = "" ThenMsgBox ”請(qǐng)?zhí)顚憟D書分類名稱 !", vbOKOnly + vbExclamation,"創(chuàng)建分類" TxtLeiBie.SetFocus Exit SubEnd IfIf checkFenLei(TxtLeiBie.Text) ThenMsgBox ”圖書分類名稱不唯一,請(qǐng)另選一個(gè)!", vbOKOnly + vbExc

59、lamation,"創(chuàng)建分類"TxtLeiBie.SetFocus TxtLeiBie.SelStart = 0TxtLeiBie.SelLength = Len(TxtLeiBie.Text)Exit SubEnd IfIf ComboFuLei.Text <> "" And ComboFuLei.Text <> " 選擇父類"ThenIf Not checkFenLei(ComboFuLei.Text) ThenMsgBox "所選父類不存在!請(qǐng)重試! ", vbOKOnly + vbE

60、xclamation,"選擇父類" ComboFuLei.SetFocus Exit SubEnd IfAdodc1.CommandType = adCmdTextAdodc1.RecordSource = "select 圖書分類號(hào)from 圖書分類where 圖書分類號(hào)=所屬父類編號(hào) and 圖書分類="""& ComboFuLei.Text & """"AdodcI.RefreshFuLeiBianHao = AdodcI.Recordset!圖書分類號(hào)End IfIf checkGYSID(TxtBianHao.Text) ThenMsgBox "圖書分類編號(hào)不唯一,請(qǐng)另選一個(gè)! &quo

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論