學(xué)校教材訂購(gòu)系統(tǒng)_第1頁(yè)
學(xué)校教材訂購(gòu)系統(tǒng)_第2頁(yè)
學(xué)校教材訂購(gòu)系統(tǒng)_第3頁(yè)
學(xué)校教材訂購(gòu)系統(tǒng)_第4頁(yè)
學(xué)校教材訂購(gòu)系統(tǒng)_第5頁(yè)
已閱讀5頁(yè),還剩28頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、學(xué)校教材訂購(gòu)系統(tǒng)定義1.基本要求 1.1項(xiàng)目目標(biāo)通過(guò)本系統(tǒng)完成為學(xué)校教材的購(gòu)銷(xiāo)工作,包括銷(xiāo)售和采購(gòu)兩個(gè)部分。1.2系統(tǒng)簡(jiǎn)介系統(tǒng)簡(jiǎn)介本系統(tǒng)可細(xì)化為兩個(gè)子系統(tǒng):銷(xiāo)售系統(tǒng)和采購(gòu)系統(tǒng)。銷(xiāo)售系統(tǒng)的工作過(guò)程為:首先由教師或?qū)W生提交購(gòu)書(shū)單,經(jīng)教材發(fā)行人員審核是有效購(gòu)書(shū)單后,開(kāi)發(fā)票、登記并返給教師或?qū)W生領(lǐng)書(shū)單,教師或?qū)W生即可去書(shū)庫(kù)領(lǐng)書(shū)。采購(gòu)系統(tǒng)的主要工作過(guò)程為:若是脫銷(xiāo)教材,則登記缺書(shū),發(fā)缺書(shū)單給書(shū)庫(kù)采購(gòu)人員;一旦新書(shū)入庫(kù)后,即發(fā)進(jìn)書(shū)通知給教材發(fā)行人員。以上的功能要求在計(jì)算機(jī)上實(shí)現(xiàn)。1.3技術(shù)要求和限制條件 (1) 當(dāng)書(shū)庫(kù)中的各種書(shū)籍?dāng)?shù)量發(fā)生變化(包括領(lǐng)書(shū)和進(jìn)書(shū)時(shí)),都應(yīng)修改相關(guān)的書(shū)庫(kù)記錄,如庫(kù)存表或進(jìn)/出庫(kù)

2、表。 (2) 在實(shí)現(xiàn)上述銷(xiāo)售和采購(gòu)的工作過(guò)程時(shí),需考慮有關(guān)單據(jù)的合法性驗(yàn)證 (3) 系統(tǒng)的外部項(xiàng)至少包含三個(gè):教師、學(xué)生和教材工作人員。 (4) 系統(tǒng)的相關(guān)數(shù)據(jù)存儲(chǔ)至少包含6個(gè):購(gòu)書(shū)表、庫(kù)存表、缺書(shū)登記表、待購(gòu)教材表、進(jìn)/出庫(kù)表。1.4系統(tǒng)界面 學(xué)生/教師登陸界面、書(shū)刊查詢(xún)界面、書(shū)刊信息界面、領(lǐng)書(shū)單界面、新書(shū)入庫(kù)界面、退出界面等。1.5開(kāi)發(fā)概要 系統(tǒng)調(diào)研、具體開(kāi)發(fā)、測(cè)試、維護(hù)2.資源 2.1 人員本小組成員(華偉,阮運(yùn)磊,張翔宇,張哲)在老師的輔導(dǎo)下開(kāi)發(fā)完成。2.2 硬件內(nèi)存:2GM;CPU:Intel Core2 1.80GHz2.3軟件MyEclipse5.5 集成開(kāi)發(fā)工具,MySQL5.

3、0.22數(shù)據(jù)庫(kù)和window visio2003畫(huà)圖工具以及windows word文檔工具 。3.進(jìn)度安排隨課程進(jìn)度同步完成系統(tǒng)的開(kāi)發(fā)及文檔編寫(xiě)工作。4.預(yù)算本項(xiàng)目作為學(xué)生課程設(shè)計(jì),其所有開(kāi)銷(xiāo) 包括軟件,設(shè)施及開(kāi)發(fā)經(jīng)費(fèi)都由學(xué)生自理。學(xué)校教材購(gòu)銷(xiāo)系統(tǒng)需求規(guī)格說(shuō)明書(shū)1引言1.1 編寫(xiě)目的本要求規(guī)格說(shuō)明書(shū)對(duì)學(xué)校教材購(gòu)銷(xiāo)系統(tǒng)進(jìn)行簡(jiǎn)單的分析,給出了系統(tǒng)的數(shù)據(jù)流圖。系統(tǒng)主要用戶(hù)是學(xué)生,教師和教材工作人員,加深與用戶(hù)間的交流,在功能與系統(tǒng)界面上與用戶(hù)達(dá)成一致的看法,以便于開(kāi)發(fā)出用戶(hù)滿(mǎn)意的系統(tǒng)。1.2項(xiàng)目背景隨著高校辦學(xué)規(guī)模的擴(kuò)展,管理方式和管理效率的矛盾日漸突出。在教材購(gòu)銷(xiāo)方面,手工管理方式和文檔系統(tǒng)管理

4、方式在管理質(zhì)量和管理效率上,從根本上不能適應(yīng)大規(guī)模的管理要求。而隨著計(jì)算機(jī)科學(xué)的發(fā)展與進(jìn)步,計(jì)算機(jī)科學(xué)管理方式,不管在管理效率還是在管理質(zhì)量上都逐步顯示出了它的可靠性和優(yōu)越性。而且計(jì)算機(jī)管理在人力、物力等資源方面都比以前的管理模式要有大的節(jié)省。計(jì)算機(jī)管理正以它自身的優(yōu)越性成為管理模式中的主流。教材購(gòu)銷(xiāo)管理系統(tǒng)采用計(jì)算機(jī)管理模式的必然性也在與此!本系統(tǒng)以學(xué)校為背景,在認(rèn)真調(diào)研和分析了學(xué)校訂購(gòu)教材的現(xiàn)狀之后,根據(jù)學(xué)生,教師和教材工作人員的需求和各個(gè)功能的關(guān)系,作出了積極的設(shè)計(jì)方案。在新的管理資源和管理模式上,一定能使工作質(zhì)量、工作效率等得到提高,推動(dòng)學(xué)校發(fā)展的步伐。本系統(tǒng)名稱(chēng)為:安徽工程科技學(xué)院教

5、材購(gòu)銷(xiāo)系統(tǒng)。由安徽工程科技學(xué)院教材管理層提出,由修宇老師和我們項(xiàng)目小組成員(華偉,阮運(yùn)磊,張翔宇,張哲)開(kāi)發(fā),適合學(xué)生,老師和教材工作人員使用,可以在學(xué)校的計(jì)算機(jī)中心開(kāi)設(shè)服務(wù)器,在校園網(wǎng)上運(yùn)行。1.3 軟件產(chǎn)品的作用范圍學(xué)校教材購(gòu)銷(xiāo)系統(tǒng)是為高等院校開(kāi)發(fā)的,用于日常的教材管理,包括銷(xiāo)售與采購(gòu)。提供數(shù)字化的管理,提高學(xué)校教材管理部門(mén)的工作效率。2一般性描述2.1本系統(tǒng)可細(xì)化為兩個(gè)子系統(tǒng):銷(xiāo)售系統(tǒng)和采購(gòu)系統(tǒng)銷(xiāo)售系統(tǒng)的工作過(guò)程為:首先由教師或?qū)W生提交購(gòu)書(shū)單,經(jīng)教材科發(fā)行人員審核是有效購(gòu)書(shū)單后,開(kāi)發(fā)票、登記并返給教師或?qū)W生領(lǐng)書(shū)單,教師或?qū)W生即可去書(shū)庫(kù)領(lǐng)書(shū)。 采購(gòu)系統(tǒng)的主要工作過(guò)程為:若是脫銷(xiāo)教材,則登記

6、缺書(shū),發(fā)缺書(shū)單給書(shū)庫(kù)采購(gòu)人員;一旦新書(shū)入庫(kù)后,即發(fā)進(jìn)書(shū)通知。2.2產(chǎn)品功能本系統(tǒng)在向?qū)W生售書(shū)時(shí)主要輸入學(xué)生學(xué)號(hào)、班級(jí)代號(hào)、購(gòu)書(shū)數(shù)量、購(gòu)書(shū)書(shū)名信息,然后打印領(lǐng)書(shū)單返回給學(xué)生領(lǐng)取書(shū)籍。本系統(tǒng)在查詢(xún)數(shù)據(jù)庫(kù)時(shí)主要輸入需要查詢(xún)的相關(guān)信息,包括圖書(shū)編號(hào)、圖書(shū)書(shū)名、出版社信息、圖書(shū)特色等信息方便操作人員把握?qǐng)D書(shū)信息。本系統(tǒng)還兼顧一點(diǎn)財(cái)務(wù)信息的管理,在發(fā)生單人購(gòu)書(shū)時(shí),系統(tǒng)直接向購(gòu)書(shū)者收取現(xiàn)金,內(nèi)部形成一個(gè)小小的財(cái)務(wù)管理。本系統(tǒng)還和學(xué)校的財(cái)務(wù)科發(fā)生數(shù)據(jù)交換,發(fā)生集體售書(shū)時(shí),學(xué)校根據(jù)數(shù)據(jù)的有效性,直接向集體售書(shū),形成的財(cái)務(wù)信息直接和財(cái)務(wù)科交換,方便結(jié)算。即:向?qū)W生集體售書(shū)時(shí)不需要直接收取現(xiàn)金,而待教材科結(jié)算時(shí)向財(cái)

7、務(wù)科提交數(shù)據(jù),由財(cái)務(wù)科從學(xué)生的預(yù)交書(shū)費(fèi)里扣除,保證教材科財(cái)務(wù)信息的完整。3數(shù)據(jù)流圖與數(shù)據(jù)字典3.1系統(tǒng)數(shù)據(jù)流圖(DFD)教材發(fā)行人員采購(gòu)人員教師或?qū)W生購(gòu)書(shū)單審核信息進(jìn)書(shū)通知進(jìn)書(shū)通知缺書(shū)單領(lǐng)書(shū)單大學(xué)教材訂購(gòu)系統(tǒng)3.1.1 學(xué)校教材購(gòu)銷(xiāo)系統(tǒng)DFD系統(tǒng)數(shù)據(jù)字典: 名字:定書(shū)表別名:訂書(shū)單描述:送給采購(gòu)員的定書(shū)表定義:購(gòu)書(shū)單購(gòu)書(shū)單號(hào)+書(shū)名+出版社+價(jià)格數(shù)量+日期+訂購(gòu)名姓名+訂購(gòu)者職務(wù)購(gòu)書(shū)總數(shù)+總額 購(gòu)書(shū)單號(hào)DG+年+月+日+4位整數(shù) 訂購(gòu)者職務(wù)學(xué)生教師 價(jià)格整數(shù)+4位小數(shù)位置:輸出到打印機(jī)名字:領(lǐng)書(shū)表別名:領(lǐng)書(shū)單描述:送給學(xué)生或教師的領(lǐng)書(shū)報(bào)表定義:領(lǐng)書(shū)單領(lǐng)書(shū)單號(hào)+訂購(gòu)者姓名+領(lǐng)書(shū)日期+購(gòu)書(shū)單號(hào)+領(lǐng)書(shū)

8、日期經(jīng)辦人 領(lǐng)書(shū)單號(hào)LQ+年+月+日+4位整數(shù)位置:輸出到打印機(jī)名字:缺書(shū)表別名:缺書(shū)單描述:送給相關(guān)工作人員的表,用來(lái)補(bǔ)充書(shū)籍定義:缺書(shū)單缺書(shū)單號(hào)書(shū)名+出版社總數(shù) 缺書(shū)單號(hào)QS+年+月+日+4位整數(shù)位置:輸出到打印機(jī)名字:進(jìn)書(shū)通知描述:詳細(xì)的描述了進(jìn)書(shū)的信息定義:進(jìn)書(shū)通知編號(hào)+書(shū)名+出版社+價(jià)格數(shù)量采購(gòu)人姓名采購(gòu)日期+采購(gòu)總數(shù)+采購(gòu)總額 編號(hào)JS+年+月+日+4位整數(shù)位置:名字:審核信息描述:用于審核信息定義:審核信息教材發(fā)行人員姓名+審核標(biāo)志+審核日期 審核標(biāo)志TURE|FALSE(注:表示審核是否通過(guò))位置:3.1.2 學(xué)校教材購(gòu)銷(xiāo)系統(tǒng)一級(jí)數(shù)據(jù)流圖 身 份驗(yàn) 證學(xué)生或教 師 購(gòu)書(shū)單 不合

9、法 領(lǐng)書(shū)單 合法 庫(kù)存表 教材工作人 員 采 購(gòu)系 統(tǒng) 缺書(shū)單 銷(xiāo) 售 系 統(tǒng) 進(jìn)書(shū)通知 缺書(shū)登記表一級(jí)數(shù)據(jù)字典:1 庫(kù)存表記錄ID +圖書(shū)信息 +數(shù)量 2 缺書(shū)表記錄ID +圖書(shū)信息+缺書(shū)日期 3 進(jìn)庫(kù)表日期+圖書(shū)信息+數(shù)量+采購(gòu)員+總額 4圖書(shū)信息書(shū)名+出版社+價(jià)格作者+ISBN+版次 ISBN=10數(shù)字10 且能被7整除 記錄IDJC15數(shù)字15 3.1.3 二級(jí)數(shù)據(jù)流圖購(gòu)書(shū)單審核信息領(lǐng)書(shū)單發(fā)票領(lǐng)書(shū)信息 領(lǐng)書(shū)單缺書(shū)單缺書(shū)單缺書(shū)信息采購(gòu)信息進(jìn)書(shū)通知圖書(shū)信息 采購(gòu)信息購(gòu)書(shū)表審 核登記庫(kù)存表開(kāi) 票登 記領(lǐng) 書(shū)缺書(shū)表出庫(kù)表缺書(shū)登記缺書(shū)表圖書(shū)入庫(kù)庫(kù)存表進(jìn)庫(kù)表二級(jí)數(shù)據(jù)字典:名字:發(fā)票別名:描述:唯一

10、的表述一次夠書(shū)或者買(mǎi)書(shū)憑證定義:發(fā)票客戶(hù)名+日期+書(shū)名價(jià)格+數(shù)量+總額+開(kāi)票人+發(fā)票號(hào)位置:名字:出庫(kù)表別名:描述:描述出庫(kù)的一切信息定義:出庫(kù)表日期圖書(shū)信息+教材發(fā)行人員位置:輸出到打印機(jī)名字:采購(gòu)信息別名:描述:描述采購(gòu)的信息定義:采購(gòu)信息采購(gòu)員姓名+日期+圖書(shū)信息+總數(shù)+總額位置:名字:有效訂書(shū)單別名:描述:有效的訂書(shū)單定義:有效訂書(shū)單購(gòu)書(shū)單+教材發(fā)行人員姓名位置:輸出到打印機(jī)3.2 數(shù)據(jù)存儲(chǔ)描述數(shù)據(jù)存儲(chǔ)名稱(chēng):缺書(shū)登記表組成:書(shū)號(hào)+書(shū)名+出版社+缺書(shū)數(shù)量+出版時(shí)間+書(shū)籍信息組織:備注:數(shù)據(jù)存儲(chǔ)名稱(chēng):教材庫(kù)存表組成:書(shū)號(hào)+書(shū)名+出版社+數(shù)量+出版時(shí)間+書(shū)籍信息+是否特殊用途教學(xué)用、零售組織

11、:備注:數(shù)據(jù)存儲(chǔ)名稱(chēng):進(jìn)庫(kù)表、出庫(kù)表、庫(kù)存表、購(gòu)書(shū)表組成:書(shū)號(hào)+書(shū)名+出版社+出版時(shí)間+單價(jià)+數(shù)量+總價(jià)+書(shū)籍信息組織:備注:數(shù)據(jù)存儲(chǔ)名稱(chēng):售書(shū)登記表組成:學(xué)號(hào)+姓名+班級(jí)+所購(gòu)書(shū)號(hào)+書(shū)名+單價(jià)數(shù)量+總價(jià)組織:備注:學(xué)號(hào)、班級(jí)、姓名可為空數(shù)據(jù)存儲(chǔ)名稱(chēng):補(bǔ)售書(shū)表組成:學(xué)號(hào)+姓名+班級(jí)+所購(gòu)書(shū)號(hào)+書(shū)名+數(shù)量+書(shū)籍信息組織:備注: 數(shù)據(jù)存儲(chǔ)名稱(chēng):教學(xué)用書(shū)表組成:書(shū)名+書(shū)號(hào)+出版社+出版時(shí)間+數(shù)量+書(shū)籍信息組織:備注: 3.3數(shù)據(jù)流描述:=(|)+:=+:=1| 2|50:= 1| 2|50:= 1| 2|10000:=+ :=+:=+:=+:=+:=|+:=+學(xué)校教材訂購(gòu)系統(tǒng)中,其主要的實(shí)體分別為用

12、戶(hù)(教師和學(xué)生)、教材管理人員,經(jīng)分析后,得到主要E-R圖,如圖所示。 書(shū) 籍 價(jià)格庫(kù)存量 出版社 編號(hào) 書(shū)籍名 工 作 人 員 工號(hào) 備 注 性別 職位 姓 名 電 話(huà) 教師或?qū)W生 性 別 姓 名 編 號(hào)總體設(shè)計(jì)1、系統(tǒng)功能模塊結(jié)構(gòu)圖根據(jù)需求分析,學(xué)校教材訂購(gòu)系統(tǒng)功能模塊結(jié)構(gòu)圖如下:大學(xué)教材訂購(gòu)系統(tǒng)銷(xiāo)售子系統(tǒng)采購(gòu)子系統(tǒng)提交購(gòu)書(shū)單審核購(gòu)書(shū)單開(kāi)發(fā)票登記購(gòu)書(shū)記錄發(fā)缺書(shū)單登記缺書(shū)記錄發(fā)進(jìn)書(shū)通知單修改相應(yīng)的表返回領(lǐng)書(shū)單領(lǐng)書(shū)修改庫(kù)存記錄維護(hù)相應(yīng)的數(shù)據(jù)表維護(hù)數(shù)據(jù)庫(kù)進(jìn)一步對(duì)學(xué)校教材訂購(gòu)系統(tǒng)的銷(xiāo)售過(guò)程和采購(gòu)過(guò)程進(jìn)行數(shù)據(jù)流程分析,本系統(tǒng)應(yīng)當(dāng)具有如下的數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu):開(kāi)發(fā)過(guò)程中建立了名為book的數(shù)據(jù)庫(kù),下設(shè)b

13、ook07、book08、adminlist等表如圖3-1所示:圖3-1 book數(shù)據(jù)庫(kù)圖表asminlist用于存放系統(tǒng)管理員和老師或?qū)W生的登陸用戶(hù)名和密碼,其中帳號(hào)為主碼,如圖3-2 adminlist圖所示。 圖3-2 adminlist圖表book07用于存放過(guò)去兩個(gè)學(xué)期中計(jì)算機(jī)系所有已定教材的信息,其中書(shū)號(hào)為主碼,如圖3-3表book07圖所示。 圖3-3 表book07圖表book08用于存放本學(xué)期需要征訂的教材,同樣,書(shū)號(hào)為主碼,如圖3-4表book08圖所示。 圖3-4 表book08圖詳細(xì)設(shè)計(jì)1.根據(jù)功能模塊用程序流程圖進(jìn)行詳細(xì)設(shè)計(jì)和各模塊詳細(xì)設(shè)計(jì)說(shuō)明書(shū)如下:銷(xiāo)售子系統(tǒng)模塊程

14、序流程圖:開(kāi)始提交購(gòu)書(shū)單 N審核購(gòu)書(shū)單 1錯(cuò)誤顯示 Y開(kāi)發(fā)票 登記購(gòu)書(shū)記錄 N錯(cuò)誤顯示 審核登記 Y發(fā)領(lǐng)書(shū)通知單 修改相應(yīng)表 N審核修改 錯(cuò)誤顯示 Y結(jié)束采購(gòu)子系統(tǒng)模塊程序流程圖:開(kāi)始發(fā)缺書(shū)單 審核缺書(shū)單 錯(cuò)誤顯示 登記缺書(shū) 審核登記 錯(cuò)誤顯示 修改數(shù)據(jù)庫(kù)的表 審核修改 錯(cuò)誤顯示 發(fā)進(jìn)書(shū)通知單 結(jié)束接口 各模塊過(guò)程之間采用函數(shù)調(diào)用、參數(shù)傳遞、返回值的方式進(jìn)行消息傳遞。具體參數(shù)的結(jié)構(gòu)將在下面數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)的內(nèi)容中說(shuō)明。接口傳遞的信息將是以數(shù)據(jù)結(jié)構(gòu)封裝了的數(shù)據(jù),以參數(shù)傳遞或返回值的形式在模塊之間傳遞。存儲(chǔ)分配為程序當(dāng)中的數(shù)據(jù)結(jié)構(gòu)在內(nèi)存中開(kāi)辟空間存儲(chǔ),如入到數(shù)據(jù)庫(kù)中后在數(shù)據(jù)庫(kù)的表中為其開(kāi)辟存儲(chǔ)空間。限

15、制條件輸入的信息都封裝在數(shù)據(jù)結(jié)構(gòu)當(dāng)中,不能獨(dú)立存在,在向數(shù)據(jù)庫(kù)中提交數(shù)據(jù)時(shí)必須一起提交而不能逐項(xiàng)提交。輸入數(shù)據(jù)的類(lèi)型必須和定義的數(shù)據(jù)類(lèi)型相匹配。界面設(shè)計(jì)及詳細(xì)代碼本系統(tǒng)主要有登陸界面load.aspx,顯示書(shū)目信息及功能模塊選擇頁(yè)面book.aspx,添加新記錄頁(yè)面new.aspx,添加歷史記錄頁(yè)面history.aspx和history1.aspx,修改記錄update.aspx和update1.aspx以及刪除記錄delete.aspx八個(gè)頁(yè)面組成.其中登陸與用datagrid兩大模塊的代碼編寫(xiě)與設(shè)計(jì).具體設(shè)計(jì)如下:5.1 登陸界面 當(dāng)單擊確定按鈕時(shí),連接數(shù)據(jù)庫(kù),確定輸入的帳號(hào)和密碼是否匹

16、配,跳轉(zhuǎn)到書(shū)目的頁(yè)面,若不匹配,則彈出帳號(hào)錯(cuò)誤或密碼錯(cuò)誤的提示。如圖5-1所示 圖5-1具體代碼如下:Private Sub button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles button1.Click Dim str As String Dim passstr As String passstr = Trim(CStr(TextBox2.Text) str = & TextBox1.Text & Dim sql As String = select * from adminlis

17、t where 帳號(hào)= & Trim(str) 在數(shù)據(jù)庫(kù)中搜索帳號(hào)為textbox1.text的數(shù)據(jù) Dim connstr As String = server=localhost;uid=sa;pwd=;database=book Dim myconn As New SqlClient.SqlConnection(connstr) Dim da As New SqlClient.SqlDataAdapter(sql, myconn) Dim ds As New DataSet da.Fill(ds, adminlist) Dim dacomm As SqlClient.SqlCommand

18、Builder = New SqlClient.SqlCommandBuilder(da) If ds.Tables(adminlist).Rows.Count = 1 Then判斷帳號(hào)密碼是否和數(shù)據(jù)庫(kù)匹配 If passstr = Trim(ds.Tables(adminlist).Rows(0)(密碼) Then Response.Redirect(book.aspx) Else Response.Write(密碼錯(cuò)誤!) End If Else Response.Write(用戶(hù)名不存在!) End If End SubEnd Class5.2用datagrid顯示數(shù)據(jù)首先建立datag

19、rid,通過(guò)連接數(shù)據(jù)庫(kù),將數(shù)據(jù)顯示在datagrid中。如圖5-2所示圖 5-2 書(shū)目頁(yè)面book.aspx具體代碼如下:Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load binddata()End SubSub binddata() Dim myconnection As New SqlConnection(initial catalog=book;uid=sa;pwd=) Const strsql As String = select *

20、 from book08 order by 書(shū)號(hào) Dim mycommand As New SqlCommand(strsql, myconnection) Dim myda As New SqlDataAdapter myda.SelectCommand = mycommand Dim myds As New DataSet myda.Fill(myds) DataGrid1.DataSource = myds DataGrid1.DataBind() End Sub5.3 添加歷史書(shū)目 (1)history.aspx在登陸系統(tǒng)并選擇插入歷史書(shū)本后,進(jìn)入添加歷史書(shū)目的頁(yè)面,決定選擇哪條記錄進(jìn)

21、行添加。如圖5-3插入歷史書(shū)目圖所示圖5-3 插入歷史書(shū)目圖 在單擊左側(cè)的選擇后,自動(dòng)跳轉(zhuǎn)到update1.aspx,根據(jù)所選擇的書(shū)目,進(jìn)行相應(yīng)的修改后添加到記錄中去。具體代碼如下:頁(yè)面登陸事件代碼:Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load If Not Page.IsPostBack Then binddata() End If End Sub連接數(shù)據(jù)庫(kù): Sub binddata() Dim myconnection As New

22、 SqlConnection(“initial catalog=book;uid=sa;pwd=“) Const strsql As String = “select * from book07 order by 書(shū)號(hào)” Dim mycommand As New SqlCommand(strsql, myconnection) Dim myda As New SqlDataAdapter Myda.SelectCommand = mycommand Dim myds As New DataSet Myda.Fill(myds) DataGrid1.DataSource = myds DataG

23、rid1.DataBind() End Sub確定所選擇的行的數(shù)據(jù),并把該行相應(yīng)的內(nèi)容分別通過(guò)session變量?jī)?chǔ)存下來(lái)。Private Sub DataGrid1_ItemCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) Handles DataGrid1.ItemCommand Dim b_no As TableCell = e.Item.Cells(1) Dim b_name As TableCell = e.Item.Cells(2) Dim b_

24、a As TableCell = e.Item.Cells(3) Dim b_b As TableCell = e.Item.Cells(4) Dim b_c As TableCell = e.Item.Cells(5) Session(“a”) = b_no.Text Session(“b”) = b_name.Text Session(“c”) = b_a.Text Session(“d”) = b_b.Text Session(“e”) = b_c.Text Response.Redirect(“history1.aspx”)End SubButton_click事件,重定向到book.

25、aspx頁(yè)面 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Response。Redirect(“book.aspx”) End SubEnd class(2)history1.aspx頁(yè)面:通過(guò)上一個(gè)頁(yè)面的選擇后,該頁(yè)面進(jìn)行修改并添加的操作。如圖4-4修改添加記錄圖所示:圖5-4 添加記錄圖該頁(yè)面中將征定時(shí)間和數(shù)量的值用textbox表示,是為了方便在插入歷史書(shū)目的時(shí)候修改它的時(shí)間和它的數(shù)量。當(dāng)管理員修改完成后,則可單擊確定

26、添加操作,將數(shù)據(jù)添加到08年的數(shù)據(jù)庫(kù)中。具體代碼如下:頁(yè)面登陸代碼:Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load If Not IsPostBack Then Dim str As String str = “ & Label6.Text & “ Dim sql As String = “select * from book07 where 書(shū)號(hào) =“ & Trim(Session(“a”) Dim connstr As String =

27、 “server=localhost;uid=sa;pwd=;database=book” Dim myconn As New SqlClient.SqlConnection(connstr) Dim da As New SqlClient.SqlDataAdapter(sql, myconn) Dim ds As New DataSet Da.Fill(ds, “book07”) Dim dacomm As SqlClient.SqlCommandBuilder = New SqlClient.SqlCommandBuilder(da) Label6.Text = ds.Tables(“bo

28、ok07”).Rows(0)(“書(shū)號(hào)”) Label7.Text = ds.Tables(“book07”).Rows(0)(“書(shū)名”) Label8.Text = ds.Tables(“book07”).Rows(0)(“作者”) TextBox1.Text = ds.Tables(“book07”).Rows(0)(“征定時(shí)間”) TextBox2.Text = ds.Tables(“book07”).Rows(0)(“數(shù)量”) End If End Sub修改后添加到數(shù)據(jù)庫(kù)的代碼:Private Sub Button1_Click(ByVal sender As System.Objec

29、t, ByVal e As System.EventArgs) Handles Button1.Click Dim str As String Dim litem As ListItem str = “ & Label6.Text & “ Dim sql As String = “select * from book08 where 書(shū)號(hào)=“ & Trim(str) Dim connstr As String = “server=localhost;uid=sa;pwd=;database=book” Dim myconn As New SqlConnection(connstr) Dim d

30、a As New SqlDataAdapter(sql, myconn) Dim ds As New DataSet da。Fill(ds, “book08”) Dim myrow As DataRow Dim dacomm As SqlClient.SqlCommandBuilder = New SqlClient.SqlCommandBuilder(da) If ds.Tables(“book08”).Rows.Count = 1 Then Response.Write(“此書(shū)已存在”) End If myrow = ds.Tables(“book08”).NewRow myrow(“書(shū)號(hào)

31、”) = Trim(Label6.Text) myrow(“書(shū)名”) = Trim(Label7.Text) myrow(“作者”) = Trim(Label8.Text) myrow(“征定時(shí)間”) = Trim(TextBox1.Text) myrow(“數(shù)量”) = Trim(TextBox2.Text) ds.Tables(“book08”).Rows.Add(myrow) da.UpdateCommand = dacomm.GetUpdateCommand da.Update(ds, “book08”) Response.Redirect(“book.aspx”) End Sub單擊

32、返回按鈕后,重定向到history.aspx的代碼:Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click Response.Redirect(“history.aspx”) End SubEnd Class5.4 刪除記錄在登陸系統(tǒng)后點(diǎn)擊修改按鈕進(jìn)入修改頁(yè)面delete.aspx,通過(guò)復(fù)選框的選擇,刪除數(shù)據(jù)。如下圖5-5刪除頁(yè)面所示:圖5-5 刪除頁(yè)面 該頁(yè)面通過(guò)復(fù)選框的操作刪除數(shù)據(jù)后,重定向回該頁(yè)面,以便顯示刪除后數(shù)據(jù)的更新。具體代

33、碼如下:頁(yè)面登陸代碼:Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load If Not Page.IsPostBack Then 用來(lái)確認(rèn)頁(yè)面是否第一次登陸 binddata() End If End Sub Sub binddata() 連接到數(shù)據(jù)庫(kù) Dim myconnection As New SqlConnection(“initial catalog=book;uid=sa;pwd=“) Const strsql As String

34、= “select * from book08 order by 書(shū)號(hào)” Dim mycommand As New SqlCommand(strsql, myconnection) Dim myda As New SqlDataAdapter Myda.SelectCommand = mycommand Dim myds As New DataSet Myda.Fill(myds) DataGrid1.DataSource = myds DataGrid1.DataBind() myda.Update(myds, “book08”) End SubButton_click事件: Private

35、 Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim i As Integer Dim x As String Dim item As DataGridItem For i = 0 To DataGrid1.Items.Count 1 item = DataGrid1.Items(i) Dim bookcheckbox As CheckBox = item.FindControl(“checkbox1”) If bookcheckbox.C

36、hecked Then 確認(rèn)數(shù)據(jù)是否被點(diǎn)擊進(jìn)行刪除 x = item.Cells(1).Text x為datagrid第二列的數(shù)據(jù)的內(nèi)容 deletedataset(x) End If Next binddata() Response.Write(“刪除成功!”) End Sub Sub deletedataset(ByVal y As String) Dim con As New SqlConnection(“initial catalog=book;uid=sa;pwd=“) Dim cmd As SqlCommand Dim qry As String Con.Open() qry =

37、“delete book08 where 書(shū)號(hào)=“ & y & “ cmd = New SqlClient.SqlCommand(qry, con) cmd.ExecuteNonQuery() con.Close() End SubButton_click的重定向事件 Private Sub Button2_Click(ByVal sender As System。Object, ByVal e As System.EventArgs) Handles Button2.Click Response.Redirect(“book.aspx”)End subEnd class添加新教材和修改記錄兩

38、大模塊共三個(gè)頁(yè)面的代碼編寫(xiě)與設(shè)計(jì)。具體設(shè)計(jì)如圖5-6所示:圖5-6 添記錄頁(yè)面 new.Aspx(1)添加新教材。在登陸系統(tǒng)并選擇錄入新書(shū)后,進(jìn)入添加新教材頁(yè)面。如3-6圖所示:對(duì)textbox1到textbox5添加RequiredFiledValidator控件,并設(shè)置相應(yīng)屬性使textbox中的文本不能為空。對(duì)textbox1添加RegularExpressionValidator控件,設(shè)置ValidationExpression屬性為”d4”,ErrorMessage為”書(shū)號(hào)的格式為0001”。對(duì)textbox1添加RangeValidator控件,設(shè)置MinimunValue為”00

39、01”,MaxmumValue為”9999”。使書(shū)號(hào)的取值范圍為00019999。對(duì)textbox4添加RegularExpressionValidator控件,設(shè)置ValidationExpression屬性為”d4-d1,2”,使時(shí)間格式為2008-1。對(duì)textbox5添加RangeValidator控件,設(shè)置MinimunValue為”1”,MaxmumValue為”99”,使訂閱的教材數(shù)量在1-99本之間。該頁(yè)面程序代碼如下:Page Load事件代碼Private Sub Page_Load(ByVal sender As System.Object, ByVal e As Sys

40、tem.EventArgs) Handles MyBase.LoadEnd SubButton Click事件代碼Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim str As String Dim litem As ListItem str = & TextBox1。Text & Dim sql As String = select * from book08 where 書(shū)號(hào)= & Trim(str) Dim conn

41、str As String = server=localhost;uid=sa;pwd=;database=book Dim myconn As New SqlConnection(connstr) Dim da As New SqlDataAdapter(sql, myconn) Dim ds As New DataSet da。Fill(ds, book08) Dim myrow As DataRow Dim dacomm As SqlClient.SqlCommandBuilder = New SqlClient.SqlCommandBuilder(da) If ds.Tables(bo

42、ok08).Rows.Count = 1 Then Response.Redirect(new.aspx) Response.Write(書(shū)號(hào)重復(fù),請(qǐng)重新輸入) End Ifmyrow = ds.Tables(book08).NewRow myrow(書(shū)號(hào)) = Trim(TextBox1.Text) myrow(書(shū)名) = Trim(TextBox2.Text) myrow(作者) = Trim(TextBox3.Text) myrow(征定時(shí)間) = Trim(TextBox4.Text) myrow(數(shù)量) = Trim(TextBox5.Text) ds.Tables(book08).

43、Rows.Add(myrow) da.UpdateCommand = dacomm.GetUpdateCommand da.Update(ds, book08) Response.Redirect(book.aspx)End Sub(2) 修改記錄。在登陸系統(tǒng)后點(diǎn)擊修改按鈕進(jìn)入修改頁(yè)面update.aspx。如圖5-7所示:圖5-7 修改頁(yè)面update.Aspx 在該頁(yè)面設(shè)計(jì)中添加SqlDataAdapter控件和DataSet控件,用于執(zhí)行ADO。NET數(shù)據(jù)庫(kù)訪(fǎng)問(wèn)的相關(guān)操作。該頁(yè)中的數(shù)據(jù)通過(guò)DataGrid控件顯示,設(shè)置相應(yīng)屬性,將其綁定到表book08,使其顯示book08中的數(shù)據(jù)。在D

44、ataGrid控件中添加一個(gè)按鈕列,列名為選擇。當(dāng)用戶(hù)點(diǎn)擊該列的按鈕時(shí)自動(dòng)獲取該行的相關(guān)值,將其賦值給Session變量并跳轉(zhuǎn)到update1。aspx。update1。aspx如圖:5-8所示圖5-8 修改選擇后的記錄 update1.aspx頁(yè)面中textbox的文本來(lái)自與update.aspx中定義并賦值的Session變量。用戶(hù)通過(guò)修改其中的文本值并單擊確定完成修改。修改部分代碼如下:update.aspx中的Page Load事件Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventAr

45、gs) Handles MyBase.Load If Not Page.IsPostBack Then binddata() End IfEnd Sub用于加載頁(yè)面及確認(rèn)是否第一次訪(fǎng)問(wèn)。Update.aspx中的binddata事件private Sub binddata() Dim myconnection As New SqlConnection(initial catalog=book;uid=sa;pwd=) Const strsql As String = select * from book08 order by 書(shū)號(hào) Dim mycommand As New SqlCommand(strsql, myconnection) Dim myda As New SqlDataAdapter Myda.SelectCommand = mycommand Dim myds As New DataSet Myda.Fill(myds) DataGrid1.DataSource = myds DataGrid1.DataBind()End Sub用于連接數(shù)據(jù)庫(kù)并定義相關(guān)操作。Update.aspx中設(shè)置DataGrid中的ItemCommandPrivate Sub DataGrid1_ItemCommand(ByVal source As Object, B

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論