欧美色欧美亚洲高清在线观看,国产特黄特色a级在线视频,国产一区视频一区欧美,亚洲成a 人在线观看中文

  1. <ul id="fwlom"></ul>

    <object id="fwlom"></object>

    <span id="fwlom"></span><dfn id="fwlom"></dfn>

      <object id="fwlom"></object>

      學(xué)生公寓生活服務(wù)系統(tǒng)軟件工程研究論文[合集五篇]

      時(shí)間:2019-10-26 18:25:34下載本文作者:會(huì)員上傳
      簡介:寫寫幫文庫小編為你整理了多篇相關(guān)的《學(xué)生公寓生活服務(wù)系統(tǒng)軟件工程研究論文》,但愿對你工作學(xué)習(xí)有幫助,當(dāng)然你在寫寫幫文庫還可以找到更多《學(xué)生公寓生活服務(wù)系統(tǒng)軟件工程研究論文》。

      第一篇:學(xué)生公寓生活服務(wù)系統(tǒng)軟件工程研究論文

      摘要:隨著高校信息化的飛速發(fā)展,數(shù)字化校園建設(shè)不斷推進(jìn),高校的學(xué)生群體備受關(guān)注,而高校學(xué)生的公寓生活管理并沒有完全得到數(shù)字化的有力支持,因此本研究將結(jié)合軟件工程相關(guān)技術(shù)分析搭建一套完整的學(xué)生公寓生活服務(wù)系統(tǒng)的主要環(huán)節(jié)。在實(shí)際的功能上,完全按照學(xué)生的具體需求,提供在線申請及信息查詢操作,給學(xué)生提供了生活瑣事的解決途徑,意見實(shí)時(shí)反饋,信息實(shí)時(shí)傳輸,這在校園數(shù)字化建設(shè)上具有重大意義。

      關(guān)鍵詞:軟件工程;系統(tǒng)設(shè)計(jì)流程;生活服務(wù)系統(tǒng)

      1引言

      軟件工程是將規(guī)范的、系統(tǒng)化的、可度量的方法應(yīng)用于軟件開發(fā)、運(yùn)行和維護(hù)的過程[1]。在軟件工程方面,大量學(xué)者對其進(jìn)行了深入研究。隨著各大高校的網(wǎng)絡(luò)信息技術(shù)的迅速發(fā)展,數(shù)字化校園建設(shè)不斷推進(jìn),致力于打造智慧校園[2]。在智慧校園建設(shè)過程中,高校的核心管理信息系統(tǒng)越來越完善,但學(xué)生活動(dòng)方式和內(nèi)容不斷地被復(fù)雜化、具體化,存在大量信息處理需求,卻沒有得到完善的一體化系統(tǒng)的支持。因此,設(shè)計(jì)一個(gè)符合高校自身特點(diǎn)的學(xué)生公寓生活服務(wù)系統(tǒng)重要且迫切,這為校園生活服務(wù)奠定了基礎(chǔ),提升了標(biāo)準(zhǔn)化、高效率的管理[3],并促進(jìn)了智慧校園的發(fā)展。通過對軟件工程的研究,在信息發(fā)展的大環(huán)境下鋪開的一個(gè)落于細(xì)節(jié)的項(xiàng)目,結(jié)合當(dāng)前的信息化在校園中的發(fā)展趨勢,迎合目前公寓管理的數(shù)字化建設(shè)目標(biāo),將著力解決學(xué)生在公寓生活中的具體問題,以信息化帶動(dòng)生活為主旨,以為學(xué)生的實(shí)際生活帶來便利為目標(biāo),分析搭建一套完整的學(xué)生公寓生活服務(wù)系統(tǒng)的相關(guān)環(huán)節(jié)。

      2需求分析

      在需求分析過程中,使用統(tǒng)一建模語言(UnifiedModelingLanguage,UML)進(jìn)行形象化描述。在對系統(tǒng)需求描述時(shí),需要考慮全面,對其功能、性能、用例、運(yùn)行環(huán)境、約束條件、可行性等都要進(jìn)行有效性分析。根據(jù)對軟件工程的研究,學(xué)生公寓生活服務(wù)系統(tǒng)的體系結(jié)構(gòu)設(shè)計(jì)模式采用瀏覽器/服務(wù)器(B/S)模式,用戶通過角色身份登錄。該系統(tǒng)包含管理員、學(xué)生及工人等三大角色和七大板塊十三大功能,用戶可通過此服務(wù)系統(tǒng)快速解決生活中的設(shè)備故障、海報(bào)張貼、連廊使用、早出晚歸等復(fù)雜性申請問題,同時(shí)給學(xué)生提供失物招領(lǐng)、意見反饋的渠道,為學(xué)校后勤公寓中心與各在校學(xué)生之間搭建了橋梁。另一方面,系統(tǒng)充分考慮了社會(huì)、團(tuán)隊(duì)及技術(shù)等實(shí)現(xiàn)的可行性,在系統(tǒng)性能上考慮了系統(tǒng)效率、處理方式、適應(yīng)性、可靠性及安全性等各個(gè)方面,使系統(tǒng)具備實(shí)時(shí)性強(qiáng)、響應(yīng)速度快、穩(wěn)定性高等優(yōu)點(diǎn)。

      3系統(tǒng)設(shè)計(jì)

      在系統(tǒng)設(shè)計(jì)方面,系統(tǒng)原型是需求交流中最好的表達(dá)方式,非常便于客戶及參與項(xiàng)目開發(fā)者等人員對系統(tǒng)框架及功能點(diǎn)的認(rèn)識與理解。在高校學(xué)生公寓生活服務(wù)系統(tǒng)中,重點(diǎn)對系統(tǒng)的后臺(tái)功能進(jìn)行了原型設(shè)計(jì)。當(dāng)前系統(tǒng)的原型設(shè)計(jì)使用Axure軟件,界面設(shè)計(jì)使用PhotoShop軟件;系統(tǒng)前端使用DreamWeaver,技術(shù)采用HTML5+CSS3、BootStrap等;系統(tǒng)后端使用VisualStudio2012作為開發(fā)工具,技術(shù)采用C#、ASP.NET等,XML作為后臺(tái)數(shù)據(jù)存儲(chǔ)介質(zhì);系統(tǒng)數(shù)據(jù)庫使用SQLServer2008[4]。在原型設(shè)計(jì)、UI設(shè)計(jì)、Web前端設(shè)計(jì)的基礎(chǔ)上,進(jìn)一步進(jìn)行數(shù)據(jù)庫設(shè)計(jì)和詳細(xì)設(shè)計(jì)。數(shù)據(jù)庫設(shè)計(jì)中具體需要設(shè)計(jì)實(shí)體-聯(lián)系圖、對實(shí)體間的關(guān)系進(jìn)行分析,根據(jù)分析結(jié)果,創(chuàng)建數(shù)據(jù)表。數(shù)據(jù)表創(chuàng)建成功后,就可以利用現(xiàn)有的相關(guān)框架或者是自定義結(jié)構(gòu)進(jìn)行功能研發(fā)。

      4系統(tǒng)測試

      軟件測試是通過執(zhí)行軟件來判斷軟件是否具備所期望的性質(zhì),是可信軟件開發(fā)中一個(gè)行之有效的、必不可少的、客觀地評估軟件可信性的方法[5]。對于軟件測試的管理,不同的公司都根據(jù)各自的經(jīng)驗(yàn)采取不同的流程進(jìn)行管理。本研究系統(tǒng)在需求分析和界面設(shè)計(jì)階段主要采用靜態(tài)測試,在前端頁面設(shè)計(jì)階段主要采用的是白盒測試,而在系統(tǒng)功能開發(fā)階段主要采用的是黑盒測試。系統(tǒng)測試貫穿整個(gè)軟件開發(fā)生命周期,在本研究過程中,對界面、前端和數(shù)據(jù)庫等內(nèi)容都進(jìn)行了測試。通過測試,盡快盡早地發(fā)現(xiàn)了該學(xué)生公寓生活服務(wù)系統(tǒng)所存在的各種缺陷,通過對該服務(wù)系統(tǒng)進(jìn)行不斷驗(yàn)證和確認(rèn),最終完成了一個(gè)實(shí)用型的高校學(xué)生公寓生活服務(wù)系統(tǒng)。

      5結(jié)語

      軟件工程是研究系統(tǒng)設(shè)計(jì)的主要方法工具,通過結(jié)合軟件工程相關(guān)技術(shù),對學(xué)生公寓生活服務(wù)系統(tǒng)進(jìn)行合理研究,該系統(tǒng)用于提高學(xué)生生活質(zhì)量并將學(xué)生生活中的各項(xiàng)繁瑣事務(wù)網(wǎng)絡(luò)化、信息化。在研究過程中,軟件工程中分析、設(shè)計(jì)和測試技術(shù)目前仍是在工程上保障軟件高可信性的主要手段[5],在本文軟件工程研究中,也是以高校學(xué)生公寓生活服務(wù)系統(tǒng)為例對此研究過程進(jìn)行實(shí)例化分析。通過每個(gè)階段的具體分析,不僅梳理了用戶需求、系統(tǒng)設(shè)計(jì)及系統(tǒng)測試等環(huán)節(jié),同時(shí)還提高了系統(tǒng)本身的研發(fā)效率,節(jié)約了研發(fā)成本,對自身今后學(xué)習(xí)軟件工程也奠定了基礎(chǔ)。

      參考文獻(xiàn):

      [1]張健,曾廣周,and楊鵬,“面向Agent軟件工程研究現(xiàn)狀與展望,”計(jì)算機(jī)工程與應(yīng)用,vol.42,pp.30-33,2006.[2]王燕,高新城,盧清,and王雷,“校園移動(dòng)信息化平臺(tái)研究,”吉林師范大學(xué)學(xué)報(bào)(自然科學(xué)版),vol.34,pp.145-147,2013.[3]W.Wang,L.Bai,andL.Zhu,“StudentApartmentManagementSystemDesignandImplementationBasedonASP,”AppliedMechanics&Materials,vol.687-691,pp.2234-2238,2014.[4]劉靜,“高校學(xué)生公寓管理系統(tǒng)設(shè)計(jì)與開發(fā),”西北農(nóng)林科技大學(xué),2010.[5]陳火旺,王戟,and董威,“高可信軟件工程技術(shù),”電子學(xué)報(bào),vol.31,pp.1933-1938,2004.

      第二篇:VB+Access學(xué)生公寓管理系統(tǒng)-論文

      VB+Access學(xué)生公寓管理系統(tǒng)-論文

      中文摘要

      隨著電腦的普及與使用,現(xiàn)在的管理也提升了一個(gè)檔次,漸漸實(shí)現(xiàn)了無紙化辦公,即從原來的人工記錄管理模式轉(zhuǎn)變?yōu)殡娔X一體化管理。高校是科研的陣地,后勤的公寓管理也應(yīng)該一改傳統(tǒng)的人工管理,更加信息化,時(shí)代化,節(jié)省人力物力,提高效率?;谶@一點(diǎn),開發(fā)此學(xué)生公寓管理軟件。學(xué)生公寓管理軟件,是以高校的管理方式為實(shí)例而設(shè)計(jì)的一種實(shí)用型管理系統(tǒng)。本系統(tǒng)最大的特點(diǎn)是通用性、簡單操作性,適用于同行業(yè)以及一些同類型的企業(yè)管理。隨著學(xué)校寄宿人員的增多,公寓管理人員的負(fù)擔(dān)越來越重,為了讓所有公寓管理人員能從繁重的工作中解脫出來,實(shí)現(xiàn)無紙化辦公;使工作更有條理,更方便,更有效率而開發(fā)出這套公寓管理軟件。軟件從對學(xué)生的分房開始到最后的公寓管理全部電腦化。它主要包括:公寓、寢室的配置、住宿人員登記、衛(wèi)生檢查、公寓資產(chǎn)、學(xué)生違紀(jì)、值班老師記錄以及對學(xué)生住宿情況查詢,可以更快地了解到每個(gè)學(xué)生的住宿情況,使公寓的管理效率更高,做的更好!

      關(guān)鍵字:配置、登記、檢查 Abstract

      With the popularization and use of the computer, present management has been promoted much, more and more jobs have been done by computer.It namely changes the original artificial record management mode into computer''s integrating and managing.The university is the position of scientific research, the apartment management should change traditional managing artificially too, for the efficiency.So , develop the management software of student''s apartment.Student Apartment Management System is a utility management system based on the managing mode of many universities and colleges.Universal and easy-operating are the greatest features of the system ,which is also applicable for enterprises of the same type.Apartment keepers bear a increasingly heavy burden because of the gradually added number of roomers.In order to free apartment keepers from the heave work,and make the work more convienent and efficient.The apartment management system is developed.The system computerized all the processes concerning the apartment management which include apartment,dormitory distribution,roomer registration,santitation examination,and the query for apartment property,students'' violation of discipline,teachers'' records and rooming situation.It makes the apartment management more efficient and much better.Key word: dispose、register、check 目錄

      引言...4 第一章系統(tǒng)分析...5 1.1開發(fā)工具簡介及系統(tǒng)運(yùn)行環(huán)境...5 1.2開發(fā)的必要性...6 1.3系統(tǒng)開發(fā)的可行性...7 1.4數(shù)據(jù)來源...8 1.5新系統(tǒng)數(shù)據(jù)流程圖...9 第二章 數(shù)據(jù)庫設(shè)計(jì)...12 第三章功能模塊設(shè)計(jì)...16 3.1新系統(tǒng)功能結(jié)構(gòu)圖及運(yùn)行圖如下:...16 3.2系統(tǒng)設(shè)置:.17 3.3公寓管理...18 3.4 衛(wèi)生檢查...19 3.5 公寓資產(chǎn)...20 3.6 記錄查看與記錄刪除...20 3.7值班記錄...20 3.8幫助制作...21 第四章 程序設(shè)計(jì)...22 主程序流程圖...22 4.1 登錄界面...23 4.2 程序主界面...26 4.3系統(tǒng)設(shè)置...32 4.4公寓管理...57 4.5衛(wèi)生檢查...60 4.6 公寓資產(chǎn)...64 4.7記錄查看...66 4.8記錄刪除...74 4.9值班記錄...81 4.10 Help制作...88 第五章 系統(tǒng)測試...90 總結(jié)...91 參考文獻(xiàn)...92 引言

      隨著電腦的普及與應(yīng)用,現(xiàn)在的管理也需要提升一個(gè)檔次。即從原來的手工記錄管理模式轉(zhuǎn)變?yōu)殡娔X一體化管理。這樣會(huì)給公寓的管理人員帶來很多好處,讓他們管理的效率更高、效果更好,管理起來更方便。由此而產(chǎn)生了本管理軟件――學(xué)生公寓管理軟件。學(xué)生公寓管理軟件是用Microsoft Visual Basic 編寫完成。由于Visual Basic率先采用了可視化(VISUAL)的程序設(shè)計(jì)方法。所以利用系統(tǒng)提供的大量可視化控件,可以方便的以可視化方式直接繪制用戶圖形界面,并可直觀,動(dòng)態(tài)的調(diào)整界面的風(fēng)格和樣式,直到滿意為止,從而克服了以前必須用大量代碼去描述界面元素的外觀和位置的傳統(tǒng)編程模式。做起來方便,使用起來更為快捷。

      作為一個(gè)學(xué)生公寓的管理軟件,要十分全面的貼近以及適合大學(xué)公寓的管理方法。本軟件的參考資料主要有兩種來源:一是參考本學(xué)校公寓的管理結(jié)構(gòu),管理方法。如各個(gè)公寓的分布特色,以及公寓的各種管理制度。這些資料是本軟件的主要依據(jù),也可以說這些資料來源于普通的生活,比較真實(shí)一些。二是來源于網(wǎng)絡(luò)上的各種同類軟件,通過這些軟件可以看出一個(gè)公寓最低需要哪些管理與設(shè)置,在這些軟件中,有些軟件功能比較齊全,但是在管理上顯的非常的不方便,使用起來十分麻煩、繁瑣,有些雖然簡單,但是功能上又不是十分完善,對這些軟件首先要進(jìn)行取其精華,棄其糟粕,從而進(jìn)行編寫。

      本軟件主要包括以下方面:系統(tǒng)設(shè)置、公寓管理、衛(wèi)生檢查、公寓資產(chǎn)、記錄查看、記錄刪除、值班記錄、幫助制作。

      學(xué)生公寓管理軟件目前版本為1.0.1,為一個(gè)測試版本。它目前在功能上,以及操作的簡便上有很大的改進(jìn)。但是還是存在一些不足,在有些功能的實(shí)現(xiàn)上還不是十分的理想,這也是本人在時(shí)間和精力上留下的遺憾。但是相信這些會(huì)在以后的版本中得到完善,使這個(gè)軟件成為一個(gè)功能上最全,使用上最簡捷方便的管理軟件。431

      [10]...>> 第一章系統(tǒng)分析

      系統(tǒng)采用MICROSOFT公司的 VISUAL BASIC語言編寫的學(xué)生公寓管理系統(tǒng),本系統(tǒng)在研制開發(fā)過程中,嚴(yán)格遵循軟件工程方法,完全采用結(jié)構(gòu)化程序設(shè)計(jì)方法。

      本系統(tǒng)的主要功能可以方便的對學(xué)生公寓進(jìn)行管理,系統(tǒng)采用ACCESS數(shù)據(jù)庫使數(shù)據(jù)具有較強(qiáng)的完整性、較好的數(shù)據(jù)安全性等特點(diǎn)以及提供了標(biāo)準(zhǔn)的幫助,使用戶方便的獲得所需的幫助。界面友好、操作簡單、功能齊全、具有較好的人機(jī)接口界面是本系統(tǒng)的最大優(yōu)點(diǎn)。1.1開發(fā)工具簡介及系統(tǒng)運(yùn)行環(huán)境 1.1.1

      VB6簡介

      本軟件的開發(fā)工具為VISUAL BASIC,作為一種開發(fā)語言,VISUAL BASIC率先采用了可視化(VISUAL)的程序設(shè)計(jì)方法。利用系統(tǒng)提供的大量可視化控件,可以方便的以可視化方式直接繪制用戶圖形界面,并可直觀、動(dòng)態(tài)的調(diào)整界面的風(fēng)格和樣式,直到滿意為止,從而克服了以前必須用大量代碼去描述界面元素的外觀和位置的傳統(tǒng)編程模式。

      它還擁有面向?qū)ο蟮木幊谭椒?。面向?qū)ο蟮某绦蛟O(shè)計(jì)是伴隨WIDNOWS圖形界面的誕生而產(chǎn)生的一種新的程序設(shè)計(jì)思想,與傳統(tǒng)程序設(shè)計(jì)有著較大的區(qū)別,VISUAL BASIC采用了面向?qū)ο蟮某绦蛟O(shè)計(jì)思想。所謂“對象”就是現(xiàn)實(shí)生活中的每個(gè)一人,每一個(gè)可見的實(shí)體。同樣,在VISUAL BASIC中,用來構(gòu)成用戶圖形界面的可視化控件,也可視為是一個(gè)對象。不同的對象,在程序中所賦給它的功能是不同的,比如,在圖形界面上有兩個(gè)命令按鈕,一個(gè)用來實(shí)現(xiàn)數(shù)據(jù)的統(tǒng)計(jì)計(jì)算,另一個(gè)用來實(shí)現(xiàn)數(shù)據(jù)的打印,這兩個(gè)按鈕就可視為是兩個(gè)不同的對象,為了實(shí)現(xiàn)這兩個(gè)對象各自不同的功能,接下來就應(yīng)該分別針對這兩個(gè)對象編寫程序代碼,這種編程的思想和方法即為所謂的“面向?qū)ο蟮某绦蛟O(shè)計(jì)”。它還支持第三方軟件商為其開發(fā)的可視化控制對象,如本例中就用到了一個(gè)。這些可視化控件對應(yīng)的文件擴(kuò)展名這OCX。只要擁有控件的OCX文件,就可將其加入到VB系統(tǒng)中,從而大大增強(qiáng)VB的編程實(shí)力。使軟件做起來會(huì)更加得心應(yīng)手。1.1.2 HELP 制作

      制作help文檔需要一個(gè)專業(yè)制作軟件,本人使用的是破解版的QuickCHM,此軟件無論在功能上還在是操作上用起來都是很方便。它屬于一個(gè)傻瓜型的制作軟件,利用它可以快速的制作出各種你所需要的幫助文檔。但是如果想制作出幫助文檔,就需要使用制作網(wǎng)頁的軟件把內(nèi)容先做成html形式,本人使用Dreamweaver制作的網(wǎng)頁,然后在用此軟件進(jìn)行加載,最后生成chm文檔。1.2開發(fā)的必要性

      信息資源已成為各個(gè)部門的重要財(cái)富和資源,建立一個(gè)滿足各級部門信息處理需要的信息系統(tǒng),也一個(gè)企業(yè)或組織生存越來越重要的信息資源。長期以來,使用傳統(tǒng)人工的方法管理高校公寓,這種管理方式存在著許多缺點(diǎn),如:效率低。而且時(shí)間一長,將產(chǎn)生大量的文件和數(shù)據(jù),這對于查找、更新、維護(hù)都帶來了不少的困難。

      隨著科學(xué)技術(shù)的不斷提高,計(jì)算機(jī)科學(xué)日漸成熟,其強(qiáng)大的功能已為人們深刻認(rèn)識,它已進(jìn)入人類社會(huì)的各個(gè)領(lǐng)域并發(fā)揮越來越重要的作用。學(xué)生公寓管理軟件,是以高校的管理方式為實(shí)例而設(shè)計(jì)的一種實(shí)用型管理軟件。

      本系統(tǒng)最大的特點(diǎn)是通用性、簡單操作性。隨著學(xué)校寄宿人員的增多,公寓管理人員的負(fù)擔(dān)越來越重,為了讓所有公寓管理人員能從繁重的工作中解脫出來,實(shí)現(xiàn)無紙化辦公,使工作更有條理、更方便、更有效率,而開發(fā)出這套公寓管理軟件。1.3系統(tǒng)開發(fā)的可行性 1.3.1 技術(shù)上的可行性 我們正走進(jìn)一個(gè)信息時(shí)代,信息技術(shù)將從根本上改變?nèi)祟惿鐣?huì)的生產(chǎn)方式和生活方式,各行各業(yè)的業(yè)務(wù)管理現(xiàn)在都已經(jīng)相繼使用計(jì)算機(jī)來處理,可以說用計(jì)算機(jī)進(jìn)行信息管理是一個(gè)總趨勢。學(xué)生公寓管理軟件主要是對公寓、寢室的配置、住宿人員登記、衛(wèi)生檢查、公寓資產(chǎn)、學(xué)生違紀(jì)、值班老師記錄以及對學(xué)生住宿情況查詢,修改,更新等。可以更快地了解到每個(gè)學(xué)生的住宿情況。開發(fā)一個(gè)學(xué)生公寓管理系統(tǒng)可以達(dá)到事半功倍的效果。隨著數(shù)據(jù)庫管理系統(tǒng)的普及以及可視化編程軟件的出現(xiàn),使數(shù)據(jù)庫管理信息系統(tǒng)的開發(fā)變得更為簡單,因此開發(fā)一個(gè)學(xué)生公寓管理系統(tǒng)是完全可行的。1.3.2 經(jīng)濟(jì)上的可行性

      本單位有自己的微機(jī)室可以使用,不必重新購置計(jì)算機(jī),不需要花費(fèi)大量資金,是一個(gè)節(jié)約人力物力的好辦法。

      1.3.3 組織管理上的可行性

      本單位的領(lǐng)導(dǎo)干部具有較高的素質(zhì),它們對管理現(xiàn)代化有較高的認(rèn)識水平,并且有各級領(lǐng)導(dǎo)的大力支持和重視。

      綜上所述,建立一個(gè)學(xué)生公寓管理軟件與人工操作相比具有速度更快,操作更準(zhǔn)確,更節(jié)約開支等有利之處,因此建立一個(gè)學(xué)生公寓管理軟件是必要可行。

      1.4數(shù)據(jù)來源

      作為一個(gè)學(xué)生公寓的管理軟件,要十分全面的貼近以及適合大學(xué)公寓的管理方法。本軟件的參考資料主要有兩種來源:一是參考本學(xué)校公寓的管理結(jié)構(gòu),管理方法,這些資料是本軟件的主要依據(jù),也可以說這些資料來源于普通的生活,比較真實(shí)一些。二是來源于網(wǎng)絡(luò)上的各種同類軟件,通過這些軟件可以看出一個(gè)公寓最低需要哪些管理與設(shè)置,在這些軟件中,有些軟件功能比較齊全,但是在管理上顯的非常的不方便,使用起來十分麻煩、繁瑣,有些雖然簡單,但是功能上又不是十分完善,對這些軟件首先要進(jìn)行取其精華,棄其糟粕,從而進(jìn)行編寫。

      [10]...>> 1.5新系統(tǒng)數(shù)據(jù)流程圖

      圖1.1數(shù)據(jù)流程圖

      數(shù)據(jù)字典

      圖1.2 數(shù)據(jù)元素 注:其它數(shù)據(jù)元素略

      圖1.3 數(shù)據(jù)流 注:其它數(shù)據(jù)流略

      圖1.4 加工 注:其它加工略

      注:其它數(shù)據(jù)存儲(chǔ)略

      第二章 數(shù)據(jù)庫設(shè)計(jì)

      1、E-R圖

      圖2.1 E-R圖

      2、信息的數(shù)量越來越大,數(shù)據(jù)庫的作用越發(fā)突出,所以數(shù)據(jù)庫的建立是系統(tǒng)施實(shí)的主要部分之一,它關(guān)系到整個(gè)系統(tǒng)的運(yùn)行情況,是整個(gè)系統(tǒng)的重要組成部分。本系統(tǒng)數(shù)據(jù)庫為db.mdb,在數(shù)據(jù)庫中包括十個(gè)表。分別是:用戶表、公寓表、班級表、寢室表、衛(wèi)生等級表、學(xué)生基本情況表、學(xué)生請假情況表、學(xué)生違規(guī)情況表、寢室衛(wèi)生情況表、資產(chǎn)表。下面介紹幾個(gè)主要的表:

      ⑴ 學(xué)生基本情況表主要是存放學(xué)生的基本情況,字段包括:姓名、性別、學(xué)號、班級、公寓、寢室、入學(xué)時(shí)間、年制、寢室電話、個(gè)人電話、備注。數(shù)據(jù)結(jié)構(gòu)如下表:

      字段名 數(shù)據(jù)類型 數(shù)據(jù)長度 姓名 文本 8 性別 文本 2 學(xué)號 文本 10 班級 文本 10 公寓 文本 20 寢室 文本 10 入學(xué)時(shí)間 文本 14 年制 文本 8 個(gè)人電話 文本 15 備注 備注

      ⑵ 學(xué)生請假情況表主要存放學(xué)生請假情況,字段包括:日期、姓名、班級、公寓、寢室、天數(shù)、原因、老師、備注。數(shù)據(jù)結(jié)構(gòu)如下表: 字段名 數(shù)據(jù)類型 數(shù)據(jù)長度 日期 文本 14 姓名 文本 8 班級 文本 10 公寓 文本 20 寢室 文本 10 天數(shù) 文本 10 原因 備注

      老師 文本 8 備注 備注

      ⑶ 學(xué)生違規(guī)情況表主要存放學(xué)生違規(guī)情況,字段包括:日期、姓名、班級、公寓、寢室、原因、程度、處罰、備注。數(shù)據(jù)結(jié)構(gòu)如下表:

      字段名 數(shù)據(jù)類型 數(shù)據(jù)長度 日期 文本 14 姓名 文本 8 班級 文本 10 公寓 文本 20 寢室 文本 10 原因 備注

      程度 備注

      處罰 備注

      備注 備注

      ⑷ 衛(wèi)生情況表主要存放寢室衛(wèi)生情況,字段包括:日期、公寓、寢室、檢查1到

      5、得分、減分、等級、備注。其中檢查1到5是為了在沒有使用者想輸入的記錄的情況下自己輸入而設(shè)計(jì)的,保證了系統(tǒng)的可修改性、可擴(kuò)展性。數(shù)據(jù)結(jié)構(gòu)如下表: 字段名 數(shù)據(jù)類型 數(shù)據(jù)長度 日期 文本 14 公寓 文本 20 寢室 文本 10 檢查1 文本 40 檢查2 文本 40 檢查3 文本 40 檢查4 文本 40 檢查5 文本 40 得分 文本 4 減分 文本 4 等級 文本 6 備注 備注

      ⑸ 資產(chǎn)表主要存放寢室新增資產(chǎn)情況,字段包括:日期、公寓、名稱、數(shù)量、單價(jià)、總價(jià)、用途、備注。數(shù)據(jù)結(jié)構(gòu)如下表: 字段名 數(shù)據(jù)類型 數(shù)據(jù)長度 日期 文本 14 公寓 文本 20 名稱 文本 20 數(shù)量 文本 4 單價(jià) 文本 10 總價(jià) 文本 10 用途 備注

      備注 備注

      第三章功能模塊設(shè)計(jì)

      3.1新系統(tǒng)功能結(jié)構(gòu)圖及運(yùn)行圖如下:

      1、系統(tǒng)功能結(jié)構(gòu)圖:

      [10]...>> 圖3.1系統(tǒng)功能結(jié)構(gòu)圖

      2、系統(tǒng)功能結(jié)構(gòu)圖運(yùn)行圖:

      圖3.2系統(tǒng)功能結(jié)構(gòu)運(yùn)行圖

      經(jīng)過系統(tǒng)分析,確定了本軟件主要包括以下方面:系統(tǒng)設(shè)置、公寓管理、衛(wèi)生檢查、公寓資產(chǎn)、記錄查看、記錄刪除、值班記錄、幫助制作。3.2系統(tǒng)設(shè)置: 主要完成:用戶管理、公寓設(shè)置、數(shù)據(jù)備份、數(shù)據(jù)轉(zhuǎn)換、退出的功能。運(yùn)行圖如下:

      圖3.3系統(tǒng)設(shè)置運(yùn)行圖 3.2.1 用戶管理

      可以進(jìn)行管理人員的添加和修改以及刪除操作。添加人員可以分為兩類:普通用戶、管理員??梢砸暡煌藛T而添加。管理員擁有所有權(quán)力,對整個(gè)系統(tǒng)的操作。普通用戶只有瀏覽、及一些簡單的添加操作權(quán)力。無用戶設(shè)置、公寓設(shè)置及記錄刪除等權(quán)力。3.2.2公寓設(shè)置

      分為三個(gè)主要的操作:公寓設(shè)置、寢室設(shè)置、班級設(shè)置。在這里可以添加學(xué)校所有的公寓、所有班級、每個(gè)公寓的所有寢室,也可以用此軟件管理一幢公寓。這樣操作起來會(huì)更簡單、操作一目了然。3.2.3數(shù)據(jù)備份

      這是一個(gè)數(shù)據(jù)管理軟件所必不可少的一部分,利用它可以及時(shí)的備份當(dāng)前的數(shù)據(jù)庫以及在出現(xiàn)故障后利用已保存的數(shù)據(jù)進(jìn)行恢復(fù)。3.2.4數(shù)據(jù)轉(zhuǎn)換

      利用數(shù)據(jù)轉(zhuǎn)換將當(dāng)前數(shù)據(jù)庫中的表轉(zhuǎn)換成Excel表格的形式,顯示更為直觀,可以進(jìn)行打印等操作。3.3公寓管理

      主要完成:學(xué)生請假、學(xué)生違規(guī)、床位設(shè)置的功能。運(yùn)行圖如下:

      圖3.4公寓管理運(yùn)行圖 3.3.1學(xué)生請假

      主要是對學(xué)生請假記錄做一個(gè)添加。利用它可以把學(xué)生的基本的請假資料保存起來。3.3.2學(xué)生違規(guī)

      主要是對學(xué)生違規(guī)記錄做一個(gè)添加。利用它可以把學(xué)生的基本的違規(guī)資料保存起來。3.3.3床位設(shè)置

      通過床位設(shè)置可以簡單查看每個(gè)公寓每個(gè)寢室的床位使用情況以及床位剩余情況。還可以通過詳細(xì)查看,查看到某個(gè)公寓某個(gè)寢室住宿人員的人數(shù),以及具體的住宿人員的名字。3.4 衛(wèi)生檢查

      主要完成:添加檢查記錄的功能。衛(wèi)生檢查可以對衛(wèi)生檢查的結(jié)果進(jìn)行記錄。這里的衛(wèi)生標(biāo)準(zhǔn)一共有五項(xiàng)可以填寫,在每一項(xiàng)里已經(jīng)基本設(shè)置了所不合標(biāo)準(zhǔn)的記錄,你可以在下拉列表框中進(jìn)行選擇即可,但是如果沒有你想輸入的記錄的話,也可以自己輸入。運(yùn)行圖如下:

      圖3.5衛(wèi)生檢查運(yùn)行圖 3.5 公寓資產(chǎn)

      主要完成:添加新增物品的功能。可以對公寓資產(chǎn)的收入或其它物品的入庫進(jìn)行記錄。運(yùn)行圖如下:

      圖3.6公寓資產(chǎn)運(yùn)行圖 3.6 記錄查看與記錄刪除

      主要是對學(xué)生請假、學(xué)生違規(guī)、衛(wèi)生記錄,公寓資產(chǎn)等記錄所進(jìn)行的操作,利用這兩個(gè)功能可以對任一記錄進(jìn)行查看與刪除。運(yùn)行圖如下:

      圖3.7記錄查看

      圖3.8記錄刪除運(yùn)行圖 3.7值班記錄

      它的功能主要是針對值班人員開發(fā)出來的,在這里可以讓值班人員對當(dāng)天值班情況進(jìn)行一個(gè)小記,以便日后查看。運(yùn)行圖如下:

      圖3.9值班記錄運(yùn)行圖 3.8幫助制作

      對于一個(gè)稍顯正規(guī)的軟件來說幫助的制作都是必不可少的內(nèi)容,本程序也不例外,制作了此幫助文檔。在程序中可以按F1或點(diǎn)擊幫助菜單來顯示此help.Chm文檔。以便對本軟件進(jìn)行快速操作。運(yùn)行圖如下:

      圖3.10幫助運(yùn)行圖

      第四章 程序設(shè)計(jì) 主程序流程圖

      4.1 登錄界面

      此界面是由Photoshop制作而成。在做這個(gè)登錄面的時(shí)候想了很多,最后選擇了這種,感覺它看起來干凈,整齊。又不失其莊雅。加上本單位最有特色的建筑,會(huì)讓人一目了然。

      4.1.1 登錄圖片顯示

      圖4.1登錄界面

      4.1.2 界面制作與實(shí)現(xiàn)

      在這個(gè)界面中,主要處理的是判斷當(dāng)前用戶輸入的信息是否正確。如果正確,那么它屬于哪種類型用戶。因?yàn)榇斯芾碥浖诘卿浐蟛煌愋偷挠脩麸@示的窗體與實(shí)現(xiàn)的功能都不是一樣的,它們會(huì)有所差別!(1)浮動(dòng)按鈕的實(shí)現(xiàn)

      確定和取消兩個(gè)按鈕在鼠標(biāo)沒有放上去之前看上去只是一個(gè)普通的平面字效果,但是當(dāng)你把鼠標(biāo)放在這幾個(gè)字上面后,它會(huì)顯示凸出的效果,按下后呈現(xiàn)凹陷的效果。總體實(shí)現(xiàn)立體的感覺。原理主要是在鼠標(biāo)mousemove事件與線的顏色變化組合來實(shí)現(xiàn)。主要代碼如下:

      在窗體中的鼠標(biāo)移動(dòng)過程中,以及在窗體初始化的時(shí)候,要把添加的線的.Visible 屬性設(shè)置為 False,只有在鼠標(biāo)按下的時(shí)候在改變其顏色即

      [10]...>> 可。

      Private Sub Form_MouseMove(Button As Integer, Shift As Integer, x As Single, Y As Single)Line1.Visible = False Line2.Visible = False Line3.Visible = False Line4.Visible = False Line5.Visible = False Line6.Visible = False Line7.Visible = False Line8.Visible = False End Sub

      鼠標(biāo)按下的時(shí)候設(shè)置線條的顏色如下:

      Private Sub Label3_MouseDown(Button As Integer, Shift As Integer, x As Single, Y As Single)Line1.BorderColor = &H808080 Line2.BorderColor = &H808080 Line3.BorderColor = &HE0E0E0 Line4.BorderColor = &HE0E0E0 End Sub

      鼠標(biāo)移動(dòng)到標(biāo)簽的時(shí)候設(shè)置線條的顏色如下: Private Sub Label3_MouseMove(Button As Integer, Shift As Integer, x As Single, Y As Single)Line1.BorderColor = &HE0E0E0 Line2.BorderColor = &HE0E0E0 Line3.BorderColor = &H808080 Line4.BorderColor = &H808080 Line1.Visible = True Line2.Visible = True Line3.Visible = True Line4.Visible = True End Sub(2)用戶類型判斷

      在數(shù)據(jù)庫中建了一人yonghu表。在添加管理人員時(shí)有兩種默認(rèn)級別。管理員、普通用戶。管理員擁有對數(shù)據(jù)庫操作的一切權(quán)限。普通用戶只有普通的查看,數(shù)據(jù)轉(zhuǎn)換等。沒有刪除等操作功能。前用戶成功登錄后,會(huì)在主窗體的狀態(tài)欄中顯示出當(dāng)前用戶及其用戶類型。主要代碼如下:

      設(shè)置當(dāng)前控件連接的數(shù)據(jù)庫 Dim provider As String Dim datasource As String provider = “provider=Microsoft.jet.oledb.4.0” datasource = “data source=” & App.Path & “DB.mdb” With Adodc1.Mode = adModeReadWrite.ConnectionString = provider & “;” & datasource.CommandType = adCmdTable.RecordSource = “yonghu”.Refresh.Recordset.MoveFirst End With 對用戶進(jìn)行判斷

      If Text1.Text = “" Then MsgBox ”請輸入用戶名!“, 48, ”提示“ Exit Sub End If Adodc1.Recordset.Find ”用戶=''“ & Text1.Text & ”''“ If Adodc1.Recordset.EOF = False And Text2.Text = Trim(Adodc1.Recordset.Fields(”pass“))Then main.Text1.Text = Adodc1.Recordset.Fields(”級別“)main.Text2.Text = Adodc1.Recordset.Fields(”用戶“)main.Show Unload Me Else Text1.Text = ”“ Text2.Text = ”“ MsgBox ”登錄不成功,請重新登錄!“, 48, ”提示“ End If 4.2 程序主界面

      程序主界面為本軟件的顯示的核心部分。一切主要操作及顯示都通過這里完成。整個(gè)界面主要由五部分組成。菜單部分、工具欄、左側(cè)操作欄、右側(cè)顯示欄以及狀態(tài)欄。①界面效果圖如下:

      圖4.2程序主界面

      菜單欄的詳見附錄內(nèi)容,這里就不提了。左側(cè)操作欄和右側(cè)顯示欄會(huì)在下面的內(nèi)容中做介紹,現(xiàn)在只簡單介紹一下工具欄和狀態(tài)欄,以及主窗體的各個(gè)事件。

      工具欄主要是由coolbar制作而成。由它制做的工具欄的顯示效果會(huì)更有立體感一些。這里只列出了幾個(gè)常用的按鈕。其中的添加按鈕是用來對公寓住宿人員進(jìn)行添加,修改也是對所住宿人員進(jìn)行修改,想要進(jìn)行修改時(shí)必須顯示所有記錄時(shí)才可以進(jìn)行。在這里值得一提的是刪除DataGrid的操作,由于不知道它的當(dāng)前數(shù)據(jù)源是哪個(gè),所以在刪除前要確定它的數(shù)據(jù)源,也就是它所鏈接的adodc1的數(shù)據(jù)源,或者是其它ado控件對它的數(shù)據(jù)源進(jìn)行重新綁定后的數(shù)據(jù)庫表,也有可能是經(jīng)過一個(gè)查詢后得到的記錄。②它的實(shí)現(xiàn)方法如下所示: Dim o As Adodc Set o = DataGrid1.datasource

      o.Recordset.Delete

      o.Recordset.Update 這里主要是用到了ado對像的方法。用這個(gè)方法得到數(shù)據(jù)源。

      下面是整個(gè)工具欄運(yùn)行時(shí)代碼: Select Case Button.Index Case 1 sel.Show 1 Case 3 add.Show 1 Case 5 On Error GoTo next2 Dim s As Adodc Set s = DataGrid1.datasource If s.RecordSource = ”users“ Then edit.Show 1 End If next2: Case 7 On Error Resume Next Dim o As Adodc Set o = DataGrid1.datasource

      o.Recordset.Delete

      o.Recordset.Update Case 9 back.Show 1 Case 11 With Adodc1.Mode = adModeReadWrite.ConnectionString = provider & ”;“ & datasource.CommandType = adCmdTable.RecordSource = ”users“ ''.Refresh End With Set DataGrid1.datasource = Adodc1 DataGrid1.Refresh Call dx Case 13 Unload Me End Select 狀態(tài)欄分四個(gè)部分。第一個(gè)為固定顯示當(dāng)前所用軟件名稱及作者。其中第二個(gè)和第三部分為動(dòng)態(tài)顯示的,它會(huì)顯示出每次用戶登錄名稱及其管理模式。由上圖可以看出,lf為本軟件管理員。第四部分為日期與時(shí)間的顯示。其中第三部分的代碼實(shí)現(xiàn)如下: main.Text1.Text = Adodc1.Recordset.Fields(”級別“)main.Text2.Text = Adodc1.Recordset.Fields(”用戶“)StatusBar1.Panels(2).Text = ”當(dāng)前用戶:“ & Text2.Text StatusBar1.Panels(3).Text = ”用戶模式:“ & Text1.Text StatusBar1.Panels(4).Text = Date & ”

      “ & Time ''設(shè)置普通用戶模式

      If Text1.Text = ”普通用戶“ Then yhgl.Visible = False g1.Visible = False jlsc.Visible = False gysz.Visible = False Toolbar1.Buttons(5).Visible = False Toolbar1.Buttons(6).Visible = False Toolbar1.Buttons(7).Visible = False Toolbar1.Buttons(8).Visible = False End If 主窗體在程序運(yùn)行中會(huì)遇到不斷改變其大小,最小化,最大化,以及用鼠標(biāo)來改變,這里需要在窗體的Resize事件中添加代碼,讓程序中用到的各個(gè)控件隨時(shí)可以適應(yīng)窗體改變后的大小,在這里改變的控件主要有DataGrid、TreeView系列及Frame控件、StatusBar。下面就是設(shè)置它們大小的程序代碼:

      DataGrid1.Width = main.WidthStatusBar1.Height750 SSTab1.Height = main.HeightCoolBar1.HeightStatusBar1.Height1200 Frame2.Height = main.HeightCoolBar1.HeightStatusBar1.Height1200 TreeView1.Height=main.HeightCoolBar1.HeightStatusBar1.Height1500 TreeView3.Height=main.HeightCoolBar1.Heightz)/ 4 StatusBar1.Panels(1).Width = u + x StatusBar1.Panels(2).Width = v + x StatusBar1.Panels(3).Width = w + x StatusBar1.Panels(4).Width = m + x 這個(gè)軟件的主要部分都在這里運(yùn)行、查看,所以在主窗體的load事件里要把所用的到的東西都要加載進(jìn)來,例如所在程序運(yùn)行時(shí)所用到的表,左側(cè)treeview部分樹形顯示的初始化。在這里幾乎用到了所有的表,如下所示: provider = ”provider=Microsoft.jet.oledb.4.0“ datasource = ”data source=“ & App.Path & ”DB.mdb“ With Adodc1.Mode = adModeReadWrite.ConnectionString = provider & ”;“ & datasource.CommandType = adCmdTable.RecordSource = ”users“ ''.Refresh End With

      With Adodc2.Mode = adModeReadWrite.ConnectionString = provider & ”;“ & datasource.CommandType = adCmdTable.RecordSource = ”gongyu“.Refresh End With

      With Adodc3.Mode = adModeReadWrite.ConnectionString = provider & ”;“ & datasource.CommandType = adCmdTable.RecordSource = ”class“.Refresh End With

      With Adodc4.Mode = adModeReadWrite.ConnectionString = provider & ”;“ & datasource.CommandType = adCmdTable.RecordSource = ”weisheng“.Refresh End With

      With Adodc5.Mode = adModeReadWrite.ConnectionString = provider & ”;“ & datasource End With

      With Adodc6.Mode = adModeReadWrite.ConnectionString = provider & ”;“ & datasource.CommandType = adCmdTable.RecordSource = ”dengji“.Refresh End With

      With Adodc7.Mode = adModeReadWrite.ConnectionString = provider & ”;“ & datasource.CommandType = adCmdTable.RecordSource = ”qinshi“.Refresh End With

      With Adodc9.Mode = adModeReadWrite.ConnectionString = provider & ”;“ & datasource.CommandType = adCmdTable.RecordSource = ”zichan“.Refresh End With treeview部分樹形顯示的初始化在這里已經(jīng)做了幾個(gè)過程,調(diào)用即可。4.3系統(tǒng)設(shè)置 4.3.1用戶管理 ①界面效果圖

      [10]...>>

      ② 界面制作與實(shí)現(xiàn)方法

      這個(gè)界面總體來說各個(gè)控件比較簡單,但是作為一個(gè)添加刪除管理員的操作,它已經(jīng)連接到了數(shù)據(jù)庫,與數(shù)據(jù)庫的yonghu表相聯(lián)。各個(gè)控件也與數(shù)據(jù)庫中表的字段綁定。在窗體初始化的時(shí)候要判斷當(dāng)前數(shù)據(jù)庫表中是否有記錄,如果沒有記錄那么有些按鈕將會(huì)被設(shè)置成為失效狀態(tài),否則會(huì)出現(xiàn)錯(cuò)誤。設(shè)置代碼如下: Dim provider As String Dim datasource As String provider = ”provider=Microsoft.jet.oledb.4.0“ datasource = ”data source=“ & App.Path & ”DB.mdb“ With Adodc1.Mode = adModeReadWrite.ConnectionString = provider & ”;“ & datasource.CommandType = adCmdTable.RecordSource = ”yonghu“.Refresh End With Option1.Enabled = False Option2.Enabled = False If Adodc1.Recordset.RecordCount = 0 Then Command2.Enabled = False Command3.Enabled = False Command5.Enabled = False Command6.Enabled = False End If Text2.Text = Text3.Text 上一條與下一條的功能一目了然,它們可以對當(dāng)前表進(jìn)行上一條記錄或下一條記錄依次查看。當(dāng)找到記錄后,可以對其進(jìn)行相對的刪除、修改等操作。上一條記錄與下一條的記錄在查看時(shí)有一個(gè)判斷。當(dāng)表中記錄移到最前面(BOF)或最后面(EOF)時(shí),會(huì)把上一條或下一條其中的一個(gè)按鈕的enable屬性設(shè)置為true。即不可以前查看或向后查看。上一條與下一條主要代碼如下:

      Adodc1.Recordset.MovePrevious ''移動(dòng)記錄 Command6.Enabled = True If Adodc1.Recordset.BOF Then

      Adodc1.Recordset.MoveFirst

      Command5.Enabled = False End If Adodc1.Recordset.MoveNext ''移動(dòng)記錄 Command5.Enabled = True If Adodc1.Recordset.EOF Then

      Adodc1.Recordset.MoveLast

      Command6.Enabled = False End If 添加用戶可以添加使用該管理軟件的用戶。添加的時(shí)候可以選擇所添加人物的級別。軟件默認(rèn)為兩個(gè)級別:管理員、普通用戶。管理員擁有對此軟件管理操作等一切的權(quán)力。普通用戶,只有普通的查看、查詢、備份、添加等權(quán)力。沒有對記錄刪除等權(quán)力。在添加用戶時(shí)你可以選擇一個(gè)且必須選擇一個(gè)。然后輸入此用戶的用戶名和密碼即可!添加用戶主要代碼:

      If Command1.Caption = ”添加“ Then Command2.Enabled = False Command5.Enabled = False Command6.Enabled = False Command1.Caption = ”確定“ Command3.Caption = ”取消“ Adodc1.Recordset.AddNew Option1.Enabled = True Option2.Enabled = True Text1.Enabled = True Text2.Enabled = True Text3.Enabled = True Text2.Text = ”“ ElseIf Text1.Text = ”“ Then MsgBox ”用戶名不能為空!“, 48, ”提示“ ElseIf Text2.Text = ”“ Then MsgBox ”密碼不能為空!“, 48, ”提示“ ElseIf Text2.Text <> Text3.Text Then MsgBox ”密碼兩次需一致!“, 48, ”提示“ ElseIf Text4.Text = ”“ Then MsgBox ”請選擇所建用戶類型!“, 48, ”提示“ Else Command2.Enabled = True Command3.Enabled = True Command5.Enabled = True Command6.Enabled = True Command3.Caption = ”編輯“ Command1.Caption = ”添加“ Adodc1.Recordset.Update Text1.Enabled = False Text2.Enabled = False Text3.Enabled = False Text4.Enabled = False Option1.Value = False Option2.Value = False Option1.Enabled = False Option2.Enabled = False End If 刪除操作可以把當(dāng)前記錄刪除掉。一經(jīng)刪除即不可以在恢復(fù)。所以在操作前要想好。刪除操作部分代碼:

      If Adodc1.Recordset.RecordCount = 1 Then Command2.Enabled = False End If If(MsgBox(”你真的想刪除當(dāng)前記錄嗎?“, vbOKCancel, ”系統(tǒng)提示“))= vbOK Then Adodc1.Recordset.Delete Adodc1.Recordset.MoveFirst Adodc1.Refresh End If 編輯操作可以對當(dāng)前所選擇的用戶進(jìn)行編輯,可以修改其用戶名與密碼。當(dāng)當(dāng)前用戶感覺自己用戶名稱或密碼有泄露時(shí),可以進(jìn)行修改。修改記錄即更新表中的某一條記錄。編輯操作主要代碼如下: Command2.Enabled = False Text1.Enabled = True Text2.Enabled = True Text3.Enabled = True Text4.Enabled = True Option1.Enabled = True Option2.Enabled = True Command1.Caption = ”確定“ ElseIf Command3.Caption = ”取消“ Then Command3.Caption = ”編輯“ Command1.Caption = ”添加“ Command2.Enabled = True Command5.Enabled = True Command6.Enabled = True Text2.Text = Text3.Text Text1.Enabled = False Text2.Enabled = False Text3.Enabled = False Text4.Enabled = False Option1.Value = False Option2.Value = False Option1.Enabled = False Option2.Enabled = False End If 4.3.2 公寓設(shè)置

      公寓設(shè)置可以說是本程序中一關(guān)鍵部分。因?yàn)樗械脑O(shè)置都在此進(jìn)行。包括公寓添加、修改、刪除。寢室的添加、修改、刪除以及班級的添加、修改和刪除操作。只有正確的對這些設(shè)置進(jìn)行添加修改,才能輸入正確的記錄。這里主要涉及到的問題是datagrid的顯示,以及treeview及時(shí)形成新的結(jié)構(gòu)。還有一些就是對表記錄的復(fù)雜操作。在點(diǎn)擊sstab各版的時(shí)候,要在這時(shí)重新生成寢室設(shè)置中的樹型結(jié)構(gòu),Select Case PreviousTab

      Case 0

      Call startree1

      Case 1

      Combo1.Clear

      Dim I As Integer

      I = 1

      If Adodc1.Recordset.RecordCount <> 0 Then

      Adodc1.Recordset.MoveFirst

      Do While I < Adodc1.Recordset.RecordCount

      Combo1.AddItem(Adodc1.Recordset.Fields(”公寓名稱“))

      Adodc1.Recordset.MoveNext

      I = I + 1

      Loop

      End If

      Call startree1

      Case 2

      Call startree1 End Select End Sub(1)公寓設(shè)置

      ① 公寓設(shè)置效果圖

      圖4.4公寓設(shè)置

      ② 界面制作與實(shí)現(xiàn)方法

      在這個(gè)界面中主要用到了一個(gè)Sstab控件與一個(gè)顯示表中內(nèi)容的Datagrid控件。以及起到美觀作用的Frame控件。

      在右下角的文本框中可以輸入想要添加的公寓名稱。然后點(diǎn)擊添加即可完成添加操作。Datagrid中會(huì)立即刷新顯示更新內(nèi)容。要修改某條記錄時(shí),要先對所要修改的記錄進(jìn)行選擇,確認(rèn)選擇后,點(diǎn)擊下面的修改按鈕,會(huì)在下面的文本中顯示出所要修改公寓的名稱,此時(shí)即可輸入要修改的名字。然后點(diǎn)擊更新就會(huì)完成此操作。Datagrid也會(huì)即時(shí)更新其內(nèi)容。刪除操作更為簡單,選擇想要?jiǎng)h除的公寓名稱,點(diǎn)擊刪除,確認(rèn)后完成此操作。但是刪除后不會(huì)影響其它表中的數(shù)據(jù)。其它表的有關(guān)此公寓的信息還會(huì)存在。在進(jìn)行所有操作前,先要確定數(shù)據(jù)庫已連接。

      在添加前要判斷所寫公寓名稱是否正確,即是否輸入名稱,該記錄不能為空,不為空則對數(shù)據(jù)庫表進(jìn)行查找,判斷當(dāng)前輸入記錄是否已在表中存在,如果已存在,則會(huì)給出提示,不存在,添加成功。

      Adodc1.Recordset.Find ”公寓名稱=''“ & Text2.Text & ”''“ If Adodc1.Recordset.EOF = False Then MsgBox ”此公寓已存在“, , ”提示“ Adodc1.Recordset.MoveFirst Exit Sub End If Text3.Text = ”“ If Text2.Text = ”“ Then MsgBox ”輸入所要添加公寓的名稱“, , ”提示“ Exit Sub End If 添加:

      Adodc1.Recordset.AddNew Adodc1.Recordset.Fields(”公寓名稱“)= Text2.Text Adodc1.Recordset.Update Adodc1.RecordSource = ”gongyu“ Text2.Text = ”“ Set DataGrid2.datasource = Adodc1 DataGrid2.Refresh

      修改公寓名稱:

      If Text3.Text = ”“ Then MsgBox ”選擇要修改的公寓“, , ”提示“ Exit Sub End If If Command12.Caption = ”修改“ Then Text2.Text = Text3.Text Label6.Caption = ”輸入想要修改的公寓名稱“ Command12.Caption = ”更新“ Command3.Enabled = False Command7.Enabled = False ElseIf Command12.Caption = ”更新“ Then Command3.Enabled = True Command7.Enabled = True Label6.Caption = ”輸入想要添加的公寓名稱“ Adodc1.Recordset.Fields(”公寓名稱“)= Text2.Text Adodc1.Recordset.Update Adodc2.Recordset.ActiveConnection.Execute ”update qinshi set 公寓名稱=''“ & Text2.Text & ”'' where 公寓名稱=''“ & Trim(Text3.Text)& ”''“ Adodc2.Recordset.Update Command12.Caption = ”修改“ End If Set DataGrid2.datasource = Adodc1 DataGrid2.Refresh Adodc5.Recordset.Update Set main.DataGrid1.datasource = Adodc5 main.DataGrid1.Refresh

      刪除公寓名稱

      If Text3.Text = ”“ Then MsgBox ”選擇所要?jiǎng)h除公寓的名稱“, , ”提示“ Exit Sub End If If(MsgBox(”你真的想刪除公寓名稱為

      “ & Text3.Text & ” 的記錄嗎?“, vbOKCancel, ”系統(tǒng)提示“))= vbOK Then

      Adodc1.Recordset.Delete

      Adodc1.Recordset.Update End If Text3.Text = ”“ Set DataGrid2.datasource = Adodc1 DataGrid2.Refresh(2)寢室設(shè)置

      ①寢室設(shè)置效果圖

      圖4.5寢室設(shè)置

      ②界面制作與實(shí)現(xiàn)方法 此界面實(shí)現(xiàn)相對比公寓設(shè)置來說相對復(fù)雜一些。用到的控件主要是Sstab與Treeview。但是在程序方面比較復(fù)雜。

      在添加一個(gè)寢室前先要選擇所要添加寢室所在的公寓。這個(gè)公寓可以點(diǎn)擊下面的樹中的節(jié)點(diǎn),也可以在列表框中選擇。樹中的節(jié)點(diǎn)在點(diǎn)擊后會(huì)把父節(jié)點(diǎn)顯示在選擇公寓后面的列表框中,而選中的節(jié)點(diǎn)會(huì)出現(xiàn)在寢室名稱里。你也可以自己進(jìn)行添寫,確認(rèn)公寓后即可添加完成了。添加后會(huì)把Treeview重新刷新一下。以顯示更新后的記錄。添加源碼: Adodc1.Refresh Adodc1.Recordset.Find ”公寓名稱=''“ & Combo1.Text & ”''“ If Adodc1.Recordset.EOF = True Then MsgBox ”此公寓不存在“, , ”提示“ Adodc1.Recordset.MoveFirst Exit Sub End If If Combo1.Text = ”“ Or Text1.Text = ”“ Then MsgBox ”請輸入所要添加的寢室及其所屬公寓“, , ”提示“ Exit Sub End If With Adodc2.Recordset.AddNew.Recordset.Fields(0).Value = Combo1.Text.Recordset.Fields(1).Value = Text1.Text.Recordset.Update End With Combo1.Text = ”“ Text1.Text = ”“ Call startree1 修改操作可以把當(dāng)前選中的寢室進(jìn)行名稱修改與其所屬公寓進(jìn)行修改。當(dāng)要對名稱進(jìn)行修改時(shí),先要選擇所要修改的寢室名,選擇后會(huì)在寢室名稱里顯示出來,把當(dāng)前寢室名稱改成要修改的寢室名稱,然后點(diǎn)擊修改即完成名稱修改操作。當(dāng)要對當(dāng)前寢室的所屬公寓進(jìn)行修改時(shí),需要先選擇所要修改的寢室,然后在上面的公寓名稱后填寫所要修改的寢室名稱。點(diǎn)擊修改后完成此操作。但是這種操作不是常見。修改源碼: Adodc1.Refresh Adodc1.Recordset.Find ”公寓名稱=''“ & Combo1.Text & ”''“ If Adodc1.Recordset.EOF = True Then MsgBox ”此公寓不存在“, , ”提示“ Adodc1.Recordset.MoveFirst Exit Sub End If

      Dim sql As String On Error Resume Next If Combo1.Text = ”“ Or Text1.Text = ”“ Then MsgBox ”請?jiān)谙旅孢x擇所要修改的寢室“, , ”提示“ Exit Sub End If ''sql = ”select * form qinshi where 公寓名稱=''“ & Trim(Combo1.Text)& ”'' and 寢室=''“ & Trim(Text1.Text)& ”''“

      Adodc2.Recordset.ActiveConnection.Execute ”update qinshi set 寢室=''“ & Text1.Text & ”'',公寓名稱=''“ & Trim(Combo1.Text)& ”''where 寢室=''“ & Trim(Text6.Text)& ”''and 公寓名稱=''“ & Trim(Text7.Text)& ”''“ Adodc2.Recordset.Update Combo1.Text = ”“ Text1.Text = ”“ Call startree1 刪除操作可以刪除掉當(dāng)前樹型顯示中的任何一個(gè)子節(jié)點(diǎn),也就是這個(gè)樹型節(jié)點(diǎn)中的寢室名稱,注意的是,刪除后這個(gè)記錄只在qinshi表中刪除,其相關(guān)記錄不會(huì)被刪除掉的,如果想刪除,還需要人工操作。實(shí)現(xiàn)的方法主要是對qinshi表操作,先對其進(jìn)行查詢,查詢當(dāng)前想要被刪除的表是否存在,如果不存在,則給出提示,如果存在這條記錄,則在表中把它刪除掉,刪除后調(diào)用生成樹過程,把當(dāng)前寢室設(shè)置中的樹型結(jié)構(gòu)重新生成,更新記錄。實(shí)現(xiàn)的部分代碼如下所示:

      If Combo1.Text = ”“ Or Text1.Text = ”“ Or Combo1.Text = ”公寓管理系統(tǒng)“ Then MsgBox ”選擇所要?jiǎng)h除的寢室“, , ”提示“ Exit Sub End If If(MsgBox(”你真的想刪除

      “ & Combo1.Text & ” “ & ”寢室為“ & Text1.Text & ” 的記錄嗎?“, vbOKCancel, ”系統(tǒng)提示“))= vbOK Then Adodc2.Refresh

      [10]...>>

      Adodc2.Recordset.ActiveConnection.Execute ”delete from qinshi where 公寓名稱=''“ & Trim(Combo1.Text)& ”'' and 寢室=''“ & Trim(Text1.Text)& ”''“ Adodc2.Recordset.Update End If Combo1.Text = ”“ Text1.Text = ”“ Call startree1 在treeview點(diǎn)擊的時(shí)候,上面的文本框中會(huì)顯示相應(yīng)的記錄,這主要是對treeview進(jìn)行了設(shè)置,代碼如下:

      Private Sub TreeView1_NodeClick(ByVal Node As MSComctlLib.Node)On Error Resume Next Text1.Text = TreeView1.SelectedItem.Text Combo1.Text = TreeView1.SelectedItem.Parent Text6.Text = TreeView1.SelectedItem.Text Text7.Text = TreeView1.SelectedItem.Parent End Sub(3)班級設(shè)置

      ①班級設(shè)置效果圖

      圖4.6班級設(shè)置

      ②界面制作與實(shí)現(xiàn)方法

      此界面制作與公寓設(shè)置基本一致。在這個(gè)界面中主要用到了一個(gè)Sstab控件與一個(gè)顯示表中內(nèi)容的Datagrid控件。以及起到美觀作用的Frame控件。

      在右下角的文本框中可以輸入想要添加的班級名稱。然后點(diǎn)擊添加即可完成添加操作。Datagrid中會(huì)立即刷新顯示更新內(nèi)容。要修改某條記錄時(shí),要先對所要修改的記錄進(jìn)行選擇,確認(rèn)選擇后,點(diǎn)擊下面的修改按鈕,會(huì)在下面的文本中顯示出所要修改班級的名稱,此時(shí)即可輸入要修改的名字。然后點(diǎn)擊更新就會(huì)完成此操作。Datagrid也會(huì)即時(shí)更新其內(nèi)容。刪除操作更為簡單,選擇想要?jiǎng)h除的班級名稱,點(diǎn)擊刪除,確認(rèn)后完成此操作。添加班級源碼:

      Adodc3.Recordset.Find ”class=''“ & Text4.Text & ”''“ If Adodc3.Recordset.EOF = False Then MsgBox ”此班級已存在“, , ”提示“ Adodc3.Recordset.MoveFirst Exit Sub End If Text5.Text = ”“ If Text4.Text = ”“ Then MsgBox ”輸入所要添加班級的名稱“, , ”提示“ Exit Sub End If Adodc3.Recordset.AddNew Adodc3.Recordset.Fields(”class“)= Text4.Text Adodc3.Recordset.Update Adodc3.RecordSource = ”class“ Text4.Text = ”“ Set DataGrid3.datasource = Adodc3 DataGrid3.Refresh 修改班級源碼:

      If Command10.Caption = ”修改“ Then Text4.Text = Text5.Text Label6.Caption = ”輸入想要修改的班級名稱“ Command10.Caption = ”更新“ Command6.Enabled = False Command9.Enabled = False ElseIf Command10.Caption = ”更新“ Then Command9.Enabled = True Command6.Enabled = True Label6.Caption = ”輸入想要添加的班級名稱“ Adodc3.Recordset.Fields(”class“)= Text4.Text Adodc3.Recordset.Update Command10.Caption = ”修改“ End If 刪除班級源碼:

      If Text5.Text = ”“ Then MsgBox ”選擇所要?jiǎng)h除班級的名稱“, , ”提示“ Exit Sub End If If(MsgBox(”你真的想刪除班級名稱 為

      “ & Text5.Text & ” 的記錄嗎?“, vbOKCancel, ”系統(tǒng)提示“))= vbOK Then

      Adodc3.Recordset.Delete

      Adodc3.Recordset.Update End If Text5.Text = ”“ Set DataGrid3.datasource = Adodc3

      DataGrid3.Refresh End Sub 4.3.3數(shù)據(jù)備份:

      數(shù)據(jù)備份是一個(gè)數(shù)據(jù)庫軟件必不可少的一部分,利用它可以把當(dāng)前數(shù)據(jù)庫表進(jìn)行全面的備份,以備以后使用。因?yàn)樵诓僮髦锌赡軙?huì)導(dǎo)致數(shù)據(jù)遭到破壞,或者是系統(tǒng)的原因使數(shù)據(jù)庫損壞,或者是一些其它的人為原因,這樣你可以用此功能把數(shù)據(jù)恢復(fù)到最后一次備份的狀態(tài),使損失做到最少,經(jīng)常備份,操作起來更有安全感。①數(shù)據(jù)備份效果圖

      圖4.7數(shù)據(jù)備份效果圖 ② 功能實(shí)現(xiàn)

      界面制作相對程序來說比較簡單,用到的是coolbar控件,點(diǎn)擊按鈕可以選擇備份路徑。然后點(diǎn)擊數(shù)據(jù)備份即可。窗體初始化部分代碼如下: Dim cnn1 As ADODB.Connection Dim rstschema As ADODB.Recordset Dim strcnn As String Set cnn1 = New ADODB.Connection strcnn = ”provider=Microsoft.jet.oledb.4.0;“ & ”data source=“ & App.Path & ”db.mdb“ cnn1.Open strcnn Set rstschema = cnn1.OpenSchema(adSchemaTables)Do Until rstschema.EOF temp = rstschema!Table_Name If Left(temp, 1)<> ”M“ Then End If rstschema.MoveNext Loop cnn1.Close On Error GoTo err PathName = App.Path & ”db.MDB“ dbasize = FileLen(PathName)err: Exit Sub 數(shù)據(jù)備份部分在本程序中用到了一個(gè)模塊,在模塊中有一個(gè)方法,dobackup。點(diǎn)擊備份按鈕后開始備份,代碼如下: If txtDestination <> ”“ Then DoBackup PathName, txtDestination MsgBox ”備份成功!“, , ”提示“ ElseIf txtDestination = ”“ Then MsgBox ”You must specify a distination for the backup“, vbCritical 其中DoBackup為模塊中已定義的方法,在這里進(jìn)行調(diào)用。Dobackup實(shí)現(xiàn)方法代碼如下所示: Dim lFileOp As Long Dim lresult As Long Dim lFlags

      As Long Dim SHFileOp As SHFILEOPSTRUCT Dim strSourceDir As String Dim strDestinationDir As String Screen.MousePointer = vbHourglass BackupFolderName = strDestinationPath MkDir BackupFolderName & ”Backup“ & Format(Date, ”yyyy.mm.dd“)& vbNullChar

      .fFlags = lFlags End With lresult = SHFileOperation(SHFileOp)Screen.MousePointer = vbDefault frmBackupDba.lblStatus = ”Backup Complete“ 在備份分前先要選擇一個(gè)備份路徑,點(diǎn)擊…那個(gè)按鈕開始進(jìn)行選擇,實(shí)現(xiàn)方法如下: Dim strTemp As String strTemp = fBrowseForFolder(Me.hwnd, ”Select backup path“)If strTemp <> ”“ Then

      txtDestination = strTemp End If 數(shù)據(jù)恢復(fù)界面同上,它的功能主要是在當(dāng)前數(shù)據(jù)庫遭到破壞后,可以利用它來進(jìn)行數(shù)據(jù)恢復(fù),在數(shù)據(jù)恢復(fù)前要選擇所要恢復(fù)的數(shù)據(jù)庫路徑,如下: Dim strTemp As String strTemp = fBrowseForFolder(Me.hwnd, ”Restore From“)If strTemp <> ”“ Then

      txtSource = strTemp

      dbasize2 = FileLen(txtSource & ”db.MDB“)

      lblSelectedDba = ”Selected Backup Database is : “ & Format((dbasize2 / 1024)/ 1024, ”standard“)& ”MB.“

      cmdRestore.Enabled = True End If Erro:

      Select Case err.Number

      Case 53 ''File Not Found

      lblSelectedDba = ”No Backup at this location“

      Toolbar2.Enabled = False

      End Select 它主要是查看數(shù)據(jù)庫是否存在,如果所恢復(fù)的數(shù)據(jù)不存在,則會(huì)提示錯(cuò)誤。數(shù)據(jù)恢復(fù)也用到了一個(gè)方法,在模塊中也已經(jīng)定義了該方法DoRestore。數(shù)據(jù)恢復(fù)代碼如下: If MsgBox(”Restoring database from location “ & txtSource & ” will replace existing database files.Do you want to Contunue“, vbYesNo)= vbYes Then DoRestore txtSource.Text, App.Path If NoDba = True Then MsgBox ”Database Restored Click Ok to Exit Program“ frmRestoreDba.Hide Unload frmRestoreDba End If Else lblStatus.Caption = ”Database Restore Canceled“ End If 其中DoRestore實(shí)現(xiàn)的功能源碼如下所示:

      DEFSOURCE = ”PROVIDER=Microsoft.jet.oledb.4.0;Persist Security Info=False;Data Source=“ DBName = ”db.MDB;Jet OLEDB:Database Password=matrix-se;“ Set Db = New ADODB.Connection

      Db.Open DEFSOURCE & App.Path & DBName Dim lFileOp As Long Dim lresult As Long Dim lFlags

      As Long Dim SHFileOp As SHFILEOPSTRUCT Dim strSourceDir As String Dim strDestinationDir As String Db.Close Screen.MousePointer = vbHourglass BackupFolderName = strDestinationPath lFileOp = FO_COPY lFlags = lFlags And Not FOF_SILENT lFlags = lFlags Or FOF_NOCONFIRMATION lFlags = lFlags Or FOF_NOCONFIRMMKDIR lFlags = lFlags Or FOF_FILESONLY With SHFileOp

      .wFunc = lFileOp

      .pFrom = strSourcePath & ”db.MDB“ & vbNullChar

      .pTo = strDestinationPath & vbNullChar

      .fFlags = lFlags End With lresult = SHFileOperation(SHFileOp)Set Db = New ADODB.Connection Db.Open DEFSOURCE & App.Path & DBName Screen.MousePointer = vbDefault frmRestoreDba.lblStatus = ”Restore Complete“ 說明:本程序中此部分內(nèi)容參考了網(wǎng)上的同類型代碼,對其進(jìn)行修改后得到此成型作品,從功能上來講,它已經(jīng)實(shí)現(xiàn)了它所要完成的工作,經(jīng)過測試已經(jīng)沒有問題,但是實(shí)現(xiàn)的源代碼,也只有部分掌握。這實(shí)屬本人精力與能力有限所置。4.3.4 數(shù)據(jù)轉(zhuǎn)換

      這個(gè)功能可以把當(dāng)前列表框中的任何一個(gè)表轉(zhuǎn)換成excel形式,轉(zhuǎn)換后你可以看到表中的內(nèi)容,也可以對表進(jìn)行操作,保存,修改,打印等。①界面效果圖

      圖4.8數(shù)據(jù)轉(zhuǎn)換效果圖 ②實(shí)現(xiàn)方法

      在這里用到了一個(gè)顯示gif圖片的控件。選擇左面list中的一個(gè)表后,點(diǎn)擊導(dǎo)出后即可完成,進(jìn)度條中顯示當(dāng)前轉(zhuǎn)換進(jìn)度程度。

      首先要在list中加載各表名。以便進(jìn)行選擇轉(zhuǎn)換。添加表名部分在load進(jìn)行加載,其中的導(dǎo)出與取消按鈕是由coolbar制作而成。Form的load事件處理內(nèi)容如下:

      TMaxAni1.FileName = App.Path & ”iconfind.gif“ TMaxAni1.ShowGif Dim cnn1 As ADODB.Connection Dim rstschema As ADODB.Recordset Dim strcnn As String Set cnn1 = New ADODB.Connection strcnn = ”provider=Microsoft.jet.oledb.4.0;“ & ”data source=“ & App.Path & ”db.mdb“ cnn1.Open strcnn Set rstschema = cnn1.OpenSchema(adSchemaTables)Do Until rstschema.EOF temp = rstschema!Table_Name If Left(temp, 1)<> ”M“ Then List2.AddItem temp End If rstschema.MoveNext Loop cnn1.Close List2.ListIndex = 0 On Error GoTo err PathName = App.Path & ”db.MDB“ dbasize = FileLen(PathName)數(shù)據(jù)轉(zhuǎn)換成excel用到了一個(gè)部件,在引用中用到了Microsoft Excel9.0 Object library。轉(zhuǎn)換代碼如下:

      Select Case Button.Index Case 1 Dim provider As String Dim datasource As String provider = ”provider=Microsoft.jet.oledb.4.0“ datasource = ”data source=“ & App.Path & ”DB.mdb“ With Adodc1.Mode = adModeReadWrite.ConnectionString = provider & ”;“ & datasource.CommandType = adCmdTable.RecordSource = List2.Text.Refresh End With ProgressBar1.Max = Adodc1.Recordset.RecordCount ProgressBar1.Min = 0 ''開始轉(zhuǎn)換

      Dim Irow, Icol As Integer

      Dim Irowcount, Icolcount As Integer

      Dim Fieldlen()

      Dim xlApp As Excel.Application

      Dim xlBook As Excel.Workbook

      Dim xlSheet As Excel.Worksheet

      Set xlApp = CreateObject(”Excel.Application“)

      Set xlBook = xlApp.Workbooks.add

      Set xlSheet = xlBook.Worksheets(1)With Adodc1.Recordset

      .MoveLast

      If.RecordCount < 1 Then

      MsgBox(”Error!“)

      Exit Sub

      End If

      Irowcount =.RecordCount

      Icolcount =.Fields.Count

      ReDim Fieldlen(Icolcount)

      .MoveFirst

      For Irow = 1 To Irowcount + 1

      For Icol = 1 To Icolcount

      Select Case Irow

      Case 1

      xlSheet.Cells(Irow, Icol).Value =.Fields(Icol1))= True Then

      Fieldlen(Icol)= LenB(.Fields(Icol1))

      End If

      xlSheet.Columns(Icol).ColumnWidth = Fieldlen(Icol)

      xlSheet.Cells(Irow, Icol).Value =.Fields(Icol1))

      If Fieldlen(Icol)< Fieldlen1 Then

      xlSheet.Columns(Icol).ColumnWidth = Fieldlen1

      Fieldlen(Icol)= Fieldlen1

      Else

      xlSheet.Columns(Icol).ColumnWidth = Fieldlen(Icol)

      End If

      xlSheet.Cells(Irow, Icol).Value =.Fields(Icol1)).Font.Name = ”黑體“

      .Range(.Cells(1, 1),.Cells(1, Icol1)).Borders.LineStyle = xlContinuous

      End With

      xlApp.Visible = True

      '' xlBook.Save

      ''xlBook.Close

      Set xlApp = Nothing

      Adodc1.Recordset.ActiveConnection = Nothing End With Toolbar4.Buttons(1).Enabled = False Case 2 Unload Me End Select

      [10]...>>

      4.4公寓管理 4.4.1學(xué)生請假

      學(xué)生請假與違規(guī)在一個(gè)公寓管理中是最常見的問題了,所以在此軟件中加上了這兩項(xiàng)功能。用它們可以隨時(shí)記錄請假記錄。①學(xué)生請假記錄圖片顯示

      圖4.9學(xué)生請假效果圖 ② 界面制作與實(shí)現(xiàn)

      此界面主要是對學(xué)生請假記錄做一個(gè)添加。利用它可以把學(xué)生的基本的請假資料保存起來。其中的日期是系統(tǒng)當(dāng)前的日期,它是不可以進(jìn)行更改的,然后在其它文本框中輸入其它詳細(xì)資料即可以。這里的添加操作用的是Adodc控件,所有的文本框在初始的時(shí)候沒有同Adodc綁定,而是在代碼中與數(shù)據(jù)庫中表的字段進(jìn)行的綁定,然后進(jìn)行添加操作。這樣做在使用的時(shí)候有很大的方便之處。第一是窗體在初始化時(shí)不會(huì)顯示任何記錄,不用設(shè)置文本框?yàn)榭盏纫幌盗械牟僮鳌5诙钱?dāng)進(jìn)行記錄輸入時(shí),發(fā)現(xiàn)問題不用輸入時(shí),不按添加按鈕記錄就不會(huì)進(jìn)行添加。注意的是,在添加前要確定所有的文本框都要進(jìn)行詳細(xì)填寫,否則會(huì)提示輸入詳細(xì)信息。添加主要代碼如下:

      If Text1.Text = ”“ Or Text2.Text = ”“ Or Text3.Text = ”“ Or Text4.Text = ”“ Or Text5.Text = ”“ Or Text6.Text = ”“ Or Text7.Text = ”“ Or Text8.Text = ”“ Or Text9.Text = ”“ Then MsgBox ”請輸入詳細(xì)信息!“, , ”系統(tǒng)提示“ Else With Adodc1.Recordset.AddNew.Recordset.Fields(0).Value = Text1.Text.Recordset.Fields(1).Value = Text2.Text.Recordset.Fields(2).Value = Text3.Text.Recordset.Fields(3).Value = Text4.Text.Recordset.Fields(4).Value = Text5.Text.Recordset.Fields(5).Value = Text6.Text.Recordset.Fields(6).Value = Text7.Text.Recordset.Fields(7).Value = Text8.Text.Recordset.Fields(8).Value = Text9.Text.Recordset.Update End With Set main.DataGrid1.datasource = Adodc1 main.DataGrid1.Refresh End If 4.4.2學(xué)生違規(guī)

      ①學(xué)生違規(guī)記錄圖片顯示

      圖4.10學(xué)生違規(guī)效果圖

      此界面與上面的請假記錄差不多。它主要是對學(xué)生的違規(guī)記錄做一個(gè)添加。其中的日期也是系統(tǒng)當(dāng)前的日期,它是不可以進(jìn)行更改的,然后在其它文本框中輸入其它詳細(xì)資料即可以這里的違規(guī)操作用的也是Adodc控件,所有的文本框在初始的時(shí)候也沒有同Adodc綁定,它也是在代碼中與數(shù)據(jù)庫中表的字段進(jìn)行的綁定,然后進(jìn)行添加操作。其它操作同上面基本是一致的,對于違規(guī)在主界面的左側(cè)并沒有快速顯示操作,只可以用記錄查看里面的違規(guī)查看進(jìn)行選擇查看。在這里所添寫的記錄也要全面一些,主要是為了以后查找更為方便,如果不全,系統(tǒng)會(huì)提示的!②違規(guī)部分代碼如下:

      在load事件里對數(shù)據(jù)庫鏈接的處理,以及日期文本框的設(shè)置,代碼如下: provider = ”provider=Microsoft.jet.oledb.4.0“ datasource = ”data source=“ & App.Path & ”DB.mdb“ With Adodc1.Mode = adModeReadWrite.ConnectionString = provider & ”;“ & datasource.CommandType = adCmdTable.RecordSource = ”qingjia“.Refresh End With Text1.Text = Date Text1.Enabled = False 確定無誤后,進(jìn)行添加,代碼如下:

      If Text1.Text = ”“ Or Text2.Text = ”“ Or Text3.Text = ”“ Or Text4.Text = ”“ Or Text5.Text = ”“ Or Text6.Text = ”“ Or Text7.Text = ”“ Or Text8.Text = ”“ Or Text9.Text = ”“ Then MsgBox ”請輸入詳細(xì)信息!“, , ”系統(tǒng)提示“ Else With Adodc1.Recordset.AddNew.Recordset.Fields(0).Value = Text1.Text.Recordset.Fields(1).Value = Text2.Text.Recordset.Fields(2).Value = Text3.Text.Recordset.Fields(3).Value = Text4.Text.Recordset.Fields(4).Value = Text5.Text.Recordset.Fields(5).Value = Text6.Text.Recordset.Fields(6).Value = Text7.Text.Recordset.Fields(7).Value = Text8.Text.Recordset.Fields(8).Value = Text9.Text.Recordset.Update End With Set main.DataGrid1.datasource = Adodc1 main.DataGrid1.Refresh 4.5衛(wèi)生檢查

      公寓衛(wèi)生可以說是一個(gè)公寓管理中最常見到的問題了。公寓衛(wèi)生每天要清掃,寢室衛(wèi)生每天要檢查,但是如果這些都用紙來進(jìn)行填寫,一定會(huì)十分麻煩,且保存也不是十分方便,在一些評比中也會(huì)忙的很遭。所以在這個(gè)軟件中編寫了此功能。4.5.1 公寓衛(wèi)生添加效果圖

      圖4.11公寓衛(wèi)生添加效果圖 ①在這個(gè)界面中主要用到了文本框以及起到美觀作用的frame控件。日期已經(jīng)設(shè)置成只讀屬性,檢查記錄的日期是不能隨便改寫的。公寓名稱可以在下拉列表框中進(jìn)行選擇,如果在下拉列表框中沒有發(fā)現(xiàn),可以人工輸入,但是要確定公寓名稱的正確性。寢室名稱需要自己輸入。這里的衛(wèi)生標(biāo)準(zhǔn)一共有五項(xiàng)可以填寫,在每一項(xiàng)里已經(jīng)基本設(shè)置了所不全標(biāo)準(zhǔn)的記錄,你可以在下拉列表框中進(jìn)行選擇即可,但是如果沒有你想輸入的記錄的話,你也可以自己輸入。輸入完成后,在減分后面的文本框中輸入一共要對此寢室減掉的分?jǐn)?shù),單擊得分后面的文本框會(huì)自動(dòng)算出應(yīng)該得到的分?jǐn)?shù)。然后跟據(jù)得分的分?jǐn)?shù),你要選擇該寢室的衛(wèi)生等級,衛(wèi)生等級為必選值且為固定值,正確的選擇此項(xiàng)可以在主界面的左側(cè)中快速對衛(wèi)生等級進(jìn)行查看。②公寓選擇欄中代碼的實(shí)現(xiàn): Combo3.Clear Dim I As Integer I = 1 If Adodc1.Recordset.RecordCount <> 0 Then Do While I < Adodc1.Recordset.RecordCount

      Combo3.AddItem(Adodc1.Recordset.Fields(”公寓名稱“))

      Adodc1.Recordset.MoveNext

      I = I + 1 Loop End If 衛(wèi)生選擇欄中的代碼實(shí)現(xiàn)基本同上,它也是一個(gè)表中的字段值!Dim J As Integer J = 1 If Adodc4.Recordset.RecordCount <> 0 Then Do While J < Adodc4.Recordset.RecordCount

      Combo2.AddItem(Adodc4.Recordset.Fields(”等級“))

      Adodc4.Recordset.MoveNext

      J = J + 1 Loop End If Combo2.Text = ”優(yōu)秀“ 不合標(biāo)準(zhǔn)的衛(wèi)生記錄填寫情況如下: Combo4.AddItem(”門窗不干凈“)Combo4.AddItem(”地面不干凈“)Combo4.AddItem(”陽臺(tái)不干凈“)Combo4.AddItem(”床鋪不整齊“)Combo4.AddItem(”不疊被“)Combo4.AddItem(”桌面不整齊“)Combo4.AddItem(”書柜擺放不整齊“)由于此窗體中涉及到公寓與寢室,在填寫時(shí)要確定其名稱的正確,所以在添加記錄前要對它們進(jìn)行檢查,如發(fā)現(xiàn)不存在的記錄,則顯示提示。檢查記錄時(shí)用的是adodc中的find命令。類似于用戶登錄時(shí)的判斷,同樣記錄的輸入也要詳細(xì)。代碼如下: Adodc1.Refresh Adodc1.Recordset.Find ”公寓名稱=''“ & Combo3.Text & ”''“ If Adodc1.Recordset.EOF = True Then MsgBox ”查無此公寓“, , ”提示“ Adodc1.Recordset.MoveFirst Exit Sub End If Adodc3.Refresh Adodc3.Recordset.Find ”寢室=''“ & Text5.Text & ”''“ If Adodc3.Recordset.EOF = True Then MsgBox ”查無此寢室“, , ”提示“ Adodc3.Recordset.MoveFirst Exit Sub End If If Combo3.Text = ”“ Or Combo2.Text = ”“ Or Text5.Text = ”“ Or Text2.Text = ”“ Or Text3.Text = ”“ Then MsgBox ”請輸入詳細(xì)信息!“, , ”系統(tǒng)提示“ Else 確認(rèn)一切無誤后,開始對所填寫記錄進(jìn)行添加并顯示: With Adodc2.Recordset.AddNew.Recordset.Fields(0).Value = Combo3.Text.Recordset.Fields(1).Value = Text5.Text.Recordset.Fields(2).Value = Combo4.Text.Recordset.Fields(3).Value = Combo5.Text.Recordset.Fields(4).Value = Combo6.Text.Recordset.Fields(5).Value = Combo7.Text.Recordset.Fields(6).Value = Combo8.Text.Recordset.Fields(7).Value = Text2.Text.Recordset.Fields(8).Value = Text3.Text.Recordset.Fields(9).Value = Combo2.Text.Recordset.Fields(10).Value = Text4.Text.Recordset.Fields(11).Value = Text1.Text.Recordset.Update End With Set main.DataGrid1.datasource = Adodc2 main.DataGrid1.Refresh 4.6 公寓資產(chǎn)

      公寓資產(chǎn)可以及時(shí)對公寓里進(jìn)出財(cái)務(wù)進(jìn)行統(tǒng)計(jì),以免遺忘,造成不必要的損失或不必要的麻煩,它的實(shí)現(xiàn)方法基本同上面的衛(wèi)生記錄的添加,相對比來說比上面的簡單一些。不足的是目前只做出了入庫管理,對于出庫記錄還沒有實(shí)現(xiàn)。4.6.1公寓資產(chǎn)添加設(shè)置效果圖

      [10]...>>

      圖4.12公寓資產(chǎn)添加效果圖 4.6.2 界面制作與實(shí)現(xiàn)方法 日期的設(shè)置同上面一樣,只讀屬性。公寓名稱與寢室名稱要人工輸入,沒有選擇,這是因?yàn)榭紤]到它不會(huì)像衛(wèi)生記錄那樣每天要添加一次,每次要添加很多,所以為了減少系統(tǒng)進(jìn)程,它沒有使用combo,沒有在窗體中進(jìn)行加載。窗體中的數(shù)量與單價(jià)在填寫之后會(huì)自動(dòng)把總價(jià)格計(jì)算出來,類似于上圖中的得分一樣。部分代碼如下: If Text5.Text = ”“ Or Text2.Text = ”“ Or Text3.Text = ”“ Then MsgBox ”請輸入詳細(xì)信息!“, , ”提示“ Else With Adodc1.Recordset.AddNew.Recordset.Fields(0).Value = Text1.Text.Recordset.Fields(1).Value = Text8.Text.Recordset.Fields(2).Value = Text2.Text.Recordset.Fields(3).Value = Text3.Text.Recordset.Fields(4).Value = Text4.Text.Recordset.Fields(5).Value = Text5.Text.Recordset.Fields(6).Value = Text6.Text.Recordset.Fields(7).Value = Text7.Text.Recordset.Update End With Set main.DataGrid1.datasource = Adodc1 main.DataGrid1.Refresh Text2.Text = ”“ Text3.Text = ”“ Text4.Text = ”“ Text5.Text = ”“ Text6.Text = ”“ Text7.Text = ”“ End If 4.7記錄查看

      記錄查看可以讓你對已錄入的記錄進(jìn)行各種符合條件的查找,顯示符合條件的記錄。這里主要包括四個(gè)方面的查看:衛(wèi)生查看、請假查看、違規(guī)查看、資產(chǎn)查看。下面分別介紹。4.7.1 衛(wèi)生查看 ①界面效果圖

      圖4.13衛(wèi)生查看效果圖 ②界面制作與實(shí)現(xiàn)方法

      這是一個(gè)比較簡單的窗體操作??雌饋砭?、小巧。它主要的功能是對已經(jīng)錄入的衛(wèi)生記錄進(jìn)行符合條件的查詢。在查詢類別中選擇可以選擇全部查看以及按日期查看。查看全部即顯示所有記錄,選擇按日期查看后在下面的列表框中選擇所要查看的日期,點(diǎn)擊確定后即可以看到該日期的記錄。

      在進(jìn)行查詢前,要對所操作的表進(jìn)行綁定,代碼如下: Dim s As String provider = ”provider=Microsoft.jet.oledb.4.0“ datasource = ”data source=“ & App.Path & ”DB.mdb“ With Adodc1.Mode = adModeReadWrite.ConnectionString = provider & ”;“ & datasource.CommandType = adCmdTable.RecordSource = ”weigui“.Refresh End With 日期后面的下拉列表框中可以顯示出所有已經(jīng)錄入記錄的日期,它是通過對當(dāng)前表進(jìn)行分類查詢后得到的結(jié)果,然后將其添加在combo中,實(shí)現(xiàn)代碼如下: s = ”select distinct 日期 from weisheng“ With Adodc2.Mode = adModeReadWrite.ConnectionString = provider & ”;“ & datasource.CommandType = adCmdText.RecordSource = s.Refresh End With

      For I = 1 To Adodc2.Recordset.RecordCount Combo1.AddItem(Adodc2.Recordset.Fields(”日期“))Adodc2.Recordset.MoveNext Next 查看全部,即把當(dāng)前表中的記錄全部賦給當(dāng)前用來顯示的表格,按日期查看,則是在表中先進(jìn)行查詢,然后對結(jié)果進(jìn)行重綁定,在賦值。它們的判斷主要是通過單選框的選取來完成的,實(shí)現(xiàn)方法如下: s = Combo1.Text If Option1.Value = True Then Set main.DataGrid1.datasource = Adodc1 main.DataGrid1.Refresh ElseIf Option2.Value = True Then sql = ”select * from weisheng where 日期=''“ & Trim(s)& ”''“ With Adodc3.Mode = adModeReadWrite.ConnectionString = provider & ”;“ & datasource.CommandType = adCmdText.RecordSource = sql.Refresh End With Set main.DataGrid1.datasource = Adodc3 main.DataGrid1.Refresh End If Unload Me 4.7.2其它記錄查看 在記錄查看中還有其它三項(xiàng)查看方式,分別是請假、違規(guī)、資產(chǎn)三項(xiàng)記錄查看。它們的實(shí)現(xiàn)方法與窗體與上面的衛(wèi)生查看基本相同。①請假查看

      圖4.14請假查看效果圖

      用它可以對當(dāng)前所有記錄以及有效日期內(nèi)的記錄進(jìn)行查看。代碼如下:

      Dim sql As String Dim s As String s = Combo1.Text If Option1.Value = True Then Set main.DataGrid1.datasource = Adodc1 main.DataGrid1.Refresh ElseIf Option2.Value = True Then sql = ”select * from qingjia where 日期=''“ & Trim(s)& ”''“ With Adodc3.Mode = adModeReadWrite.ConnectionString = provider & ”;“ & datasource.CommandType = adCmdText.RecordSource = sql.Refresh End With Set main.DataGrid1.datasource = Adodc3 main.DataGrid1.Refresh End If Unload Me 在窗體的load中要設(shè)置已經(jīng)添加的日期,需要對表進(jìn)行條件查詢,代碼如下: s = ”select distinct 日期 from qingjia“ With Adodc2.Mode = adModeReadWrite.ConnectionString = provider & ”;“ & datasource.CommandType = adCmdText.RecordSource = s.Refresh End With For I = 1 To Adodc2.Recordset.RecordCount Combo1.AddItem(Adodc2.Recordset.Fields(”日期“))Adodc2.Recordset.MoveNext Next ②違規(guī)查看

      圖4.15違規(guī)查看效果圖

      目前此類功能還不是十分理想,有些查看方式會(huì)在以后的程序中進(jìn)行升級。在Load事件設(shè)置了窗體運(yùn)行時(shí)所有需要的東西。代碼如下:

      Option1.Value = True Dim s As String provider = ”provider=Microsoft.jet.oledb.4.0“ datasource = ”data source=“ & App.Path & ”DB.mdb“ With Adodc1.Mode = adModeReadWrite.ConnectionString = provider & ”;“ & datasource.CommandType = adCmdTable.RecordSource = ”weigui“.Refresh End With s = ”select distinct 日期 from weigui“ With Adodc2.Mode = adModeReadWrite.ConnectionString = provider & ”;“ & datasource.CommandType = adCmdText.RecordSource = s.Refresh End With For I = 1 To Adodc2.Recordset.RecordCount Combo1.AddItem(Adodc2.Recordset.Fields(”日期“))Adodc2.Recordset.MoveNext Next 查看部分的源代碼如下: Dim sql As String Dim s As String s = Combo1.Text If Option1.Value = True Then Set main.DataGrid1.datasource = Adodc1 main.DataGrid1.Refresh ElseIf Option2.Value = True Then sql = ”select * from weigui where 日期=''“ & Trim(s)& ”''“ With Adodc3.Mode = adModeReadWrite.ConnectionString = provider & ”;“ & datasource.CommandType = adCmdText.RecordSource = sql.Refresh End With Set main.DataGrid1.datasource = Adodc3 main.DataGrid1.Refresh End If Unload Me ③資產(chǎn)查看

      圖4.16資產(chǎn)查看效果圖

      在Load事件設(shè)置了窗體運(yùn)行時(shí)所有需要的東西。代碼如下:

      On Error Resume Next Option1.Value = True Dim s As String provider = ”provider=Microsoft.jet.oledb.4.0“ datasource = ”data source=“ & App.Path & ”DB.mdb“ With Adodc1.Mode = adModeReadWrite.ConnectionString = provider & ”;“ & datasource.CommandType = adCmdTable.RecordSource = ”zichan“.Refresh End With s = ”select distinct 日期 from zichan“ With Adodc3.Mode = adModeReadWrite.ConnectionString = provider & ”;“ & datasource.CommandType = adCmdText.RecordSource = s.Refresh End With For I = 1 To Adodc3.Recordset.RecordCount Combo1.AddItem(Adodc3.Recordset.Fields(”日期“))Adodc3.Recordset.MoveNext Next 查看部分代碼如下所示: On Error Resume Next Dim sql As String Dim s As String s = Combo1.Text If Option1.Value = True Then Set main.DataGrid1.datasource = Adodc1 main.DataGrid1.Refresh ElseIf Option2.Value = True Then sql = ”select * from zichan where 日期=''“ & Trim(s)& ”''“ With Adodc2.Mode = adModeReadWrite.ConnectionString = provider & ”;“ & datasource.CommandType = adCmdText.RecordSource = sql.Refresh End With Set main.DataGrid1.datasource = Adodc2 main.DataGrid1.Refresh End If Call dx1 Unload Me 4.8記錄刪除

      刪除是一個(gè)數(shù)據(jù)庫軟件中最基本的操作之一。在本軟件的工具欄中也有一個(gè)刪除按鈕,其功能也是將所找到的記錄刪除,但是它每次只能刪除一條記錄,且此刪除記錄的前提是在右側(cè)的顯示中容易找出,即記錄不多的情況下使用。如果一旦數(shù)據(jù)記錄很多,一條條查找比較不方便時(shí),即可以使用此窗體進(jìn)行刪除。這里的刪除也有四個(gè)窗體,分別為衛(wèi)生刪除、請假刪除、違規(guī)刪除、資產(chǎn)刪除。下面分別介紹。4.8.1 衛(wèi)生刪除 ①效果圖

      圖4.17衛(wèi)生刪除效果圖

      ②界面制作與實(shí)現(xiàn)方法

      這個(gè)界面總體來說各個(gè)控件比較簡單,但是作為一個(gè)刪除操作,它已經(jīng)連接到了數(shù)據(jù)庫,與數(shù)據(jù)庫的表相聯(lián)。且有三種刪除記錄方式可以選擇。默認(rèn)為單條刪除,選擇此項(xiàng)后需要在日期中選擇所刪除記錄的添加日期,以及所在的公寓與寢室,當(dāng)這三條全部符合要求后,在表中進(jìn)行查找,找到后確認(rèn)刪除。選擇批量刪除后,在下面只有一個(gè)日期可以選擇,這樣將會(huì)把所選日期內(nèi)的所有記錄都將刪除掉,所以稱其為批量刪除。全部即是把當(dāng)前表清空,全部刪除掉,建議使用此操作前對當(dāng)前數(shù)據(jù)庫進(jìn)行備份處理,否則數(shù)據(jù)將不會(huì)恢復(fù)。首先要進(jìn)行數(shù)據(jù)庫連接,如上面例子所示,這里就不在介紹,接下來要對本窗體中的日期進(jìn)行加載,如下所示: s = ”select distinct 日期 from weisheng“ With Adodc2.Mode = adModeReadWrite.ConnectionString = provider & ”;“ & datasource.CommandType = adCmdText.RecordSource = s.Refresh End With For I = 1 To Adodc2.Recordset.RecordCount Combo1.AddItem(Adodc2.Recordset.Fields(”日期“))Combo2.AddItem(Adodc2.Recordset.Fields(”日期“))Adodc2.Recordset.MoveNext Next Option1.Value = True Frame3.Visible = True Frame5.Visible = False Frame6.Visible = False 在單條刪除前要確定所有條件符合要求,單條刪除操作的代碼主要部分如下:

      If(MsgBox(”你真的想刪除日期為

      “ & Combo1.Text & ”

      公寓為

      “ & Text1.Text & ”

      寢室為

      “ & Text2.Text & ” 的記錄嗎?“, vbOKCancel, ”系統(tǒng)提示“))= vbOK Then Adodc1.Refresh Adodc1.Recordset.ActiveConnection.Execute ”delete from weisheng where 日期=''“ &

      Trim(s)& ”''and 公寓=''“ & Trim(Text1.Text)& ”''and 寢室=''“ & Trim(Text2.Text)& ”''“

      '', , adExecuteNoRecords Adodc1.Recordset.Update Combo1.Text = ”“ Text1.Text = ”“ Text2.Text = ”“ MsgBox ”刪除成功“, , ”系統(tǒng)提示“ End If Unload Me 當(dāng)選擇某一日期后進(jìn)行批量刪除代碼如下:

      If(MsgBox(”你真的想刪除日期為

      “ & Combo2.Text & ” 的記錄嗎?“, vbOKCancel, ”系統(tǒng)提示“))= vbOK Then Adodc1.Refresh Adodc1.Recordset.ActiveConnection.Execute ”delete from weisheng where 日期=''“ & Trim(Combo2.Text)& ”''“ Combo2.Text = ”“ MsgBox ”刪除成功“, , ”系統(tǒng)提示“ End If Unload Me 清空數(shù)據(jù)表代碼為:

      If(MsgBox(”你真的想刪除所有的記錄嗎?一旦刪除即不可恢復(fù)“, vbOKCancel, ”系統(tǒng)提示“))= vbOK Then For I = 1 To Adodc1.Recordset.RecordCount Adodc1.Recordset.Delete Adodc1.Recordset.MoveNext Next I End If MsgBox ”刪除成功“, , ”系統(tǒng)提示“ Unload Me 4.8.2請假記錄 ①效果圖

      [10]...>>

      圖4.18請假記錄刪除效果圖 ②界面制作與實(shí)現(xiàn)方法

      這個(gè)窗體與上面不同的是多了一個(gè)姓名條件,其它的都基本一致。由于在一個(gè)公寓中會(huì)有很多人要得名,但是在某一公寓某一寢室中只會(huì)有一個(gè)人,這也是一個(gè)公寓分配住宿人員時(shí)的基本標(biāo)準(zhǔn),因?yàn)檫@樣也便于公寓本身的管理。此刪除窗體只有單條刪除與上面不同,單條刪除部分代碼如下:

      If(MsgBox(”你真的想刪除日期為

      “ & Combo1.Text & ”

      公寓為

      “ & Text1.Text & ”

      寢室為

      “ & Text2.Text & ”

      姓名為

      “ & Text3.Text & ” 的請假記錄嗎?“, vbOKCancel, ”系統(tǒng)提示“))= vbOK Then Adodc1.Refresh Adodc1.Recordset.ActiveConnection.Execute ”delete from qingjia where 日期=''“ & Trim(s)& ”''and 公寓=''“ & Trim(Text1.Text)& ”''and 寢室=''“ & Trim(Text2.Text)& ”''and 姓名=''“ & Trim(Text3.Text)& ”''“

      '', , adExecuteNoRecords Adodc1.Recordset.Update Combo1.Text = ”“ Text1.Text = ”“ Text2.Text = ”“ MsgBox ”刪除成功“, , ”系統(tǒng)提示“ End If 4.8.3 違規(guī)刪除 ①效果圖

      圖4.19違規(guī)記錄刪除效果圖 ②界面制作與實(shí)現(xiàn)方法

      違規(guī)刪除操作與請假刪除操作基本一致,不同之處只是在于后臺(tái)對不同的表進(jìn)行處理,前臺(tái)界面大體相同。其實(shí)現(xiàn)方法與上現(xiàn)的也差不太多,這里就不在敘述。單條刪除記錄: Dim sql As String Dim s As String Dim panduan As Boolean If Combo1.Text = ”“ And Text1.Text = ”“ And Text2.Text = ”“ Then MsgBox ”請輸入刪除條件!“, , ”提示“ Exit Sub End If s = Combo1.Text If(MsgBox(”你真的想刪除日期為

      “ & Combo1.Text & ”

      公寓為

      “ & Text1.Text & ”

      寢室為

      “ & Text2.Text & ”

      姓名為

      “ & Text3.Text & ” 的違規(guī)記錄嗎?“, vbOKCancel, ”系統(tǒng)提示“))= vbOK Then Adodc1.Refresh Adodc1.Recordset.ActiveConnection.Execute ”delete from weigui where 日期=''“ & Trim(s)& ”''and 公寓=''“ & Trim(Text1.Text)& ”''and 寢室=''“ & Trim(Text2.Text)& ”'' and 姓名=''“ & Trim(Text3.Text)& ”''“

      '', , adExecuteNoRecords Adodc1.Recordset.Update Combo1.Text = ”“ Text1.Text = ”“ Text2.Text = ”“ MsgBox ”刪除成功“, , ”系統(tǒng)提示“ End If Unload Me 成批刪除記錄:

      If(MsgBox(”你真的想刪除日期為

      “ & Combo2.Text & ” 的記錄嗎?“, vbOKCancel, ”系統(tǒng)提示“))= vbOK Then Adodc1.Refresh Adodc1.Recordset.ActiveConnection.Execute ”delete from weigui where 日期=''“ & Trim(Combo2.Text)& ”''“ Combo2.Text = ”“ MsgBox ”刪除成功“, , ”系統(tǒng)提示“ End If Unload Me 刪除所有記錄:

      If(MsgBox(”你真的想刪除所有的記錄嗎?一旦刪除即不可恢復(fù)“, vbOKCancel, ”系統(tǒng)提示“))= vbOK Then For I = 1 To Adodc1.Recordset.RecordCount Adodc1.Recordset.Delete Adodc1.Recordset.MoveNext Next I End If MsgBox ”刪除成功“, , ”系統(tǒng)提示“ Unload Me 4.8.4 資產(chǎn)刪除 ①效果圖

      圖4.20資產(chǎn)刪除效果圖 ② 界面制作與實(shí)現(xiàn)方法

      與衛(wèi)生記錄刪除不同的是寢室改為了名稱。值得注意的是,此處公寓與名稱都要人工輸入,所以在輸入的時(shí)候要注意不要有多余字符,否則會(huì)出錯(cuò)刪除不掉的情況。單條刪除部分源碼如下:

      If(MsgBox(”你真的想刪除日期為

      “ & Combo1.Text & ”

      公寓為

      “ & Text1.Text & ”

      名稱為

      “ & Text2.Text & ” 的資產(chǎn)記錄嗎?“, vbOKCancel, ”系統(tǒng)提示“))= vbOK Then Adodc1.Refresh Adodc1.Recordset.ActiveConnection.Execute ”delete from zichan where 日期=''“ & Trim(s)& ”''and 公寓=''“ & Trim(Text1.Text)& ”''and 名稱=''“ & Trim(Text2.Text)& ”''“

      '', , adExecuteNoRecords Adodc1.Recordset.Update Combo1.Text = ”“ Text1.Text = ”“ Text2.Text = ”“ MsgBox ”刪除成功“, , ”系統(tǒng)提示“ End If 4.9值班記錄

      值班記錄這項(xiàng)可以說是此軟件的一個(gè)新增功能。它的界面小巧,并且它可以讓值班人員記錄前天發(fā)生的一些事情,字?jǐn)?shù)在1000字左右。可以說是一個(gè)小型的日記本。4.9.1 值班記錄 ①值班記錄效果圖

      圖4.21值班記錄效果圖 ② 實(shí)現(xiàn)思想與功能

      此窗體的功能以及其源代碼是經(jīng)過修改之后而形成的,源文件是一個(gè)電子記事本,發(fā)現(xiàn)后經(jīng)過修改后做出一個(gè)日記本。

      在上面的日期后面的文本框中,你可以輸入如窗口標(biāo)題后面所示的日期格式后,點(diǎn)擊查看,即可以查看到所選日期的詳細(xì)記錄。這是一種查詢方法,當(dāng)然你也可以用右面簡單的上一條與下一條進(jìn)行快速查看,但是它只能查看當(dāng)日日期起開始的記錄,如果與你所想要查看的日期相差很遠(yuǎn),那么你就需要使用第一種方法了。這個(gè)日記本還支持修改與刪除功能。當(dāng)你想編輯或刪除某一日期的時(shí)候時(shí),你需要用查看方法找到該記錄,然后對當(dāng)前記錄使用編輯或刪除即可完成操作。刪除后,記錄即不可恢復(fù),且此日記目前還沒有備份功能,慎重操作。

      如果你今天值班,還沒有寫值班記錄,那么你可以點(diǎn)擊增加按鈕,開始寫當(dāng)日的值班記錄,說明的是,每天只可以寫一次記錄。當(dāng)你寫完今天記錄后,在點(diǎn)擊增加時(shí)會(huì)提示你今日已寫完。但是你可以對今日記錄進(jìn)行編輯修改。

      本程序源碼較為復(fù)雜,主要都是對文件進(jìn)行操作,并沒有把記錄添加到數(shù)據(jù)庫中,所以不支持備份操作,且本窗體中的操作程序還用到了一個(gè)模塊。部分代碼如下: 查看上一條記錄:

      If giCurrentRecord > 1 Then

      giCurrentRecord = giCurrentRecord1

      Form_Load

      End If 4.9.2 增加記錄 ①增加記錄效果圖

      圖4.22增加記錄效果圖 ② 實(shí)現(xiàn)思想與程序源碼

      日期后顯示當(dāng)前日期,但是可以修改。每篇記錄的字?jǐn)?shù)要求在1000字以內(nèi)。支持對當(dāng)前字符輸入的統(tǒng)計(jì),確定完成本日記錄后,點(diǎn)擊保存即可。部分代碼如下:

      Dim bSaved As Boolean, bCF If txtDate = ”“ Or txtMemo = ”“ Then Exit Sub '' 如果記錄未填,則退出 If riji.Tag = ”addnew“ Then

      If giRecordCount >= 1 Then

      ''新增時(shí),檢查記錄是否重復(fù)

      gsSql = frminput.txtDate

      bCF = FindData(gsSql)

      If bCF Then

      MsgBox ”今天你已經(jīng)寫過日記了!“, vbExclamation + vbOKOnly, ”每日一記“

      txtMemo.SetFocus

      Exit Sub

      End If

      End If

      giRecordCount = giRecordCount + 1

      bSaved = WriteData()ElseIf riji.Tag = ”modify“ Then ''

      bSaved = ModifyData()End If If bSaved = True Then

      AddNext = MsgBox(”保存完畢!“, vbExclamation + vbOKOnly, ”每日一記“)End If Unload Me 由于此段代碼中用到了一個(gè)模塊,在模塊中定義了很多過程,各過程實(shí)現(xiàn)功能及代碼如下所示:

      讀取數(shù)據(jù):

      Public Sub ReadData(curRecord As Integer)''讀取數(shù)據(jù) On Error Resume Next Dim strcaption$

      riji.txtDate = goDiarys(curRecord).fldDate

      riji.txtMemo = goDiarys(curRecord).fldMemo

      strcaption = ”每日一記

      [“ & Date & ”] “ & Time & ” WeekdayName(Weekday(Date))& “ 記錄:” & giCurrentRecord & “/” & giRecordCount

      riji.Caption = strcaption End Sub 查詢數(shù)據(jù):

      Public Function FindData(sql As String)As Boolean ''查詢數(shù)據(jù) On Error Resume Next

      Dim I%

      For I = 1 To giRecordCount

      If goDiarys(I).fldDate = sql Then

      giCurrentRecord = I

      FindData = True

      Exit For

      End If

      Next

      ReadData giCurrentRecord End Function 新增數(shù)據(jù):

      Public Function WriteData()As Boolean ''新增數(shù)據(jù) On Error Resume Next

      Dim iFreefile%, I%

      iFreefile = FreeFile()

      Open gsPath & “DATA.DAT” For Random As #iFreefile Len = en(goDiary)

      ReDim Preserve goDiarys(giRecordCount)

      goDiarys(giRecordCount).fldDate = frminput.txtDate

      goDiarys(giRecordCount).fldMemo = frminput.txtMemo

      goDiary = goDiarys(giRecordCount)

      Put #iFreefile, giRecordCount, goDiary

      giCurrentRecord = giRecordCount

      ReadData(giCurrentRecord)

      Close #iFreefile

      WriteData = True

      “ & End Function 修改數(shù)據(jù):

      Public Function ModifyData()As Boolean ''修改數(shù)據(jù) On Error Resume Next

      Dim iFreefile%, I%

      iFreefile = FreeFile()

      Open gsPath & ”DATA.DAT“ For Random As #iFreefile Len =len(goDiary)

      goDiarys(giCurrentRecord).fldDate = frminput.txtDate

      goDiarys(giCurrentRecord).fldMemo = frminput.txtMemo

      goDiary = goDiarys(giCurrentRecord)

      Put #iFreefile, giCurrentRecord, goDiary

      ReadData(giCurrentRecord)

      Close #iFreefile

      ModifyData = True End Function 刪除數(shù)據(jù):

      Public Sub DeleteData()''刪除數(shù)據(jù) On Error Resume Next

      Dim iFreefile%, I%, J%

      I = 1: J = 1

      iFreefile = FreeFile()

      Open gsPath & ”temp.dat“ For Random As #iFreefile Len = Len(goDiary)

      goDiarys(giCurrentRecord).fldMemo = ”IWantToKillIt*“ & goDiarys(giCurrentRecord).fldMemo ''加刪除標(biāo)記

      For I = 1 To giRecordCount

      ''無刪除標(biāo)記的記錄保存到臨時(shí)文件,TEMP.DAT

      If Left(goDiarys(I).fldMemo, 14)<> ”IWantToKillIt*“ Then

      goDiary = goDiarys(I)

      Put #iFreefile, J, goDiary

      ''在此必須有I,J兩個(gè)變量,因?yàn)槭褂枚M(jìn)制保存文件,J = J + 1

      ''從1開始到后面,中間如有間隔就會(huì)出現(xiàn)亂碼

      End If

      Next

      Close #iFreefile

      Kill gsPath & ”data.dat“

      Name gsPath & ”temp.dat“ As gsPath & ”data.dat“

      riji.txtDate = ”“

      riji.txtMemo = ”“ End Sub 說明:由于本人能力有限,對文件部分還不算是很了解,這個(gè)功能的實(shí)現(xiàn)主要是借用了網(wǎng)上的一個(gè)電子記事本。本人只是對其做了一些修改,做成了這個(gè)每日一記,但個(gè)人認(rèn)為此功能還算是可以。4.10 Help制作 Help文檔的制作也標(biāo)志著本軟件基本完成。制作help文檔需要一個(gè)專業(yè)制作軟件,本人使用的是破解版的QuickCHM,此軟件無論在功能上還在是操作上用起來都是很方便。QuickCHM軟件的界面及其使用如下:

      [10]...>>

      圖4.23 QuickCHM軟件的界面 它屬于一個(gè)傻瓜型的制作軟件,利用它可以快速的制作出各種你所需要的幫助文檔。但是如果想制作出如下圖所示的文檔,那么需要使用制作網(wǎng)頁的軟件把內(nèi)容先做成html形式,然后在用此軟件進(jìn)行加載,最后生成chm文檔。在制作前要制作出相差的網(wǎng)頁形式,本人使用Dreamweaver。用它先做出要用到的相差頁面,大約一共為十個(gè)。然后在用QuickCHM把所有的網(wǎng)頁添加進(jìn)去,然后對QuickCHM進(jìn)行各項(xiàng)設(shè)置,最后點(diǎn)擊編譯即可生成help文檔,后綴為.Chm。在本管理軟件中可以按F1或點(diǎn)擊幫助菜單下的幫助主題即可顯示該幫助文檔,調(diào)用的過程也很簡單,兩條語句即可以實(shí)現(xiàn)。代碼如下:

      在主窗體的load事件中添加下面語句: App.HelpFile = App.Path & ”help.chm“ 在幫助主題的click事件中添加下面語句: SendKeys ”{F1}" 上面這兩條語句即可以實(shí)現(xiàn)調(diào)用幫助文檔的功能。

      第五章 系統(tǒng)測試

      編寫出的各功能模塊需要進(jìn)行測試,對于模塊化應(yīng)用程序,軟件開發(fā)的最后一部分便是不斷的測試程序最終編譯成可執(zhí)行的.exe文件,該階段主要對系統(tǒng)的正確性及完整性等方面進(jìn)行測試。主要進(jìn)行:功能確認(rèn)測試、運(yùn)行測試、健壯性測試、安全性測試以及查錯(cuò)方面的測試等,系統(tǒng)測試的測試人員由測試組成員(或質(zhì)量保證人員)或測試組成員與用戶共同測試,在整個(gè)系統(tǒng)開發(fā)完成,即將交付用戶使用前進(jìn)行。在這一階段,對整個(gè)系統(tǒng)進(jìn)行測試,系統(tǒng)測試結(jié)束后我們應(yīng)該打軟件打包,使其脫離VB的環(huán)境下也能正常運(yùn)行。打包應(yīng)將所有程序需要的文件加載進(jìn)去,如數(shù)據(jù)庫(DB.MDB),每日一記和幫助的文件都要進(jìn)行加載。在調(diào)試程序過程中,由于某些內(nèi)在的錯(cuò)誤影響程序的運(yùn)行,在采用上述調(diào)試方法對程序進(jìn)行調(diào)試后,程序運(yùn)行情況良好,達(dá)到了預(yù)期的設(shè)計(jì)目標(biāo),基本上滿足了用戶的需要。

      總結(jié)

      到目前為止,學(xué)生公寓管理軟件基本開發(fā)完畢,軟件界面美觀,運(yùn)行時(shí)間短,執(zhí)行功能強(qiáng),其功能基本符合用戶需求。能夠完成對學(xué)生公寓中學(xué)生基本資料的存儲(chǔ)和查詢,并提供數(shù)據(jù)轉(zhuǎn)換、數(shù)據(jù)備份等系統(tǒng)維護(hù)功能,可以使用查找、修改、添加和刪除對學(xué)生公寓管理軟件的操作等。

      由于本人知識有限,又是剛初學(xué)軟件,時(shí)間比較倉促,又缺乏經(jīng)驗(yàn),必定有不足和不周之處,希望各位老師給予指導(dǎo),本人將繼續(xù)完善修改,使此系統(tǒng)能更好地發(fā)揮性能。

      參考文獻(xiàn)

      Visual Basic 程序設(shè)計(jì)

      王棟

      清華大學(xué)出版社 Visual Basic 高級編程宋偉

      吳建國

      清華大學(xué)出版社 Visual Basic 6.0 入門與提高 戴紅 陳哲 清華大學(xué)出版社 Visual Basic 6.0應(yīng)用指南

      何斌 王運(yùn)堅(jiān)

      馮峰 劉醒

      人民郵電出版社

      Visual Basic 高級編程技術(shù) 陳 明

      楊勁松

      北京希望電子出版社

      Visual Basic實(shí)用教程

      陳弘原

      中國水利水電出版社

      數(shù)據(jù)庫系統(tǒng)概論

      薩師煊、王珊 高等教育出版社

      軟件系統(tǒng)開發(fā)技術(shù)

      潘錦平施小姚 西安電子科技大學(xué)出版

      <<

      [11]

      第三篇:學(xué)生公寓管理系統(tǒng)

      1.需求分析

      需求分析的任務(wù)是通過詳細(xì)調(diào)查現(xiàn)實(shí)世界要處理的對象(組織、部門、企業(yè)等),充分了解原系統(tǒng)(手工系統(tǒng)或計(jì)算機(jī)系統(tǒng))的工作概況,明確用戶的各種需求,然后在此基礎(chǔ)上確定新系統(tǒng)的功能。

      學(xué)生公寓管理系統(tǒng)

      學(xué)校有若干公寓,每棟5層,每層18個(gè)房間,每個(gè)房間4個(gè)學(xué)生,需要一個(gè)管理系統(tǒng)實(shí)現(xiàn)管理。

      (1)寢室分配:根據(jù)系別、年紀(jì)、班級分配寢室,查詢寢室狀態(tài)和入住信息(2)學(xué)生管理:實(shí)現(xiàn)入住學(xué)生信息的維護(hù)和查詢功能(3)信息查詢:按公寓樓號、學(xué)生姓名等查詢住宿信息(4)出入登記:實(shí)現(xiàn)對外來人員進(jìn)行登記功能

      1.1 數(shù)據(jù)流圖(DFD)

      數(shù)據(jù)流圖用于表達(dá)和描述系統(tǒng)的數(shù)據(jù)流向和對數(shù)據(jù)的處理功能。

      畫數(shù)據(jù)流圖

      學(xué)生入住信息學(xué)生入住入住信息信息登記住宿信息寢室信息學(xué)生學(xué)生信息公寓管理訪客信息訪客

      圖1-1公寓管理系統(tǒng)1層數(shù)據(jù)流圖

      公寓管理分配信息學(xué)生入住信息住宿信息訪客信息寢室分配管理學(xué)生管理寢室信息查詢管理分配信息學(xué)生入住信息住宿信息寢室分配信息學(xué)生入住信息住宿信息圖1-2公寓管理系統(tǒng)1層數(shù)據(jù)流圖

      學(xué)生公寓管理入住信息入住信息入住信息匯入住查詢條件總報(bào)表學(xué)生入住入住信息查詢統(tǒng)計(jì)入住信息入住信息入住信息圖1-3學(xué)生管理2層數(shù)據(jù)流圖

      訪客管理訪客信息訪客信息 訪客公寓管理訪客信息訪客信息統(tǒng)計(jì)登記訪客信息訪客信息統(tǒng)計(jì)訪客信息訪客信息 圖1-4訪客管理2層數(shù)據(jù)流圖

      1.2 數(shù)據(jù)字典(DD)

      數(shù)據(jù)字典是數(shù)據(jù)庫中各類數(shù)據(jù)描述的集合,是進(jìn)行詳細(xì)的數(shù)據(jù)收集和數(shù)據(jù)分析所獲得的主要結(jié)果。數(shù)據(jù)文件:學(xué)生信息

      信息組成:系別、年級、班級、姓名

      數(shù) 據(jù) 項(xiàng):系別 數(shù)據(jù)類型:字符型 數(shù)據(jù)長度:2

      數(shù) 據(jù) 項(xiàng):年級 數(shù)據(jù)類型:字符型 數(shù)據(jù)長度:2

      數(shù)據(jù)組成:班級 數(shù)據(jù)類型:字符型 數(shù)據(jù)長度:2 數(shù) 據(jù) 項(xiàng):姓名 數(shù)據(jù)類型:可變字符類型 數(shù)據(jù)長度:20

      數(shù)據(jù)文件:信息查詢

      信息組成:公寓樓號、學(xué)生姓名

      數(shù)據(jù)組成:公寓樓號 數(shù)據(jù)類型:整型 數(shù)據(jù)長度:1

      數(shù) 據(jù) 項(xiàng):學(xué)生姓名 數(shù)據(jù)類型:可變字符類型 數(shù)據(jù)長度:20

      數(shù)據(jù)文件:訪客信息

      信息組成:訪客姓名、學(xué)生姓名、日期

      數(shù) 據(jù) 項(xiàng):訪客姓名 數(shù)據(jù)類型:可變字符類型 數(shù)據(jù)長度:20

      數(shù) 據(jù) 項(xiàng):學(xué)生姓名 數(shù)據(jù)類型:可變字符類型 數(shù)據(jù)長度:20

      數(shù) 據(jù) 項(xiàng):日期 數(shù)據(jù)類型:日期類型 數(shù)據(jù)長度:10

      2.概念結(jié)構(gòu)設(shè)計(jì)

      概念結(jié)構(gòu)設(shè)計(jì)階段的任務(wù)就是把這些實(shí)際需求抽象成計(jì)算機(jī)能夠識別的信息世界的結(jié)構(gòu),這種將需求分析階段得到的用戶需求抽象為信息結(jié)構(gòu)即概念模型的過程就是概念結(jié)構(gòu)設(shè)計(jì)。

      E-R圖(在Powerdesigner中創(chuàng)建概念模型,粘貼圖)

      圖2-1 E-R圖

      3.邏輯結(jié)構(gòu)設(shè)計(jì)

      關(guān)系模式((在Powerdesigner中由概念模型轉(zhuǎn)化為物理數(shù)據(jù)模型,粘圖))

      圖3-1物理數(shù)據(jù)模型圖

      4.建表SQL語句

      由物理數(shù)據(jù)模型生成SQL Server 2008數(shù)據(jù)庫的建表語句。

      /*================*/ /* DBMS name: Microsoft SQL Server 2008 */ /* Created on: 2013-12-6 22:36:42 */ /*================*/

      if exists(select 1 from sysindexes where id = object_id('學(xué)生')and name = '入住_FK' and indid > 0 and indid < 255)drop index 學(xué)生.入住_FK go

      if exists(select 1 from sysobjects where id = object_id('學(xué)生')and type = 'U')drop table 學(xué)生 go

      if exists(select 1 from sysobjects where id = object_id('宿舍')and type = 'U')drop table 宿舍 go

      if exists(select 1 from sysindexes where id = object_id('訪客')and name = '探訪_FK' and indid > 0 and indid < 255)drop index 訪客.探訪_FK go

      if exists(select 1 from sysobjects where id = object_id('訪客')and type = 'U')drop table 訪客 go

      /*================*/ /* Table: 學(xué)生 */ /*================*/ create table 學(xué)生(姓名 varchar(20)not null, 公寓樓號 int null, 學(xué)生姓名 varchar(20)null, 系別 char(2)not null, 班級 char(2)not null, 年級 char(2)not null, constraint PK_學(xué)生 primary key nonclustered(姓名))go

      /*================*/ /* Index: 入住_FK */ /*================*/ create index 入住_FK on 學(xué)生(公寓樓號 ASC, 學(xué)生姓名 ASC)go

      /*================*/ /* Table: 宿舍 */ /*================*/ create table 宿舍(學(xué)生姓名 varchar(20)not null, 公寓樓號 int not null, constraint PK_宿舍 primary key nonclustered(公寓樓號, 學(xué)生姓名))go

      /*================*/ /* Table: 訪客 */ /*================*/ create table 訪客(訪客姓名 varchar(20)not null, 日期 datetime not null, 姓名 varchar(20)null, constraint PK_訪客 primary key nonclustered(訪客姓名, 日期))go

      /*================*/ /* Index: 探訪_FK */ /*================*/ create index 探訪_FK on 訪客(姓名 ASC)go

      第四篇:學(xué)生公寓門禁系統(tǒng)管理辦法

      德州學(xué)院學(xué)生公寓門禁系統(tǒng)管理辦法為規(guī)范使用學(xué)生公寓門禁系統(tǒng),提高學(xué)生公寓信息化管理水平,加強(qiáng)學(xué)生公寓日常管理,有效保障學(xué)生人身、財(cái)物安全,特制定本管理辦法。

      第一條

      德州學(xué)院入住學(xué)生公寓的所有學(xué)生,應(yīng)服從大學(xué)生公寓管理中心管理,遵守門禁系統(tǒng)管理辦法。第二條

      學(xué)生進(jìn)出宿舍樓應(yīng)持校園卡刷卡進(jìn)出,校園卡實(shí)行一人一卡制,要妥善保管,若遺失,持卡人應(yīng)及時(shí)到校園卡中心補(bǔ)辦,并到公寓管理中心辦公室辦理注冊手續(xù)。如遇非工作時(shí)間無法補(bǔ)辦時(shí),須持本人學(xué)生證并由所在樓管理值班人員登記出入,并在下一工作日立即補(bǔ)辦。

      第三條

      學(xué)生不得將校園卡轉(zhuǎn)借他人或使用他人校園卡,一經(jīng)發(fā)現(xiàn),學(xué)校將給予持卡人、借卡人通報(bào)批評。如因轉(zhuǎn)借校園卡而造成嚴(yán)重后果的,學(xué)校將根據(jù)后果嚴(yán)重程度給予校園卡持卡人、借卡人警告及以上處分并責(zé)其承擔(dān)相應(yīng)責(zé)任。借卡人如是校外人員,將交學(xué)校保衛(wèi)處或公安機(jī)關(guān)處理。

      第四條

      學(xué)生出入宿舍樓,無故不帶校園卡通過門禁且不按規(guī)定登記者,監(jiān)控系統(tǒng)將實(shí)時(shí)抓拍記錄。凡每晚10:30以前,一學(xué)期內(nèi)一次不刷卡或違規(guī)出入者,由所在院系將給予通報(bào)批評;一學(xué)期內(nèi)兩次不刷卡或違規(guī)出入者,學(xué)校將給予通報(bào)批評;一學(xué)期內(nèi)三次及以上不刷卡或違規(guī)出入者,學(xué)生個(gè)人綜合教育學(xué)分“日常管理”部分本學(xué)期必修學(xué)分為0分,由所在系負(fù)責(zé)組織補(bǔ)考,并在下學(xué)期開學(xué)兩周內(nèi)上報(bào)補(bǔ)考成績。

      第五條

      每晚10:30以后,公寓管理值班人員將根據(jù)學(xué)生刷卡記錄統(tǒng)計(jì)進(jìn)樓人數(shù)及晚歸或夜不歸宿人數(shù),因?qū)W生本人原因未刷卡而造成無出入記錄信息者,視為晚歸或夜不歸宿,由學(xué)校根據(jù)《德州學(xué)院學(xué)生違紀(jì)處分規(guī)定》、《德州學(xué)院學(xué)生宿舍違章處理規(guī)定》有關(guān)規(guī)定進(jìn)行處理。

      第六條

      因事、因病請假或法定節(jié)假日不在學(xué)生公寓住宿的學(xué)生,按正常請假申請、審批程序(輔導(dǎo)員、院系同意),名單由所在院系輔導(dǎo)員每晚10:30前通過辦公系統(tǒng)發(fā)送至公寓管理中心郵箱,由公寓管理中心工作人員匯總當(dāng)天所有學(xué)生請假記錄錄入系統(tǒng)中單獨(dú)標(biāo)識。高年級學(xué)生外出實(shí)習(xí)期間,不在學(xué)生公寓住宿的,由院系

      報(bào)學(xué)生公寓管理中心集體請假。

      第七條

      為加強(qiáng)早操工作,大一年級學(xué)生正常行課期間必須按要求參加早操,6:10——6:30時(shí)段必須有一次出學(xué)生公寓刷卡記錄;如無出門禁系統(tǒng)刷卡記錄的,視為早操缺勤,按《德州學(xué)院學(xué)生早操管理規(guī)定》有關(guān)規(guī)定執(zhí)行。

      第八條

      學(xué)生公寓管理中心每個(gè)工作日在團(tuán)學(xué)辦公系統(tǒng)上通報(bào)前一天學(xué)生公寓門禁系統(tǒng)進(jìn)出記錄情況,各相關(guān)院系應(yīng)及時(shí)查看,并對違紀(jì)學(xué)生進(jìn)行批評教育。第九條

      各院系的學(xué)生公寓門禁系統(tǒng)違規(guī)出入率、無故晚歸率將被納入學(xué)生工作系級綜合測評中,作為公寓工作的重要指標(biāo)之一。

      第十條

      持卡者要遵守學(xué)院相關(guān)規(guī)定,樹立良好的道德風(fēng)尚,不得有偽造、違規(guī)使用校園卡或借助校園卡進(jìn)行有違規(guī)章制度的行為;不得有人為破壞門禁系統(tǒng)機(jī)具、網(wǎng)絡(luò)等設(shè)備,改變設(shè)置、修改他人信息、影響門禁系統(tǒng)正常工作的行為。若出現(xiàn)上述行為,學(xué)校將嚴(yán)肅查處,按有關(guān)規(guī)定追究當(dāng)事者責(zé)任并進(jìn)行相應(yīng)處罰。

      第十一條

      學(xué)院根據(jù)實(shí)際情況,可在新生報(bào)到、宿舍集體搬遷等特殊時(shí)段作另行規(guī)定。

      第十二條

      本辦法自頒布之日起執(zhí)行。本辦法解釋權(quán)歸學(xué)生處。

      德州學(xué)院學(xué)生處2010.3.14

      第五篇:學(xué)生公寓管理系統(tǒng)-招標(biāo)書

      1.5 學(xué)生公寓管理系統(tǒng)

      采用頂層設(shè)計(jì)、分級管理的設(shè)計(jì)思路,將宿舍資源管理、學(xué)生入住管理、宿舍日常管理、學(xué)生退宿管理、宿舍檢查管理、校外人員入住宿舍管理等模塊集成,實(shí)現(xiàn)學(xué)生宿舍管理的數(shù)據(jù)信息化、流程信息化、決策信息化,最終達(dá)到數(shù)據(jù)共享、管理自動(dòng)化、管理智能化的目的。

      目前我校宿舍管理方式如下:

      ? 迎新階段:

      ①.本科生:后勤分配新生房源給各學(xué)院,各學(xué)院在新生到校前安排新生到具體房間和床位,學(xué)生登錄迎新系統(tǒng)進(jìn)行查詢。

      ②.碩士、博士生:新生到校報(bào)到時(shí)可人工分配床位,也可床位自選。? 在校階段:

      在校生調(diào)宿、退宿、申請入住時(shí)提出申請意向,經(jīng)過輔導(dǎo)員和學(xué)院審批后,由學(xué)生公寓審批通過,至財(cái)務(wù)處核算費(fèi)用后,學(xué)生持材料(如:入住通知單)到公寓中心分配房間后在相關(guān)公寓樓棟辦理具體手續(xù)。

      ? 離校階段:

      學(xué)生在結(jié)清相關(guān)費(fèi)用后,在公寓服務(wù)中心辦理退宿手續(xù),批量刪除畢業(yè)學(xué)生住宿信息。

      ? 在退宿、入住、調(diào)寢環(huán)節(jié),學(xué)生信息和門禁系統(tǒng)實(shí)時(shí)對接,確保學(xué)生

      入住情況準(zhǔn)確。

      系統(tǒng)包括6大模塊,具體功能說明如下:

      1)宿舍基本數(shù)據(jù)管理

      ? 學(xué)生信息管理

      各級管理老師可以維護(hù)和查詢自己管轄范圍內(nèi)的學(xué)生信息;系統(tǒng)提供數(shù)據(jù)接口,可進(jìn)行批量數(shù)據(jù)導(dǎo)入,或?qū)⒉樵兒徒y(tǒng)計(jì)的結(jié)果數(shù)據(jù)導(dǎo)出成EXCEL表格。系

      統(tǒng)實(shí)現(xiàn)數(shù)據(jù)集成后,學(xué)生的部分信息可以通過數(shù)據(jù)集成平臺(tái)從教務(wù)、學(xué)工等系統(tǒng)共享而來;宿舍管理系統(tǒng)只對宿舍業(yè)務(wù)相關(guān)的學(xué)生信息內(nèi)容進(jìn)行維護(hù)。? 宿舍設(shè)備資源管理

      學(xué)校管理人員按管理權(quán)限可以對學(xué)校的宿舍區(qū)、宿舍樓、宿舍等基本信息進(jìn)行管理,如公共資源配置數(shù)量(如熱水器、洗衣機(jī)、開水爐、彩電等)、住宿費(fèi)標(biāo)準(zhǔn)、住宿學(xué)生類別、備注等信息。

      ? 住宿變更流程管理:

      宿舍流程管理實(shí)現(xiàn)學(xué)校管理人員對學(xué)生入住、退宿、宿舍調(diào)整的申請與審核流程的設(shè)置與管理。

      2)學(xué)生住宿管理

      人工分配宿舍:對新進(jìn)學(xué)生分配宿舍,對住宿期間臨時(shí)調(diào)換宿舍、中途入住生進(jìn)行調(diào)整安排。

      自動(dòng)分配宿舍:根據(jù)學(xué)院男女生入住人數(shù)在指定的樓棟、樓層、房間中自動(dòng)分配宿舍床位。

      學(xué)生自選床位:特定的學(xué)生在指定床位范圍內(nèi)通過網(wǎng)絡(luò)自選床位。公寓空調(diào)安裝后,學(xué)生出現(xiàn)對空調(diào)需求差異,存在挑選有無空調(diào)宿舍的情況,學(xué)生可根據(jù)不同的需求選擇宿舍。

      ? 住宿管理:

      學(xué)校相關(guān)管理人員對學(xué)生進(jìn)行安排入住,住宿日常管理類型可包括:

      中途變更住宿管理:入住登記、退宿登記、延期畢業(yè)登記等日常處理項(xiàng)目。批量管理:學(xué)生住宿信息的批量導(dǎo)入、變更、刪除等。可采用人工手動(dòng)分配、電腦自動(dòng)分配、自選床位分配的方式進(jìn)行登記。

      ? 非在校住宿學(xué)生管理

      學(xué)校相關(guān)管理老師直接維護(hù)學(xué)生校外住宿學(xué)生的基本信息,進(jìn)行備案,供今后查詢使用,包括學(xué)號姓別、院系、年級、班級、校外住宿地址、聯(lián)系電話、聯(lián)系人、申請外住日期、家庭詳細(xì)信息等。

      ? 宿舍業(yè)務(wù)申請與受理

      學(xué)生可以在線進(jìn)行入住、退宿及宿舍調(diào)整的相關(guān)業(yè)務(wù),填寫詳細(xì)的申請理由,并送達(dá)管理人員進(jìn)行審核。各級管理老師對學(xué)生的入住、退宿、調(diào)整申請進(jìn)行審

      核,并填寫審批意見。

      3)查詢統(tǒng)計(jì)

      住宿信息管理功能主要用于住宿學(xué)生的各類信息查詢和統(tǒng)計(jì),可以快速直接對住宿人員、宿舍房源)、公共設(shè)施設(shè)備、宿舍基礎(chǔ)數(shù)據(jù)進(jìn)行查詢,滿足校內(nèi)各部門對宿舍資源使用情況的實(shí)時(shí)查詢統(tǒng)計(jì)。查詢分為總體查詢、分類查詢、個(gè)別查詢、組合查詢??傮w查詢可直接查詢校內(nèi)/區(qū)域內(nèi)總樓棟數(shù)、總床位數(shù)、總空床位數(shù)、總住宿人數(shù)等總體數(shù)據(jù)。分類查詢可以根據(jù)校區(qū)、樓棟號、樓層數(shù)、房間號進(jìn)行統(tǒng)計(jì)查詢;也可以根據(jù)學(xué)院、年級、學(xué)生屬性進(jìn)行統(tǒng)計(jì)查詢;或者根據(jù)繳費(fèi)情況、住宿狀況進(jìn)行統(tǒng)計(jì)查詢。個(gè)別查詢是根據(jù)學(xué)生個(gè)人信息進(jìn)行詳細(xì)查詢,可以查到學(xué)生的住宿情況、繳費(fèi)情況等。組合查詢是根據(jù)所需要的數(shù)據(jù)進(jìn)行篩選綜合的一種查詢方式。

      住宿管理系統(tǒng)要有比對功能,住宿名單要與財(cái)務(wù)處收費(fèi)名單進(jìn)行比對,可以實(shí)時(shí)查詢未交費(fèi)學(xué)生情況。

      系統(tǒng)提供全校學(xué)生住宿情況查詢統(tǒng)計(jì)報(bào)表、學(xué)生宿舍調(diào)動(dòng)查詢統(tǒng)計(jì)報(bào)表。通過系統(tǒng)學(xué)校的相關(guān)管理人員可以查詢到各宿舍區(qū)房間總數(shù)、床位總數(shù)、已住總數(shù)、空余床位數(shù)等詳細(xì)信息。系統(tǒng)提供數(shù)據(jù)接口,可將查詢和統(tǒng)計(jì)的結(jié)果數(shù)據(jù)導(dǎo)出成EXCEL、WORD、PDF文件。

      4)宿舍日常管理

      ? 樓棟管理員設(shè)置

      學(xué)校相關(guān)管理老師設(shè)置樓棟管理人員清單以及其所管轄的樓棟。設(shè)置完成后,樓棟管理員可以維護(hù)本人管理范圍內(nèi)的樓棟的學(xué)生住宿情況、衛(wèi)生檢查情況等。? 衛(wèi)生檢查管理

      根據(jù)學(xué)校對宿舍衛(wèi)生管理要求,學(xué)校相關(guān)管理老師或者樓棟管理員可對宿舍衛(wèi)生檢查情況進(jìn)行記錄和管理,具體可包括宿舍的房間號、檢查分?jǐn)?shù)、檢查日期、操作日期和操作人等。系統(tǒng)支持定期檢查和抽查等多種檢查類型。

      ? 違章違紀(jì)管理

      根據(jù)學(xué)校宿舍管理規(guī)定,學(xué)校相關(guān)管理老師或者樓棟管理員可對住宿人員的違章違紀(jì)情況進(jìn)行登記,供相關(guān)管理人員查詢使用。系統(tǒng)可自定義多種違紀(jì)類型。其他數(shù)據(jù)的統(tǒng)計(jì)管理:對夜不歸宿、遲歸等學(xué)生情況的統(tǒng)計(jì)上傳,讓學(xué)院、輔導(dǎo)

      員及時(shí)了解學(xué)生狀況,保障住宿生的人身安全,并為學(xué)生年終評優(yōu)評獎(jiǎng)提供依據(jù)。

      5)公寓公共設(shè)施設(shè)備管理功能

      公寓服務(wù)中心可通過該功能對公寓樓內(nèi)公共設(shè)施設(shè)備數(shù)量、使用年限、維修更換情況進(jìn)行有效地掌控。

      將每棟公寓樓內(nèi)的公用電器和基礎(chǔ)設(shè)施,如熱水器、開水爐、洗衣機(jī)、吸頂扇、空調(diào)、排風(fēng)扇、家具、消防設(shè)施設(shè)備等公共設(shè)施數(shù)據(jù)編入系統(tǒng)。根據(jù)中心的工作節(jié)點(diǎn)對各類設(shè)施設(shè)備進(jìn)行檢查、維修、更換,并及時(shí)更新系統(tǒng)數(shù)據(jù)。

      6)系統(tǒng)管理

      ? 待辦事宜:可根據(jù)系統(tǒng)中業(yè)務(wù)開展情況,自動(dòng)的生成事務(wù)性的提醒??舍槍?/p>

      不同的用戶提供不同的提醒。如:學(xué)生申請入住后,輔導(dǎo)員可收到待審的學(xué)生人數(shù)提醒。

      ? 系統(tǒng)設(shè)置:學(xué)校相關(guān)管理老師設(shè)置當(dāng)前學(xué)年、當(dāng)前學(xué)期等系統(tǒng)整體設(shè)置。? 日志管理:系統(tǒng)自行記錄每個(gè)用戶的訪問時(shí)間IP地址等信息;每個(gè)功能的訪問時(shí)間IP地址等信息;記錄系統(tǒng)的訪問日志、數(shù)據(jù)變化日志以及發(fā)生問題日志。

      ? 權(quán)限管理:可以靈活配置每個(gè)用戶所屬的用戶組,以及用戶組的的權(quán)限,保

      證用戶在系統(tǒng)中的一切操作在授權(quán)范圍內(nèi)進(jìn)行,當(dāng)用戶發(fā)生崗位調(diào)整或者崗位職責(zé)發(fā)生變化時(shí)系統(tǒng)可以靈活調(diào)整。

      本系統(tǒng)與學(xué)校其他部門的信息互通

      宿舍管理系統(tǒng)作為學(xué)校信息化建設(shè)中重要一環(huán),不僅承載了和學(xué)生住宿相關(guān)的業(yè)務(wù)功能,在其他業(yè)務(wù)系統(tǒng)或科室信息化建設(shè)中也起到了不可替代的作用從迎新系統(tǒng)取得新生數(shù)據(jù),宿管系統(tǒng)將新生宿舍分配結(jié)果發(fā)給迎新系統(tǒng),讓學(xué)生未到校前在移動(dòng)端或PC端即可查詢自己的住宿位置;宿管系統(tǒng)將宿舍分配結(jié)果和學(xué)生日常表現(xiàn)放到公共數(shù)據(jù)交換平臺(tái)供學(xué)工系統(tǒng)使用,用于學(xué)生日常管理;學(xué)工處、研工部將學(xué)生基本信息及變更信息發(fā)送至公共數(shù)據(jù)交換平臺(tái)供宿舍管理信息系統(tǒng)使用,實(shí)現(xiàn)信息互通;宿舍管理系統(tǒng)比對財(cái)務(wù)系統(tǒng)的學(xué)生住宿費(fèi)繳納情況,為管理部門辦理學(xué)生入住調(diào)換退宿提供依據(jù);宿舍管理系統(tǒng)通過集成門禁系統(tǒng)和一卡通系統(tǒng),學(xué)生入住或退宿后系統(tǒng)學(xué)

      生門卡可自動(dòng)啟用或關(guān)閉對用樓棟的門禁。門禁出入記錄統(tǒng)計(jì)便于學(xué)工處或后勤管理部門實(shí)時(shí)掌握學(xué)生動(dòng)向,提前預(yù)警。宿舍管理系統(tǒng)可與學(xué)校微信APP接口向?qū)W生推送相關(guān)信息,比如衛(wèi)生檢查通知、個(gè)人宿舍繳費(fèi)情況等等

      下載學(xué)生公寓生活服務(wù)系統(tǒng)軟件工程研究論文[合集五篇]word格式文檔
      下載學(xué)生公寓生活服務(wù)系統(tǒng)軟件工程研究論文[合集五篇].doc
      將本文檔下載到自己電腦,方便修改和收藏,請勿使用迅雷等下載。
      點(diǎn)此處下載文檔

      文檔為doc格式


      聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn)自行上傳,本網(wǎng)站不擁有所有權(quán),未作人工編輯處理,也不承擔(dān)相關(guān)法律責(zé)任。如果您發(fā)現(xiàn)有涉嫌版權(quán)的內(nèi)容,歡迎發(fā)送郵件至:645879355@qq.com 進(jìn)行舉報(bào),并提供相關(guān)證據(jù),工作人員會(huì)在5個(gè)工作日內(nèi)聯(lián)系你,一經(jīng)查實(shí),本站將立刻刪除涉嫌侵權(quán)內(nèi)容。

      相關(guān)范文推薦

        軟件工程論文 ——心得體會(huì)

        軟件工程課程 ——心得體會(huì) 院系:經(jīng)管學(xué)院 姓名:趙歆 學(xué)號:100510128 軟件工程課程設(shè)計(jì)——心得體會(huì) 目錄 摘要 ................................................... 2 關(guān)......

        軟件工程試驗(yàn)論文

        班級:09級計(jì)算機(jī)本科班姓名:白路明學(xué)號:091220141046 軟件工程開發(fā)工具case的學(xué)習(xí)心得 摘要:文章主要前線介紹了什么是計(jì)算機(jī)輔助軟件工程CASE以及它的分類方式和主流的幾種CASE......

        軟件工程相關(guān)論文

        四川大學(xué)畢業(yè)論文(設(shè)計(jì))題目學(xué)院學(xué)院專業(yè)學(xué)生姓名學(xué)號年級級指導(dǎo)教師畢業(yè)教務(wù)處制表 畢業(yè)軟件工程相關(guān)論文 一、論文說明 本團(tuán)隊(duì)長期從事論文寫作與論文發(fā)表服務(wù),擅長案例分析......

        軟件工程實(shí)習(xí)論文

        四川大學(xué)畢業(yè)論文(設(shè)計(jì))題目學(xué)院學(xué)院專業(yè)學(xué)生姓名學(xué)號年級級指導(dǎo)教師畢業(yè)教務(wù)處制表 畢業(yè)軟件工程實(shí)習(xí)論文 一、論文說明 本團(tuán)隊(duì)長期從事論文寫作與論文發(fā)表服務(wù),擅長案例分析......

        軟件工程概論論文:人事管理系統(tǒng)概要設(shè)計(jì)說明書

        人 事 管 理 系 統(tǒng) 概 要 設(shè) 計(jì) 說 明 書 人事管理系統(tǒng)概要設(shè)計(jì)說明書 1.引言 1.1 編寫目的 人事管理系統(tǒng)的需求分析階段將系統(tǒng)用戶對該系統(tǒng)的需求做了詳細(xì)的說明。 對于人......

        軟件工程 學(xué)生宿舍管理系統(tǒng)

        一、 需求分析 軟件需求是軟件開發(fā)的基礎(chǔ),每個(gè)軟件開發(fā)過程都是以獲取需求為目的的活動(dòng):理解客戶的基本需求和目標(biāo)。準(zhǔn)確獲取用戶的需求是項(xiàng)目開發(fā)成功的開端。然而,軟件工程所......

        軟件工程 通訊錄查詢系統(tǒng)

        《數(shù)據(jù)結(jié)構(gòu)》課程設(shè)計(jì)報(bào)告 計(jì)算機(jī)學(xué)院 軟件工程專業(yè) 題目: 通信錄查詢系統(tǒng)(查找應(yīng)用) 班級:軟件102班 第11組 組長:姓名:李偉學(xué)號:1006550222 組員: 姓名:李呢 學(xué)號:1006550219 姓......

        學(xué)生公寓管理系統(tǒng)立項(xiàng)報(bào)告

        學(xué)生公寓管理系統(tǒng)系統(tǒng)開發(fā)立項(xiàng)報(bào)告一.現(xiàn)行系統(tǒng)概述鄭州航院信息統(tǒng)計(jì)職業(yè)學(xué)院學(xué)生公寓管理對學(xué)生的信息登記、物品登記、來訪者信息登記等相關(guān)操作都采用手工操作,這樣的操作......