排課管理系統(tǒng)論文_第1頁
排課管理系統(tǒng)論文_第2頁
排課管理系統(tǒng)論文_第3頁
排課管理系統(tǒng)論文_第4頁
排課管理系統(tǒng)論文_第5頁
已閱讀5頁,還剩43頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、排課管理系統(tǒng)摘 要 排課是學(xué)校教學(xué)管理中十分重要、又相當(dāng)復(fù)雜的管理工作之一,是為學(xué)校所設(shè)置的課程安排時(shí)間和地點(diǎn),使整個(gè)教學(xué)能夠有計(jì)劃有秩序地進(jìn)行。課表編排是一個(gè)涉及多種因素的組合規(guī)劃問題,它要保證在課程安排中教師、學(xué)生、教室不能產(chǎn)生沖突(所謂沖突,就是將需上不同課程的兩個(gè)或多個(gè)班安排在了同一時(shí)間、同一教室,或?yàn)橥唤處熢谕粫r(shí)間段安排了多門課程等情況),并為要滿足教師的要求和教室資源約束條件。隨著我國教育體制改革的深入,學(xué)生人數(shù)的不斷上升,課程設(shè)置不斷向深度和廣度發(fā)展,手工排課的缺點(diǎn)就越來越突出。由于計(jì)算機(jī)具有運(yùn)算速度快,處理能力強(qiáng)等特點(diǎn),很自然地進(jìn)入這一應(yīng)用領(lǐng)域中。用計(jì)算機(jī)進(jìn)行排課能夠快速地

2、得到滿足約束條件的可行結(jié)束,具有排課時(shí)間短、人力省和質(zhì)量高的優(yōu)點(diǎn),不但能使教務(wù)人員從復(fù)雜的排課任務(wù)中解脫出來,而且對(duì)于推動(dòng)教學(xué)的發(fā)展也起到非常重要的作用。排課管理的主要功能是把各系或各授課部門的課程申請(qǐng)進(jìn)行匯總,然后根據(jù)教學(xué)計(jì)劃或教學(xué)環(huán)節(jié)制訂全校各班級(jí)的課表。由于學(xué)校各班級(jí)數(shù)、課程門數(shù)較多,每門課又涉及很多信息,如果手工進(jìn)行排課,不可避免地出現(xiàn)教室資源沖突或教師資源沖突的情況。為了使課表的編排更準(zhǔn)確、合理、快速,學(xué)校教務(wù)部門用計(jì)算機(jī)來進(jìn)行排課管理,并開發(fā)出一些適用的排課軟件系統(tǒng)。 根據(jù)管理的實(shí)際要求,結(jié)合課程管理的實(shí)際流程,系統(tǒng)需要滿足以下要求:(1) 掌握學(xué)校所有的課程和教師信息。包括課程的

3、時(shí)間、班級(jí)以下任課教師姓名。(2) 提供靈活的瀏覽和查找功能??梢圆榭茨硞€(gè)班級(jí)所有課程的信息,可以對(duì)課程信息提供查找。(3) 可以對(duì)課程信息和教師信息進(jìn)行刪除和編輯。(4) 可以對(duì)課程進(jìn)行變動(dòng)管理,手工排課,并實(shí)現(xiàn)盡可能的自動(dòng)排序功能。系統(tǒng)概況一、 課題名稱排課管理系統(tǒng)二、 設(shè)計(jì)環(huán)境開發(fā)工具:visual basic 6.0 access2000操作系統(tǒng):windows xp目 錄前 言4第一章 概 述 1.1課程目的41.2開發(fā)工具的選用 1.2.1 visual basic的概述4 1.2.2 管理信息系統(tǒng)的理論分析51.3系統(tǒng)的可行性研究 1.3.1 技術(shù)上的可行性6 1.3.2 運(yùn)行上

4、的可行性6第二章 概要設(shè)計(jì)2.1系統(tǒng)設(shè)計(jì)思路 2.1.1界面設(shè)計(jì)7 2.1.2access2000設(shè)計(jì)數(shù)據(jù)庫72.2運(yùn)行設(shè)計(jì) 2.2.1運(yùn)行模塊的組合7 2.2.2運(yùn)行控制72.3系統(tǒng)流程2.3.1系統(tǒng)總體流程圖7第三章 詳細(xì)設(shè)計(jì) 3.1數(shù)據(jù)庫的實(shí)現(xiàn) 3.1.1班級(jí)表的設(shè)計(jì)8 3.1.2專業(yè)名稱表的設(shè)計(jì)8 3.1.3教師信息表的設(shè)計(jì)9 3.1.4教師代課的設(shè)計(jì)9 3.1.5以上各個(gè)表的關(guān)系的設(shè)計(jì)93.2界面的實(shí)現(xiàn) 3.2.1窗體界面10 3.2.2系統(tǒng)主窗體10 3.2.3教員信息入庫窗體11 3.2.4排課管理窗體11 3.2.5課程查詢窗體12 3.2.6課程設(shè)置窗體13 3.2.7課程報(bào)

5、表窗體14 3.2.8教師代課報(bào)表窗體14第四章 總結(jié)4.1編程心得144.2存在問題144.3感謝15參考文獻(xiàn)附代碼 前 言排課管理系統(tǒng)是一個(gè)教育單位不可缺少的部分,它的內(nèi)容對(duì)于學(xué)校的決策者和管理者來說都至關(guān)重要,所以排課管理系統(tǒng)應(yīng)該能夠?yàn)橛脩籼峁┏渥愕男畔⒑涂旖莸牟樵兪侄巍5恢币詠砣藗兪褂脗鹘y(tǒng)人工的方式來進(jìn)行排課,這種方式存在著許多缺點(diǎn),如:效率低、精確率低,另外時(shí)間一長,將產(chǎn)生大量的文件和數(shù)據(jù),這對(duì)于查找、更新和維護(hù)都帶來了不少的困難。隨著科學(xué)技術(shù)的不斷提高,計(jì)算機(jī)科學(xué)日漸成熟,其強(qiáng)大的功能已為人們深刻認(rèn)識(shí),它已進(jìn)入人類社會(huì)的各個(gè)領(lǐng)域并發(fā)揮著越來越重要的作用。作為計(jì)算機(jī)應(yīng)用的一部分,使

6、用計(jì)算機(jī)對(duì)排課信息進(jìn)行管理,具有著手工管理所無法比擬的優(yōu)點(diǎn).例如:檢索迅速、查找方便、可靠性高、存儲(chǔ)量大、精確率高、壽命長、成本低等。這些優(yōu)點(diǎn)能夠極大地提高排課管理的效率,也是企業(yè)的科學(xué)化、正規(guī)化管理,與世界接軌的重要條件。因此,開發(fā)這樣一套排課管理軟件成為很有必要的事情。第一章 概述1.1課程目的課題目的在于開發(fā)一個(gè)“排課管理系統(tǒng)”,將學(xué)校行政辦公人員從繁重的排課管理工作中解脫出來,而且規(guī)范排課管理的工作流程,分權(quán)限的訪問是系統(tǒng)的安全性得到了提高。1.2開發(fā)工具的選用1.2.1visual basic的概述 visual basic是微軟公司推出的一種可視化編程工具,是當(dāng)今世界上應(yīng)用最廣泛的

7、編程語言之一,也被公認(rèn)為是編程效率最高的一種編程方法。visual basic可以開發(fā)各類應(yīng)用軟件,從開發(fā)個(gè)人或小組使用的小工具,到大型企業(yè)應(yīng)用系統(tǒng),甚至通過internet的遍及全球的分布式應(yīng)用程序,都可在visual basic提供的工具中各取所需。visual basic有如下特性:(1) 數(shù)據(jù)訪問特性允許對(duì)包括microsoft sql server和其他企業(yè)數(shù)據(jù)庫在內(nèi)的大部分?jǐn)?shù)據(jù)庫格式建立數(shù)據(jù)庫和前段應(yīng)用程序,以及可調(diào)節(jié)的服務(wù)器端部分。(2) 有了activex技術(shù)就可使用其它應(yīng)用程序提供的功能,例如microsoft word字處理器、microsoft excel電子數(shù)據(jù)表及其他

8、windows應(yīng)用程序。甚至可直接使用vbp和vbe創(chuàng)建的應(yīng)用程序和對(duì)象。(3) internet功能強(qiáng)大,使得用戶很容易在應(yīng)用程序內(nèi)通過internet或intranet訪問文檔和應(yīng)用程序,或者創(chuàng)建internet服務(wù)器應(yīng)用程序。(4) 已完成的應(yīng)用程序是使用visual basic虛擬機(jī)的真正.exe文件,可以自由發(fā)布。visual basic術(shù)語 設(shè)計(jì)時(shí):設(shè)計(jì)時(shí)是指在vb環(huán)境中建立應(yīng)用程序時(shí)的時(shí)間。 運(yùn)行時(shí):運(yùn)行時(shí)是指在應(yīng)用程序運(yùn)行期間,用戶與應(yīng)用程序進(jìn)行交互的時(shí)間。通常我們在設(shè)計(jì)時(shí)初始化窗體和控件的屬性,在運(yùn)行時(shí)響應(yīng)窗體和控件的事件修改它們的屬性或調(diào)用它們的方法。 對(duì) 象:將數(shù)據(jù)和處理

9、該數(shù)據(jù)的過程(函數(shù)和子程序)打包在一起而生成的新的數(shù)據(jù)類型稱之為對(duì)象。對(duì)象是具有特殊屬性(數(shù)據(jù))和行為方式(方法)的實(shí)體,是系統(tǒng)中的基本運(yùn)行實(shí)體。在visual basic中,所有窗體和控件都是對(duì)象。建立一個(gè)對(duì)象后,其操作通過與該對(duì)象有關(guān)的屬性、事件和方法來描述。要訪問對(duì)象的屬性和方法,必須在對(duì)象和屬性方法之間加入一個(gè)句點(diǎn)。屬 性:屬性是一個(gè)對(duì)象的特性,不同的對(duì)象有不同的屬性。除了在屬性窗口中設(shè)置對(duì)象屬性外,也可以在程序中用程序語句設(shè)置。 方 法:對(duì)象中的過程。它的操作與過程、函數(shù)的操作相同,但方法是特定對(duì)象的一部分,正如屬性和實(shí)踐示對(duì)象的一部分一樣。允許多個(gè)方法重名,即多個(gè)對(duì)象使用同一個(gè)方法

10、。事 件:所謂事件,是由visual basic預(yù)先設(shè)置好的、能夠被對(duì)象識(shí)別的動(dòng)作。當(dāng)事件由用戶觸發(fā)(如click)或由系統(tǒng)觸發(fā)(如load)時(shí),對(duì)象就會(huì)對(duì)事件做出響應(yīng)。窗 體:窗體是可用作定制應(yīng)用程序界面的窗口,或用作從用戶處收集信息的對(duì)話框。你可向窗體增加控件、圖形或圖片來創(chuàng)建你的應(yīng)用程序界面。窗體可單獨(dú)存在,也可是多文檔界(mdi)中的一個(gè)文檔,即一個(gè)子窗體。 控 件:控件是用戶操作對(duì)象的圖形表示,以便向應(yīng)用程序提供信息。例如:按鈕、列表框或編輯框等。有的控件沒有圖形表示。如:計(jì)時(shí)器、winsocket等。 事件驅(qū)動(dòng)程序設(shè)計(jì):當(dāng)程序是事件驅(qū)動(dòng)的時(shí)侯,應(yīng)編寫執(zhí)行程序來響應(yīng)由用戶或系統(tǒng)激活的

11、事件的代碼。與過程程序設(shè)計(jì)不同,后者的程序起始于代碼的第一行,并遵循定義好的路徑調(diào)用所需的過程。事件驅(qū)動(dòng)設(shè)計(jì)是圖形用戶界面的本質(zhì),即由用戶控制而代碼做出響應(yīng)。 vb項(xiàng)目文件包括在visualbasic應(yīng)用程序開發(fā)中包括的所有的窗體、代碼模塊和定制控件的一個(gè)文件列表,以及在開發(fā)中選擇的環(huán)境選項(xiàng)。如表1.1所示,項(xiàng)目由下列文件組成: 表1.1文件類型擴(kuò)展名項(xiàng)目文件*.vbp窗體文件*.frm模塊文件*.bas定制控件*.ocx類模塊*.cls資源文件*.res1.2.2管理系統(tǒng)理論分析管理信息系統(tǒng)(mis)是一門邊緣學(xué)科,集管理科學(xué)、信息科學(xué)、系統(tǒng)科學(xué)、現(xiàn)代通信技術(shù)和電子計(jì)算機(jī)技術(shù)于一體。1985

12、年,管理信息系統(tǒng)創(chuàng)始人,明尼蘇達(dá)大學(xué)卡爾森管理學(xué)院的著名教授戴維斯(gordon.b.davis)給出了一個(gè)具有代表性的定義:“管理信息系統(tǒng)是一個(gè)利用計(jì)算機(jī)硬件和軟件,手工作業(yè)、分析、計(jì)劃、控制和決策模型以及數(shù)據(jù)庫的用戶機(jī)器系統(tǒng)。它能提供信息支持企業(yè)或組織的運(yùn)行、管理和決策功能?!彪S著網(wǎng)絡(luò)技術(shù)的出現(xiàn),管理信息系統(tǒng)又有了新的意義,基于網(wǎng)絡(luò)的管理信息系統(tǒng)不斷出現(xiàn),管理信息系統(tǒng)的概念模型也發(fā)生了相應(yīng)的變化,許多學(xué)者對(duì)管理信息系統(tǒng)給出了新的定義。例如勞頓認(rèn)為:“管理信息系統(tǒng)是一個(gè)基于計(jì)算機(jī)的信息系統(tǒng),它通過收集、處理、存儲(chǔ)和擴(kuò)散信息,來支持組織的管理、決策、合作、控制、分析活動(dòng),并使之可視化。”因此,

13、我們可以看出,管理系統(tǒng)系統(tǒng)具有幾個(gè)基本含義:1.管理信息系統(tǒng)不是一個(gè)單純的軟件系統(tǒng),而是一人機(jī)系統(tǒng),由人和機(jī)器協(xié)同工作。管理信息系統(tǒng)在支持企業(yè)或組織的各項(xiàng)管理活動(dòng)中,管理人員負(fù)責(zé)將基礎(chǔ)數(shù)據(jù)及時(shí)地輸入到計(jì)算機(jī)中,計(jì)算機(jī)則根據(jù)企業(yè)或組織中的各層管理人員的要求對(duì)基礎(chǔ)數(shù)據(jù)進(jìn)行加工處理,并將所得到的信息輸出。計(jì)算機(jī)不斷地與最終用戶進(jìn)行著信息的交換,但在對(duì)數(shù)據(jù)的加工處理過程中又需要人的適當(dāng)干預(yù)。2.管理信息系統(tǒng)的管理過程就是對(duì)數(shù)據(jù)進(jìn)行收集、存儲(chǔ)、加工處理、傳遞,并產(chǎn)生信息的過程,因此數(shù)據(jù)是管理信息系統(tǒng)的靈魂。管理信息系統(tǒng)運(yùn)用了數(shù)據(jù)庫的技術(shù),對(duì)基礎(chǔ)數(shù)據(jù)進(jìn)行統(tǒng)一規(guī)劃、存儲(chǔ),供各層管理人員使用,從而實(shí)現(xiàn)了數(shù)據(jù)的

14、一致和共享。3.管理信息系統(tǒng)可以解決企業(yè)或組織所面臨的問題。例如,管理信息系統(tǒng)可以處理企業(yè)產(chǎn)生經(jīng)營活動(dòng)的全過程,可以解決組織中數(shù)據(jù)處理效率問題,也可以解決財(cái)務(wù)管理決策過程等。目前,管理信息系統(tǒng)的應(yīng)用已經(jīng)非常廣泛,隨著計(jì)算機(jī)技術(shù)、網(wǎng)絡(luò)技術(shù)和通信技術(shù)的發(fā)展,管理信息系統(tǒng)的功能也日趨完善,并朝著智能化、網(wǎng)絡(luò)化、集成化等方向發(fā)展。如辦公自動(dòng)化(oa)、電子商務(wù)(ec)、專家系統(tǒng)(es)、計(jì)算機(jī)集成制造系統(tǒng)(cims)。下面我們討論一下現(xiàn)行設(shè)計(jì)方法的優(yōu)缺點(diǎn) 現(xiàn)行的mis系統(tǒng)系統(tǒng)的開發(fā)大都是采用結(jié)構(gòu)化的開發(fā)方法,它是在對(duì)傳統(tǒng)開發(fā)方法繼承批判的基礎(chǔ)上,通過不斷探索和努力而形成的一種系統(tǒng)化方法。這種方法的突出

15、優(yōu)點(diǎn)就是它強(qiáng)調(diào)系統(tǒng)開發(fā)過程的整體性和全局性,強(qiáng)調(diào)在整體優(yōu)化的前提下考慮具體的分析設(shè)計(jì)問題,即自頂向下的觀點(diǎn)。它強(qiáng)調(diào)的另一個(gè)觀點(diǎn)是嚴(yán)格地區(qū)分工作階段,強(qiáng)調(diào)一步一步地、嚴(yán)格地進(jìn)行系統(tǒng)分析和設(shè)計(jì),每步工作都要及時(shí)地總結(jié),發(fā)現(xiàn)問題及時(shí)地反饋和糾正,從而避免開發(fā)過程的混亂,它是目前被廣泛采用的一種系統(tǒng)開發(fā)方法。隨著時(shí)間的推移,這種開發(fā)方法也逐漸地顯露很多不足。最突出的表現(xiàn)是起點(diǎn)太低,所用工具落后、繁瑣,致使系統(tǒng)開發(fā)周期過長。這種方法要求開發(fā)者在調(diào)查中就充分地掌握用戶需求、管理狀況以及預(yù)見可能發(fā)生的變化,這不大符合人們循序漸進(jìn)地認(rèn)識(shí)事物的規(guī)律性,因此在實(shí)際工作中有一定的困難。1.3 系統(tǒng)的可行性研究1.3

16、.1技術(shù)上的可行性技術(shù)可行性研究是系統(tǒng)開發(fā)過程中難度最大的、最重要的工作。由于系統(tǒng)分析和定義過程與系統(tǒng)技術(shù)可行性評(píng)估過程同時(shí)進(jìn)行,這時(shí)系統(tǒng)目標(biāo)、功能和性能的不確定性會(huì)給技術(shù)可行性論證帶來許多困難。技術(shù)可行性研究包括:(1)風(fēng)險(xiǎn)分析:在給出的限制范圍內(nèi),能否設(shè)計(jì)出系統(tǒng),并實(shí)現(xiàn)必要的功能和性能。1.3.2 運(yùn)行上的可行性 運(yùn)行可行性可確定新系統(tǒng)規(guī)定的運(yùn)行方式是否可行。第二章 概要設(shè)計(jì)2.1系統(tǒng)設(shè)計(jì)思路2.1.1界面設(shè)計(jì)用vb設(shè)計(jì)基礎(chǔ)界面,在初步設(shè)計(jì)時(shí),可以只對(duì)窗體進(jìn)行設(shè)計(jì),而不涉及程序的內(nèi)容,待窗體設(shè)計(jì)完畢后,再進(jìn)行程序編程,這也是vb的優(yōu)點(diǎn)之一。2.1.2 access2000設(shè)計(jì)數(shù)據(jù)庫acce

17、ss作為office組件中的一個(gè)可獨(dú)立安裝的關(guān)系型桌面數(shù)據(jù)庫軟件,一直在windows平臺(tái)上獨(dú)領(lǐng)風(fēng)騷,已經(jīng)成為風(fēng)靡全球的最流行的桌面數(shù)據(jù)庫管理系統(tǒng)。微軟公司通過多次大量地改進(jìn),如今access發(fā)展到xp版本,功能已經(jīng)變得非常強(qiáng)大了。不管是處理公司的客戶訂單數(shù)據(jù)、管理自己的個(gè)人通訊錄,還是大量的科研數(shù)據(jù)處理的記錄和處理,人們都可以利用它來解決大量數(shù)據(jù)的管理工作。雖然在access中建立的數(shù)據(jù)表中,其字段的名稱雖然可以為中文,但是從以往經(jīng)驗(yàn)來看,字段名最好不要為中文,這是因?yàn)椋海?)在某些不支持中文的系統(tǒng)中,字段名稱含有中文的數(shù)據(jù)庫,將不能夠被識(shí)別。這樣,該數(shù)據(jù)庫不能夠使用,從而使數(shù)據(jù)庫的可移植性

18、下降。(2)即使是在支持中文的windows操作系統(tǒng)中,在某些情況下,中文字段有可能會(huì)不能識(shí)別,或者不能很好的識(shí)別。用于系統(tǒng)開發(fā)而建立的數(shù)據(jù)庫最好不要使用中文,而是使用對(duì)應(yīng)于該中文意義的英文,這樣既解決了中文字段的弊病,也提高了數(shù)據(jù)庫的可讀性。2.2運(yùn)行設(shè)計(jì)2.2.1運(yùn)行模塊的組合具體軟件的運(yùn)行模塊組合為程序多窗口的運(yùn)行環(huán)境,各個(gè)模塊在軟件運(yùn)行過程中能較好的交換信息,處理數(shù)據(jù)。 2.2.2 運(yùn)行控制 軟件運(yùn)行時(shí)有較友好的界面,基本能夠?qū)崿F(xiàn)用戶的數(shù)據(jù)處理要求。2.3系統(tǒng)流圖2.3.1系統(tǒng)的總體流程系統(tǒng)的總體流程splash表單(用以顯示版本信息和系統(tǒng)信息)通過單擊顯示主窗體主窗體(系統(tǒng)主窗體)確

19、定教職員 確定排課 確定教職員 確定本學(xué)期 確定打印 確定打印入庫信息 管理 帶課查詢 課程設(shè)置 課程表 教師帶課表 查看并修改查看并修改查看教職員帶課信息修改課程設(shè)置選擇班級(jí)進(jìn)行打印選擇教師進(jìn)行打印第三章 詳細(xì)設(shè)計(jì)3.1數(shù)據(jù)庫的實(shí)現(xiàn)3.1.1班級(jí)表的設(shè)計(jì)班級(jí)庫是描述班級(jí)信息的數(shù)據(jù)庫,包括以下部分:班級(jí)號(hào)、上課日期、上課節(jié)次、課程名稱。在數(shù)據(jù)庫中創(chuàng)建一個(gè)表,表名為“classarray”。字段名字段說明類型寬度備注cclasscode班級(jí)號(hào)文本7主關(guān)鍵字itimew上課日期數(shù)字不能為空itimen上課節(jié)次數(shù)字不能為空csjname課程名稱文本7不能為空3.1.2專業(yè)名稱表的設(shè)計(jì)專業(yè)名稱表是描述

20、專業(yè)信息的數(shù)據(jù)庫表,所存放的域只有一個(gè)專業(yè)名稱。在數(shù)據(jù)庫中創(chuàng)建一個(gè)表,表名為“subject”。字段名字段說明類型寬度備注csjname專業(yè)名稱文本7主關(guān)鍵字3.1.3教師信息表的設(shè)計(jì)教師信息表是描述教師信息的數(shù)據(jù)庫,包括以下部分:教師姓名、年齡、簡單評(píng)述等部分。數(shù)據(jù)庫中創(chuàng)建一個(gè)表,表名為“teacher”。字段名字段說明類型寬度備注ctrname教師姓名文本7主關(guān)鍵字iage年齡數(shù)字不能為空ctrdetails簡單評(píng)述文本255可以為空3.1.4教師代課的設(shè)計(jì)教師代課表是描述教師代課信息的數(shù)據(jù)庫,包括以下部分:班級(jí)號(hào)、專業(yè)名稱、代課教師等部分。數(shù)據(jù)庫中創(chuàng)建一個(gè)表,表名為“trclass”。字

21、段名字段說明類型寬度備注cclasscode班級(jí)號(hào)文本7不能為空csubject專業(yè)名稱文本7不能為空cteacher代課教師文本7不能為空3.1.5以上各個(gè)表的關(guān)系的設(shè)計(jì)從實(shí)際的排課管理來說,班級(jí)號(hào)、代課教師和課程名稱三者之間有著必然的聯(lián)系。根據(jù)這一情況,需要建立classarray表、subject表、teacher表和trclass表的相應(yīng)字段之間的關(guān)系,定義下列兩組參照完整性:l classarray表的csjname字段與subject表的csjname字段為多對(duì)一的關(guān)系。l subject表的csjname字段與trclass表的csubject字段為一對(duì)多的關(guān)系。l trclas

22、s表的cteacher字段與teacher表ctrname字段為多對(duì)一的關(guān)系。這3組參照完整性,反應(yīng)在access的數(shù)據(jù)庫關(guān)系設(shè)計(jì)圖中,如圖所示3.2界面的實(shí)現(xiàn)3.2.1 窗體界面此界面為系統(tǒng)啟動(dòng)時(shí)的窗體,當(dāng)時(shí)鐘計(jì)時(shí)超過一定數(shù)量時(shí),窗體消失,并打開排課管理系統(tǒng)。3.2.2系統(tǒng)主窗體本系統(tǒng)采取基于對(duì)話框模式的功能。系統(tǒng)主窗體是整個(gè)系統(tǒng)的容器,本系統(tǒng)主窗口的特點(diǎn)是簡潔明了。用戶只需做一個(gè)簡單的功能選擇即可進(jìn)入相應(yīng)的功能模塊。在本對(duì)話框中的combobox控件為用戶提供功能塊的選擇,當(dāng)用戶選定功能塊后,單擊“確定”按鈕即可。當(dāng)用戶單擊“作者信息”按鈕時(shí),可以彈出“幫助”對(duì)話框,顯示本系統(tǒng)的一些相關(guān)信

23、息。本窗口設(shè)計(jì)視圖如圖所示:3.2.3教員信息入庫窗體在系統(tǒng)主窗體中選擇“教員信息入庫”,彈出如圖所示。此窗體有以下3個(gè)主要窗體功能:(1) 查看教師信息;(2) 編輯教師信息;(3) 加或刪除教師信息。3.2.4排課管理窗體在系統(tǒng)主窗體中選擇“排課管理”,彈出如圖所示窗口。此窗體有以下3個(gè)主要功能:(1) 查看并修改各個(gè)班級(jí)的課程信息;(2) 查看并修改各個(gè)教師的代課信息;(3) 查看并修改最終的課程表。3.2.5課程查詢窗體在系統(tǒng)主窗體中選擇“教職員帶課查詢”,單擊“確定”按鈕,則如圖所示界面。此窗體有以下3個(gè)主要功能:(1) 查詢某個(gè)教師代課的時(shí)間;(2) 查詢某個(gè)教師代課的班級(jí);(3)

24、 查詢某個(gè)教師代課的課程名稱。3.2.6課程設(shè)置窗體在系統(tǒng)主窗體中選擇“本學(xué)期課程設(shè)置”,彈出如圖所示界面。此窗體的主要功能是設(shè)置本學(xué)期課程的名稱。3.2.7課程報(bào)表窗體在系統(tǒng)主窗體中選擇“課程報(bào)表”,然后單擊“確定”按鈕,彈出如圖所示界面。 3.2.8教師代課報(bào)表窗體在系統(tǒng)主窗體中選擇“教師代課報(bào)表”,彈出如圖所示界面。第四章 總結(jié) 4.1 編程心得經(jīng)過三個(gè)多月的設(shè)計(jì)和開發(fā),排課管理系統(tǒng)基本開發(fā)完畢,其功能基本符合用戶需求,能夠完成課程查詢及查詢代課老師的基本信息,并提供部分系統(tǒng)功能, 對(duì)于數(shù)據(jù)的一致性的問題也通過程序進(jìn)行了有效的解決。但是由于畢業(yè)設(shè)計(jì)時(shí)間較短,所以該系統(tǒng)還有許多不盡如人意的

25、地方。在這次編程的過程中我翻閱了大量的書籍,在網(wǎng)上也找了不少資料,使我的編程水平有所提高了。由于這次設(shè)計(jì)涉及到vb,我學(xué)到了不少編程工具的知識(shí),對(duì)vb有了進(jìn)一步的了解。以前只在書本中知道一些表面的東西,這次經(jīng)過自己的操作有了大大的了解,雖然沒有達(dá)到很精通的地步,但也有所收獲。4.2存在問題在編程的過程中由于技術(shù)上的問題,沒有達(dá)到預(yù)期中的效果。比如說本來在課程報(bào)表窗體和教師代課報(bào)表窗體內(nèi)都有瀏覽和打印的效果,可是不知道什么原因打印不出來,它顯示報(bào)表寬度大于紙的寬度,可是我不知道如何修改它。4.3 感 謝在即將結(jié)束的大學(xué)生活之際,我首先要感謝我所有的老師,特別是對(duì)我進(jìn)行過指導(dǎo)的老師們,他們工作態(tài)度

26、認(rèn)真負(fù)責(zé),嚴(yán)謹(jǐn)?shù)闹螌W(xué)精神和深厚的理論水平都使我收益匪淺。無論在理論上還是在實(shí)踐中,都給與我很大的幫助,使我得到不少的提高這對(duì)于我以后的工作和學(xué)習(xí)都有一種巨大的幫助,感謝他們耐心的輔導(dǎo)。另外,在系統(tǒng)開發(fā)過程中還有同組的同學(xué)同樣給于我不少幫助,解決了不少的難點(diǎn),使得系統(tǒng)能及時(shí)開發(fā)完成,這里一并表示感謝。參考文獻(xiàn)1.張堪、侯世國、所玉君 編著,access 2000入門與提高,北京.清華大學(xué)出版社2.白松濤 編著,access 2000實(shí)用培訓(xùn)教材,北京. 清華大學(xué)出版社3.王珊、李盛恩編著,數(shù)據(jù)庫基礎(chǔ)與應(yīng)用,北京. 人民郵電出版社4.曹青、邱李華、郭志強(qiáng)編著,visual basic 程序設(shè)計(jì)教程

27、,機(jī)械工業(yè)出版社5.microsoft ,visual basic 6.0 中文版控件大全,電子工業(yè)出版社6.王柏盛 主編 孫建英 郭紅 張永強(qiáng) 張海波等副主編,visual basic 6.0程序設(shè)計(jì),徐州,中國礦業(yè)大學(xué)出版社,解京選,2000.17.求是科技 林陳雷 郭安源 葛曉東編著,visual basic教育信息化系統(tǒng)開發(fā)實(shí)例導(dǎo)航,北京,人民郵電出版社出版,2004.18.姚普選編著 馮博琴審 。數(shù)據(jù)庫原理及應(yīng)用(access2000)高等學(xué)校計(jì)算機(jī)基礎(chǔ)教育教材精選 清華大學(xué)出版社,20019.向中凡,孟文,黃勤珍。access2000實(shí)用操作與技術(shù)。西安:西安電子科技大學(xué)出版社,2

28、000代碼如下:fmloading:option explicitprivate sub form_load()me.mousepointer = 11dim x, y as integerimgbg.picture = loadpicture(app.path + back.jpg)imgbg.width = form1.widthimgbg.height = form1.heightx = (screen.width - form1.width) / 2y = (screen.height - form1.height) / 2form1.left = xform1.top = ytime

29、r1.enabled = trueend subfmstart:option explicitdim strrun as stringdim itp as integerprivate sub command1_click()me.mousepointer = 11timer1.enabled = truestrrun = ltrim$(rtrim$(combo1.text)select case strruncase combo1.list(0): form1.showcase combo1.list(1): form2.showcase combo1.list(2): form3.show

30、case combo1.list(3): form4.showcase combo1.list(4): form5.showcase combo1.list(5): form6.show case else: msgbox 請(qǐng)選擇一正確的操作項(xiàng), vbinformation + vbokonly, 操作end selectend subprivate sub command2_click()frmabout.showend subform1:private sub form_load()combo1.additem 教職員入庫信息combo1.additem 排課管理combo1.addite

31、m 教職員帶課查詢combo1.additem 本學(xué)期課程設(shè)置combo1.additem 打印課程表combo1.additem 打印教師代課表end subprivate sub form_unload(cancel as integer)itp = msgbox(你確定要退出本系統(tǒng), vbyesno + vbquestion, 退出)if itp = vbno then cancel = 1end ifif cancel = 0 then endend ifend subprivate sub picture1_click()end subprivate sub timer1_timer

32、()timer1.enabled = falseme.mousepointer = 0end subdim con as adodb.connectiondim rs as adodb.recordsetdim qrs as adodb.recordsetdim slsql as stringdim i, j as integerdim strbak(2) as stringdim sqlstr as stringprivate sub command1_click(index as integer)on error goto err:dim cn as integerfor cn = 0 t

33、o 2 text1(cn).text = next cnif rs.recordcount 0 then select case index case 0: rs.movefirst case 1: rs.moveprevious command1(2).enabled = true command1(3).enabled = true case 2: rs.movenext command1(0).enabled = true command1(1).enabled = true case 3: rs.movelast end select displayinfoend ifgoto ok:

34、err:call dataoverok:end subprivate sub dataover()if rs.bof then command1(0).enabled = false command1(1).enabled = false command1(2).enabled = true command1(3).enabled = true rs.movefirst else if rs.eof then rs.movelast command1(0).enabled = true command1(1).enabled = true command1(2).enabled = false

35、 command1(3).enabled = false else msgbox database error, vbexclamation + vbokonly, error unknown end ifend ifend subprivate sub command2_click(index as integer)on error goto errdealif index = 0 or index = 2 then cansave (true)else cansave (false)end ifselect case indexcase 0: rs.addnew call tonullca

36、se 1: j = msgbox(你確定要?jiǎng)h除本記錄嗎?, vbyesno + vbquestion, 刪除) if j = vbyes then rs.delete call tonull end ifcase 2:rs.deleters.addnewcase 3: if len(ltrim$(rtrim$(text1(0).text) 0 then rs.addnew for i = 0 to 2 if len(ltrim$(rtrim$(text1(i).text) 0 then rs.fields(i) = text1(i).text end if next i rs.update e

37、lse msgbox 姓名不得為空, vbokonly + vbexclamation, error end ifcase 4: for i = 0 to 2 text1(i).text = strbak(i) next i call command2_click(3)end selectexit suberrdeal:msgbox database error, vbexclamation + vbokonly, errorokend:end subprivate sub cansave(ok as boolean)frame1.enabled = not okframe3.enabled

38、= okfor i = 0 to 4 if i 0 then rs.movefirst displayinfo cansave (false) else new data cansave (true) call command2_click(0) end ifend subprivate sub displayinfo() i = j = 0 for i = 0 to 2 text1(i).text = if len(rs.fields(i) 0 then text1(i).text = rs.fields(i) strbak(i) = text1(i).text end if next ie

39、nd subprivate sub tonull() for i = 0 to 2 text1(i).text = strbak(i) = next iend subprivate sub form_unload(cancel as integer)on error goto kkrs.closeset rs = nothingqrs.closeset qrs = notingcon.closeset con = nothingkk:end subprivate sub frame3_dragdrop(source as control, x as single, y as single)en

40、d subprivate sub querycomm_click() slsql = select * from teacher where ctrname = + text1(3).text + qrs.open slsql, con, adopenstatic if not qrs.eof then qrs.movefirst i = j = 0 for i = 0 to 2 text1(i).text = if len(qrs.fields(i) 0 then text1(i).text = qrs.fields(i) strbak(i) = text1(i).text end if n

41、ext i end if qrs.closeend subform2:option explicitdim conn as adodb.connectiondim rstr as adodb.recordsetdim rssj as adodb.recordsetdim i, j, sjcnt as integerdim classcode as stringdim trchanged, classchanged as booleandim strsql as stringdim rstrary as adodb.recordsetdim rsclassary as adodb.records

42、etdim strtr(9) as stringdim strsj(49) as stringdim minht, maxht as integerprivate sub enablesave(ok as boolean)dim k as integerfor k = 0 to 3 if k 0 and len(classcode) 1 then call displayinfo cb(1).enabled = true end ifcase 1: cb_click (0) enablesave (true) cb(1).enabled = falsecase 2: if trchanged

43、then strsql = delete * from trclass where cclasscode= & classcode & conn.execute strsql dim strtrname as string for i = 0 to sjcnt - 1 strtrname = trim(combo2(i).text) if len(strtrname) 0 then strsql = insert into trclass values( & classcode & , + + trim(label2(i).caption) + , + + trim(combo2(i).tex

44、t) + ) me.caption = strsql conn.execute strsql end if next i trchanged = false rstrary.requery cb(1).enabled = falseend if if classchanged then conn.execute delete * from classarray where cclasscode= & classcode & dim x, y as integer for i = 0 to 49 y = i mod 5 + 1 x = int(i / 5) + 1 if len(trim(com

45、bo3(i).text) 0 then strsql = insert into classarray values( & classcode & , & y & , & x & , & trim(combo3(i).text) & ) me.caption = strsql conn.execute strsql end if next i classchanged = false rsclassary.requery end if enablesave (false) case 3: for i = 0 to sjcnt - 1 combo2(i).text = combo2(i).tag next i for i = 0 to 49 combo3(i).text = combo3(i).tag next i enablesave (false) cb(1).enabled = falseend selectgoto okerrdeal:msgbox error unknownok:me.mousepointer = 0end subprivate sub displayinfo()for j = 0 to sjcnt - 1

溫馨提示

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

評(píng)論

0/150

提交評(píng)論