版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、摘 要在當(dāng)今社會(huì),隨著計(jì)算機(jī)的發(fā)展及網(wǎng)絡(luò)技術(shù)的應(yīng)用,日常管理工作應(yīng)該從以前繁瑣的事務(wù)中解放出來(lái),從而提高了工作效率。目前在大的書(shū)店應(yīng)有一整套比較完整的信息管理系統(tǒng),而在一般小型的書(shū)店中大部分工作還是進(jìn)行著手工管理,工作效率很低,并且不能及時(shí)了解書(shū)店各類(lèi)圖書(shū)的庫(kù)存,讀者需求的圖書(shū)難以在短時(shí)間里找到圖書(shū)的入庫(kù)和更新比較麻煩等,不便于動(dòng)態(tài)及時(shí)調(diào)整圖書(shū)結(jié)構(gòu)。同時(shí)由于不可避免的人為因素,造成數(shù)據(jù)的遺漏誤報(bào)等。為了更好地適應(yīng)當(dāng)前書(shū)店的銷(xiāo)售需求,緩解手工管理存在的弊端,開(kāi)發(fā)了書(shū)店管理系統(tǒng),該系統(tǒng)向用戶(hù)提供的服務(wù)將在傳統(tǒng)的“入庫(kù)-銷(xiāo)售-盤(pán)點(diǎn)”基礎(chǔ)上,進(jìn)一步提供全方位的信息服務(wù)。根據(jù)小型書(shū)店的規(guī)模和經(jīng)濟(jì)能力,本
2、系統(tǒng)具有書(shū)店管理系統(tǒng)的基本功能,如圖書(shū)管理入庫(kù)管理銷(xiāo)售管理綜合查詢(xún)系統(tǒng)管理等,并且界面簡(jiǎn)單操作簡(jiǎn)便。作為一種該研究方向的實(shí)踐性探索,本圖書(shū)銷(xiāo)售管理系統(tǒng)旨在提供一個(gè)可以操作的,方便查詢(xún),易于修改的輔助管理系統(tǒng),以滿(mǎn)足當(dāng)前小型書(shū)店在管理實(shí)踐和業(yè)務(wù)操作中的具體需求。關(guān)鍵詞 書(shū)店管理 管理系統(tǒng) 輔助管理 軟件開(kāi)發(fā)abstractthis thesis with practical application is concerning about developing programme of the managing system in bookshops.nowadays, with rapid de
3、veloping of computers and applying of network technology, in order to make a great difference in efficiency and productivity, daily management should be freed from nagging formalities and other unnecessary items. at present, a series of information managing system which is complete and well-working
4、enough has been applied to large bookshops, while for some smaller ones most of work has been done by hand, which is incurring lower efficiency and higher energy-cost. worse still, it is quite impossible for them to access to updated information on stock and reserve, being unable restructure promptl
5、y and dynamically since it is very hard to update and purchase new books and periodicals. in addition, readers cannot find out what they need as soon as possible. on the other hand, inevitably, the loss of data and imprecise delivery is rising. considering a strong desire to meet the need of sales a
6、nd reliving heavy pressure from management by hand, sales managing system has been developed to provide clients with all-levels of information services, helping it be transferred from traditional services: “purchasesalesinventory” to new concept of information services.according to the running scale
7、s and the capacity of economy, this system has basic functions such as books management, purchasing management, sales management, system management, comprehensive search, and so on. moreover, it shows simple interface and processing convenience. as an explore with practical meaning, the aim of this
8、system is to offer a user-friendly and supplementary managing system to satisfy detailed needs of managing practice and business process. key words developing programme; sales managing system ;books management; business process ;managing system in bookshops.i目錄摘 要i0 前言11 需求分析21.1系統(tǒng)需求21.2功能需求22 性能需求3
9、3 總體設(shè)計(jì)44 詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)84.1系統(tǒng)主控平臺(tái)84.2權(quán)限設(shè)置模塊94.3權(quán)限設(shè)置模塊的實(shí)現(xiàn)94.4 圖書(shū)銷(xiāo)售模塊104.5圖書(shū)入庫(kù)模塊194.6圖書(shū)信息設(shè)置模塊21結(jié)論39致謝40參 考 文 獻(xiàn)41遼寧科技學(xué)院繼續(xù)教育學(xué)院畢業(yè)設(shè)計(jì)(論文)0 前言在當(dāng)今社會(huì),隨著計(jì)算機(jī)的發(fā)展及網(wǎng)絡(luò)技術(shù)的應(yīng)用,日常管理工作應(yīng)該從以前繁瑣的事務(wù)中解放出來(lái),從而提高了工作效率。目前在大的書(shū)店已經(jīng)有一整套比較完整的信息管理系統(tǒng),而在一般小型的書(shū)店中大部分工作還是進(jìn)行著手工管理,工作效率很低,并且不能及時(shí)了解書(shū)店各類(lèi)圖書(shū)的庫(kù)存,讀者需求的圖書(shū)難以在短時(shí)間里找到,圖書(shū)的入庫(kù)和更新比較麻煩等,不便于動(dòng)態(tài)及時(shí)調(diào)整圖書(shū)結(jié)
10、構(gòu)。同時(shí)由于不可避免的人為因素,造成數(shù)據(jù)的遺漏,誤報(bào)等。使用計(jì)算機(jī)對(duì)書(shū)店圖書(shū)信息進(jìn)行管理,具有手工所無(wú)法比擬的優(yōu)點(diǎn)。例如:檢索迅速查找方便可靠性高保密性好壽命長(zhǎng)成本低高效率對(duì)進(jìn)書(shū)有較好的預(yù)測(cè)性等。為了更好地適應(yīng)當(dāng)前書(shū)店的銷(xiāo)售需求,緩解手工管理存在的弊端,開(kāi)發(fā)了書(shū)店管理系統(tǒng),該系統(tǒng)向用戶(hù)提供的服務(wù)將在傳統(tǒng)的“入庫(kù)-銷(xiāo)售-盤(pán)點(diǎn)”基礎(chǔ)上,進(jìn)一步提供全方位的信息服務(wù)。它具有以下幾個(gè)特點(diǎn):1、可以存儲(chǔ)店中所有圖書(shū)的資料以及庫(kù)存情況,具有安全,高效的特性。2、只需一到二名檔案錄入員即可操作系統(tǒng),節(jié)省大量人力。3、可以迅速查到所需信息。4、系統(tǒng)對(duì)軟,硬件方面的需求不高,軟件要求易學(xué),容易掌握,可以很簡(jiǎn)單方便
11、地管理圖書(shū)信息。硬件的配置要求不能太高,這樣可以很好的適應(yīng)當(dāng)前的各類(lèi)書(shū)店??傊瑘D書(shū)銷(xiāo)售管理系統(tǒng)旨在提供一個(gè)可以操作的,方便查詢(xún),易于修改的輔助管理系統(tǒng)。同時(shí)提供了系統(tǒng)智能輔助與用戶(hù)選擇兩種方式,提高查詢(xún)效率。1 需求分析 1.1系統(tǒng)需求 書(shū)店管理系統(tǒng)需要滿(mǎn)足來(lái)自三個(gè)方面需求:第一,書(shū)店工作人員通過(guò)計(jì)算機(jī)來(lái)管理各類(lèi)圖書(shū),進(jìn)行圖書(shū)分類(lèi)編號(hào),調(diào)整圖書(shū)結(jié)構(gòu),增加圖書(shū)庫(kù)存,適應(yīng)讀者的需求。第二,工作人員對(duì)讀者的需求情況能作好全面的掌握,及時(shí)得到歷史銷(xiāo)售記錄。第三,也是書(shū)店的核心工作,對(duì)圖書(shū)的銷(xiāo)售管理。1.2功能需求基于系統(tǒng)需求分析,該系統(tǒng)需要實(shí)現(xiàn)以下基本功能:1.2.1權(quán)限設(shè)置本系統(tǒng)的使用用戶(hù)分兩種:
12、管理員和普通用戶(hù)。管理員具有使用本系統(tǒng)的所有功能,而普通用戶(hù)是需要具有日常書(shū)店的管理功能即可。用戶(hù)權(quán)限的設(shè)置通過(guò)用戶(hù)登陸界面的輸入來(lái)進(jìn)行。1.2.2圖書(shū)銷(xiāo)售圖書(shū)管理人員通過(guò)此模塊來(lái)銷(xiāo)售各類(lèi)圖書(shū)并對(duì)銷(xiāo)售情況進(jìn)行記錄,記錄的信息包括圖書(shū)銷(xiāo)售的數(shù)量,價(jià)格,折扣比例等。在進(jìn)行銷(xiāo)售圖書(shū)時(shí),輸入圖書(shū)的編號(hào),系統(tǒng)就可以搜索到該圖書(shū)編號(hào)對(duì)應(yīng)的圖書(shū)信息,然后列出該圖書(shū)銷(xiāo)售是需要的基本信息,書(shū)名,出版社價(jià)格等。銷(xiāo)售可以輸入折扣數(shù)以便打折,在購(gòu)買(mǎi)相同的多本書(shū)時(shí),可以直接輸入圖書(shū)數(shù)量,避免重復(fù)輸入圖書(shū)編號(hào)。同時(shí),也提供撤銷(xiāo)銷(xiāo)售記錄的功能,銷(xiāo)售員可以撤銷(xiāo)銷(xiāo)售時(shí)的上一條記錄。程序還能自動(dòng)統(tǒng)計(jì)讀者購(gòu)買(mǎi)的總金額,便于銷(xiāo)售員掌
13、握。1.2.3圖書(shū)入庫(kù)書(shū)店工作人員通過(guò)此模塊來(lái)管理各類(lèi)圖書(shū)庫(kù)存的數(shù)目。當(dāng)一批圖書(shū)入庫(kù)時(shí),只需要輸入圖書(shū)編號(hào)和圖書(shū)數(shù)量,程序?qū)⒆詣?dòng)更改庫(kù)存的圖書(shū)數(shù)量。使用的公式為:現(xiàn)有圖書(shū)庫(kù)存=原有圖書(shū)庫(kù)存 + 新入庫(kù)圖書(shū)數(shù)量。1.2.4圖書(shū)信息設(shè)置書(shū)店工作人員通過(guò)次模塊來(lái)管理各類(lèi)圖書(shū)信息,包括圖書(shū)信息的修改,刪除等。在進(jìn)行圖書(shū)的刪除時(shí),要首先彈出提示窗口讓用戶(hù)確認(rèn)是否刪除,只有在用戶(hù)確認(rèn)后才能夠進(jìn)行圖書(shū)的刪除。在進(jìn)行圖書(shū)的修改時(shí),根據(jù)用戶(hù)選定的書(shū)進(jìn)行修改,即列出所有用戶(hù)選定的信息,在這個(gè)基礎(chǔ)上進(jìn)行圖書(shū)信息的修改。1.2.5綜合查詢(xún)綜合查詢(xún)提供兩種功能,通過(guò)它可以查詢(xún)讀者所需要的圖書(shū)信息和銷(xiāo)售情況。圖書(shū)信息查詢(xún)
14、提供了用包括圖書(shū)編號(hào)和圖書(shū)名稱(chēng)來(lái)對(duì)圖書(shū)信息進(jìn)行查詢(xún)的各種查詢(xún)條件,讀者可以根據(jù)查詢(xún)方式和條件來(lái)進(jìn)行所需圖書(shū)的查詢(xún)。同時(shí),在查詢(xún)時(shí)還提供了進(jìn)行模糊查詢(xún)的功能,即該模塊能夠利用讀者輸入的非完整的查詢(xún)條件進(jìn)行查詢(xún),例如,讀者在書(shū)籍編號(hào)大查詢(xún)條件中輸入“06”,系統(tǒng)就能夠查出所有書(shū)籍編號(hào)包括“06”的圖書(shū),像“1006”,“0600”等。這樣更加方便了讀者的查詢(xún)。銷(xiāo)售查詢(xún)提供了按銷(xiāo)售的流水帳方式查詢(xún),查詢(xún)時(shí)可以得到一段時(shí)間圖書(shū)銷(xiāo)售情況。1.2.6系統(tǒng)設(shè)置包括圖書(shū)分類(lèi)設(shè)置,出版社設(shè)置和用戶(hù)管理等工作。在該模塊中工作人員可以進(jìn)行添加和刪除各類(lèi)圖書(shū)所屬分類(lèi)的名稱(chēng),圖書(shū)出版社,同時(shí)還可進(jìn)行系統(tǒng)用戶(hù)登陸的一些管
15、理,包括添加,刪除用戶(hù),更改用戶(hù)的登陸密碼等。1.2.7數(shù)據(jù)庫(kù)管理對(duì)現(xiàn)有數(shù)據(jù)庫(kù)進(jìn)行管理,包括數(shù)據(jù)庫(kù)備份和恢復(fù),以方便用戶(hù)對(duì)數(shù)據(jù)庫(kù)的管理和維護(hù)工作,提高管理的數(shù)據(jù)庫(kù)安全性。2 性能需求1.3.1硬件環(huán)境在最低配置的情況下,系統(tǒng)的性能往往不盡如人意,現(xiàn)在的硬件性能已經(jīng)相當(dāng)出色,而且價(jià)格也很便宜,因此通常給服務(wù)器配置高性能硬件。處理器:intel pentium ii 266 mx 或更高內(nèi)存: 64m硬盤(pán)空間:2 gb顯卡:svga顯示適配器1.3.2軟件環(huán)境操作系統(tǒng):windows 98/me/2000/xp數(shù)據(jù)庫(kù):microsoft access 20003 總體設(shè)計(jì)3.1基本設(shè)計(jì)概念和處理流
16、程本系統(tǒng)主要針對(duì)小型書(shū)店的規(guī)模小,手工處理繁瑣的情況,實(shí)現(xiàn)了書(shū)店日常管理的基本功能,操作簡(jiǎn)單方便上手快。另外,基于成本以及安全的考慮,假設(shè)本系統(tǒng)是一個(gè)相對(duì)封閉的單機(jī)運(yùn)行系統(tǒng),不提供于其它系統(tǒng)的實(shí)時(shí)數(shù)據(jù)交互。本系統(tǒng)采用visual c+ 6.0開(kāi)發(fā),采用microsoft access 2000 作為后臺(tái)數(shù)據(jù)庫(kù),在滿(mǎn)足需求的前提下,將系統(tǒng)對(duì)運(yùn)行環(huán)境的性能要求降到最低。系統(tǒng)基本流程是:用戶(hù)登陸-主界面-選擇各項(xiàng)功能。3.2系統(tǒng)層次模塊圖根據(jù)需求分析的結(jié)果,本系統(tǒng)主要?jiǎng)澐忠韵?個(gè)子模塊:權(quán)限驗(yàn)證圖書(shū)銷(xiāo)售圖書(shū)入庫(kù)圖書(shū)信息設(shè)置綜合查詢(xún)系統(tǒng)設(shè)置數(shù)據(jù)庫(kù)管理等主要的系統(tǒng)。如圖1所示。系統(tǒng)業(yè)務(wù)處理流程如圖2所示
17、。 (圖1) 書(shū)店管理系統(tǒng)主模塊用戶(hù)數(shù)據(jù)庫(kù)用戶(hù)信息錄入用戶(hù)設(shè)置系統(tǒng)設(shè)置出版社數(shù)據(jù)庫(kù)出版社信息錄入出版社設(shè)置圖書(shū)類(lèi)型數(shù)據(jù)庫(kù)圖書(shū)類(lèi)型設(shè)置圖書(shū)類(lèi)型錄入圖書(shū)信息錄入圖書(shū)數(shù)據(jù)庫(kù)圖書(shū)入庫(kù)或圖書(shū)信息設(shè)置銷(xiāo)售信息錄入圖書(shū)銷(xiāo)售數(shù)據(jù)庫(kù)圖書(shū)銷(xiāo)售綜合查詢(xún)輸出查詢(xún)結(jié)果銷(xiāo)售查詢(xún)輸出查詢(xún)結(jié)果圖書(shū)查詢(xún) (圖 2) 系統(tǒng)業(yè)務(wù)處理流程圖3.3數(shù)據(jù)庫(kù)設(shè)計(jì)鑒于odbc(open database connectivity)是用于數(shù)據(jù)庫(kù)訪(fǎng)問(wèn)的應(yīng)用最廣泛的應(yīng)用程序編程接口,它允許應(yīng)用程序使用相同的代碼訪(fǎng)問(wèn)不同的數(shù)據(jù)庫(kù)管理系統(tǒng)(dbms),本系統(tǒng)采用odbc的方式訪(fǎng)問(wèn)數(shù)據(jù)庫(kù)。 3.3.1數(shù)據(jù)庫(kù)介紹 access 2000數(shù)據(jù)庫(kù)管理系統(tǒng)是m
18、icrosoft office 的重要組成部分,適用于小型商務(wù)活動(dòng),用以存儲(chǔ)和管理商務(wù)活動(dòng)所需要的數(shù)據(jù)。access不僅是一個(gè)數(shù)據(jù)庫(kù),而且它具有強(qiáng)大的管理功能。3.3.2使用odbc數(shù)據(jù)庫(kù)接口訪(fǎng)問(wèn)數(shù)據(jù)庫(kù)odbc(open database connectivity, 開(kāi)放數(shù)據(jù)庫(kù)互連)是微軟公司開(kāi)放服務(wù)結(jié)構(gòu)(wosa, windows open services architectrue)中有關(guān)數(shù)據(jù)庫(kù)的一個(gè)組成部分,它建立了一組規(guī)范,并提供了一組對(duì)數(shù)據(jù)庫(kù)訪(fǎng)問(wèn)的標(biāo)準(zhǔn)api(應(yīng)用程序編程接口)。本系統(tǒng)通過(guò)visual c+封裝的odbc api即mfc odbc類(lèi)對(duì)access數(shù)據(jù)庫(kù)進(jìn)行操作。把a(bǔ)c
19、cess數(shù)據(jù)庫(kù)注冊(cè)到odbc驅(qū)動(dòng)程序管理器,由mfc odbc類(lèi)生成相應(yīng)的表類(lèi)。在此基礎(chǔ)上進(jìn)行添加,修改,刪除等操作。使用mfc odbc的時(shí)候,windows的odbc管理程序把數(shù)據(jù)庫(kù)訪(fǎng)問(wèn)的請(qǐng)求傳遞給正確的驅(qū)動(dòng)程序,驅(qū)動(dòng)程序在使用sql語(yǔ)句指示dbms(database management system,數(shù)據(jù)庫(kù)管理系統(tǒng))完成數(shù)據(jù)庫(kù)訪(fǎng)問(wèn)工作。 3.3.3數(shù)據(jù)庫(kù)需求分析根據(jù)系統(tǒng)功能設(shè)計(jì)的要求以及功能模塊的劃分,對(duì)于本系統(tǒng)的數(shù)據(jù)庫(kù),可以列出以下數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu):(1)圖書(shū)信息表-bookinfo數(shù)據(jù)來(lái)源:銷(xiāo)售管理模塊-圖書(shū)入庫(kù)或圖書(shū)信息設(shè)置中進(jìn)行錄入名 稱(chēng)字 段 名 稱(chēng)類(lèi) 型主 鍵非 空book
20、no書(shū)籍編號(hào)文本 是 是pubname出版社編號(hào)文本 否 否booktypename圖書(shū)類(lèi)型文本 否 否bookbn代碼簡(jiǎn)寫(xiě)文本 否 否author作者姓名文本 否 否price書(shū)籍價(jià)格數(shù)字 否 否bookname圖書(shū)名稱(chēng)文本 否 否number圖書(shū)數(shù)量數(shù)字 否 是date入庫(kù)時(shí)間文本 否 否(2) 圖書(shū)銷(xiāo)售表-booksale數(shù)據(jù)來(lái)源:銷(xiāo)售管理模塊-圖書(shū)銷(xiāo)售中進(jìn)行錄入名 稱(chēng)字 段 名 稱(chēng)類(lèi) 型主 鍵非 空saleno銷(xiāo)售數(shù)目自動(dòng)編號(hào)是 是bookno銷(xiāo)售圖書(shū)編號(hào)文本 否 是bookname銷(xiāo)售圖書(shū)名文本 否 否author銷(xiāo)售圖書(shū)作者文本 否 否publisher銷(xiāo)售圖書(shū)出版社文本 否 否p
21、rice銷(xiāo)售圖書(shū)價(jià)格數(shù)字 否 是discount打折數(shù)字 否 是number銷(xiāo)售圖書(shū)數(shù)量數(shù)字 否 是moneysum金額數(shù)字 否 是date銷(xiāo)售日期數(shù)字否 是(3)圖書(shū)銷(xiāo)售臨時(shí)表-tempbooksale數(shù)據(jù)來(lái)源:銷(xiāo)售管理模塊-圖書(shū)銷(xiāo)售中進(jìn)行錄入并清空名 稱(chēng)字 段 名 稱(chēng)類(lèi) 型主 鍵非 空tempsaleno銷(xiāo)售次數(shù)自動(dòng)編號(hào) 是 是bookno圖書(shū)編號(hào)文本 否 是bookname圖書(shū)名稱(chēng)文本 否 否author圖書(shū)作者文本 否 否publisher出版社文本 否 否number圖書(shū)數(shù)量數(shù)字 否 是price價(jià)格數(shù)字 否 是discount打折數(shù)字 否 是date銷(xiāo)售日期數(shù)字 否 是sum圖書(shū)最
22、后價(jià)格數(shù)字 否 是(4)出版社信息表-publisherinfo數(shù)據(jù)來(lái)源:系統(tǒng)設(shè)置-出版社設(shè)置中進(jìn)行錄入名 稱(chēng)字 段 名 稱(chēng)類(lèi) 型主 鍵非 空pubno出版社編號(hào)自動(dòng)增長(zhǎng) 是 是pubname出版社名稱(chēng) 文本 否 是(5)圖書(shū)類(lèi)別表-booktypeinfo 數(shù)據(jù)來(lái)源:系統(tǒng)設(shè)置-圖書(shū)類(lèi)別設(shè)置中進(jìn)行錄入名 稱(chēng)字 段 名 稱(chēng)類(lèi) 型主 鍵非 空booktypeno圖書(shū)類(lèi)別編號(hào)自動(dòng)增長(zhǎng) 是 是booktypename圖書(shū)類(lèi)別名稱(chēng) 文本 否 是(6)系統(tǒng)用戶(hù)信息表-userinfo數(shù)據(jù)來(lái)源:系統(tǒng)管理模塊-用戶(hù)設(shè)置中進(jìn)行錄入名 稱(chēng)字 段 名 稱(chēng)類(lèi) 型 主 鍵非 空userid用戶(hù)編號(hào)自動(dòng)增長(zhǎng) 是 是use
23、rname用戶(hù)名文本 否 是userpassword用戶(hù)密碼 文本 否 否isadmin用戶(hù)權(quán)限 是/否 否 是3.3.5數(shù)據(jù)庫(kù)概念結(jié)構(gòu)設(shè)計(jì)數(shù)據(jù)庫(kù)的表之間相互關(guān)聯(lián)可以保證數(shù)據(jù)庫(kù)數(shù)據(jù)的一致性,但是很有限。由程序代碼來(lái)實(shí)現(xiàn)能更好的檢查數(shù)據(jù)庫(kù)數(shù)據(jù)的一致性。所以本系統(tǒng)的數(shù)據(jù)庫(kù)表相互獨(dú)立。4 詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)4.1系統(tǒng)主控平臺(tái)4.1.1主控平臺(tái)界面的設(shè)計(jì) 充分考慮易于操作的系統(tǒng)需求,主控制平臺(tái)使用簡(jiǎn)單和直觀(guān)的布局設(shè)計(jì)。.4.1.2主控平臺(tái)界面的實(shí)現(xiàn)(1)主體框架:使用mfc appwizard創(chuàng)建一個(gè)單文檔結(jié)構(gòu)的應(yīng)用程序工程,建立起系統(tǒng)主體框架,生成應(yīng)用程序類(lèi)(cbookshopmisapp)文檔類(lèi)(cb
24、ookshopmisdoc)視圖類(lèi)(cbookshopmisview)和主框架類(lèi)(cmainfram).(2)菜單:根據(jù)系統(tǒng)總體設(shè)計(jì)中功能模塊的劃分,使用資源編輯器創(chuàng)建系統(tǒng)菜單。4.2權(quán)限設(shè)置模塊 此模塊主要是根據(jù)用戶(hù)輸入的名稱(chēng)和密碼驗(yàn)證用戶(hù)身份并且決定用戶(hù)的操作權(quán)限,并把用戶(hù)信息設(shè)置到當(dāng)前用戶(hù)類(lèi)中。4.2.1權(quán)限設(shè)置ipo圖輸入:用戶(hù)名和密碼處理: (1)程序開(kāi)始啟動(dòng)系統(tǒng)登陸對(duì)話(huà)框。(2)用戶(hù)輸入用戶(hù)名和密碼。(3)從用戶(hù)表中檢查是否有相應(yīng)的用戶(hù)名和密碼。(4)如果用戶(hù)名或密碼錯(cuò)誤,進(jìn)行提示;如果錯(cuò)誤次數(shù)達(dá)到三次,則提示并退出。(5)如果正確,則根據(jù)該用戶(hù)的權(quán)限類(lèi)別進(jìn)行權(quán)限設(shè)置。(6)進(jìn)入主
25、程序界面輸出:主程序界面4.3權(quán)限設(shè)置模塊的實(shí)現(xiàn)通過(guò)定義clogindialog類(lèi)來(lái)實(shí)現(xiàn)權(quán)限設(shè)置模塊功能。其主要代碼如下:(1) 根據(jù)用戶(hù)名和密碼驗(yàn)證用戶(hù)身份和分配權(quán)限/在登陸按鈕被點(diǎn)擊后,進(jìn)行權(quán)限驗(yàn)證。void clogindialog:onok() updatedata(true);cuserset m_userset;cbookshopmisapp *ptheapp = (cbookshopmisapp *)afxgetapp();tryif(m_userset.isopen()m_userset.close();m_userset.m_strfilter.format( usernam
26、e= %s and userpassword = %s,m_strusername, m_struserpwd);m_userset.open(crecordset:snapshot, null, crecordset:none); if(m_userset.iseof() m_userset.close(); if(+i = 3) afxmessagebox(很抱歉,您的輸入錯(cuò)誤次數(shù)已達(dá)到3次.n系統(tǒng)即將退出.);exit(1); afxmessagebox(密碼錯(cuò)誤, 請(qǐng)重試!); return; elseptheapp-m_presentuser.setuserinfo(m_userse
27、t.m_username,m_userset.m_userpassword,m_userset.m_isadmin);m_userset.close();afxmessagebox(密碼正確,登陸成功!); catch(cdbexception *e)e-reporterror();return;cdialog:onok();4.4 圖書(shū)銷(xiāo)售模塊1圖書(shū)銷(xiāo)售ipo圖輸入:圖書(shū)編號(hào)圖書(shū)數(shù)量和折扣(缺省為不打折)。處理:(1) 圖書(shū)銷(xiāo)售對(duì)話(huà)框啟動(dòng)(2) 用戶(hù)輸入圖書(shū)編號(hào),并點(diǎn)擊 “搜索” 按鈕,系統(tǒng)進(jìn)行圖書(shū)搜索(3) 如果無(wú)此編號(hào)的圖書(shū),進(jìn)行提示;反之,則列出該圖書(shū)的基本信息。(4) 輸入圖書(shū)數(shù)量,
28、然后,按回車(chē)鍵計(jì)算出該筆銷(xiāo)售的金額。(5) 按“下一本”按鈕,則進(jìn)行下一本書(shū)的銷(xiāo)售。(6) 按“結(jié)賬”按鈕,則完成此次的銷(xiāo)售功能。并算出總金額。(7) 點(diǎn)擊銷(xiāo)售列表,按“撤銷(xiāo)”按鈕,則取消該書(shū)的銷(xiāo)售。(8) 按“退出”按鈕,則退出圖書(shū)銷(xiāo)售。輸出:更新圖書(shū)信息表和圖書(shū)銷(xiāo)售表。2、圖書(shū)銷(xiāo)售模塊的實(shí)現(xiàn)根據(jù)圖書(shū)銷(xiāo)售模塊的ipo圖,通過(guò)定義cbooksaledialog類(lèi)來(lái)實(shí)現(xiàn)圖書(shū)銷(xiāo)售模塊的功能。其主要實(shí)現(xiàn)代碼如下:(1) cbooksaledialog類(lèi)使用的圖書(shū)信息表記錄集cbookset圖書(shū)銷(xiāo)售表記錄集cbooksaleset和臨時(shí)圖書(shū)銷(xiāo)售表記錄集ctempsaleset.,操作完成后,更新和調(diào)整
29、圖書(shū)信息表,增加圖書(shū)銷(xiāo)售表記錄,臨時(shí)銷(xiāo)售表為空。(2) 圖書(shū)銷(xiāo)售。流程: 選擇圖書(shū)編號(hào)-點(diǎn)擊搜索按鈕-輸入圖書(shū)折扣和圖書(shū)數(shù)量-回車(chē)鍵-點(diǎn)擊下一本-或結(jié)賬-退出。/ 根據(jù)圖書(shū)編號(hào)進(jìn)行搜索,如果存在,則顯示圖書(shū)詳細(xì)信息void cbooksaledialog:onbuttonsearch() updatedata(true);if(m_strbookno = ) messagebox(圖書(shū)編號(hào)不能為空);return ;cbookset m_bookset;try m_bookset.m_strfilter.format(bookno = %s,m_strbookno); m_bookset.op
30、en(crecordset:snapshot, null, crecordset:none); if(m_bookset.iseof() | (m_bookset.m_number = 0) m_bookset.close(); afxmessagebox(該編號(hào)的圖書(shū)不存在,請(qǐng)重新輸入編號(hào)!); resetmembers();return;cstring strtemp;strtemp.format(%d,m_bookset.m_number);m_strbookname = m_bookset.m_bookname;m_strpublisher = m_bookset.m_pubname;
31、m_strauthor = m_bookset.m_author;cstring tempprice;tempprice.format(%.2f,m_bookset.m_price);m_strprice = tempprice; /m_bookset.m_price;m_bookset.close();updatedata(false);catch(cdbexception *e)e-reporterror();/ 計(jì)算銷(xiāo)售值void cbooksaledialog:onok() updatedata(true);if(m_strnumber = )messagebox(請(qǐng)輸入銷(xiāo)售圖書(shū)數(shù)量)
32、;return;float tempfianalprice;tempfianalprice = atoi(m_strnumber) * atof(m_strprice) * atoi(m_strdiscount) / 100;m_strfianalprice.format(%.2f,tempfianalprice);updatedata(false);/ 下一本void cbooksaledialog:onbuttonnext() updatedata(true);if(m_strbookno = )messagebox(請(qǐng)輸入要銷(xiāo)售圖書(shū)的編號(hào));return;if(m_strnumber =
33、 )messagebox(請(qǐng)輸入要銷(xiāo)售圖書(shū)的數(shù)量);return;if(atoi(m_strnumber) =0)messagebox(銷(xiāo)售圖書(shū)數(shù)量不能少于一本);return;if(m_strdiscount = )messagebox(請(qǐng)輸入該書(shū)要打幾折);return;/ 獲取當(dāng)前時(shí)間ctime t;t = ctime:getcurrenttime();cstring time = ;cstring year;cstring month;cstring day;year.format(%d,t.getyear();month.format(%d,t.getmonth();if(t.get
34、month() 9)month = 0 + month;day.format(%d,t.getday();if(t.getday() 9)day = 0 + day;time = year + month + day;cbookset m_bookset;ctempsaleset m_tempsaleset;int tempnumber;trym_bookset.m_strfilter.format(bookno = %s,m_strbookno);m_bookset.open(crecordset:snapshot, null, crecordset:none);if(!m_bookset.
35、iseof()tempnumber = m_bookset.m_number - atoi(m_strnumber);if(tempnumber close();/ 添加銷(xiāo)售的圖書(shū)到臨時(shí)銷(xiāo)售表m_tempsaleset.open();m_tempsaleset.addnew();m_tempsaleset.m_author = m_strauthor;m_tempsaleset.m_publisher = m_strpublisher;m_tempsaleset.m_bookname = m_strbookname;m_tempsaleset.m_bookno = m_strbookno;m_
36、tempsaleset.m_number = atoi(m_strnumber);m_tempsaleset.m_discount = atoi(m_strdiscount);m_tempsaleset.m_sum = atof(m_strfianalprice);m_tempsaleset.m_price = atof(m_strprice);m_tempsaleset.m_date = atol(time);m_tempsaleset.update();m_tempsaleset.close();m_tempsaleset.m_pdatabase-close();/ 顯示在銷(xiāo)售列表中m_t
37、empsaleset.open();m_tempsaleset.movelast();int pos = m_listsale.getitemcount();cstring tempnumber;cstring tempprice;cstring tempdiscount;cstring tempsum;tempnumber.format(%d,m_tempsaleset.m_number);tempprice.format(%.2f,m_tempsaleset.m_price);tempdiscount.format(%d,m_tempsaleset.m_discount);tempsum.
38、format(%.2f,m_tempsaleset.m_sum);m_listsale.insertitem(pos, m_tempsaleset.m_bookname);m_listsale.setitemtext(pos,1,tempnumber);m_listsale.setitemtext(pos,2,tempprice);m_listsale.setitemtext(pos,3,tempdiscount);m_listsale.setitemtext(pos,4,tempsum);m_tempsaleset.close();resetmembers();catch(cdbexcept
39、ion *e)e-reporterror();return;/ 結(jié)賬void cbooksaledialog:onbuttonbill() updatedata(); if(m_strbookno != )onbuttonnext(); float m_sum = 0; ctempsaleset m_tempsaleset; cbooksaleset m_booksaleset; try m_tempsaleset.open(); m_booksaleset.open(); m_tempsaleset.movefirst(); while(! m_tempsaleset.iseof() /算出
40、總銷(xiāo)售額 m_sum = m_sum + m_tempsaleset.m_sum; /- 添加進(jìn)銷(xiāo)售列表中- m_booksaleset.addnew(); m_booksaleset.m_author = m_tempsaleset.m_author; m_booksaleset.m_bookname = m_tempsaleset.m_bookname; m_booksaleset.m_bookno = m_tempsaleset.m_bookno; m_booksaleset.m_date = m_tempsaleset.m_date; m_booksaleset.m_discount
41、= m_tempsaleset.m_discount; m_booksaleset.m_number = m_tempsaleset.m_number; m_booksaleset.m_price = m_tempsaleset.m_price; m_booksaleset.m_moneysum = m_tempsaleset.m_sum; m_booksaleset.m_publisher = m_tempsaleset.m_publisher; m_booksaleset.update(); /- m_tempsaleset.delete(); m_tempsaleset.movenext
42、(); m_tempsaleset.close(); m_tempsaleset.m_pdatabase-close(); m_booksaleset.close(); m_booksaleset.m_pdatabase-close(); catch(cdbexception *e)e-reporterror();return; m_strsalesum.format(%.2f,m_sum); updatedata(false);(3) 撤銷(xiāo)功能。流程:點(diǎn)擊銷(xiāo)售列表,點(diǎn)擊撤銷(xiāo)按鈕即可完成。void cbooksaledialog:onbuttoncancel() int i = m_lists
43、ale.getselectionmark();cstring bookname = m_listsale.getitemtext(i, 0);int tempnumber = 0;if(i close(); / 恢復(fù)圖書(shū)原先數(shù)量cbookset m_bookset;m_bookset.m_strfilter.format(bookname = %s, bookname);m_bookset.open(crecordset:snapshot, null, crecordset:none);if(!m_bookset.iseof()m_bookset.edit();m_bookset.m_numb
44、er = m_bookset.m_number + tempnumber;m_bookset.update();m_bookset.close();m_bookset.m_pdatabase-close();listsale();4.5圖書(shū)入庫(kù)模塊4.5.1圖書(shū)入庫(kù)模塊ipo圖輸入:圖書(shū)編號(hào)和圖書(shū)數(shù)量處理:圖書(shū)入庫(kù)對(duì)話(huà)框啟動(dòng)。等待用戶(hù)輸入圖書(shū)的編號(hào)和數(shù)量,可以在此輸入圖書(shū)詳細(xì)信息,但不是必需的。將圖書(shū)添加到圖書(shū)信息表中輸出:更新圖書(shū)信息表4.5.2圖書(shū)入庫(kù)模塊的實(shí)現(xiàn)根據(jù)圖書(shū)入庫(kù)模塊的ipo圖,通過(guò)定義cbookinputdialog類(lèi)來(lái)實(shí)現(xiàn)該模塊的主體功能。 相關(guān)的記錄集類(lèi)cbookset。
45、新書(shū)錄入。處理過(guò)程:判斷用戶(hù)是否全部輸入必填的圖書(shū)信息,然后根據(jù)用戶(hù)輸入的圖書(shū)編號(hào)查詢(xún)圖書(shū)信息表是否有重復(fù)編號(hào),是則在原有圖書(shū)信息基礎(chǔ)上增加圖書(shū)的數(shù)量;否則添加新的圖書(shū)記錄在圖書(shū)信息表中。/ 添加圖書(shū)到圖書(shū)信息庫(kù)中void cbookinputdialog:onbuttonsaveandgoon() updatedata(true);ctime t;t = ctime:getcurrenttime();cstring time = ;cstring year;cstring month;cstring day;year.format(%d,t.getyear();month.format(%d
46、,t.getmonth();day.format(%d,t.getday();time = year + - + month + -+ day; if(m_strbookno = )messagebox(請(qǐng)輸入圖書(shū)編號(hào));return ;if(m_strnumber = )messagebox(請(qǐng)輸入圖書(shū)數(shù)量);return;cbookset m_bookset;tryif(m_bookset.isopen()m_bookset.close();m_bookset.m_pdatabase-close();m_bookset.m_strfilter.format(bookno = %s,m_st
47、rbookno);m_bookset.open(crecordset:snapshot, null, crecordset:none);/ 如果庫(kù)中無(wú)此書(shū),則增加if(m_bookset.iseof()m_bookset.addnew();m_bookset.m_bookno = m_strbookno;m_bookset.m_number = atoi(m_strnumber);m_bookset.m_bookname = m_strbookname; m_bookset.m_bookbn = m_strbookbn;m_bookset.m_booktypename = m_strbookt
48、ype;m_bookset.m_pubname = m_strpublisher;m_bookset.m_author = m_strauthor;m_bookset.m_price = atof(m_strprice);m_bookset.m_date = time;elsem_bookset.edit();m_bookset.m_number = m_bookset.m_number + atoi(m_strnumber);m_bookset.m_date = time;m_bookset.update();m_bookset.close();m_bookset.m_pdatabase-close();catch(cdbexception *e)e-reporterror();onbuttonadd(); 4.6圖書(shū)信息設(shè)置模塊圖書(shū)信息模塊由圖書(shū)的信息設(shè)置和圖書(shū)的刪除功能。4.6.1圖書(shū)信息設(shè)置模塊ipo圖輸入:圖書(shū)編號(hào)處理:圖書(shū)信息設(shè)置對(duì)話(huà)框啟動(dòng)。根據(jù)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度內(nèi)墻涂料工程舊房翻新改造施工合同2篇
- 二零二五年度煤礦資源整合項(xiàng)目合同書(shū)4篇
- 2025版民宿布草租賃與民宿客棧特色文化打造合同4篇
- 2025年度股權(quán)轉(zhuǎn)讓與客戶(hù)關(guān)系維護(hù)合同范本3篇
- 二零二五年度出口貨物出口許可證與憑證辦理合同3篇
- 2025年文化藝術(shù)展廳展示策劃與運(yùn)營(yíng)合同3篇
- 二零二五年度廚房設(shè)備安全檢測(cè)與維護(hù)合同4篇
- 二零二五年度國(guó)有企業(yè)勞動(dòng)合同簽訂及員工培訓(xùn)與晉升協(xié)議3篇
- 2025年度新型門(mén)窗研發(fā)與安裝項(xiàng)目合同3篇
- 2025年滅鼠滅蟑專(zhuān)業(yè)防治與社區(qū)共建合同3篇
- 9.1增強(qiáng)安全意識(shí) 教學(xué)設(shè)計(jì) 2024-2025學(xué)年統(tǒng)編版道德與法治七年級(jí)上冊(cè)
- 《化工設(shè)備機(jī)械基礎(chǔ)(第8版)》全套教學(xué)課件
- 人教版八年級(jí)數(shù)學(xué)下冊(cè)舉一反三專(zhuān)題17.6勾股定理章末八大題型總結(jié)(培優(yōu)篇)(學(xué)生版+解析)
- 2024屆上海高考語(yǔ)文課內(nèi)古詩(shī)文背誦默寫(xiě)篇目(精校版)
- DL-T5024-2020電力工程地基處理技術(shù)規(guī)程
- 2024年度-美團(tuán)新騎手入門(mén)培訓(xùn)
- 初中數(shù)學(xué)要背誦記憶知識(shí)點(diǎn)(概念+公式)
- 駕照體檢表完整版本
- 農(nóng)產(chǎn)品農(nóng)藥殘留檢測(cè)及風(fēng)險(xiǎn)評(píng)估
- 農(nóng)村高中思想政治課時(shí)政教育研究的中期報(bào)告
- 20100927-宣化上人《愣嚴(yán)咒句偈疏解》(簡(jiǎn)體全)
評(píng)論
0/150
提交評(píng)論