教務(wù)管理系統(tǒng)需求分析_第1頁
教務(wù)管理系統(tǒng)需求分析_第2頁
教務(wù)管理系統(tǒng)需求分析_第3頁
教務(wù)管理系統(tǒng)需求分析_第4頁
教務(wù)管理系統(tǒng)需求分析_第5頁
已閱讀5頁,還剩44頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1教務(wù)管理系統(tǒng)需求分析

教務(wù)管理系統(tǒng)所必備的功能歸納為如圖所示,其中每個功能都由若干相關(guān)聯(lián)的子功能模塊組成。

教務(wù)管理系統(tǒng)

系統(tǒng)管理

繼承管理

畢業(yè)管理

考務(wù)成績管理

排課選課管理

注冊收費(fèi)管理

教師管理

學(xué)籍管理

課程管理

教學(xué)計劃管理

基礎(chǔ)數(shù)據(jù)系統(tǒng)

圖1.1教務(wù)管理系統(tǒng)的基本功能模塊

1.1系統(tǒng)數(shù)據(jù)流程

系統(tǒng)的數(shù)據(jù)流程如圖所示。

異動管理

獎罰管理

招生系統(tǒng)

學(xué)籍管理

收費(fèi)系統(tǒng)

注冊系統(tǒng)

課程管理系統(tǒng)

教學(xué)計劃系統(tǒng)

選課系統(tǒng)

排課系統(tǒng)

教師錄入系統(tǒng)

成績管理系統(tǒng)

重修重考

排考表系統(tǒng)

畢業(yè)管理系統(tǒng)

圖1.2系統(tǒng)數(shù)據(jù)流程

1.2基礎(chǔ)數(shù)據(jù)管理

“基礎(chǔ)數(shù)據(jù)管理”功能模塊用于維護(hù)整個教務(wù)系統(tǒng)正常運(yùn)行所需的基礎(chǔ)數(shù)據(jù)集,以保證教務(wù)系統(tǒng)有一個統(tǒng)一的標(biāo)準(zhǔn)的基礎(chǔ)數(shù)據(jù)集,便于數(shù)據(jù)的共享使用,內(nèi)容包括包括入學(xué)年份、學(xué)年學(xué)期、院系數(shù)據(jù)、專業(yè)設(shè)置、教研室情況等,其中所包含子功能模塊如圖所示

基礎(chǔ)數(shù)據(jù)管理

基本信息

專業(yè)代碼

學(xué)期代碼

學(xué)年代碼

科屬部門代碼

班級代碼

教室代碼

學(xué)歷代碼

職稱代碼

其他基礎(chǔ)信息管理

教師代碼管理

教學(xué)計劃名稱管理

圖“基礎(chǔ)數(shù)據(jù)管理”功能模塊

1.3教學(xué)計劃管理

“教學(xué)計劃管理”功能模塊用于維護(hù)學(xué)校中各系各專業(yè)的課程、課組計劃安排信息,作為選課和畢業(yè)審查的標(biāo)準(zhǔn),包括的功能有課程計劃登記、課程計劃審批、選課情況查詢、選課信息審批等。

1.4 學(xué)籍管理

“學(xué)籍管理”主要包括了高校學(xué)籍管理的常用信息,提供對學(xué)生學(xué)籍基本信息錄入、查詢、修改、打印輸出、維護(hù)等常用功能,并提供學(xué)號編排、學(xué)生照片輸入與顯示、學(xué)籍變動(留級、休學(xué)、跳級、轉(zhuǎn)班、轉(zhuǎn)學(xué)、退學(xué)等)、獎懲登記畢業(yè)情況等功能。

1.5 教師管理

“教師管理”功能模塊用于管理教師相關(guān)的信息,提高質(zhì)量,保證教學(xué)工作的高效運(yùn)行,其中包含的子功能模塊如圖所示。

教師進(jìn)修檔案

教師課時數(shù)統(tǒng)計

教師考評管理

教師獎罰檔案

教師任課檔案

教師基本信息

教師管理

圖1.4“教師管理”功能模塊

“教師基本信息”用于管理教師的基本信息,如所學(xué)專業(yè)、學(xué)歷、畢業(yè)院校等。

“教師任課檔案”用于管理教師任課檔案信息,如教師姓名、學(xué)歷和學(xué)期、任課班級、課程、周時數(shù)、總時數(shù)等。

“教師獎懲檔案”用于管理教師獎懲檔案信息,如教師姓名、獎懲日期、類別原因、獎懲名稱、獎懲等級等。

“教師考評管理”用于對教師進(jìn)行考評。

“教師課時數(shù)統(tǒng)計”用于統(tǒng)計教師工作量。

“教師進(jìn)修檔案”用于管理教師進(jìn)修檔案信息,如教師姓名、進(jìn)修日期、進(jìn)修科目、進(jìn)修單位、進(jìn)修成績等。

1.6 注冊收費(fèi)管理

“注冊管理”功能模塊用于記錄學(xué)生新學(xué)期的注冊情況,如果未注冊將記錄學(xué)生的未注冊原因及未注冊去向?!笆召M(fèi)管理”功能模塊用于記錄學(xué)生開學(xué)初的收費(fèi)情況,每個學(xué)生的收費(fèi)標(biāo)準(zhǔn)來自學(xué)生學(xué)籍信息中的收費(fèi)類別。

1.7 排課選課管理

“排課選課管理”功能模塊用于根據(jù)教學(xué)計劃、教室資源、教師資源等,制定每學(xué)期的課程表,其中包含的子功能模塊如圖所示。

學(xué)生選課

自動排課

人工排課

合班信息設(shè)定

排課時段設(shè)定

教室分區(qū)設(shè)定

課程信息錄入

教室排課設(shè)定

教師排課設(shè)定

班級課程配置

全校排課設(shè)定

條件設(shè)置

排課選課管理

圖1.5“排課選課管理”功能模塊

“條件設(shè)定”用于設(shè)置排課的一些限制條件,如班級、教師、教室的排課時段限制。

“全校排課設(shè)定”用于對某學(xué)期全校課表的共同部分進(jìn)行設(shè)置,如課表的統(tǒng)一抬頭、沒天上課節(jié)數(shù)、統(tǒng)一的排課時段等進(jìn)行設(shè)置。

“班級課程配置”用于對某個班級某學(xué)期具體開設(shè)的課程分別進(jìn)行排課時段、單雙周】連堂課等特殊情況設(shè)置。

“教師排課設(shè)定”用于對個別教師的排課時段進(jìn)行特殊設(shè)置。

“教室排課設(shè)定”用于對個別教室的排課時段進(jìn)行特殊設(shè)置。

“課程信息錄入”用于對一些臨時添加或修改的課程(不在教學(xué)計劃之列的)進(jìn)行設(shè)置。

“教室分區(qū)設(shè)定”用于把學(xué)校所有教室依據(jù)空間設(shè)置、使用類別等進(jìn)行分區(qū)分組設(shè)置。

“排課時段設(shè)定”用于設(shè)置在一周的哪些時段安排課程,針對不同的班級、教室、教師只有給他們的排課時段相同可以通用。

“合班信息設(shè)定”用于對公共選修課打破行政班級的限制,在某個學(xué)期臨時性的把幾個班級組合在一起上課。

“人工排課”用于自動排課進(jìn)行人工干預(yù),常針對哪些調(diào)課、代課進(jìn)行臨時處理。

“自動排課”用于根據(jù)排課管理員設(shè)置的課程信息,以班級為單位進(jìn)行自動的排課。

“學(xué)生選課”用于學(xué)生選擇本學(xué)期的課程,目前一般都在網(wǎng)上直接完成。

1.8 考務(wù)成績管理

“考務(wù)成績管理”功能模塊用于根據(jù)課程自動生成本學(xué)期的考試地點(diǎn)、考試時間、監(jiān)考老師等數(shù)據(jù),并對考試的過程和結(jié)果進(jìn)行監(jiān)控,其中包含的子功能模塊如圖所示。

補(bǔ)考通知單

補(bǔ)考成績錄入

學(xué)生成績錄入

考試情況記錄

評卷安排

考試日程安排

考務(wù)信息發(fā)布

教務(wù)成績管理

班級班級成績單

圖1.6“考務(wù)成績管理”功能模塊

“考務(wù)信息發(fā)布”用于發(fā)布考務(wù)信息,如學(xué)年、學(xué)期、期中(期末)考試、考試時間等,以及其他一些有關(guān)考務(wù)的事項。

“考試日程安排”用于管理考試日期、時間、考試科目、考試班級、監(jiān)考老師、考場等信息。

“評卷安排”用于對評卷專業(yè)、評卷科目、評卷教師、評卷日期、時間等評卷信息進(jìn)行管理。

“考場情況記錄”用于對考場情況進(jìn)行管理,如考試班級、考試科目、應(yīng)考人數(shù)、實到人數(shù)、違紀(jì)記錄情況等。

“學(xué)生成績錄入”用于授課教師輸入學(xué)生的考試成績。

“補(bǔ)考成績錄入”用于授課教師輸入學(xué)生的補(bǔ)考成績。

“補(bǔ)考通知單”用于教務(wù)處依據(jù)班級、個人、課程、進(jìn)行不及格統(tǒng)計,并打印出學(xué)生的補(bǔ)考通知單。

“班級成績單”用于以班級為單位,打印該班級所開設(shè)課程的每個學(xué)生的成績,送交教務(wù)處存檔用。

1.9 畢業(yè)管理

“畢業(yè)管理”功能模塊用于對學(xué)生畢業(yè)進(jìn)行處理,同時對畢業(yè)信息、學(xué)位授予、證書授予及校友信息等進(jìn)行管理,其中包含的子功能模塊如圖所示。

畢業(yè)管理

成績單管理

畢業(yè)審核

論文管理

實習(xí)管理

畢業(yè)管理

技能管理

圖1.7“畢業(yè)管理”功能模塊

“技能管理”用于對學(xué)生在校期間獲得資格證書進(jìn)行存檔,有利于提高學(xué)生的綜合素質(zhì)。

“實習(xí)管理”用于記錄學(xué)生在校期間的實習(xí)情況。

“論文管理”用于記錄學(xué)生的畢業(yè)論文情況,供日后查詢或借鑒。

“畢業(yè)審核”用于根據(jù)學(xué)生的所在系(所)、專業(yè)的教師計劃、選課成績和學(xué)籍來審查該省是否具備畢業(yè)資格。

“畢業(yè)管理”用于記錄學(xué)生的畢業(yè)信息,包括畢業(yè)證書號、工作去向等。

1.10 教材管理

“教材管理”功能模塊用于對教材庫存、教材計劃、教材預(yù)定、班級預(yù)收款、教材采購及教材銷售工資進(jìn)行有效管理,其中包含的子功能如圖所示。

教師領(lǐng)書

教材采購

庫存管理

教材計劃

開課教材設(shè)置

教材信息設(shè)置

教材管理管理

圖1.8“教材管理”功能模塊

2教務(wù)管理系統(tǒng)數(shù)據(jù)庫分析

“學(xué)生信息”,“教師信息”,“課程信息”等都是系統(tǒng)的關(guān)鍵表,其他數(shù)據(jù)表與這些關(guān)鍵表間的關(guān)系是N:1的關(guān)系。

2.1 教務(wù)管理系統(tǒng)E-R圖

關(guān)鍵實體的E-R圖如圖所示。

學(xué)籍代碼表

PK學(xué)籍編號

學(xué)籍名稱

政治面貌代碼表

PK政治面貌編號

名族

民族代碼表

PK民族編號

名族

籍貫代碼碼表

PK籍貫編碼

籍貫

籍貫籍貫

班級信息

PK

班級編號

年級

班級名稱

班級簡稱

人數(shù)

班主任

成績表

PK學(xué)號

姓名

班級編號

性別

年級

政治面貌編號

名族編號

籍貫編號

身份證號

學(xué)籍編號

成績表

PK編號

FK1學(xué)號

FK2課程編號

成績

考試次數(shù)

是否補(bǔ)修

是否重考

是否以確定成績

課程表

PK編號

PK編號

課序表

課程編號

上課時間天

上課時間節(jié)

上課地點(diǎn)

課程表

PK編號

Pk1學(xué)號

課序號

成績表

PK編號

PK課程編號

課程名稱

課程簡稱

拼音碼

本學(xué)期課程

教師

開課系別

學(xué)分

圖2.1教務(wù)管理系統(tǒng)E-R圖

2.2教務(wù)管理系統(tǒng)數(shù)據(jù)表清單

重要表的名稱及用途如表所示。

數(shù)據(jù)表名稱 數(shù)據(jù)表用途

Bjbkb 班級報考表

Bjcjb 班級成績表(打印用)

Bjjhcjb 班級計劃成績表(顯示和打印用)

Bjhks 班計劃學(xué)期考試課程表

Bjhxq 班計劃學(xué)期課程開設(shè)表

Bjxjh班教學(xué)計劃信息表

Bjxxb版注冊和檔案表

Bkbpdfb報考編排登分表

Kctdmkb_tmp畢業(yè)課程替代免考表

Kctdmkb畢業(yè)課程代替免考表

Bysmdb畢業(yè)生名單

Bycymdb畢業(yè)預(yù)審審核差異名單表

Byyshsdfb畢業(yè)預(yù)審審核得分表

Byyshsdfb_tmp畢業(yè)預(yù)審審核得分表

Cgdw 采購單位

Cgdwdhzz采購單位到貨總賬

Cgdwhzz采購單位總賬

Cgdhmxb采購到貨明細(xì)表

Cgdhmxml采購到貨明細(xì)目錄

Cgmxb采購明細(xì)表

Cgzb采購總表

Cjdmb成績代碼表

Cjgdb成績更動表

Cjtjb成績統(tǒng)計表

Cjzb 成績總表

Cjzb_copy 成績總表

Dgdw 訂購單位

Dgdwmxb 訂購單位明細(xì)表

Dgmxb 訂購明細(xì)表

Dgzb 訂購總表

Fxzyb輔修專表

Jhkkkcb 計劃開考課程表

Jhkkkcd 計劃開考課程傳遞表

Jljb 獎勵級別

Jlqkjzb 獎勵情況記載表

Jccgfbml 教材采購分單目錄

Jccgjsb 教材采購計算表

Jccgmxb 教材采購明細(xì)表

Jccgshb教材采購審核表

Jcch 教材冊號

Jcdgzb 教材訂購總表

Jclxmdz 教材類型編碼對照

Jcsmmb教材說明模板

Jcthzt 教材替換狀態(tài)

Dgdwzb 教材征訂訂購單位總表

Jczb 教材總表

Jxbm 教學(xué)部門表

Jxdg 教學(xué)大綱

Jxhjdy 教學(xué)環(huán)境定義

Kkdw 開課單位表

Kcqkb 考試情況表

Kdxxb 考點(diǎn)代碼表

Kslb 考生類別代碼表

Ksdmb 考試代碼表

Ksdmcd 考試代碼傳遞表

Ksdxb 考試對象表

Ksfsdm 考試方式代碼表

Kslxdmd 考試類型代碼表

Kccc 課程層次代碼表

Kcgldw 課程管理單位

Kcjsfs 課程建設(shè)方式

Kcjsjb 課程建設(shè)級別表

Kcjslb 課程建設(shè)類別

Kcjcdzb課程教材對照

Kclb 課程類別代碼表

Kctdb 課程代替表

Kcxz 課程性質(zhì)代碼表

Kczb 課程總表

Ljhkc類計劃課程表

Ljhxq 類計劃學(xué)期開設(shè)課程表

Ljhks 類計劃學(xué)期考試課程表

Ljxjh 類教學(xué)計劃表

Mzdm 民族代碼表

Ndszb 年度收支表

Njdm 年紀(jì)代碼表

Njkc 年紀(jì)課程表

Njcy 年期專業(yè)表

Njzy 新開課程表

Xkkc 新生注冊表

Xszcb 學(xué)費(fèi)來源代碼表

Xfly 學(xué)籍變動代碼表

Xjyd 學(xué)籍變動記載表

Xjydjzb 學(xué)籍狀態(tài)代碼表

Xjzt 學(xué)生非在籍和畢業(yè)生統(tǒng)計表

Xsbyfzjtj 學(xué)生基本情況表

Xsjbdab 學(xué)生基本情況表

Xsjhcjb 學(xué)生計劃成績表(顯示和打印用)

Xslb 學(xué)生類別代碼表

Xslx學(xué)生類型代碼表

User_xslx 學(xué)生類型代碼對應(yīng)表

3 制作介紹

3.1實例功能

實例介紹如圖所示功能的開發(fā)過程,并簡化其中各功能所包含的屬性。

需要強(qiáng)調(diào)的是,由于用戶登陸和權(quán)限管理的功能各個系統(tǒng)實現(xiàn)的方法是一致的,

教務(wù)管理系統(tǒng)(制作演示)

基礎(chǔ)維護(hù)

教學(xué)管理

報表統(tǒng)計

班級信息維護(hù)表

學(xué)生信息維護(hù)

課程信息維護(hù)

學(xué)生學(xué)課

課表查詢

成績輸入

但因成績單那

圖2.2詳細(xì)介紹的功能模塊

系統(tǒng)流程圖

系統(tǒng)流程圖2.3所示。

班級信息表

班級信息維護(hù)

學(xué)生信息表

查詢課程表

學(xué)生信息維護(hù)

學(xué)生選課

操作員

成績輸入

課程信息表

課程信息維護(hù)

打印成績單

教師信息表

教師信息維護(hù)

圖2.3系統(tǒng)流程圖

數(shù)據(jù)庫設(shè)計

根據(jù)實例介紹,“學(xué)生信息表”和“課程信息”是系統(tǒng)關(guān)鍵的表,其他各表均通過相應(yīng)的編號字段進(jìn)行多對一的關(guān)聯(lián)。系統(tǒng)共需10張表,用途分別如表2.4所示。

表2.4系統(tǒng)數(shù)據(jù)表及其用途

數(shù)據(jù)表名稱

數(shù)據(jù)表用途

政治面貌代碼表

保存學(xué)生政治面貌的代碼和政治面貌,如團(tuán)員、黨員等

名族代碼表

保存學(xué)生名族的代碼和名族,如漢族、壯族等

籍貫代碼表

保存學(xué)生籍貫的代碼和籍貫,如北京,廣西等

學(xué)籍代碼表

保存學(xué)生學(xué)籍的代碼和學(xué)籍,如在學(xué)、休學(xué)、畢業(yè)等

班級信息

保存班級的基礎(chǔ)信息

學(xué)生信息

保存學(xué)生的基礎(chǔ)信息

課程信息

保存課程的基礎(chǔ)信息

課程表

保存課程的上課時間和地點(diǎn)的信息,一般有排課子系統(tǒng)生成。

成績表

保存學(xué)生的課程成績

4.1創(chuàng)建數(shù)據(jù)庫

創(chuàng)建 SQLServer企業(yè)管理器,新建一個數(shù)據(jù)庫,將其命名為eisbook。

創(chuàng)建“班級信息”數(shù)據(jù)表

CREATETABLE[dbo].[班級信息](

[班級編號][varchar](14)NOTNULL,

[年級][varchar](4)NULL,

[班級名稱][varchar](30)NULL,

[班級簡稱][varchar](16)NULL,

[人數(shù)][numeric](3,0)NULL,

[班主任][varchar](8)NULL

)ON[PRIMARY]

GO

創(chuàng)建“學(xué)生信息”數(shù)據(jù)庫

CREATETABLE[dbo].[學(xué)生信息](

[學(xué)號][varchar](14)NOTNULL,

[姓名][varchar](8)NULL,

[班級編號][varchar](14)NULL,

[性別][varchar](2)NULL,

[年級][int]NULL,

[政治面貌編號][varchar](2)NULL,

[民族編號][varchar](2)NOTNULL,

[籍貫編號][varchar](2)NOTNULL,

[身份證號][varchar](15)NULL,

[學(xué)籍編號][varchar](2)NOTNULL

)ON[PRIMARY]

GO

創(chuàng)建“課程信息”數(shù)據(jù)表

CREATETABLE[dbo].[課程信息](

[課程編號][int]NOTNULL,

[課程名稱][char](40)NOTNULL,

[課程簡稱][char](40)NOTNULL,

[拼音碼][char](6)NULL,

[本學(xué)期課程][char](2)NOTNULL,

[教師][char](10)NULL,

[開課系別][char](30)NULL,

[學(xué)分][int]NULL

)ON[PRIMARY]

GO

創(chuàng)建“課程表”數(shù)據(jù)表

CREATETABLE[dbo].[課程表](

[編號][int]IDENTITY(1,1)NOTNULL,

[課序號][varchar](14)NOTNULL,

[課程編號][int]NOTNULL,

[上課時間天][int]NOTNULL,

[上課時間節(jié)][int]NOTNULL,

[上課地點(diǎn)][varchar](20)NOTNULL

)ON[PRIMARY]

GO

CREATETABLE[dbo].[選課表](

[編號][int]IDENTITY(1,1)NOTNULL,

[學(xué)號][varchar](14)NOTNULL,

[課序號][varchar](14)NOTNULL

)ON[PRIMARY]

GO

創(chuàng)建“成績表”數(shù)據(jù)庫

CREATETABLE[dbo].[成績表](

[編號][int]IDENTITY(1,1)NOTNULL,

[學(xué)號][varchar](14)NOTNULL,

[課程編號][int]NOTNULL,

[成績][int]NOTNULL,

[考試次數(shù)][int]NULL,

[是否補(bǔ)修][varchar](2)NULL,

[是否重考][varchar](2)NULL,

[是否已確定成績][varchar](2)NULL

)ON[PRIMARY]

GO

創(chuàng)建其他關(guān)鍵數(shù)據(jù)表

以下是其他關(guān)鍵數(shù)據(jù)庫的創(chuàng)建腳本。

CREATETABLE[dbo].[政治面貌代碼表](

[政治面貌編號][varchar](2)NOTNULL,

[政治面貌][varchar](14)NULL

)ON[PRIMARY]

GO

CREATETABLE[dbo].[民族代碼表](

[民族編號][varchar](2)NOTNULL,

[民族][varchar](18)NULL

)ON[PRIMARY]

GO

ALTERTABLE[dbo].[學(xué)籍代碼表]WITHNOCHECKADD

CONSTRAINT[PK_學(xué)籍代碼表]PRIMARYKEYCLUSTERED

(

[學(xué)籍編號]

)ON[PRIMARY]

GO

CREATETABLE[dbo].[籍貫代碼表](

[籍貫編號][varchar](2)NOTNULL,

[籍貫][varchar](18)NULL

)ON[PRIMARY]

GO

創(chuàng)建主鍵及外鍵等表約束。

在查詢分析器中通過如下代碼創(chuàng)建數(shù)據(jù)表的主鍵及外鍵等表約束。

ALTERTABLE[dbo].[學(xué)生信息]WITHNOCHECKADD

CONSTRAINT[PK_學(xué)生信息]PRIMARYKEYCLUSTERED

(

[學(xué)號]

)ON[PRIMARY]

GO

ALTERTABLE[dbo].[學(xué)籍代碼表]WITHNOCHECKADD

CONSTRAINT[PK_學(xué)籍代碼表]PRIMARYKEYCLUSTERED

(

[學(xué)籍編號]

)ON[PRIMARY]

GO

ALTERTABLE[dbo].[成績表]WITHNOCHECKADD

CONSTRAINT[PK_成績表]PRIMARYKEYCLUSTERED

(

[編號]

)ON[PRIMARY]

GO

ALTERTABLE[dbo].[政治面貌代碼表]WITHNOCHECKADD

CONSTRAINT[PK_政治面貌代碼表]PRIMARYKEYCLUSTERED

(

[政治面貌編號]

)ON[PRIMARY]

GO

ALTERTABLE[dbo].[民族代碼表]WITHNOCHECKADD

CONSTRAINT[PK_民族代碼表]PRIMARYKEYCLUSTERED

(

[民族編號]

)ON[PRIMARY]

GO

ALTERTABLE[dbo].[班級信息]WITHNOCHECKADD

CONSTRAINT[PK_班級信息]PRIMARYKEYCLUSTERED

(

[班級編號]

)ON[PRIMARY]

GO

ALTERTABLE[dbo].[籍貫代碼表]WITHNOCHECKADD

CONSTRAINT[PK_籍貫代碼表]PRIMARYKEYCLUSTERED

(

[籍貫編號]

)ON[PRIMARY]

GO

ALTERTABLE[dbo].[課程信息]WITHNOCHECKADD

CONSTRAINT[PK_課程信息]PRIMARYKEYCLUSTERED

(

[課程編號]

)ON[PRIMARY]

GO

ALTERTABLE[dbo].[課程表]WITHNOCHECKADD

CONSTRAINT[PK_課程表]PRIMARYKEYCLUSTERED

(

[編號]

)ON[PRIMARY]

GO

ALTERTABLE[dbo].[選課表]WITHNOCHECKADD

CONSTRAINT[PK_選課表]PRIMARYKEYCLUSTERED

(

[編號]

)ON[PRIMARY]

GO

ALTERTABLE[dbo].[成績表]ADD

CONSTRAINT[DF_成績表_成績]DEFAULT(0)FOR[成績]

GO

ALTERTABLE[dbo].[學(xué)生信息]ADD

CONSTRAINT[FK_學(xué)生信息_班級信息]FOREIGNKEY

(

[班級編號]

)REFERENCES[dbo].[班級信息](

[班級編號]

),

CONSTRAINT[FK_學(xué)生信息_籍貫代碼表]FOREIGNKEY

(

[籍貫編號]

)REFERENCES[dbo].[籍貫代碼表](

[籍貫編號]

),

CONSTRAINT[FK_學(xué)生信息_民族代碼表]FOREIGNKEY

(

[民族編號]

)REFERENCES[dbo].[民族代碼表](

[民族編號]

),

CONSTRAINT[FK_學(xué)生信息_學(xué)籍代碼表]FOREIGNKEY

(

[學(xué)籍編號]

)REFERENCES[dbo].[學(xué)籍代碼表](

[學(xué)籍編號]

),

CONSTRAINT[FK_學(xué)生信息_政治面貌代碼表]FOREIGNKEY

(

[政治面貌編號]

)REFERENCES[dbo].[政治面貌代碼表](

[政治面貌編號]

)

GO

ALTERTABLE[dbo].[成績表]ADD

CONSTRAINT[FK_成績表_課程信息]FOREIGNKEY

(

[課程編號]

)REFERENCES[dbo].[課程信息](

[課程編號]

),

CONSTRAINT[FK_成績表_學(xué)生信息]FOREIGNKEY

(

[學(xué)號]

)REFERENCES[dbo].[學(xué)生信息](

[學(xué)號]

)

GO

ALTERTABLE[dbo].[課程表]ADD

CONSTRAINT[FK_課程表_課程信息]FOREIGNKEY

(

[課程編號]

)REFERENCES[dbo].[課程信息](

[課程編號]

)

GO

創(chuàng)建存儲過程

系統(tǒng)使用了“sf_終止選課”和“sf_成績提交”兩個存儲過程,分別實現(xiàn)結(jié)算選課,生成空白成績單和教師提交最終的成績但的功能。

createprocsf_成績提交@courseidint

as

begintran

--提交成績,提交后不可以再修改

update成績表set是否已確定成績='Y'where課程編號=@courseid

and成績>0

commit

GO

SETQUOTED_IDENTIFIEROFF

GO

SETANSI_NULLSON

GO

SETQUOTED_IDENTIFIERON

GO

SETANSI_NULLSON

GO

createprocsf_終止選課

as

begintran

--應(yīng)該單獨(dú)有一個【終止選課】的功能,終止選課后生成空的成績單

--所有學(xué)生將不允許更改課程信息,如果需要更改,必須單獨(dú)申請,特殊處理。

--終止選課一學(xué)年應(yīng)該只能進(jìn)行一次操作,實例沒有制作開始選課等功能,終止

--選課后在學(xué)生選課中仍然可以更改選擇的課程。

insertinto成績表(學(xué)號,課程編號,成績,考試次數(shù),是否補(bǔ)修,是否重考,是否已確定成績)

selectdistincta.學(xué)號,b.課程編號,0,1,'N','N','N'from

選課表asa,課程表asbwherea.課序號=b.課序號

andrtrim(a.學(xué)號)+rtrim(b.課程編號)notin

(selectrtrim(學(xué)號)+rtrim(課程編號)from成績表)

--因為沒有記錄選課狀態(tài),上面的sql語句加了判斷,如果成績表以有

--改學(xué)號/課程,就不插入,實際應(yīng)用中如果是重復(fù)的,應(yīng)該是補(bǔ)修和重考

--的情況,應(yīng)該更改已有信息的這些狀態(tài)

--還要注意select語句加了distinct說明,因為選課表一個課序號

--一個學(xué)號可能有兩條記錄

commit

GO

程序開發(fā)

本系統(tǒng)采用多文檔窗體程序,沒一功能對應(yīng)一個子窗體。

程序運(yùn)行結(jié)果

所示。選擇菜單中的各菜單命令可以進(jìn)入相應(yīng)的功能。

選擇【基礎(chǔ)維護(hù)】|【班級信息維護(hù)】命令,進(jìn)入【班級維護(hù)功能窗體】,在其中輸入學(xué)校班級相關(guān)的信息,如圖2.6所示,需要新增或修改信息,單擊相應(yīng)的按鈕,輸入信息后單擊【保存】按鈕即可。需要刪除一條信息,選中該信息后單擊【刪除】按鈕。在搜索條件編輯框輸入搜索的條件,單擊【搜索】按鈕,可以查詢出相應(yīng)的記錄。

選擇【基礎(chǔ)維護(hù)】|【學(xué)生信息維護(hù)】命令,進(jìn)入【學(xué)生信息維護(hù)】功能窗體,如2.7所示,在輸入學(xué)生相關(guān)的信息。其中【班級編號】、【政治編號】、【名族編號】、【籍貫編號】和【學(xué)籍編號】列表框都是通過餓數(shù)據(jù)庫中相應(yīng)的代碼表關(guān)聯(lián)出列表框的選擇項,選擇下拉的一個列表項目后,保存的是該項目的編號信息。

圖2.5實例運(yùn)行結(jié)果

圖2.6班級信息維護(hù)功能窗體

圖2.7學(xué)生信息維護(hù)功能窗體

選擇【基礎(chǔ)維護(hù)】|【課程信息維護(hù)】命令,進(jìn)入【課程信息維護(hù)】功能窗體,在其中輸入課程的信息,如圖2.8所示。

圖2.9課程信息維護(hù)功能窗體

完成以上基礎(chǔ)信息維護(hù)后,就可以運(yùn)行教務(wù)管理的各個功能了。一般教務(wù)管理系統(tǒng)中的基礎(chǔ)信息除了以上信息外還涉及很多其他方面,如教師、教室、系別、教材等信息。在完成了各個資源的設(shè)置后,需要通過排課系統(tǒng)排出課程表。本實例使用現(xiàn)成的課程表演學(xué)生選課、成績登記等功能。

選擇【教學(xué)管理】|【學(xué)生選課】命令,進(jìn)入【學(xué)生選課】功能窗體,如圖3.0所示。首先在【學(xué)號】編輯框中輸入學(xué)號并回車,系統(tǒng)顯示出對應(yīng)學(xué)生信息和該學(xué)生已選的課程;然后在【課程信息】組合框中輸入課程查詢條件,查詢并選擇希望選的課程,單擊【選課】按鈕,系統(tǒng)檢查該門課程是否已選擇,以及該課序號課程的所有上課時間和已選擇課程的上課時間是否沖突,如果都沒有問題就可以完成指定課序號的課程的選課操作。需要注意的是,一般教務(wù)管理系統(tǒng)都是學(xué)生用自己的學(xué)號登陸到系統(tǒng),只能選擇自己的課程,而不是在選課界面輸入學(xué)號,因為實例程序沒有制作登陸功能,所以這么處理了。同時還應(yīng)注意一門課程可以對應(yīng)多個課程號,一個課程號可以對應(yīng)多個上課時間。想要刪除已經(jīng)選擇的課程,在【已選課程】組合框中選擇欲刪除的課程號,單擊【刪除】按鈕即可。單擊【顯示課表】按鈕可以按照課表的形式顯示選擇的課程,具體參見【課表查詢】功能。

圖3.0學(xué)生選課功能船體

選課完成后,選擇【教學(xué)管理】|【課表查詢】命令,進(jìn)入【課表查詢】功能窗體,如3.1所示,從中可以查詢對應(yīng)課程表。

如圖3.1課表查詢功能窗體

學(xué)生選課完成后通過終止選課功能終止選課時間,產(chǎn)生空成績單,所選擇的課程不能夠在修改。實例把終止選課的功能集成到成績輸入功能中。選擇【教學(xué)管理】|【成績輸入】命令,進(jìn)入【成績輸入】功能窗體,如圖3.2所示。先單擊【終止選課,生成空成績單】按鈕,系統(tǒng)調(diào)用“sf_終止選課”存儲過程,產(chǎn)生對應(yīng)的成績表記錄。在【選擇課程】組合框中輸入課程號的查詢條件,查詢出需要登記成績的課程,系統(tǒng)列出所有選擇了指定課程的學(xué)生及成績,選擇相應(yīng)記錄,在【成績】編輯框中輸入成績,單擊【修改成績】按鈕即可。在完成所有的成績輸入后,單擊【最終提交】按鈕,提交成績,提交后成績將不可再修改(在成績輸入功能不能再查詢到)。

圖3.2成績輸入功能窗體

學(xué)生畢業(yè)前一般都需要打印成績單,選擇【報表統(tǒng)計】|【打印成績單】命令,進(jìn)入【打印成績單】功能窗體,如圖3.3所示。在【學(xué)號】編輯框中輸入學(xué)號后回車,可以查詢出指定學(xué)號學(xué)生的所有成績單,單擊【打印】按鈕可以打印出成績單,如圖3.4所示。

圖3.3打印成績單功能窗體

圖3.4打印成績單

創(chuàng)建工程

啟動MicrosoftVisual.NET2003,在主菜單選擇【文件】|【新建】|【項目】命令,彈出【新建項目】對話框,在【項目類型】列表框中選擇【visualbasic項目】選項,然后在【模板】列表框中選擇【windows應(yīng)用程序】。在【名稱】文本框中輸入一個合適的方案文件名,選取要存放的位置,然后單擊【確定】按鈕完成新項目的開啟。

創(chuàng)建系統(tǒng)主窗體

(1)利用系統(tǒng)默認(rèn)生成的窗體作為主窗體,并為其添加主菜單控件和其他控件,布局如圖3.5所示。

圖3.5系統(tǒng)主窗體

(2)主窗體及其控件的屬性設(shè)置如表3.6和3.7所示。

表3.6主窗體屬性設(shè)置

控件類型

對象(控件)名

屬性

取值(說明)

From

Frmmain

Name

Frmmain

Caption

EIS教務(wù)管理系統(tǒng)

Ismdicontainer

True

表3.7窗體主菜單屬性設(shè)置

菜單欄

菜單項

屬性

取值(說明)

Mnbasic

Text

基礎(chǔ)維護(hù)(&w)

Mnclass

Text

班級信息維護(hù)(&x)

Mnstudent

Text

學(xué)生信息維護(hù)(&y)

Msubject

Text

課程信息維護(hù)(&z)

Mnteach

Text

教學(xué)管理(&x)

Mnselect

Text

學(xué)生學(xué)科(&x)

Mncourse

Text

課表查詢(&y)

Mnresult

Text

成績輸入(&z)

Mnprint

Text

報表統(tǒng)計(&y)

Mnreport

Text

打印成績單(&z)

Mnexit

Text

退出系統(tǒng)(&z)

創(chuàng)建數(shù)據(jù)訪問模塊

因為各個窗體均需要對數(shù)據(jù)庫進(jìn)行訪問,可以把對數(shù)據(jù)庫的一些操作通過一個類來實現(xiàn),這樣可以使對數(shù)據(jù)庫的訪問更加簡單。選擇【文件】|【添加新項】命令添加一個名為“database.Vb”的類文件。

創(chuàng)建數(shù)據(jù)操作窗體的父類窗體

因為系統(tǒng)中所有對數(shù)據(jù)庫表進(jìn)行維護(hù)的窗體界面及實現(xiàn)的功能大體是一致的,為了減少系統(tǒng)編程的工作量,可以把這些共同的部分抽取出來,生成一個父類窗體,其他數(shù)據(jù)庫操作窗體均可以通過集成父類窗體獲得數(shù)據(jù)維護(hù)的功能。這是語言的一個特點(diǎn)和優(yōu)點(diǎn),也是需要重點(diǎn)去理解和掌握的知識點(diǎn)。

新建一個窗體,將其name屬性改為“frmbase”,并為其添加如圖3.8所示的控件。

圖3.8基礎(chǔ)窗體

實現(xiàn)班級信息維護(hù)

(1)選擇【文件】|【添加新項】命令,在【添加新項】對話框的【模板】列表框中選擇【繼承選擇器】對話框,在其中選擇frmbase選項并單擊【確定】按鈕。為新建窗體添加如圖3.9所示的控件。

圖3.9frmclass窗體

(2)各控件的屬性設(shè)置如表4.0所示。

表4.0frmclass窗體控件屬性

控件類型

對象名

屬性

取值(說明)

From

Frmclass

Text

Frmbase

Groupbox

Groupbox1

Dock

Bottom

Textbox

Txbclaasid

Text

textbox

Txbgrade

Text

Textbox

Txbnumber

Text

Textbox

Txbteacher

Text

Textbox

Txbname

Text

Textbox

Txbshortname

Text

(3)從工具箱中拖動一個sqldataadapter對象到窗體上,連接eisbook數(shù)據(jù)庫,添加班級信息,并選擇所有字段。單擊【確定】按鈕完成sqldataadapter對象的配置。

(4)在sqldataadapter對象上右擊,在彈出的快捷菜單中選擇【生成數(shù)據(jù)集】命令,在彈出的【生成數(shù)據(jù)集】對話框中單擊【確定】按鈕。

(5)為每個textbox控件設(shè)置數(shù)據(jù)源。

(6)重寫frmclass基類frmbase的函數(shù)。

PublicOverridesSubPrepare()

Me.Text="班級信息維護(hù)"

EndSub

PublicOverridesSubLoadData()

DimstrFilterAsString

IftxbOne.Text.Trim.Length=0Then

IftxbTwo.Text.Trim.Length=0Then

IftxbThree.Text.Trim.Length=0Then

strFilter=""

Else

strFilter="where班級名稱like'"

strFilter+=txbThree.Text.Trim+"%'"

EndIf

Else

strFilter="where年級like'"

strFilter+=txbTwo.Text.Trim+"%'"

IftxbThree.Text.Trim.Length<>0Then

strFilter+="and班級名稱like'"

strFilter+=txbThree.Text.Trim+"%'"

EndIf

EndIf

Else

strFilter="where班級編號like'"

.Trim+"%'"

IftxbTwo.Text.Trim.Length<>0Then

strFilter+="and年級like'"

strFilter+=txbTwo.Text.Trim+"%'"

IftxbThree.Text.Trim.Length<>0Then

strFilter+="and班級名稱like'"

strFilter+=txbThree.Text.Trim+"%'"

EndIf

Else

IftxbThree.Text.Trim.Length<>0Then

strFilter+="and班級名稱like'"

strFilter+=txbThree.Text.Trim+"%'"

EndIf

EndIf

EndIf

'清空DataSet11

DataSet11.Clear()

DimstrSQLAsString

Text_

="select*from班級信息"+strFilter

'根據(jù)查詢條件重新填充DataSet11

SqlDataAdapter1.Fill(DataSet11)

dtData=DataSet11.Tables("班級信息")

bmData=Me.BindingContext(DataSet11,"班級信息")

IfbmData.Count<>0Then

bmData.Position=0

EndIf

EndSub

PublicOverridesSubSetDataGrid()

LoadData()

'定義一個DataGrid表樣式

DimtsAsNewDataGridTableStyle

DimaColumnTextColumnAsDataGridTextBoxColumn

DimnumColsAsInteger

DimiAsInteger

Fori=0TonumCols-1

aColumnTextColumn=NewDataGridTextBoxColumn

aColumnTextColumn.MappingName=_

dtData.Columns(i).ColumnName

aColumnTextColumn.HeaderText=_

dtData.Columns(i).ColumnName

aColumnTextColumn.NullText=""

aColumnTextColumn.ReadOnly=True

ts.GridColumnStyles.Add(aColumnTextColumn)

Next

ts.AllowSorting=False

dgdList.TableStyles.Clear()

dgdList.TableStyles.Add(ts)

DimdvAs

dv.AllowNew=False

dv.AllowDelete=False

'dv.AllowEdit=False

'設(shè)置數(shù)據(jù)源

bmData=Me.BindingContext(DataSet11,"班級信息")

lblCount.Text="記錄數(shù):"+dtData.Rows.Count.ToString()

EndSub

PublicOverridesSubSetTextBoxState(ByValbStateAsBoolean)

Me.GroupBox1.Enabled=NotbState

EndSub

PublicOverridesSubClear()

Me.txbClassId.Text=""

Me.txbGrade.Text=""

Me.txbNumber.Text=""

Me.txbTeacher.Text=""

Me.txbName.Text=""

Me.txbShortName.Text=""

EndSub

PublicOverridesSubSaveForAdd()

DimdrAsDataRow=DataSet11.Tables("班級信息").NewRow()

Try

dr("班級編號")=Me

dr("年級")=Me

dr("班級名稱")=Me

dr("班級簡稱")=Me

dr("人數(shù)")=Me

dr("班主任")=Me

CatchexAsException

MessageBox.Show("數(shù)據(jù)格式不正確!")

ExitSub

EndTry

Try

DataSet11.Tables("班級信息").Rows.Add(dr)

IfMe.DataSet11.HasChanges=TrueThen

SqlDataAdapter1.Update(DataSet11)

EndIf

CatchexAsException

MessageBox.Show("數(shù)據(jù)添加失敗!")

EndTry

LoadData()

EndSub

PublicOverridesSubDeleteData()

Try

'刪除當(dāng)前行的數(shù)據(jù)

DataSet11.Tables("班級信息")._

Rows(bmData.Position).Delete()

IfMe.DataSet11.HasChanges=TrueThen

'更新DataSet11

SqlDataAdapter1.Update(DataSet11)

EndIf

CatchexAsException

MessageBox.Show("數(shù)據(jù)刪除失敗!")

EndTry

EndSub

PublicOverridesSubSaveForUpdate()

Try

DimrowAsInteger

dgdList.CurrentCell=_

NewDataGridCell((row+1)ModbmData.Count,0)

'判斷是否有更新的數(shù)據(jù)

IfMe.DataSet11.HasChanges=TrueThen

SqlDataAdapter1.Update(DataSet11)

EndIf

CatchexAsException

MessageBox.Show("數(shù)據(jù)修改失敗!")

EndTry

EndSub

5.7實現(xiàn)學(xué)生信息維護(hù)功能

(1)選擇【文件】|【添加新項】命令,在【添加新項】對話框的【模板】列表框中選擇【繼承的窗體】選項,并命名為“”。單擊【打開】按鈕后會出現(xiàn)【繼承器】對話框,在其中選擇frmbase選項并單擊【確定】按鈕。為新建窗體添加如圖4.1所示。

圖4.1frmstuent窗體

各控件的屬性設(shè)置如表4.2所示。

表4.2frmstudent窗體控件屬性

控件類型

對象名

屬性

取值(說明)

From

Frmstudent

Text

Groupbox

Groupbox1

Dock

Bottom

Textbox

Txbclassid

Text

Textbox

Txbname

Text

Textbox

Txbgrade

Text

Textbox

Txbpid

Text

Combobox

Cbbsex

Items

Combobox

Cbbclassid

Items

Combobox

Cbbpolity

Items

Combobox

Cbbnation

Items

Combobox

Cbbbirthplace

Items

Combobox

Cbbstatus

Items

從工具箱中拖動一個sqldataadapter對象到窗體上,連接eisbook數(shù)據(jù)庫,添加學(xué)生信息,并選擇所有字段。單擊【確定】按鈕完成sqldataadapter對象的配置。

在sqldataadapter對象上右擊,在彈出的快捷菜單選擇【生成數(shù)據(jù)集】命令、在彈出的【生成數(shù)據(jù)集】對話框中單擊【確定】按鈕。

為每個textbox控件設(shè)置數(shù)據(jù)源。

重寫frmstudent基類frmbase的函數(shù)。

實現(xiàn)課程信息維護(hù)功能

選擇【文件】|【添加新項】命令,在【添加新項】對話框的【模板】列表框中選擇【繼承的窗體】選項,并命名為“frmsubject.vb”。單擊【打開】按鈕后會出現(xiàn)【繼承選擇器】對話框,在其中選擇frmbase選擇并單擊【確定】按鈕。為新建窗體添加如圖4.3所示控件。

圖4.3frmsubject窗體

各控件的屬性設(shè)置如表4.4所示。

表4.4frmcash窗體控件屬性設(shè)置

控件類型

對象名

屬性

取值(說明)

From

Frmsubject

Text

Groupbox

Groupbox1

Dock

Bottom,left,right

Textbox

Txbcourseid

Text

Textbox

Txbcoursename

Text

Textbox

Txbcoursename

Text

Textbox

Txbpy

Text

Textbox

Txbteacher

Text

Textbox

Txbdept

Text

Combobox

Cbbcredithour

Text

Groupbox

Groupbox1

Text

本學(xué)期課程

Textbox

Txbdept

Text

Combobox

Frmsubject

Items

實現(xiàn)學(xué)生選課功能

學(xué)生選課功能窗體不需要從父窗體繼承。

新建一個窗體,將其name屬性改為“frmselect”,并為其添加如圖4.5所示的控件。

圖4.5frmselect窗體控件屬性設(shè)置

部分控件的屬性設(shè)置如表4.6所示。

表4.6frmselect窗體控件屬性設(shè)置

控件類型

對象名

屬性

取值(說明)

From

Frmsubject

Text

學(xué)生選課

Groupbox

Grbtop

Dock

Top

Textbox

Txbid

Text

True

Textbox

Txbname

Readobly

True

Textbox

Txbgrade

Reagonly

Groupbox

Groupbox1

Anchor

Top,left,right

Datagrid

Dgdlist

Dock

Fill

Groupbox

Groupbox2

Anchor

Top,bottom,left,right

Textbox

Txbpy

Text

Groupbox

Groupbox1

Text

Textbox

Txbcname

Text

textbox

Txbid

Text

Textbox

Txbcid

Text

Textbox

Txbnumber

Text

Button

Btnsearch

Text

查詢

Button

Btnselect

Text

選課

Button

Btndel

Text

刪除

Button

Btndisplay

Text

顯示課表

實現(xiàn)課表查詢功能

選擇【文件】|【添加新項】命令,在【添加新項】對話框的【模板】列表框中選擇【繼承的窗體】選項,并命名為“”。單擊【打開】按鈕后會出現(xiàn)【繼承選擇器】對話框,在其中選擇frmbase選擇并單擊【確定】按鈕。為新建窗體添加如圖4.3所示控件。

圖4.7Frmcourse窗體

實現(xiàn)成績輸入功能

成績輸入功能窗體不需要從父窗體繼承。

新建一個窗體,將其name屬性改為“frmscore”,并為其添加如圖4.8所示的控件。

圖4.9frmscore窗體

部分控件的屬性設(shè)置如表5.0所示。

表5.0frmscore窗體控件屬性設(shè)置

控件類型

對象名

屬性

取值(說明)

From

Frmscore

Text

成績輸入

Groupbox

Groupbox1

Dock

Top

Button

Btnclear

Text

終止課,生成空成績單

Groupbox

Groupbox2

Dock

Top

Textbox

Txbpy

Text

Textbox

Txbname

Text

Textbox

Txbid

Text

Button

Btnsearch

Text

查詢

Button

Btnsubmit

Text

最終提交

Groupbox

Groupbox3

Dock

Fill

Datagird

Dgdlist

Anchor

Top,bottom,left

Textbox

Txbscore

Text

Button

Btnupdate

Text

修改成績

5.11實現(xiàn)打印成績單功能

打印成績單功能窗體不需要從父窗體繼承。

(1)新建一個窗體,將其name屬性改為“frmreport”并為其添加如圖5.1所示的控件。

圖5.1frmreport窗體

(2)部分控件的屬性設(shè)置如表5.2所示。

表5.2frmreport窗體控件屬性設(shè)置

控件類型

對象名

屬性

取值(說明)

From

Frmreport

Text

打印成績單

Groupbox

Grbsearch

Dock

Top

Textbox

Txbid

Text

Textbox

Txbname

Readonly

Textbox

Txbclass

Readonly

Button

Txbprint

Text

打印

為窗體frmreport添加私有變量。

PrivatedtDataAsDataTable

為文本框控件txbid的keydown事件添加事件響應(yīng)事件。

PrivateSubtxbId_KeyDown(ByValsenderAsObject,ByVal_

eAsSystem.Windows.Forms.KeyEventArgs)Handles

Ife.KeyCode=Keys.EnterAndtxbId.Text.Trim.Length<>0Then

DimdbAsDataBase=NewDataBase

DimdvAsDataView

DimstrSQLAsString="select姓名,班級名稱,學(xué)籍編號from"

strSQL+="學(xué)生信息asa,班級信息asbwherea.班級編號="

strSQL+="b.班級編號and學(xué)號='"+Me.txbId.Text.Trim+"'"

dv=db.RunSelectSQL(strSQL)

Ifdv.Count=0Then

MessageBox.Show("學(xué)號錯誤!")

ExitSub

EndIf

Me.txbName.Text=dv(0)("姓名").ToString()

Me.txbClass.Text=dv(0)("班級名稱").ToString()

strSQL="selectb.課程名稱,b.開課系別,b.教師,a.成績from"

strSQL+="成績表asa,課程信息asbwherea.課程編號="

strSQL+="b.課程編號and學(xué)號='"+Me

strSQL+="'orderbya.課程編號"

dv=db.RunSelectSQL(strSQL)

Me.dgdList.DataSource=dv

dv.AllowDelete=False

dv.AllowEdit=False

dv.AllowNew=False

Me.dgdList.AllowSorting=False

db.Dispose()

EndIf

EndSub

為按鈕控件btnprint的click事件響應(yīng)事件。

PrivateSubbtnPrint_Click(ByValsenderAsSystem.Object,_

ByValeAsSystem.EventArgs)Handles

DimchildFrmAsfrmPrint=NewfrmPrint(dtData)

childFrm.ShowDialog()

EndSub

其中frmprint為打印報表的窗體,接下來將介紹窗體frmprint。Frmprint功能窗體不需要從父窗體繼承。

新建一個窗體,將其name屬性改為“frmprint”并為添加如圖5.3所示的控件。

圖5.3frmprint窗體

部分控件的屬性設(shè)置如表5.4所示。

表5.4frmprint窗體控件屬性設(shè)置

控件類型

對象名

屬性

取值(說明)

Form

Frmprint

Text

Printpreview

Cystalreportviewer

Cystalreportviewer1

Dock

Fill

為窗體類frmprint添加私有變量。

PrivatedtPrintAsDataTable

為窗體frmprint添加構(gòu)造函數(shù)。

PrivateSubfrmPrint_Load(ByValsenderAsObject,_

ByValeAsSystem.EventArgs)HandlesMyBase.Load

Try

DimobjAsReportDocument=NewReportDocument

'obj加載CrystalReport的路徑要設(shè)置好

obj.Load("Report.rpt")

'設(shè)置報表的數(shù)據(jù)源

'DimdsAsDataSet=NewDataSet

'ds.Tables.Add(dtPrint)

obj.SetDataSource(dtPrint)

Me.CrystalReportViewer1.ReportSource=obj

CatchexAsException

MessageBox.Show(ex.ToString)

EndTry

EndSub

Report.rpt如圖5.5所示。

圖5.5report.rpt窗體

至此實例全部功能已經(jīng)完成。

系統(tǒng)發(fā)布

系統(tǒng)設(shè)計完成后需要打包發(fā)布,將應(yīng)用制作成安裝程序。制作安裝程序的工具很多,一般VisualBasic.NET開發(fā)的應(yīng)用系統(tǒng)可以使用VisualBasic.NET2003自帶的功能進(jìn)行打包,也可以用InstallShield來完成系統(tǒng)的安裝查詢。

小結(jié)

我們可以掌握以下知識和技巧。

教務(wù)管理系統(tǒng)的需求。

利用VisualBaisic.NET進(jìn)行數(shù)據(jù)庫編程的多種方法。

數(shù)據(jù)庫識圖的使用。

利用。

下面資料為贈送的地產(chǎn)廣告語不需要的下載后可以編輯刪除就可以,謝謝選擇,

祝您工作順利,生活愉快!

地產(chǎn)廣告語

1、讓世界向往的故鄉(xiāng)

2、某沿河樓盤:生活,在水岸停泊

3、一江春水一種人生

4、某錢塘江邊樓盤:面對潮流經(jīng)典依舊

5、海景房:站在家里,海是美景;站在海上,家是美景

6、以山水為賣點(diǎn)的樓盤:山水是真正的不動產(chǎn)

7、某城區(qū)的山腰上的樓盤:凌駕尊貴俯瞰繁華

8、某地勢較高的樓盤:高人,只住有高度的房子

9、某學(xué)區(qū)房:不要讓孩子輸在起跑線上

10、尾盤:最后,最珍貴

11、回家就是度假的生活

12、生命就該浪費(fèi)在美好的事情上

我們造城——

2、我的工作就是享受生活——

3、我家的客廳,就是我的生活名片——

4、在自己的陽臺看上海的未來——

5、公園不在我家里我家住在公園里——

6、這里的花園沒有四季——

7、***,裝飾城市的風(fēng)景——

8、***,我把天空搬回家——

9、房在林中,人在樹下——

10、生活,就是居住在別人的愛慕里——

11、到〖星河灣〗看看好房子的標(biāo)準(zhǔn)——

12、好生活在〖珠江〗——

13、愛家的男人住〖百合〗

城市岸泊:城市的岸泊,生活的小鎮(zhèn)

生活之美不缺少,在于發(fā)現(xiàn)

情趣不在于奢華,在于精彩

生活有了美感才值得思考……

玫瑰莊園:山地生態(tài),健康人生

卓越地段,超大社區(qū)

一種完整且完善的環(huán)境,像原生一樣和諧

原生景象自然天成

人本理念精品建筑

知名物業(yè)智能安防

誠信為本實力鑄造

比華利山莊:海岸生活——引領(lǐng)世界的生活方式

海岸生活——22公里的奢華

海岸生活——高尚人生的序曲

海岸生活——人與自然的融合

蘋果二十二院街:人文自然現(xiàn)代

鋪的蔓伸

榮和山水美地:讓世界向往的故鄉(xiāng)

香港時代:時代精英開拓未來

領(lǐng)銜建筑,彰顯尊貴

綠地崴廉公寓:金橋40萬平方米德國音樂藝術(shù)生活

匯都國際:昆明都心,城市引擎

財富之都風(fēng)情之都夢幻之都文化之都商貿(mào)之都

西部首座巨型商業(yè)之城

顛峰商圈的原動力,締造西部財富新領(lǐng)地

新江灣城:綠色生態(tài)港國際智慧城

新江灣城,一座承載上海新夢想的城區(qū)

上海城投,全心以赴

建設(shè)知識型,生態(tài)型花園城區(qū)

風(fēng)和日麗:入住準(zhǔn)現(xiàn)樓,升值在望

灣區(qū)大戶,空中花園

大格局下的西海岸

市中心:市中心少數(shù)人的專屬

顛峰珍貴市中心的稀世名宅

正中心城市顛峰領(lǐng)地

顛峰勾勒稀世名宅

繁華不落幕的居家風(fēng)景

地利皇者盡得先機(jī)

稀世經(jīng)典180席

陽光國際公寓:陽光金橋來自紐約的生活藍(lán)本

鐘宅灣:海峽西岸生態(tài)人居休閑商務(wù)區(qū)

匯聚國際財富與人居夢想的絕版寶地

二十一世紀(jì)是城市的世紀(jì),二十一世紀(jì)也是海洋的世紀(jì)

誰控制了海洋,誰就控制了一切

站在藍(lán)色海岸的前沿,開啟一個新的地產(chǎn)時代

東南門戶海灣之心

海峽西岸生態(tài)人居休閑商務(wù)區(qū)

讓所有財富的目光聚集鐘宅灣,這里每一天都在創(chuàng)造歷史

上海A座(科維大廈):創(chuàng)富人生的黃金眼

掘金上海!創(chuàng)富人生!

遠(yuǎn)東大廈:花小公司的錢,做大公司的事

未來城:無可挑戰(zhàn)的優(yōu)勢無可限量的空間

綠地集團(tuán):居住問題的答疑者,舒適生活的提案人

茶馬驛棧:精明置業(yè)時機(jī)享受附加值財富最大化

雪山下的世外桃源茶馬古道上千年清泉之鄉(xiāng)

金地格林春岸:城市精英的夢想家園

繁華與寧靜共存,闊綽身份不顯自露

溫馨提示

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

評論

0/150

提交評論