學(xué)生宿舍管理系統(tǒng)課程設(shè)計(jì)_第1頁(yè)
已閱讀1頁(yè),還剩16頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、<p><b>  課程設(shè)計(jì)任務(wù)書</b></p><p>  題目: 學(xué)生宿舍管理系統(tǒng) </p><p>  學(xué)號(hào): </p><p>  姓名: </p><p>  專業(yè): 計(jì)算機(jī)科學(xué)與技術(shù)

2、 </p><p>  課程: delphi程序設(shè)計(jì) </p><p>  指導(dǎo)教師: 職稱: </p><p>  完成時(shí)間:2010年12月1日——2010年12月27日</p><p>  課程設(shè)計(jì)任務(wù)書及成績(jī)?cè)u(píng)定</p><p><b&g

3、t;  一、摘要</b></p><p>  宿舍管理系統(tǒng)是目前各所高校后勤管理之中的重要部分,如何能科學(xué)有效的開展學(xué)生公寓管理工作,是當(dāng)前高校領(lǐng)導(dǎo)人和后勤管理人員關(guān)心的問(wèn)題?因此, 公寓管理工作的信息化和科學(xué)化有著十分重要的實(shí)踐意義,此次開發(fā)的大公寓管理信息系統(tǒng), 旨在實(shí)現(xiàn)對(duì)現(xiàn)有的宿舍管理系統(tǒng)中遇到的宿舍信息情況和大量數(shù)據(jù)進(jìn)行數(shù)據(jù)存儲(chǔ)的基礎(chǔ)上,設(shè)計(jì)并完成對(duì)其宿舍信息的分類?查詢,添加,刪除,修改和打

4、印報(bào)表在深入研究的過(guò)程中,盡可能實(shí)現(xiàn)方便友好的操作界面和數(shù)據(jù)報(bào)表?</p><p>  該系統(tǒng)運(yùn)用 DELPHI7技術(shù), 以 Microsoft SQL Server 2005 為后臺(tái)數(shù)據(jù)庫(kù), 開發(fā)了一套為高校服務(wù)的公寓管理信息系統(tǒng)。利用該系統(tǒng)大大的加強(qiáng)管理部門的相互溝通能力,提高工作效率,減少不必要的重復(fù)勞動(dòng),加速信息的記錄、查閱以及傳播速度,實(shí)現(xiàn)人性化管理和溝通服務(wù)管理的一種實(shí)用型管理軟件。</p>

5、;<p>  管理信息系統(tǒng)是一個(gè)由人和計(jì)算機(jī)軟件硬件資源組成的人機(jī)系統(tǒng),能進(jìn)行管理信息的收集、傳遞、加工、保存、維護(hù)和使用,提供信息支持單位的運(yùn)行、管理和決策的功能。在強(qiáng)調(diào)管理、調(diào)信息的現(xiàn)代社會(huì)中,管理信息系統(tǒng)變得越來(lái)越普及,可以說(shuō)它是一門新的學(xué)科,跨越了若干個(gè)領(lǐng)域,如管理科學(xué)、系統(tǒng)科學(xué)、統(tǒng)計(jì)學(xué)以及計(jì)算機(jī)科學(xué)等,并在這些學(xué)科的基礎(chǔ)上,形成信息收集和加工的方法,從而形成一個(gè)縱橫交織的系統(tǒng)。</p><p&

6、gt;  在傳統(tǒng)的業(yè)務(wù)流程中,數(shù)據(jù)信息附著于業(yè)務(wù)流程之上,這是一種效率很低的數(shù)據(jù)處理方法;實(shí)現(xiàn)了辦公自動(dòng)化之后,雖然很多業(yè)務(wù)數(shù)據(jù)電子化了,但是不借助數(shù)據(jù)庫(kù)的幫助,數(shù)據(jù)信息仍然附著于業(yè)務(wù)流程之上,雖然可以以文件等形式將電子化的數(shù)據(jù)存儲(chǔ),但是數(shù)據(jù)的再利用效率很低,而且也無(wú)法從這些無(wú)序的數(shù)據(jù)中提取進(jìn)一步的信息;當(dāng)建立了數(shù)據(jù)庫(kù)系統(tǒng)之后,數(shù)據(jù)終于脫離業(yè)務(wù)流程而獨(dú)立存在。人們不但可以通過(guò)管理信息系統(tǒng)將其儲(chǔ)存于數(shù)據(jù)庫(kù)之中,而且還可以對(duì)其方便地再利用。

7、</p><p>  隨著社會(huì)對(duì)人才需求的增加,以及高校的全面擴(kuò)招,在校學(xué)生人數(shù)劇增,這給高校的后勤管理,特別是對(duì)學(xué)生公寓的管理帶來(lái)很大的壓力。學(xué)生公寓的管理是一項(xiàng)非常煩瑣的工作,但又是高校發(fā)展畢不可少的一部分。在學(xué)生公寓管理工作中,很大一部分是重復(fù)性的勞動(dòng),完全可以通過(guò)計(jì)算機(jī)信息技術(shù)來(lái)取代人工進(jìn)行這些工作,從而是管理人員將更多的精力集中在如何提高服務(wù)質(zhì)量方面。學(xué)生公寓管理系統(tǒng)就是為了滿足這個(gè)需求而開發(fā)的一個(gè)管理

8、信息系統(tǒng)。</p><p><b>  二、目錄</b></p><p>  1. 摘要 ………………………………………… 4</p><p>  2. 目錄 ………………………………………… 5</p><p>  3. 正文 ………………………………………… 6</p><p&g

9、t;  3.1 系統(tǒng)功能設(shè)計(jì) ……………………… 6</p><p>  3.2 數(shù)據(jù)庫(kù)設(shè)計(jì) ………………… 7</p><p>  3.3 系統(tǒng)主界面設(shè)計(jì) ………………… 7</p><p>  3.4 系統(tǒng)功能模塊設(shè)計(jì) ………………… 7</p><p>  3.5 其它設(shè)計(jì)功能

10、 ………………… 15</p><p>  4. 實(shí)驗(yàn)中出現(xiàn)的問(wèn)題及解決方法 …… 16</p><p>  5. 結(jié)束語(yǔ) ……………………………… 16</p><p><b>  三、正文</b></p><p><b>  1.系統(tǒng)功能設(shè)計(jì)</b&g

11、t;</p><p>  右圖為查詢管理子模塊:</p><p>  在本系統(tǒng)中,將實(shí)現(xiàn)以下功能:</p><p>  學(xué)生住宿信息管理. </p><p><b>  刪除記錄管理.</b></p><p>

12、<b>  學(xué)生綜合信息查詢.</b></p><p><b>  2. 數(shù)據(jù)庫(kù)設(shè)計(jì)</b></p><p>  在sql server 2005中建立了一個(gè)學(xué)生宿舍管理數(shù)據(jù)庫(kù),數(shù)據(jù)表如下所示:</p><p>  用戶信息表(賬戶,密碼,身份)</p><p>  住宿學(xué)生(學(xué)號(hào),姓名,性別,專業(yè)

13、,宿舍號(hào),入住時(shí)間)</p><p>  宿舍(宿舍號(hào),宿舍電話)</p><p>  夜歸(學(xué)號(hào),宿舍號(hào),晚歸時(shí)間,晚歸原因)</p><p>  離校(學(xué)號(hào),宿舍號(hào),離校時(shí)間,返回時(shí)間)</p><p>  來(lái)訪者(姓名,身份證,來(lái)訪時(shí)間,離開時(shí)間)</p><p><b>  系統(tǒng)主界面設(shè)計(jì) </

14、b></p><p>  包括菜單欄(mainmenu)、狀態(tài)欄(toolbar)、工具欄(statusbar)三大部分,其中還添加了imagelist,timer等組件,進(jìn)行輔助的設(shè)計(jì)。</p><p>  4.系統(tǒng)功能模塊設(shè)計(jì)</p><p><b>  1)用戶登錄模塊</b></p><p>  用戶登錄窗

15、體如圖所示:</p><p>  各組件的添加省略,下面只給出主要的代碼:</p><p>  “管理員登錄”按鈕代碼:</p><p>  procedure TForm2.Button3Click(Sender: TObject);</p><p><b>  begin</b></p><p&g

16、t;  adoquery1.Close;</p><p>  adoquery1.SQL.Clear;</p><p>  adoquery1.SQL.Add('select * from user_info where user_na='''+uname.Text+''' and user_pwd='''+p

17、word.Text+''' and user_des='''+combobox2.Text+'''');</p><p>  adoquery1.Open;</p><p>  if (uname.Text='') or (pword.Text='') or (combobox2

18、.Text='') then</p><p>  showmessage('輸入的用戶名或密碼不能為空')</p><p>  else if adoquery1.Recordset.RecordCount=0 then</p><p>  showmessage('用戶名或密碼輸入錯(cuò)誤')</p>&l

19、t;p><b>  else</b></p><p><b>  begin</b></p><p>  form2.FreeOnRelease;</p><p>  form2.Visible:=false;</p><p>  form1.MainMenu1.Items[4].Visibl

20、e:=false;</p><p>  form1.ShowModal;</p><p><b>  end;</b></p><p><b>  end;</b></p><p>  “游客登錄”按鈕代碼:</p><p>  procedure TForm2.ComboB

21、ox2Click(Sender: TObject);</p><p><b>  begin</b></p><p>  if combobox2.Text='游客' then</p><p><b>  begin</b></p><p>  button3.Enabled:=fa

22、lse;</p><p>  button1.Enabled:=true</p><p><b>  end</b></p><p><b>  else</b></p><p><b>  begin</b></p><p>  button1.Ena

23、bled:=false;</p><p>  button3.Enabled:=true;</p><p><b>  end;</b></p><p><b>  end;</b></p><p>  2)添加用戶功能模塊</p><p><b>  用戶管理窗口

24、</b></p><p>  “添加用戶”按鈕代碼:</p><p>  procedure TForm4.Button2Click(Sender: TObject);</p><p><b>  begin</b></p><p>  With ADOQuery1 do</p><

25、;p><b>  begin</b></p><p><b>  Close;</b></p><p>  SQL.Clear;</p><p>  SQL.Add('Insert Into user_info(user_na,user_pwd,user_des)');</p><

26、p>  SQL.Add('Values('''+edit1.Text+''','''+edit2.Text+''','''+combobox1.Text+''') ');</p><p><b>  ExecSQL;</b>&l

27、t;/p><p>  showmessage('添加成功');</p><p><b>  end;</b></p><p><b>  end;</b></p><p><b>  3)管理功能模塊</b></p><p>  下面宿舍信息

28、管理子功能為例,其他管理只給出窗體設(shè)計(jì)功能代碼類似。</p><p><b>  宿舍管理</b></p><p>  “插入”按鈕代碼: </p><p>  procedure TForm9.Button2Click(Sender: TObject);</p><p><b>  begin</b&g

29、t;</p><p>  if (edit1.Text='') or (edit2.Text='') then</p><p>  showmessage('不能為空')</p><p><b>  else</b></p><p><b>  begin<

30、/b></p><p>  adotable1.append;</p><p>  ADOTable1.FieldByName('dorm_no').asstring:=vartostr(edit1.Text);</p><p>  ADOTable1.FieldByName('dorm_tel').asstring:=vart

31、ostr(edit2.Text);</p><p>  adotable1.post;</p><p><b>  end</b></p><p><b>  end;</b></p><p>  “顯示所有”按鈕代碼:</p><p>  procedure TForm9.

32、Button6Click(Sender: TObject);</p><p><b>  begin</b></p><p>  adotable1.Filtered:=false;</p><p>  MessageBox(handle,'查詢完畢!','提示',MB_OK or MB_ICONINFORMAT

33、ION);</p><p>  edit1.Text:='';</p><p>  edit2.Text:='';</p><p>  edit3.Text:='';</p><p><b>  end;</b></p><p><b> 

34、 “查找”按鈕代碼:</b></p><p>  procedure TForm9.Button5Click(Sender: TObject);</p><p><b>  begin</b></p><p>  if adotable1.Active then</p><p><b>  begi

35、n</b></p><p>  if not ADOTable1.Locate('dorm_no',Edit3.Text,[loCaseInsensitive, loPartialKey]) then</p><p>  showmessage('對(duì)不起,沒(méi)有您要查找的記錄!')</p><p><b>  el

36、se</b></p><p><b>  begin</b></p><p>  ADOTable1.Filter:='dorm_no='+QuotedStr(Edit3.Text);</p><p>  ADOTable1.Filtered := True;</p><p><b>

37、;  end</b></p><p><b>  end</b></p><p>  else showmessage('系統(tǒng)錯(cuò)誤');</p><p><b>  end;</b></p><p><b>  “刪除”按鈕代碼:</b></

38、p><p>  procedure TForm9.Button3Click(Sender: TObject);</p><p><b>  begin</b></p><p>  if messagedlg('確實(shí)要?jiǎng)h除嗎?',mtinformation,[mbyes,mbno],0)=mryes then</p>&

39、lt;p>  adotable1.Delete</p><p><b>  else</b></p><p>  edit3.Text:='';</p><p><b>  end;</b></p><p><b>  “返回”按鈕代碼:</b></

40、p><p>  procedure TForm9.Button1Click(Sender: TObject);</p><p><b>  begin</b></p><p>  edit1.Text:='';</p><p>  edit2.Text:='';</p><

41、p>  edit3.Text:='';</p><p>  FreeOnRelease;</p><p>  form9.Visible:=false;</p><p>  form1.Show;</p><p><b>  end;</b></p><p>  來(lái)訪者管理子

42、模塊功能與上面的累類似,在此省略介紹。</p><p>  下面是分別是離校學(xué)生管理與夜歸學(xué)生管理兩個(gè)子模塊,都采用了DBnavigator組件,設(shè)置較簡(jiǎn)單,省了編寫代碼,具體設(shè)置在此不做介紹。</p><p>  下面是學(xué)生信息管理子模塊,與宿舍管理模塊功能類似。</p><p><b>  4)查詢功能模塊 </b></p>

43、<p>  下面是查詢功能模塊,首先是學(xué)生信息查詢,主要同過(guò)label組件與edit組件進(jìn)行分類查找,來(lái)訪信息查詢與宿舍信息查詢由于數(shù)據(jù)單一,所以只進(jìn)行單方面的查找,離校與夜歸學(xué)生查詢采用了combobox組件與edit組件配合,實(shí)現(xiàn)分類查尋,具體代碼設(shè)計(jì)如下:</p><p>  第一個(gè)“查找”按鈕代碼:</p><p>  procedure TForm10.Button2C

44、lick(Sender: TObject);</p><p><b>  begin</b></p><p>  if adotable1.Active then</p><p><b>  begin</b></p><p>  if not ADOTable1.Locate('s_no&

45、#39;,Edit1.Text,[loCaseInsensitive, loPartialKey]) then</p><p>  showmessage('對(duì)不起,沒(méi)有您要查找的記錄!')</p><p><b>  else</b></p><p><b>  begin</b></p>

46、<p>  ADOTable1.Filter:='s_no='+QuotedStr(Edit1.Text);</p><p>  ADOTable1.Filtered := True;</p><p><b>  end</b></p><p><b>  end</b></p>&

47、lt;p>  else showmessage('系統(tǒng)錯(cuò)誤');</p><p><b>  end;</b></p><p>  “顯示所有”按鈕代碼:</p><p>  procedure TForm10.Button5Click(Sender: TObject);</p><p><

48、b>  begin</b></p><p>  adotable1.Filtered:=false;</p><p>  MessageBox(handle,'查詢完畢!','提示',MB_OK or MB_ICONINFORMATION);</p><p>  edit1.Text:='';<

49、/p><p>  edit2.Text:='';</p><p>  edit3.Text:='';</p><p><b>  end;</b></p><p>  以上兩個(gè)模塊的功能與第一個(gè)類似,在此省略介紹。</p><p><b>  “查找”按鈕代碼

50、:</b></p><p>  procedure TForm15.Button1Click(Sender: TObject);</p><p><b>  begin</b></p><p>  if adotable1.Active=true then</p><p><b>  begin&l

51、t;/b></p><p>  if combobox1.Text='學(xué)號(hào)' then</p><p>  if adotable1.Locate('s_no',edit1.Text,[loCaseInsensitive, loPartialKey]) then</p><p><b>  begin</b>

52、;</p><p>  ADOTable1.Filter:='s_no='+QuotedStr(Edit1.Text);</p><p>  ADOTable1.Filtered := True</p><p><b>  end</b></p><p><b>  else</b>

53、</p><p>  showmessage('對(duì)不起,沒(méi)有您要查找的記錄!');</p><p>  if adotable1.Active=true then</p><p>  if combobox1.Text='姓名' then</p><p>  if adotable1.Locate('s

54、_name',edit1.Text,[loCaseInsensitive, loPartialKey]) then</p><p><b>  begin</b></p><p>  ADOTable1.Filter:='s_name='+QuotedStr(Edit1.Text);</p><p>  ADOTable

55、1.Filtered := True</p><p><b>  end</b></p><p><b>  else</b></p><p>  showmessage('對(duì)不起,沒(méi)有您要查找的記錄!');</p><p>  if adotable1.Active=true th

56、en</p><p>  if combobox1.Text='宿舍號(hào)' then</p><p>  if adotable1.Locate('s_dorm_no',edit1.Text,[loCaseInsensitive, loPartialKey]) then</p><p><b>  begin</b>

57、;</p><p>  ADOTable1.Filter:='s_dorm_no='+QuotedStr(Edit1.Text);</p><p>  ADOTable1.Filtered := True;</p><p><b>  end</b></p><p><b>  else<

58、/b></p><p>  showmessage('對(duì)不起,沒(méi)有您要查找的記錄!');</p><p><b>  end;</b></p><p><b>  end;</b></p><p>  此模塊設(shè)計(jì)與上面的類似,在此省略介紹。</p><p&g

59、t;<b>  5) 報(bào)表的設(shè)計(jì)</b></p><p>  主要采用Ehlib組件包進(jìn)行開發(fā),只要設(shè)置一些組件的屬性即可,簡(jiǎn)單易懂,在此省略具體設(shè)計(jì)步驟,設(shè)計(jì)圖如上面所示。</p><p><b>  6)其它設(shè)計(jì)功能</b></p><p>  采用互斥對(duì)象方法避免應(yīng)用程序重復(fù)啟動(dòng)</p><p&g

60、t;<b>  var</b></p><p>  mutex:THandle;</p><p><b>  begin</b></p><p>  mutex:=createmutex(NIL,TRUE,'form1');</p><p>  if getlasterror<

61、>ERROR_ALREADY_EXISTS then</p><p><b>  begin</b></p><p>  Application.Initialize;</p><p>  Form3:=TForm3.Create(application);</p><p>  Form3.Show;</p&

62、gt;<p>  form3.Update;</p><p>  sleep(100);</p><p>  Application.CreateForm(TForm2, Form2);</p><p>  Application.CreateForm(TForm1, Form1);</p><p>  Application.

63、CreateForm(TForm16, Form16);</p><p>  Application.CreateForm(TForm17, Form17);</p><p>  form1.StatusBar1.Panels[1].Text:=' 小賀';</p><p>  Application.CreateForm(TForm4, F

64、orm4);</p><p>  Application.CreateForm(TForm6, Form6);</p><p>  Application.CreateForm(TForm8, Form8);</p><p>  Application.CreateForm(TForm9, Form9);</p><p>  Applicat

65、ion.CreateForm(TForm10, Form10);</p><p>  Application.CreateForm(TForm11, Form11);</p><p>  Application.CreateForm(TForm12, Form12);</p><p>  Application.CreateForm(TForm13, Form13)

66、;</p><p>  Application.CreateForm(TForm14, Form14);</p><p>  Application.CreateForm(TForm15, Form15);</p><p>  form3.Free;</p><p>  Application.Run;</p><p>

67、;<b>  end;</b></p><p><b>  else</b></p><p>  showmessage('應(yīng)用程序已啟動(dòng)!');</p><p>  releasemutex(mutex);</p><p>  實(shí)驗(yàn)中出現(xiàn)的問(wèn)題及解決方法 </p>&

68、lt;p>  技術(shù)水平不是很扎實(shí)。有很多的新的控件、新的知識(shí)要學(xué)習(xí)、所以做起來(lái)沒(méi)想象中的容易,不過(guò)最終可以克服。</p><p>  在調(diào)試的過(guò)程中遇到了許多錯(cuò)誤,話費(fèi)了大量時(shí)間進(jìn)行修改、整理,浪費(fèi)了整體的開發(fā)時(shí)間。幸好,最終問(wèn)題都得到了解決,并按預(yù)期時(shí)間完成了設(shè)計(jì)工作。</p><p><b>  結(jié)束語(yǔ)</b></p><p>  通

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(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)論