宛楓書社圖書管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)樣本_第1頁
宛楓書社圖書管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)樣本_第2頁
宛楓書社圖書管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)樣本_第3頁
宛楓書社圖書管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)樣本_第4頁
宛楓書社圖書管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)樣本_第5頁
已閱讀5頁,還剩70頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

河南職業(yè)技術(shù)師范學(xué)院畢業(yè)論文題目:宛楓書社圖書管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)班級(jí):信管993/992班姓名:胡孟杰、蔡大臣、張航指引教師:王改性信息工程與管理學(xué)院TIME\@"yyyy'年'M'月'd'日'"5月12日宛楓書社圖書管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)文檔信息開發(fā)小組:組長:胡孟杰成員:蔡大臣、張航單位:信管993/992班文獻(xiàn)類型:軟件開發(fā)用技術(shù)文檔當(dāng)前版本:V1.0Beta作者:胡孟杰DATE5/12/完畢日期:TIME\@"yyyy'年'M'月'd'日'"5月12日軟件信息軟件名稱:宛楓書社圖書管理系統(tǒng)版本號(hào):V1.0Beta語言類型:簡體中文軟件主頁:授權(quán)類型:免費(fèi)軟件/測試版運(yùn)營環(huán)境:Windows95/98/NT/Me//XP等下載地址:/download/WFSSBookShopV1.0Beta.zip軟件大?。?069KB指引教師:王改性軟件作者:胡孟杰參加開發(fā):蔡大臣、張航等參加測試:開發(fā)人員、考試通書店(李明友)、張科偉等聯(lián)系信箱:版權(quán)所有:Copyright?-.Poweredby胡孟杰.開發(fā)日期:3月-5月有關(guān)站點(diǎn):華軍軟件園、PChome、21CN、典型下載等軟件簡介:宛楓書社圖書管理系統(tǒng)V1.0Beta測試版面向中小型書店、個(gè)體書店進(jìn)行全面人員、物流管理,旨在實(shí)現(xiàn)書店管理信息化。本系統(tǒng)采用會(huì)員制管理,將人員分為經(jīng)理、倉庫管理員、售書員、會(huì)員、游客等,分別擁有不同權(quán)限,各司其職,以便提高工作效率。系統(tǒng)功能涉及:供應(yīng)商管理、進(jìn)書管理、圖書資料管理、售書管理、會(huì)員管理、員工管理、庫存記錄、售書記錄、退貨記錄、基本記錄分析等。河南職業(yè)技術(shù)師范學(xué)院信息工程與管理學(xué)院信息管理與信息系統(tǒng)專業(yè)99級(jí)中華人民共和國.河南.新鄉(xiāng)TIME\@"yyyy-MM-dd"-05-12目錄一、前言 4二、需求分析闡明書 42.1系統(tǒng)簡介 42.2系統(tǒng)面向顧客群體 42.3系統(tǒng)功能性需求 42.4系統(tǒng)非功能性需求 52.4.1顧客界面需求 52.4.2軟硬件環(huán)境需求 52.4.3軟件質(zhì)量需求 5三、可行性分析報(bào)告 53.1技術(shù)可行性 53.2人員也許性 53.3時(shí)間、設(shè)備也許性 53.4系統(tǒng)工作量 53.5代碼工作量 53.6文檔規(guī)定 5四、開發(fā)環(huán)境與項(xiàng)目規(guī)劃 54.1開發(fā)環(huán)境 54.2項(xiàng)目規(guī)劃與管理 54.2.1開發(fā)人員安排 54.2.2開發(fā)進(jìn)度安排 6五、軟件界面設(shè)計(jì)原則與規(guī)范 65.1編寫目 65.2界面設(shè)計(jì)思想 65.3界面設(shè)計(jì)原則 65.4界面設(shè)計(jì)樣式 65.5常用提示信息樣式 65.6常用錯(cuò)誤信息樣式 75.7其她界面商定 7六、軟件編碼設(shè)計(jì)原則與規(guī)范 76.1對(duì)象命名商定 76.2常量和變量命名商定 86.3構(gòu)造化編碼商定 86.4數(shù)據(jù)源商定 96.5數(shù)據(jù)庫訪問商定 96.6其她商定 9七、數(shù)據(jù)庫分析與設(shè)計(jì) 107.1數(shù)據(jù)庫環(huán)境闡明 107.2數(shù)據(jù)庫命名原則與規(guī)范 107.3數(shù)據(jù)庫邏輯設(shè)計(jì) 107.4數(shù)據(jù)庫物理設(shè)計(jì) 107.4.1表、視圖匯總 107.4.2各表、視圖設(shè)計(jì)詳解 11八、軟件體系構(gòu)造設(shè)計(jì)闡明書 158.1系統(tǒng)概述 158.2設(shè)計(jì)約束 158.3設(shè)計(jì)方略 158.4系統(tǒng)概要設(shè)計(jì)闡明書 168.4.1圖例闡明 168.4.2系統(tǒng)總體構(gòu)造圖 168.4.3銷售子系統(tǒng)流程圖 178.4.4進(jìn)貨子系統(tǒng)流程圖 178.4.5退貨子系統(tǒng)流程圖 178.5系統(tǒng)詳細(xì)設(shè)計(jì)闡明書 178.5.1系統(tǒng)模塊匯總 178.5.2系統(tǒng)核心模塊詳解 188.5.3系統(tǒng)模塊詳解 28九、顧客界面設(shè)計(jì)報(bào)告 429.1界面設(shè)計(jì)規(guī)范 429.2系統(tǒng)窗體匯總 429.3主界面設(shè)計(jì) 439.4子界面設(shè)計(jì) 439.5界面資源設(shè)計(jì) 44十、軟件測試分析報(bào)告 4410.1測試范疇與重要內(nèi)容 4410.2測試辦法 4410.3測試報(bào)告 4410.4改進(jìn)建議與辦法 45十一、軟件使用闡明書 4511.1軟件概述 4511.2系統(tǒng)安裝 4511.3使用闡明 4511.3.1系統(tǒng)登陸 4511.3.2注銷與退出 4611.3.3辦理進(jìn)貨登記 4611.3.4辦理退貨登記 4811.3.5銷售圖書 4811.3.6會(huì)員管理 4911.3.7員工管理 4911.3.8書目檢索 5011.3.9查看記錄信息 5011.3.10修改密碼 5011.3.11關(guān)于/協(xié)助 50參照資料 51一、前言宛楓書社圖書管理系統(tǒng)設(shè)計(jì)與推出是多方面因素促成,我有一位老鄉(xiāng)名叫李明友,畢業(yè)后經(jīng)營一家小書店:“考試通書店”,其尋常管理工作都是人工操作,歷史數(shù)據(jù)很難保存和運(yùn)用,對(duì)于書店經(jīng)營非常不利。而其她中小型書店、個(gè)體書店大多如此。針對(duì)這種狀況,我籌劃開發(fā)一種面向中小型書店、個(gè)體書店圖書管理系統(tǒng),實(shí)現(xiàn)對(duì)人員、物流全面管理,以協(xié)助這些書店早日實(shí)現(xiàn)書店管理信息化。正在我考慮系統(tǒng)規(guī)劃時(shí)候,我有幸得到王改性教師指引,我兩位同窗:蔡大臣、張航也加入了開發(fā)隊(duì)伍,這更加堅(jiān)定了我完畢系統(tǒng)開發(fā)任務(wù)決心。為了系統(tǒng)順利開發(fā)和維護(hù),特編制如下技術(shù)文檔:二、需求分析闡明書2.1系統(tǒng)簡介本系統(tǒng)定位于中小型書店、個(gè)體書店,暫時(shí)考慮單機(jī)環(huán)境下實(shí)現(xiàn);操作系統(tǒng)選取當(dāng)前慣用Windows98/。系統(tǒng)性質(zhì)為MIS(管理信息系統(tǒng))或財(cái)務(wù)軟件。本系統(tǒng)采用會(huì)員制管理,系統(tǒng)功能應(yīng)包括進(jìn)書管理、售書管理、退貨管理、庫存管理、記錄分析、有關(guān)人員管理等。系統(tǒng)界面力求簡潔、易用,在原則化基本上考慮界面美觀和新穎。系記錄劃3月初開始,4月初完畢初步開發(fā)工作,別的工作依照時(shí)間安排進(jìn)行。2.2系統(tǒng)面向顧客群體系統(tǒng)面向中小型書店、個(gè)體書店,顧客群體為這些書店經(jīng)理、采購員/倉庫管理員、圖書銷售人員、書店會(huì)員/游客等。2.3系統(tǒng)功能性需求功能序號(hào)功能名稱功能闡明1供應(yīng)商管理包括供應(yīng)商信息登記、修改等2圖書種類管理包括圖書大類、小類創(chuàng)立3圖書資料管理包括圖書資料添加、修改等4新書入庫管理登記新書來源、數(shù)量、單價(jià)、折扣、金額等5庫存記錄分門別類記錄圖書既有庫存量、入庫時(shí)間等6進(jìn)貨記錄查詢查詢歷次進(jìn)貨記錄7退貨登記登記供應(yīng)商、圖書種類、退貨數(shù)量、因素等8退貨記錄按供應(yīng)商記錄退貨記錄9退貨記錄查詢查詢歷次退貨記錄10圖書銷售管理登記銷售種類、數(shù)量、單價(jià)、折扣、顧客/會(huì)員等11會(huì)員管理包括會(huì)員創(chuàng)立、修改、刪除等12優(yōu)惠政策管理包括優(yōu)惠政策制定與執(zhí)行13本日售書記錄記錄本日銷售圖書數(shù)量、金額等14售書記錄查詢查詢歷次售書記錄15員工管理包括員工帳號(hào)創(chuàng)立、修改、刪除等16記錄分析按年月日時(shí)段記錄書店經(jīng)營狀況17圖書檢索提供按圖書編號(hào)、書名、責(zé)任者、出版社等途徑檢索18系統(tǒng)帳號(hào)管理提供上級(jí)對(duì)下級(jí)資料、密碼管理,19個(gè)人資料、密碼管理提供修改個(gè)人資料、密碼工具2.4系統(tǒng)非功能性需求2.4.1顧客界面需求簡潔、易用、易懂,美觀、大方、原則,具備一定兼容性。2.4.2軟硬件環(huán)境需求軟件環(huán)境:兼容當(dāng)前主流操作系統(tǒng)Windows95/98/NT/Me//XP等。硬件環(huán)境:386以上計(jì)算機(jī),打印機(jī)、掃描儀等。2.4.3軟件質(zhì)量需求易用、健壯、兼容性好、運(yùn)營穩(wěn)定、有一定安全保障。三、可行性分析報(bào)告3.1技術(shù)可行性系統(tǒng)性質(zhì)為MIS或財(cái)務(wù)軟件,因而數(shù)據(jù)庫設(shè)計(jì)與操縱是系統(tǒng)設(shè)計(jì)核心。我在11月至3月曾經(jīng)成功完畢了“藍(lán)色夢幻留言板”開發(fā)與維護(hù)任務(wù),具備一定系統(tǒng)分析與設(shè)計(jì)能力,熟悉數(shù)據(jù)庫設(shè)計(jì)與操縱;指引教師王改性近年從事數(shù)據(jù)庫教學(xué)與研究工作,因而該系統(tǒng)實(shí)當(dāng)前技術(shù)上是可行。3.2人員也許性我有“藍(lán)色夢幻留言板”開發(fā)經(jīng)驗(yàn),當(dāng)前時(shí)間充分,可以完畢開發(fā)任務(wù)。蔡大臣計(jì)算機(jī)功底很深,可以參加系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)與開發(fā)。張航有深厚文字功底,可以參加顧客文檔制作、內(nèi)部文檔整頓、后期測試等任務(wù)。所有人員均可及時(shí)投入開發(fā)工作。3.3時(shí)間、設(shè)備也許性系統(tǒng)設(shè)計(jì)與開發(fā)工作預(yù)測耗時(shí)一種月,所有參加開發(fā)人員均可以保證準(zhǔn)時(shí)完畢任務(wù)。實(shí)驗(yàn)設(shè)備如:計(jì)算機(jī)、打印機(jī)、掃描儀等局限性,上機(jī)任務(wù)可以完畢,打印機(jī)、掃描儀實(shí)驗(yàn)依照詳細(xì)條件暫時(shí)延緩執(zhí)行。3.4系統(tǒng)工作量該系統(tǒng)工作量相對(duì)于咱們開發(fā)小組來說很大,必要保證按進(jìn)度完畢任務(wù)。實(shí)際工作量預(yù)測超過一種月(每天4-8小時(shí))。如包括軟件維護(hù)及技術(shù)文檔整頓、制作,工作量將更大。3.5代碼工作量預(yù)測需25天左右。3.6文檔規(guī)定根據(jù)國家《計(jì)算機(jī)軟件產(chǎn)品開發(fā)文獻(xiàn)編制指南》和《當(dāng)代軟件工程》理論與原則編制原則軟件技術(shù)文檔。四、開發(fā)環(huán)境與項(xiàng)目規(guī)劃4.1開發(fā)環(huán)境前臺(tái)開發(fā)環(huán)境:MicrosoftVisualBasic6.0后臺(tái)數(shù)據(jù)庫環(huán)境:MicrosoftAccess/4.2項(xiàng)目規(guī)劃與管理4.2.1開發(fā)人員安排系統(tǒng)分析與設(shè)計(jì):胡孟杰程序編制:胡孟杰數(shù)據(jù)庫設(shè)計(jì):胡孟杰、蔡大臣文檔整頓與制作:蔡大臣、張航系統(tǒng)測試:胡孟杰、蔡大臣、張航、考試通書店(李明友)等4.2.2開發(fā)進(jìn)度安排3月1日至3月5日:系統(tǒng)分析,進(jìn)行需求定義,定義系統(tǒng)概況3月6日至3月7日:數(shù)據(jù)庫分析與設(shè)計(jì)3月8日至3月9日:軟件體系構(gòu)造設(shè)計(jì)3月10日至3月31日:軟件編碼4月1日至4月2日:系統(tǒng)測試五、軟件界面設(shè)計(jì)原則與規(guī)范5.1編寫目制定界面設(shè)計(jì)原則規(guī)范目是為了規(guī)范和統(tǒng)一軟件界面設(shè)計(jì)制定軟件界面設(shè)計(jì)原則與規(guī)范。5.2界面設(shè)計(jì)思想一方面考慮原則化,在原則化基本上進(jìn)行界面美工設(shè)計(jì)。5.3界面設(shè)計(jì)原則簡樸易用、簡潔明了、兼容性好、原則、規(guī)范。5.4界面設(shè)計(jì)樣式工具條采用原則Windows界面,自上至下依次為:標(biāo)題欄、菜單欄、工具條、工作區(qū)、狀態(tài)欄等。如下圖示:工具條菜單欄菜單欄狀態(tài)欄工作區(qū)狀態(tài)欄工作區(qū)圖1.系統(tǒng)界面5.5常用提示信息樣式提示信息按如下原則進(jìn)行:采用原則Windows對(duì)話框樣式,添加信息圖標(biāo),后接提示信息文本和相應(yīng)按鈕。如下圖示:按鈕信息圖標(biāo)提示文本按鈕信息圖標(biāo)提示文本圖2.常用提示信息樣式5.6常用錯(cuò)誤信息樣式錯(cuò)誤信息根據(jù)提示信息樣式設(shè)計(jì),將信息圖標(biāo)更改為警告圖標(biāo)。如下圖示:警告圖標(biāo)提示文本警告圖標(biāo)提示文本圖3.常用錯(cuò)誤信息樣式5.7其她界面商定除主界面外,所有子界面均采用模式窗體,即該窗體不消失,不可以在本程序內(nèi)將焦點(diǎn)移出子窗體。六、軟件編碼設(shè)計(jì)原則與規(guī)范6.1對(duì)象命名商定對(duì)象名對(duì)象類型命名商定(前綴碼)Form窗體FrmCommand按鈕CmdLabel標(biāo)簽LabTextBox文本框TxtComboBox組合框ComBListBox列表框LstBAdodb數(shù)據(jù)庫訪問對(duì)象AdodbDataGrid數(shù)據(jù)表格顯示組件DataGridFrame框架FamOption單選框OptCheckBox復(fù)選框ChkPictureBox圖象顯示組件PtBCommonDialog通用對(duì)話框組件ComDlgTimer時(shí)間組件TimToolBar工具欄TlBarMenu菜單MnuSSTab頁框SSTabImageList界面資源組件ImgLst6.2常量和變量命名商定變量名數(shù)據(jù)類型變量類型含義UserShenFenString全局變量顧客身份標(biāo)志LogOKBoolean全局變量登陸狀態(tài)UserNameString全局變量顧客名GongYingShangIDString全局變量供應(yīng)商編號(hào)GongYingShangString全局變量供應(yīng)商名稱TuShuBianHaoString全局變量圖書編號(hào)DingJiaSingle全局變量圖書定價(jià)ShuMingString全局變量書名HuiYuanKaHaoString全局變量會(huì)員卡號(hào)HYXingMingString全局變量會(huì)員姓名HYDengJiString全局變量會(huì)員級(jí)別6.3構(gòu)造化編碼商定編碼應(yīng)清晰、可讀性好,運(yùn)用縮進(jìn)、空行,結(jié)合大小寫區(qū)別等辦法保持程序構(gòu)造良好。凡與數(shù)據(jù)庫操作有關(guān)模塊一律加上容錯(cuò)代碼,涉及多表操作模塊應(yīng)運(yùn)用“事務(wù)”解決,以保持?jǐn)?shù)據(jù)完整性。編碼風(fēng)格參照下例進(jìn)行:PublicSubCheckUser(userIDAsString,passwdAsString)DimuserDBAsDatabaseDimuserRDAsRecordsetDimdbNameAsStringDimSTRSQLAsStringScreen.MousePointer=11OnErrorGoToerrEnddbName=App.PathIfRight(dbName,1)<>"、"ThendbName=dbName+"、"dbName=dbName+"DataBase、WFSSDataBase.mdb"STRSQL="select[顧客身份]from[Admin]where[顧客ID]="""&userID&"""and[顧客密碼]="""&passwd&""""'打開數(shù)據(jù)庫SetuserDB=DBEngine.Workspaces(0).OpenDatabase(dbName,F(xiàn)alse,True)'檢索顧客,驗(yàn)證密碼SetuserRD=userDB.OpenRecordset(STRSQL,dbOpenSnapshot)IfuserRD.RecordCount>0Then'設(shè)立顧客身份UserShenFen=userRD![顧客身份]'關(guān)閉數(shù)據(jù)庫userRD.CloseSetuserRD=NothinguserDB.CloseSetuserDB=Nothing'進(jìn)入顧客環(huán)境LoadFrmMainFrmMain.ShowUnloadFrmLogInlogOK=TrueuserName=userIDScreen.MousePointer=vbDefaultElse'關(guān)閉數(shù)據(jù)庫userRD.CloseSetuserRD=NothinguserDB.CloseSetuserDB=NothinglogOK=FalseScreen.MousePointer=vbDefaultMsgBox"顧客名或密碼錯(cuò)誤!請重新輸入!",vbOKOnly+vbExclamation,"登陸失敗"EndIfExitSuberrEnd:Screen.MousePointer=vbDefaultMsgBoxErr.Description,vbOKOnly+vbExclamation,"登陸錯(cuò)誤"logOK=FalseErr.Clear'關(guān)閉數(shù)據(jù)庫userRD.CloseSetuserRD=NothinguserDB.CloseSetuserDB=NothingExitSubEndSub6.4數(shù)據(jù)源商定需用數(shù)據(jù)源組件如:DataGrid一律采用Adodb控件。有特殊需求狀況如:身份驗(yàn)證應(yīng)引用DAO(數(shù)據(jù)訪問對(duì)象)。6.5數(shù)據(jù)庫訪問商定數(shù)據(jù)庫引擎采用Microsoft.Jet.OLEDB.4.0,由Adodb組件進(jìn)行數(shù)據(jù)庫訪問,并為其她組件提供數(shù)據(jù)源。特殊狀況、身份驗(yàn)證等由DAO訪問數(shù)據(jù)庫。6.6其她商定無需數(shù)據(jù)顯示狀況由DAO提供數(shù)據(jù)庫支持,有數(shù)據(jù)顯示狀況由ADODB組件提供數(shù)據(jù)庫支持。七、數(shù)據(jù)庫分析與設(shè)計(jì)7.1數(shù)據(jù)庫環(huán)境闡明考慮該系統(tǒng)定位與既有技術(shù)力量,決定采用MicrosoftAccess/作為系統(tǒng)后臺(tái)數(shù)據(jù)庫開發(fā)環(huán)境。7.2數(shù)據(jù)庫命名原則與規(guī)范闡明:下表所列為數(shù)據(jù)庫及各表、視圖命名辦法,詳細(xì)信息請參閱7.4.1表、視圖匯總。名稱類型命名辦法商定WFSSDataBase系統(tǒng)數(shù)據(jù)庫字母表基本表中文或字母查詢查詢中文字段字段中文或字母7.3數(shù)據(jù)庫邏輯設(shè)計(jì)會(huì)員表會(huì)員級(jí)別會(huì)員表會(huì)員級(jí)別會(huì)員卡號(hào)…會(huì)員政策會(huì)員級(jí)別…Admin顧客ID…員工表員工帳號(hào)…Admin顧客ID…員工表員工帳號(hào)…圖書分類圖書分類圖書分類號(hào)…售書記錄會(huì)員卡號(hào)圖書編號(hào)售書記錄會(huì)員卡號(hào)圖書編號(hào)…Book圖書分類號(hào)圖書編號(hào)…圖書進(jìn)價(jià)表圖書進(jìn)價(jià)表圖書編號(hào)…進(jìn)書記錄圖書編號(hào)供應(yīng)商編號(hào)進(jìn)書記錄圖書編號(hào)供應(yīng)商編號(hào)…退貨記錄圖書編號(hào)供應(yīng)商編號(hào)…退貨記錄圖書編號(hào)供應(yīng)商編號(hào)…供應(yīng)商供應(yīng)商編號(hào)…圖4.數(shù)據(jù)庫邏輯構(gòu)造圖7.4數(shù)據(jù)庫物理設(shè)計(jì)7.4.1表、視圖匯總視圖/表名類型闡明Admin基本表集中保存系統(tǒng)顧客帳號(hào)、密碼Book基本表集中存儲(chǔ)書目信息員工表基本表存儲(chǔ)員工資料供應(yīng)商基本表供應(yīng)商資料會(huì)員表基本表會(huì)員資料會(huì)員政策基本表會(huì)員原則及優(yōu)惠政策進(jìn)書記錄基本表進(jìn)書歷史記錄客戶反饋基本表客戶反饋信息售書記錄基本表售書歷史記錄書店簡介基本表書店簡介圖書分類基本表圖書類別圖書進(jìn)價(jià)表基本表圖書進(jìn)價(jià)列表退貨記錄基本表退貨歷史記錄讀者查詢查詢提供應(yīng)所有顧客書目查詢界面基本記錄查詢基本記錄分析進(jìn)書查詢查詢進(jìn)書記錄查詢,含進(jìn)書記錄售書查詢查詢圖書銷售記錄查詢售書記錄查詢圖書銷售記錄記錄退貨查詢查詢退貨記錄查詢退貨記錄查詢退貨記錄員工信息查詢員工信息查詢庫存記錄查詢既有庫存記錄反饋信息查詢客戶反饋信息查詢7.4.2各表、視圖設(shè)計(jì)詳解[闡明]:空缺位置表達(dá)無規(guī)定,主鍵在約束欄注明。基本表:[Admin]字段類型長度格式約束顧客ID文本250主鍵顧客密碼文本250顧客身份文本250基本表:[Book]字段類型長度格式約束圖書編號(hào)文本250主鍵圖書分類號(hào)文本150書名文本255叢書文本150作者文本255出版社文本255版次文本150ISBN文本250定價(jià)貨幣庫存量數(shù)字(整型)內(nèi)容簡介備注核心詞文本255出版日期文本150入庫時(shí)間日期/時(shí)間長日期Now()基本表:[供應(yīng)商]字段類型長度格式約束供應(yīng)商編號(hào)文本250主鍵供應(yīng)商文本255地址文本255網(wǎng)址文本255聯(lián)系人文本255電話文本50傳真文本150電子郵件文本150單位簡介備注基本表:[會(huì)員表]字段類型長度格式約束會(huì)員卡號(hào)文本50主鍵會(huì)員級(jí)別文本50姓名文本150性別文本50地址文本250單位文本250電話文本50電子郵件文本150人生格言備注注冊日期日期/時(shí)間長日期基本表:[會(huì)員政策]字段類型長度格式約束會(huì)員級(jí)別文本50主鍵會(huì)員原則數(shù)字(整型)打折文本50贈(zèng)送禮物文本250備注備注基本表:[進(jìn)書記錄]字段類型長度格式約束ID自動(dòng)編號(hào)(長整型)主鍵供應(yīng)商編號(hào)文本250圖書編號(hào)文本250數(shù)量數(shù)字(長整型)單價(jià)貨幣折扣數(shù)字(單精度型)金額貨幣進(jìn)書日期日期/時(shí)間長日期備注備注基本表:[客戶反饋]字段類型長度格式約束ID自動(dòng)編號(hào)(長整型)主鍵姓名文本150身份文本50性別文本50單位文本255地址文本255電子郵件文本150反饋信息備注反饋日期日期/時(shí)間長日期基本表:[售書記錄]字段類型長度格式約束ID自動(dòng)編號(hào)(長整型)主鍵圖書編號(hào)文本250數(shù)量數(shù)字(整型)會(huì)員卡號(hào)文本250實(shí)際打折數(shù)字(單精度型)實(shí)收金額貨幣日期文本50長日期備注備注基本表:[書店簡介]字段類型長度格式約束書店名稱文本255主鍵地址文本255網(wǎng)址文本255聯(lián)系人文本150電話文本50手機(jī)數(shù)字(長整型)電子郵件文本150書店簡介備注備注備注基本表:[圖書分類]字段類型長度格式約束圖書分類號(hào)文本150主鍵圖書分類文本250所屬父類編號(hào)文本150基本表:[圖書進(jìn)價(jià)表]字段類型長度格式約束圖書編號(hào)文本150主鍵進(jìn)價(jià)貨幣進(jìn)書日期日期/時(shí)間長日期基本表:[退貨記錄]字段類型長度格式約束ID自動(dòng)編號(hào)(長整型)主鍵供應(yīng)商編號(hào)文本250圖書編號(hào)文本250進(jìn)價(jià)貨幣退貨數(shù)量數(shù)字(整型)金額貨幣退貨因素備注退貨日期日期/時(shí)間長日期備注備注基本表:[員工表]字段類型長度格式約束員工帳號(hào)文本250主鍵姓名文本150性別文本50地址文本255電話文本50手機(jī)文本150電子郵件文本150人生格言備注創(chuàng)立日期日期/時(shí)間長日期Now()視圖:[基本記錄]圖5.基本記錄視圖構(gòu)造視圖:[讀者查詢]圖6.讀者查詢視圖構(gòu)造視圖:[退貨記錄]圖7.退貨記錄視圖構(gòu)造視圖:[售書記錄]圖8.售書記錄視圖構(gòu)造視圖:[售書查詢]圖9.售書查詢視圖構(gòu)造注:其她視圖構(gòu)造:[略]。八、軟件體系構(gòu)造設(shè)計(jì)闡明書8.1系統(tǒng)概述在單機(jī)環(huán)境下進(jìn)行系統(tǒng)安全考慮,有必要進(jìn)行顧客權(quán)限劃分與控制,因而系統(tǒng)在總體上應(yīng)包括安全子系統(tǒng)之下各類顧客工作環(huán)境。顧客權(quán)限合理劃分與有效控制是本系統(tǒng)體系構(gòu)造設(shè)計(jì)核心。8.2設(shè)計(jì)約束系統(tǒng)將實(shí)現(xiàn)人員、物流全面管理,而物流管理是系統(tǒng)核心部件,如何實(shí)現(xiàn)兩者共存,互不干擾,是本系統(tǒng)設(shè)計(jì)難點(diǎn)。本系統(tǒng)必要實(shí)現(xiàn)對(duì)顧客權(quán)限有效合理控制。8.3設(shè)計(jì)方略由于所有物流都需要有人員活動(dòng)才可以發(fā)生,因而,我決定采用一種“人員活動(dòng)帶動(dòng)物流”方略來解決人員管理與物流管理統(tǒng)一管理問題。這個(gè)想法是模仿現(xiàn)實(shí)而來,例如說,只有采購人員進(jìn)行了“采購”或“進(jìn)書”活動(dòng),才會(huì)引起“入庫登記”或“新書入庫”這個(gè)物流。8.4系統(tǒng)概要設(shè)計(jì)闡明書8.4.1圖例闡明過程、模塊1.解決過程:過程、模塊數(shù)據(jù)表2.數(shù)據(jù)存儲(chǔ):數(shù)據(jù)表決策3.決策4.數(shù)據(jù)流:(單向)5.數(shù)據(jù)流:(雙向)實(shí)體實(shí)體6.外部實(shí)體:數(shù)據(jù)表7.帶有變動(dòng)歷史數(shù)據(jù)存儲(chǔ):數(shù)據(jù)表8.4.2系統(tǒng)總體構(gòu)造圖登陸驗(yàn)證登陸驗(yàn)證會(huì)員政策員工管理書店概況記錄分析安全子系統(tǒng)權(quán)限控制身份鑒別會(huì)員政策員工管理書店概況記錄分析安全子系統(tǒng)權(quán)限控制身份鑒別經(jīng)理子系統(tǒng)經(jīng)理子系統(tǒng)宛楓書社圖書管理系統(tǒng)宛楓書社圖書管理系統(tǒng)基本記錄退貨記錄庫存記錄進(jìn)貨記錄銷售記錄基本記錄退貨記錄庫存記錄進(jìn)貨記錄銷售記錄進(jìn)貨子系統(tǒng)庫存管理退貨子系統(tǒng)進(jìn)貨子系統(tǒng)庫存管理退貨子系統(tǒng)書目管理入庫登記供應(yīng)商管理倉庫管理員子系統(tǒng)書目管理入庫登記供應(yīng)商管理倉庫管理員子系統(tǒng)刪除帳號(hào)修改資料創(chuàng)立帳號(hào)銷售記錄會(huì)員管理銷售子系統(tǒng)刪除帳號(hào)修改資料創(chuàng)立帳號(hào)銷售記錄會(huì)員管理銷售子系統(tǒng)售書員子系統(tǒng)售書員子系統(tǒng)購書記錄修改密碼個(gè)人資料購書記錄修改密碼個(gè)人資料會(huì)員子系統(tǒng)會(huì)員子系統(tǒng)信息反饋會(huì)員注冊書目檢索信息反饋會(huì)員注冊書目檢索游客子系統(tǒng)游客子系統(tǒng)圖10.系統(tǒng)總體構(gòu)造圖8.4.3銷售子系統(tǒng)流程圖售書員售書員BookBook會(huì)員表選取圖書選取會(huì)員會(huì)員表選取圖書選取會(huì)員會(huì)員表圖書銷售優(yōu)惠政策會(huì)員表圖書銷售優(yōu)惠政策售書記錄售書記錄圖11.銷售子系統(tǒng)流程圖8.4.4進(jìn)貨子系統(tǒng)流程圖倉管員倉管員選取供應(yīng)商供應(yīng)商選取供應(yīng)商供應(yīng)商修改資料供應(yīng)商登記修改資料供應(yīng)商登記選取品種供應(yīng)商供應(yīng)商選取品種供應(yīng)商供應(yīng)商添加類別添加品種添加類別添加品種BookBook入庫登記修改資料圖書分類入庫登記修改資料圖書分類BookBook圖書進(jìn)價(jià)表進(jìn)貨記錄圖書進(jìn)價(jià)表進(jìn)貨記錄圖12.進(jìn)貨子系統(tǒng)流程圖8.4.5退貨子系統(tǒng)流程圖選取供應(yīng)商倉管員供應(yīng)商選取品種退貨記錄退貨登記Book進(jìn)貨記錄選取供應(yīng)商倉管員供應(yīng)商選取品種退貨記錄退貨登記Book進(jìn)貨記錄圖13.退貨子系統(tǒng)流程圖8.5系統(tǒng)詳細(xì)設(shè)計(jì)闡明書8.5.1系統(tǒng)模塊匯總模塊名類型原型或聲明模塊闡明CheckUser子程序PublicSubCheckUser(userIDAsString,passwdAsString)顧客帳號(hào)、密碼驗(yàn)證和身份鑒別LogOff子程序PublicSubLogOff()注銷模塊Sys_exit子程序PublicSubSys_exit()系統(tǒng)退出摸塊Form_Load子程序PrivateSubForm_Load()初始化模塊,連接數(shù)據(jù)庫GetHYDaZhe函數(shù)PublicFunctionGetHYDaZhe(bianHaoAsString)AsString提取會(huì)員政策會(huì)員優(yōu)惠辦法GetKuCun函數(shù)PublicFunctionGetKuCun(bianHaoAsString)AsString獲取、檢查圖書既有庫存量HYShengJi函數(shù)PublicFunctionHYShengJi(HYKaHaoAsString)AsBoolean會(huì)員升級(jí)維護(hù)CmdSellBook_Click子程序PrivateSubCmdSellBook_Click()圖書銷售模塊checkGYSID函數(shù)PublicFunctioncheckGYSID(UIDAsString)AsBoolean檢查數(shù)據(jù)表主鍵,避免插入錯(cuò)誤checkFenLei函數(shù)PublicFunctioncheckFenLei(UIDAsString)AsBoolean檢測圖書分類與否已經(jīng)存在CmdNewFenLei_Click子程序PrivateSubCmdNewFenLei_Click()創(chuàng)立類別checkUserID函數(shù)PublicFunctioncheckUserID(UIDAsString)AsBoolean檢測顧客帳號(hào)與否存在CmdChgPass_Click子程序PrivateSubCmdChgPass_Click()修改密碼CmdRegMe_Click子程序PrivateSubCmdRegMe_Click()創(chuàng)立員工、會(huì)員帳號(hào)GetJinJia函數(shù)PublicFunctionGetJinJia(bianHaoAsString)AsString提取圖書進(jìn)價(jià)CmdTH_Click子程序PrivateSubCmdTH_Click()退貨模塊CmdSaveContinue_Click子程序PrivateSubCmdSaveContinue_Click()供應(yīng)商信息登記注:其她模塊(略)8.5.2系統(tǒng)核心模塊詳解全局變量定義:'顧客身份標(biāo)志PublicUserShenFenAsString'登陸狀態(tài)PubliclogOKAsBoolean'顧客名PublicuserNameAsString'供應(yīng)商編號(hào)PublicGongYingShangIDAsString'供應(yīng)商PublicGongYingShangAsString'圖書編號(hào)PublicTuShuBianHaoAsString'定價(jià)PublicDingJiaAsString'書名PublicShuMingAsString'會(huì)員卡號(hào)PublicHuiYuanKaHaoAsString'會(huì)員姓名PublicHYXingMingAsString'會(huì)員級(jí)別PublicHYDengJiAsString模塊名:CheckUser原型:PublicSubCheckUser(userIDAsString,passwdAsString)代碼:PublicSubCheckUser(userIDAsString,passwdAsString)DimuserDBAsDatabaseDimuserRDAsRecordsetDimdbNameAsStringDimSTRSQLAsStringScreen.MousePointer=11OnErrorGoToerrEnddbName=App.PathIfRight(dbName,1)<>"\"ThendbName=dbName+"\"dbName=dbName+"DataBase\WFSSDataBase.mdb"STRSQL="select[顧客身份]from[Admin]where[顧客ID]="""&userID&"""and[顧客密碼]="""&passwd&""""'打開數(shù)據(jù)庫SetuserDB=DBEngine.Workspaces(0).OpenDatabase(dbName,F(xiàn)alse,True)'檢索顧客,驗(yàn)證密碼SetuserRD=userDB.OpenRecordset(STRSQL,dbOpenSnapshot)IfuserRD.RecordCount>0Then'設(shè)立顧客身份UserShenFen=userRD![顧客身份]'關(guān)閉數(shù)據(jù)庫userRD.CloseSetuserRD=NothinguserDB.CloseSetuserDB=Nothing'進(jìn)入顧客環(huán)境LoadFrmMainFrmMain.ShowUnloadFrmLogInlogOK=TrueuserName=userIDScreen.MousePointer=vbDefaultElse'關(guān)閉數(shù)據(jù)庫userRD.CloseSetuserRD=NothinguserDB.CloseSetuserDB=NothinglogOK=FalseScreen.MousePointer=vbDefaultMsgBox"顧客名或密碼錯(cuò)誤!請重新輸入!",vbOKOnly+vbExclamation,"登陸失敗"EndIfExitSuberrEnd:Screen.MousePointer=vbDefaultMsgBoxErr.Description,vbOKOnly+vbExclamation,"登陸錯(cuò)誤"logOK=FalseErr.Clear'關(guān)閉數(shù)據(jù)庫userRD.CloseSetuserRD=NothinguserDB.CloseSetuserDB=NothingExitSubEndSub模塊名:LogOff模塊原型:PublicSubLogOff()代碼:PublicSubLogOff()DimretValAsIntegerretVal=MsgBox("你擬定要注銷嗎?",vbOKCancel+vbQuestion,"注銷當(dāng)前顧客")IfretVal=vbCancelThenExitSubLoadFrmLogInFrmLogIn.ShowIfUserShenFen="經(jīng)理"ThenUnloadFrmAdminMainElseIfUserShenFen="倉庫管理員"ThenUnloadFrmCangGuanMainElseIfUserShenFen="售書員"ThenUnloadFrmBookSellerMainElseIfUserShenFen="會(huì)員"ThenUnloadFrmMemberMainElseUnloadFrmGuestMainEndIfUnloadFrmMainUserShenFen=""logOK=FalseEndSub模塊名:Sys_exit模塊原型:PublicSubSys_exit()代碼:PublicSubSys_exit()DimretValAsIntegerretVal=MsgBox("你擬定要退出嗎?",vbOKCancel+vbQuestion,"退出系統(tǒng)")IfretVal=vbCancelThenExitSubIfUserShenFen="經(jīng)理"ThenUnloadFrmAdminMainElseIfUserShenFen="倉庫管理員"ThenUnloadFrmCangGuanMainElseIfUserShenFen="售書員"ThenUnloadFrmBookSellerMainElseIfUserShenFen="會(huì)員"ThenUnloadFrmMemberMainElseUnloadFrmGuestMainEndIfUnloadFrmMainEndEndSub模塊名:Form_Load模塊原型:PrivateSubForm_Load()代碼:PrivateSubForm_Load()DimdbNameAsStringDimconnSTRAsStringOnErrorGoToerrEndChDirApp.PathdbName=App.PathIfRight(dbName,1)<>"\"ThendbName=dbName+"\"dbName=dbName+"DataBase\WFSSDataBase.mdb"connSTR="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="&dbName&";PersistSecurityInfo=False"Adodc1.ConnectionString=connSTRExitSuberrEnd:MsgBox"連接數(shù)據(jù)庫失敗!",vbOKOnly+vbExclamation,"打開數(shù)據(jù)庫出錯(cuò)"EndEndSub模塊名:GetHYDaZhe模塊原型:PublicFunctionGetHYDaZhe(bianHaoAsString)AsString代碼:PublicFunctionGetHYDaZhe(bianHaoAsString)AsStringOnErrorGoToerrEndIfbianHao="☆☆☆☆☆"ThenGetHYDaZhe="1"ExitFunctionEndIfAdodc1.CommandType=adCmdTextAdodc1.RecordSource="select[打折]from[會(huì)員政策]where[會(huì)員級(jí)別]="""&bianHao&""""Adodc1.RefreshIfAdodc1.Recordset.RecordCount>0ThenAdodc1.Recordset.MoveFirstGetHYDaZhe=Adodc1.Recordset!打折ElseMsgBox"會(huì)員政策數(shù)據(jù)丟失,請與經(jīng)理聯(lián)系!",vbOKOnly+vbExclamation,"檢索錯(cuò)誤"GetHYDaZhe="1"EndIfExitFunctionerrEnd:MsgBox"檢索數(shù)據(jù)庫出錯(cuò)!",vbOKOnly+vbExclamation,"檢索錯(cuò)誤"GetDingJia="未知"EndFunction模塊名:GetKuCun模塊原型:PublicFunctionGetKuCun(bianHaoAsString)AsString代碼:PublicFunctionGetKuCun(bianHaoAsString)AsStringOnErrorGoToerrEndAdodc1.CommandType=adCmdTextAdodc1.RecordSource="select[庫存量]from[Book]where[圖書編號(hào)]="""&bianHao&""""Adodc1.RefreshIfAdodc1.Recordset.RecordCount>0ThenAdodc1.Recordset.MoveFirstGetKuCun=Adodc1.Recordset!庫存量ElseMsgBox"圖書資料數(shù)據(jù)丟失,請與經(jīng)理聯(lián)系!",vbOKOnly+vbExclamation,"檢索錯(cuò)誤"GetKuCun="0"EndIfExitFunctionerrEnd:MsgBox"檢索數(shù)據(jù)庫出錯(cuò)!",vbOKOnly+vbExclamation,"檢索錯(cuò)誤"GetDingJia="未知"EndFunction模塊名:HYShengJi模塊原型:PublicFunctionHYShengJi(HYKaHaoAsString)AsBoolean代碼:PublicFunctionHYShengJi(HYKaHaoAsString)AsBooleanOnErrorGoToerrEndDimBiaoZhunAsIntegerDimSUMBookAsIntegerIfHYKaHao="Guest"ThenHYShengJi=FalseExitFunctionEndIfBeginTransAdodc1.CommandType=adCmdTextAdodc1.RecordSource="selectsum([實(shí)收金額])as[總金額]from[售書記錄]where[會(huì)員卡號(hào)]="""&HYKaHao&""""Adodc1.RefreshIfAdodc1.Recordset.RecordCount>0ThenAdodc1.Recordset.MoveFirstSUMBook=CInt(Adodc1.Recordset!總金額)ElseSUMBook=0EndIfAdodc1.CommandType=adCmdTextAdodc1.RecordSource="select[會(huì)員原則]from[會(huì)員政策]where[會(huì)員級(jí)別]='★☆☆☆☆'"Adodc1.RefreshAdodc1.Recordset.MoveFirstBiaoZhun=CInt(Adodc1.Recordset!會(huì)員原則)IfSUMBook>=BiaoZhunThenAdodc1.CommandType=adCmdTextAdodc1.RecordSource="select*from[會(huì)員表]where[會(huì)員卡號(hào)]="""&HYKaHao&""""Adodc1.RefreshIfAdodc1.Recordset.RecordCount>0ThenAdodc1.Recordset.MoveFirstAdodc1.Recordset!會(huì)員級(jí)別="★☆☆☆☆"Adodc1.Recordset.UpdateEndIfEndIfAdodc1.CommandType=adCmdTextAdodc1.RecordSource="select[會(huì)員原則]from[會(huì)員政策]where[會(huì)員級(jí)別]='★★☆☆☆'"Adodc1.RefreshAdodc1.Recordset.MoveFirstBiaoZhun=CInt(Adodc1.Recordset!會(huì)員原則)IfSUMBook>=BiaoZhunThenAdodc1.CommandType=adCmdTextAdodc1.RecordSource="select*from[會(huì)員表]where[會(huì)員卡號(hào)]="""&HYKaHao&""""Adodc1.RefreshIfAdodc1.Recordset.RecordCount>0ThenAdodc1.Recordset.MoveFirstAdodc1.Recordset!會(huì)員級(jí)別="★★☆☆☆"Adodc1.Recordset.UpdateEndIfEndIfAdodc1.CommandType=adCmdTextAdodc1.RecordSource="select[會(huì)員原則]from[會(huì)員政策]where[會(huì)員級(jí)別]='★★★☆☆'"Adodc1.RefreshAdodc1.Recordset.MoveFirstBiaoZhun=CInt(Adodc1.Recordset!會(huì)員原則)IfSUMBook>=BiaoZhunThenAdodc1.CommandType=adCmdTextAdodc1.RecordSource="select*from[會(huì)員表]where[會(huì)員卡號(hào)]="""&HYKaHao&""""Adodc1.RefreshIfAdodc1.Recordset.RecordCount>0ThenAdodc1.Recordset.MoveFirstAdodc1.Recordset!會(huì)員級(jí)別="★★★☆☆"Adodc1.Recordset.UpdateEndIfEndIfAdodc1.CommandType=adCmdTextAdodc1.RecordSource="select[會(huì)員原則]from[會(huì)員政策]where[會(huì)員級(jí)別]='★★★★☆'"Adodc1.RefreshAdodc1.Recordset.MoveFirstBiaoZhun=CInt(Adodc1.Recordset!會(huì)員原則)IfSUMBook>=BiaoZhunThenAdodc1.CommandType=adCmdTextAdodc1.RecordSource="select*from[會(huì)員表]where[會(huì)員卡號(hào)]="""&HYKaHao&""""Adodc1.RefreshIfAdodc1.Recordset.RecordCount>0ThenAdodc1.Recordset.MoveFirstAdodc1.Recordset!會(huì)員級(jí)別="★★★★☆"Adodc1.Recordset.UpdateEndIfEndIfAdodc1.CommandType=adCmdTextAdodc1.RecordSource="select[會(huì)員原則]from[會(huì)員政策]where[會(huì)員級(jí)別]='★★★★★'"Adodc1.RefreshAdodc1.Recordset.MoveFirstBiaoZhun=CInt(Adodc1.Recordset!會(huì)員原則)IfSUMBook>=BiaoZhunThenAdodc1.CommandType=adCmdTextAdodc1.RecordSource="select*from[會(huì)員表]where[會(huì)員卡號(hào)]="""&HYKaHao&""""Adodc1.RefreshIfAdodc1.Recordset.RecordCount>0ThenAdodc1.Recordset.MoveFirstAdodc1.Recordset!會(huì)員級(jí)別="★★★★★"Adodc1.Recordset.UpdateEndIfEndIfCommitTransHYShengJi=FalseExitFunctionerrEnd:RollbackHYShengJi=TrueScreen.MousePointer=vbDefaultMsgBox"檢查會(huì)員與否應(yīng)升級(jí)時(shí)操作失敗!",vbOKOnly+vbExclamation,"圖書銷售"CmdOK.Enabled=TrueEndFunction模塊名:CmdSellBook_Click模塊原型:PrivateSubCmdSellBook_Click()代碼:PrivateSubCmdSellBook_Click()OnErrorGoToerrEndDimQDAsIntegerCmdSellBook.Enabled=FalseIfTxtShuLiang.Text=""ThenMsgBox"請輸入交易數(shù)量!",vbOKOnly+vbExclamation,"填寫數(shù)量"TxtShuLiang.SetFocusCmdSellBook.Enabled=TrueExitSubEndIfIfGetKuCun(TuShuBianHao)<=0OrGetKuCun(TuShuBianHao)<TxtShuLiang.TextThenMsgBox"該類圖書庫存量局限性,請與倉庫管理員聯(lián)系!",vbOKOnly+vbExclamation,"庫存局限性"TxtShuLiang.SetFocusCmdSellBook.Enabled=TrueExitSubEndIfIfTxtZheKou.Text=""ThenMsgBox"請輸入交易實(shí)際折扣率!",vbOKOnly+vbExclamation,"填寫折扣"TxtZheKou.SetFocusCmdSellBook.Enabled=TrueExitSubEndIfIfTxtZheKou.Text<=0OrTxtZheKou.Text>1ThenMsgBox"實(shí)際折扣率填寫錯(cuò)誤!請?jiān)?與1之間選取.",vbOKOnly+vbExclamation,"填寫折扣"TxtZheKou.SetFocusCmdSellBook.Enabled=TrueExitSubEndIfIfTxtSJJinE.Text=""ThenMsgBox"請輸入交易實(shí)際金額!",vbOKOnly+vbExclamation,"填寫金額"TxtSJJinE.SetFocusCmdSellBook.Enabled=TrueExitSubEndIfIfTxtMemo.Text=""ThenTxtMemo.Text="無"QD=MsgBox("擬定入帳嗎?",vbOKCancel+vbQuestion,"確認(rèn)入帳")IfQD=vbCancelThenCmdSellBook.Enabled=TrueExitSubEndIf'售書入帳Screen.MousePointer=11BeginTransAdodc1.CommandType=adCmdTableAdodc1.RecordSource="售書記錄"Adodc1.RefreshAdodc1.Recordset.AddNewAdodc1.Recordset!圖書編號(hào)=TuShuBianHaoAdodc1.Recordset!數(shù)量=TxtShuLiang.TextAdodc1.Recordset!會(huì)員卡號(hào)=HuiYuanKaHaoAdodc1.Recordset!實(shí)際打折=TxtZheKou.TextAdodc1.Recordset!實(shí)收金額=TxtSJJinE.TextAdodc1.Recordset!日期=Year(Now)&"-"&Month(Now)&"-"&Day(Now)&"."Adodc1.Recordset!備注=TxtMemo.TextAdodc1.Recordset.UpdateAdodc1.CommandType=adCmdTextAdodc1.RecordSource="select*from[Book]where[圖書編號(hào)]="""&TuShuBianHao&""""Adodc1.RefreshIfAdodc1.Recordset.RecordCount>0ThenAdodc1.Recordset.MoveFirstAdodc1.Recordset!庫存量=Adodc1.Recordset!庫存量-TxtShuLiang.TextAdodc1.Recordset.UpdateElseRollbackScreen.MousePointer=vbDefaultMsgBox"圖書資料丟失,請與倉庫管理員聯(lián)系!",vbOKOnly+vbExclamation,"交易失敗"CmdSellBook.Enabled=TrueExitSubEndIfIfHYShengJi(HuiYuanKaHao)ThenRollbackCommitTransScreen.MousePointer=vbDefaultMsgBox"恭喜您,交易成功!",vbOKOnly+vbInformation,"交易成功"UnloadMeExitSuberrEnd:RollbackScreen.MousePointer=vbDefaultMsgBoxErr.Description,vbOKOnly+vbExclamation,"操作數(shù)據(jù)庫出錯(cuò)交易失敗"CmdSellBook.Enabled=TrueEndSub8.5.3系統(tǒng)模塊詳解模塊名:checkGYSID模塊原型:PublicFunctioncheckGYSID(UIDAsString)AsBoolean代碼:PublicFunctioncheckGYSID(UIDAsString)AsBooleanDimuserDBAsDatabaseDimuserRDAsRecordsetDimdbNameAsStringDimSTRSQLAsStringScreen.MousePointer=11OnErrorGoToerrEnddbName=App.PathIfRight(dbName,1)<>"\"ThendbName=dbName+"\"dbName=dbName+"DataBase\WFSSDataBase.mdb"STRSQL="select[圖書分類]from[圖書分類]where[圖書分類號(hào)]="""&UID&""""'打開數(shù)據(jù)庫SetuserDB=DBEngine.Workspaces(0).OpenDatabase(dbName,F(xiàn)alse,True)'檢索顧客,驗(yàn)證密碼SetuserRD=userDB.OpenRecordset(STRSQL,dbOpenSnapshot)IfuserRD.RecordCount>0Then'關(guān)閉數(shù)據(jù)庫userRD.CloseSetuserRD=NothinguserDB.CloseSetuserDB=NothingcheckGYSID=TrueScreen.MousePointer=vbDefaultElse'關(guān)閉數(shù)據(jù)庫userRD.CloseSetuserRD=NothinguserDB.CloseSetuserDB=NothingScreen.MousePointer=vbDefaultcheckGYSID=FalseEndIfExitFunctionerrEnd:Screen.MousePointer=vbDefaultMsgBoxErr.Description,vbOKOnly+vbExclamation,"創(chuàng)立類別"Err.Clear'關(guān)閉數(shù)據(jù)庫userRD.CloseSetuserRD=NothinguserDB.CloseSetuserDB=NothingEndFunction模塊名:checkFenLei模塊原型:PublicFunctioncheckFenLei(UIDAsString)AsBoolean代碼:PublicFunctioncheckFenLei(UIDAsString)AsBooleanDimuserDBAsDatabaseDimuserRDAsRecordsetDimdbNameAsStringDimSTRSQLAsStringScreen.MousePointer=11OnErrorGoToerrEnddbName=App.PathIfRight(dbName,1)<>"\"ThendbName=dbName+"\"dbName=dbName+"DataBase\WFSSDataBase.mdb"STRSQL="select[圖書分類]from[圖書分類]where[圖書分類]="""&UID&""""'打開數(shù)據(jù)庫SetuserDB=DBEngine.Workspaces(0).OpenDatabase(dbName,F(xiàn)alse,True)'檢索顧客,驗(yàn)證密碼SetuserRD=userDB.OpenRecordset(STRSQL,dbOpenSnapshot)IfuserRD.RecordCount>0Then'關(guān)閉數(shù)據(jù)庫userRD.CloseSetuserRD=NothinguserDB.CloseSetuserDB=NothingcheckFenLei=TrueScreen.MousePointer=vbDefaultElse'關(guān)閉數(shù)據(jù)庫userRD.CloseSetuserRD=NothinguserDB.CloseSetuserDB=NothingScreen.MousePointer=vbDefaultcheckFenLei=FalseEndIfExitFunctionerrEnd:Screen.MousePointer=vbDefaultMsgBoxErr.Description,vbOKOnly+vbExclamation,"創(chuàng)立類別"Err.Clear'關(guān)閉數(shù)據(jù)庫userRD.CloseSetuserRD=NothinguserDB.CloseSetuserDB=NothingEndFunction模塊名:CmdNewFenLei_Click模塊原型:PrivateSubCmdNewFenLei_Click()代碼:PrivateSubCmdNewFenLei_Click()OnErrorGoToerrEndIfTxtBianHao.Text=""ThenMsgBox"請?zhí)顚憟D書分類號(hào)!",vbOKOnly+vbExclamation,"創(chuàng)立分類"TxtBianHao.SetFocusExitSubEndIfIfTxtLeiBie.Text=""ThenMsgBox"請?zhí)顚憟D書分類名稱!",vbOKOnly+vbExclamation,"創(chuàng)立分類"TxtLeiBie.SetFocusExitSubEndIfIfcheckFenLei(TxtLeiBie.Text)ThenMsgBox"圖書分類名稱不唯一,請另選一種!",vbOKOnly+vbExclamation,"創(chuàng)立分類"TxtLeiBie.SetFocusTxtLeiBie.SelStart=0TxtLeiBie.SelLength=Len(TxtLeiBie.Text)ExitSubEndIfIfComboFuLei.Text<>""AndComboFuLei.Text<>"選取父類"ThenIfNotcheckFenLei(ComboFuLei.Text)ThenMsgBox"所選父類不存在!請重試!",vbOKOnly+vbExclamation,"選取父類"ComboFuLei.SetFocusExitSubEndIfAdodc1.CommandType=adCmdTextAdodc1.RecordSource="select[圖書分類號(hào)]from[圖書分類]where[圖書分類號(hào)]=[所屬父類編號(hào)]and[圖書分類]="""&ComboFuLei.Text&""""Adodc1.RefreshAdodc1.Recordset.MoveFirstFuLeiBianHao=Adodc1.Recordset!圖書分類號(hào)EndIfIfcheckGYSID(TxtBianHao.Text)ThenMsgBox"圖書分類編號(hào)不唯一,請另選一種!",vbOKOnly+vbExclamation,"創(chuàng)立分類"TxtBianHao.SetFocusTxtBianHao.SelStart=0TxtBianHao.SelLength=Len(TxtBianHao.Text)ExitSubEndIfIfFuLeiBianHao=""ThenFuLeiBianHao=TxtBianHao.TextAdodc1.CommandType=adCmdTableAdodc1.RecordSource="圖書分類"Adodc1.RefreshAdodc1.Recordset.AddNewAdodc1.Recordset!圖書分類號(hào)=TxtBianHao.TextAdodc1.Recordset!圖書分類=TxtLeiBie.TextAdodc1.Recordset!所屬父類編號(hào)=FuLeiBianHaoAdodc1.Recordset.UpdateMsgBox"創(chuàng)立分類成功!",vbOKOnly+vbInformation,"創(chuàng)立分類"TxtBianHao.Text=""TxtLeiBie.Text=""ComboFuLei.Text="選取父類"FuLeiBianHao=""TxtFuLei.Text=""TxtBianHao.SetFocusExitSuberrEnd:MsgBox"更新數(shù)據(jù)庫失敗!",vbOKOnly+vbExclamation,"數(shù)據(jù)庫出錯(cuò)"EndSub模塊名:checkUserID模塊原型:PublicFunctioncheckUserID(UIDAsString)AsBoolean代碼:PublicFunctioncheckUserID(UIDAsString)AsBooleanDimuserDBAsDatabaseDimuserRDAsRecordsetDimdbNameAsStringDimSTRSQLAsStringScreen.MousePointer=11OnErrorGoToerrEnddbName=App.PathIfRight(dbName,1)<>"\"ThendbName=dbName+"\"dbName=dbName+"DataBase\WFSSDataBase.mdb"STRSQL="select[顧客身份]from[Admin]where[顧客ID]="""&UID&""""'打開數(shù)據(jù)庫SetuserDB=DBEngine.Workspaces(0).OpenDatabase(dbName,F(xiàn)alse,True)'檢索顧客,驗(yàn)證密碼SetuserRD=userDB.OpenRecordset(STRSQL,dbOpenSnapshot)IfuserRD.RecordCount>0Then'關(guān)閉數(shù)據(jù)庫userRD.CloseSetuserRD=NothinguserDB.CloseSetuserDB=NothingcheckUserID=TrueScreen.MousePointer=vbDefaultElse'關(guān)閉數(shù)據(jù)庫userRD.CloseSetuserRD=NothinguserDB.CloseSetuserDB=NothingScreen.MousePointer=vbDefaultcheckUserID=FalseEndIfExitFunctionerrEnd:Screen.MousePointer=vbDefaultMsgBoxErr.Description,vbOKOnly+vbExclamation,"修改密碼"Err.Clear'關(guān)閉數(shù)據(jù)庫userRD.CloseSetuserRD=NothinguserDB.CloseSetuserDB=NothingEndFunction模塊名:CmdChgPass_Click模塊原型:PrivateSubCmdChgPass_Click()代碼:PrivateSubCmdChgPass_Click()OnErrorGoToerrEndIfTxtUserID.Text=""ThenMsgBox"請輸入你帳號(hào)!",vbOKOnly+vbExclamation,"更改密碼"TxtUserID.SetFocusExitSubEndIfIfTxtPasswd.Text=""ThenMsgBox"請輸入你舊密碼!",vbOKOnly+vbExclamation,"更改密碼"TxtPasswd.SetFocusExitSubEndIfIfTxtNewPasswd.Text=""ThenMsgBox"請輸入你新密碼!",vbOKOnly+vbExclamation,"更改密碼"TxtNewPasswd.SetFocusExitSubEndIfIfTxtNewPasswd.Text<>TxtNewPasswdC.TextThenMsgBox"密碼輸入不一致,請重試!",vbOKOnly+vbExclamation,"更改密碼"TxtPasswd.Text=""TxtNewPasswd.Text=""TxtNewPasswdC.Text=""TxtPasswd.SetFocusExitSubEndIfIfcheckUserID(TxtUserID.Text)ThenAdodc1.CommandType=adCmdTextAdodc1.RecordSource="select*from[Admin]where[顧客密碼]="""&TxtPasswd.Text&"""and[顧客ID]="""&TxtUserID.Text&""""Adodc1.RefreshIfAdodc1.Recordset.RecordCount>0ThenAdodc1.Recordset.MoveFirstAdodc1.Recordset!顧客密碼=TxtNewPasswd.TextAdodc1.Recordset.UpdateElseMsgBox"顧客密碼驗(yàn)證錯(cuò)誤!你無權(quán)修改密碼!",vbOKOnly+vbExclamation,"密碼錯(cuò)誤"TxtPass

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論