數(shù)據(jù)庫(kù)課程設(shè)計(jì)--醫(yī)院藥品進(jìn)銷存系統(tǒng)_第1頁(yè)
已閱讀1頁(yè),還剩24頁(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>  附件1:</b></p><p><b>  《數(shù)據(jù)庫(kù)系統(tǒng)原理》</b></p><p><b>  課 程 設(shè) 計(jì)</b></p><p>  題 目 醫(yī)院藥品進(jìn)銷存系統(tǒng) </p><p>  班 級(jí)

2、 </p><p>  學(xué) 號(hào) </p><p>  姓 名 </p><p>  指導(dǎo)老師 </p><p>  2012年12月15日</p><p><b>  目 錄</b

3、></p><p><b>  一、概述7</b></p><p>  1.1 課程設(shè)計(jì)的目的7</p><p>  1.2 課程設(shè)計(jì)的內(nèi)容7</p><p>  1.3 課程設(shè)計(jì)的要求7</p><p><b>  二、需求分析7</b></p>

4、<p>  2.1 系統(tǒng)需求7</p><p>  2.2 數(shù)據(jù)字典7</p><p>  三、系統(tǒng)總體設(shè)計(jì)7</p><p>  3.1系統(tǒng)總體設(shè)計(jì)思路7</p><p>  3.2 概念模型設(shè)計(jì)7</p><p>  3.2.1 局部E-R圖7</p><p>  

5、3.2.2 全局E-R圖7</p><p>  3.3 邏輯結(jié)構(gòu)設(shè)計(jì)7</p><p>  3.4 數(shù)據(jù)庫(kù)建立實(shí)施7</p><p>  3.4.1 建立數(shù)據(jù)庫(kù)7</p><p>  3.4.2 建立關(guān)系表8</p><p><b>  四、系統(tǒng)實(shí)現(xiàn)8</b></p>&

6、lt;p><b>  五、系統(tǒng)評(píng)價(jià)8</b></p><p>  六、課程設(shè)計(jì)心得、總結(jié)8</p><p><b>  參考文獻(xiàn):8</b></p><p><b>  一、概述</b></p><p>  1.1 課程設(shè)計(jì)的目的</p><p&

7、gt;  學(xué)生根據(jù)所學(xué)的數(shù)據(jù)庫(kù)原理與程序設(shè)計(jì)的知識(shí),能夠針對(duì)一個(gè)小型的數(shù)據(jù)庫(kù)管理系統(tǒng),進(jìn)行系統(tǒng)的需求分析,系統(tǒng)設(shè)計(jì),數(shù)據(jù)庫(kù)設(shè)計(jì),編碼,測(cè)試等,完成題目要求的功能,從而達(dá)到掌握開發(fā)一個(gè)小型數(shù)據(jù)庫(kù)的目的。</p><p>  1.2 課程設(shè)計(jì)的內(nèi)容</p><p><b>  (1)主要的數(shù)據(jù)表</b></p><p>  藥品分類代碼表,藥品庫(kù)存

8、表,供貨商信息表,采購(gòu)信息表等等。</p><p><b>  (2)主要功能模塊</b></p><p><b>  新藥品的入庫(kù)。</b></p><p>  過(guò)期藥品的出庫(kù)登記、處理記錄。</p><p><b>  藥品庫(kù)存檢索。</b></p><

9、p><b>  供貨商信息檢索。</b></p><p><b>  藥品采購(gòu)記錄管理。</b></p><p>  藥品用藥說(shuō)明信息管理。</p><p>  輸出相應(yīng)的數(shù)據(jù)報(bào)表。</p><p>  具有數(shù)據(jù)備份和數(shù)據(jù)恢復(fù)功能。</p><p>  1.3 課程設(shè)計(jì)

10、的要求</p><p>  具體項(xiàng)目?jī)?nèi)容去醫(yī)院進(jìn)行調(diào)研,藥品編碼也應(yīng)參考國(guó)家統(tǒng)一編碼方法。</p><p><b>  二、需求分析</b></p><p><b>  2.1 系統(tǒng)需求</b></p><p>  企業(yè)經(jīng)營(yíng)如逆水行舟不進(jìn)則退。每一個(gè)努力發(fā)展的企業(yè)都明白,先進(jìn)管理的重要作用,引進(jìn)先進(jìn)

11、管理系統(tǒng)使企業(yè)經(jīng)營(yíng)變得規(guī)范、合理。進(jìn)銷存管理系統(tǒng)無(wú)論是在功能設(shè)計(jì)還是業(yè)務(wù)流程上都盡可能做到滿足經(jīng)營(yíng)管理運(yùn)作流程的需求,并且操作方便、功能強(qiáng)大,即使操作者對(duì)計(jì)算機(jī)知識(shí)一竅不通也能一用就會(huì)。它強(qiáng)化庫(kù)存管理,規(guī)范業(yè)務(wù)流程,提高資金管理的透明度,加快商品資金周轉(zhuǎn),是企業(yè)經(jīng)營(yíng)管理中數(shù)據(jù)分析中必不可少的管理工具。</p><p>  根據(jù)市場(chǎng)的需求,要求系統(tǒng)具有以下功能:</p><p><b&

12、gt;  1)新藥品的入庫(kù)。</b></p><p>  2)過(guò)期藥品的出庫(kù)登記、處理記錄。</p><p><b>  3)藥品庫(kù)存檢索。</b></p><p>  4)供貨商信息檢索。</p><p>  5)藥品采購(gòu)記錄管理。</p><p>  6)藥品用藥說(shuō)明信息管理。&l

13、t;/p><p>  7)輸出相應(yīng)的數(shù)據(jù)報(bào)表。</p><p>  8)具有數(shù)據(jù)備份和數(shù)據(jù)恢復(fù)功能。</p><p>  系統(tǒng)主要為登陸,登陸后可以瀏覽,查詢,添加,刪除藥品信息外還可以對(duì)銷售記錄進(jìn)行瀏覽,刪除,添加,修改。本系統(tǒng)是根據(jù)中小企業(yè)的實(shí)際需求而開發(fā)的,完全能夠?qū)崿F(xiàn)藥品入庫(kù)、銷售管理,通過(guò)本系統(tǒng)可以達(dá)到以下目標(biāo):</p><p>  系

14、統(tǒng)運(yùn)行穩(wěn)定,安全可靠。</p><p>  界面設(shè)計(jì)美觀,人機(jī)交互界面友好。</p><p>  信息查詢靈活、方便、快捷、準(zhǔn)確,數(shù)據(jù)存儲(chǔ)安全可靠。</p><p>  強(qiáng)大的報(bào)表預(yù)覽、打印功能。</p><p><b>  信息安全保密。</b></p><p><b>  開發(fā)及運(yùn)行

15、環(huán)境</b></p><p><b>  硬件要求</b></p><p>  CPU:300MHz以上的處理器</p><p>  內(nèi)存:128MB,推薦256MB</p><p>  硬盤:150MB以上剩余空間</p><p>  顯示像素:最低800*600,最佳效果1024*

16、768</p><p><b>  軟件要求</b></p><p>  操作系統(tǒng):Windows2000/NT/XP/Vista。</p><p>  數(shù)據(jù)庫(kù):SQL Server2000。</p><p><b>  2.2 數(shù)據(jù)字典</b></p><p><b&

17、gt;  基本表 </b></p><p>  表2.1 藥品分類代碼表</p><p>  表2.2 供貨商信息表: </p><p>  表2.3 藥品庫(kù)存表:</p><p>  表2.4 采購(gòu)信息表:</p><p>  表2.5 過(guò)期藥品處理表</p><p>  表2.

18、6 用戶密碼表</p><p><b>  三、系統(tǒng)總體設(shè)計(jì)</b></p><p>  3.1系統(tǒng)總體設(shè)計(jì)思路</p><p>  根據(jù)需求分析,設(shè)計(jì)系統(tǒng)框架。進(jìn)銷存系統(tǒng)由7部分組成。設(shè)計(jì)各部分具體功能如下:</p><p>  1)藥品信息模塊。包括藥品代碼,名稱,分類等。</p><p>

19、  2)供貨商信息模塊。包括供貨商代碼,供貨商名,地址,聯(lián)系電話。</p><p>  3)庫(kù)存模塊。包括藥品名稱,藥品代碼,庫(kù)存量,處理日期。</p><p>  4)采購(gòu)信息模塊。包括藥品代碼,采購(gòu)量,采購(gòu)日期,采購(gòu)總價(jià),主治癥狀。</p><p>  5)過(guò)期藥品處理模塊。包括藥品代碼,處理量,過(guò)期時(shí)間。</p><p>  6)用戶密

20、碼模塊。包括用戶名,密碼。</p><p>  3.2 概念模型設(shè)計(jì)</p><p>  3.2.1 局部E-R圖</p><p>  供應(yīng)商實(shí)體圖的屬性包括供應(yīng)商編號(hào),供應(yīng)商名稱,供應(yīng)商品數(shù)量,供應(yīng)商地址,聯(lián)系方式。如圖3—1所示</p><p>  圖3—1供應(yīng)商實(shí)體圖</p><p>  管理員實(shí)體圖的屬性包括管

21、理員編號(hào),管理員姓名,性別,地址,聯(lián)系方式,</p><p>  部門。如圖3-2所示</p><p>  圖3-2管理員實(shí)體圖</p><p>  客戶實(shí)體圖的屬性包括編號(hào),姓名,性別,年齡,聯(lián)系方式,地址。如圖3-3所示</p><p>  3.2.2 全局E-R圖</p><p>  3.3 邏輯結(jié)構(gòu)設(shè)計(jì)<

22、/p><p>  3.4 數(shù)據(jù)庫(kù)建立實(shí)施</p><p>  3.4.1 建立數(shù)據(jù)庫(kù)</p><p>  3.4.2 建立關(guān)系表</p><p><b>  四、系統(tǒng)實(shí)現(xiàn)</b></p><p><b>  4.1 登陸框設(shè)計(jì)</b></p><p>&l

23、t;b>  圖3.1登陸界面</b></p><p><b>  登錄按鈕的代碼:</b></p><p>  UpdateData(true);</p><p>  mimaset set;</p><p>  set.m_strFilter.Format("id='%s'&

24、quot;,m_id);</p><p>  set.m_mima.TrimRight();</p><p>  set.Open();</p><p>  if(m_id.IsEmpty())</p><p><b>  {</b></p><p>  MessageBox("

25、 用戶名不能為空!"," 提示",MB_ICONSTOP);</p><p><b>  return;</b></p><p><b>  }</b></p><p>  if(m_mima.IsEmpty())</p><p><b>  {<

26、;/b></p><p>  MessageBox(" 密碼不能為空!"," 提示",MB_ICONSTOP);</p><p><b>  return;</b></p><p><b>  }</b></p><p>  if(!s

27、et.IsEOF())</p><p><b>  {</b></p><p>  set.m_id.TrimRight();</p><p>  set.m_mima.TrimRight();</p><p>  if(set.m_mima==m_mima)</p><p><b> 

28、 {</b></p><p><b>  menu Dlg;</b></p><p>  Dlg.DoModal();</p><p><b>  }</b></p><p><b>  else</b></p><p>  MessageB

29、ox(" 密碼錯(cuò)誤!"," 提示",MB_ICONSTOP);</p><p><b>  }</b></p><p><b>  else</b></p><p>  MessageBox(" 用戶名不正確!","

30、提示",MB_ICONSTOP);</p><p>  4.2 主菜單模塊設(shè)計(jì)</p><p>  圖3.2功能選擇窗口</p><p>  子菜單選擇按鈕代碼:</p><p>  shuru Dlg;</p><p>  Dlg.DoModal();</p><p><b&g

31、t;  其余按鈕代碼相同</b></p><p>  4.3新藥入庫(kù)模塊設(shè)計(jì)</p><p>  圖3.3供貨商信息查詢窗口</p><p>  新藥注冊(cè)按鈕的代碼:</p><p>  UpdateData(TRUE);</p><p>  if(m_id.IsEmpty())</p>&l

32、t;p>  MessageBox(" 藥品代碼不能為空!"," 提示",MB_ICONSTOP);</p><p>  shuruset set;</p><p>  set.m_strFilter.Format("id='%s'",m_id);</p><p>  s

33、et.Open();</p><p>  if(set.IsEOF())</p><p><b>  {</b></p><p>  set.AddNew();</p><p>  set.m_id=m_id;</p><p>  set.m_name=m_name;</p><

34、;p>  set.m_zongjia=m_zongjia;</p><p>  set.m_shuliang=m_shuliang;</p><p>  set.m_zhengzhuang=m_zhengzhuang;</p><p>  set.m_chulishijian=m_time;</p><p>  set.Update()

35、;</p><p>  m_list.InsertItem(0,set.m_id); </p><p>  m_list.SetItemText(0,1,set.m_name);</p><p>  m_list.SetItemText(0,2,set.m_zongjia);</p><p>  m_list.SetItemText(0,3

36、,set.m_shuliang);</p><p>  m_list.SetItemText(0,4,set.m_zhengzhuang);</p><p>  CString strTmp;</p><p>  strTmp.Format("%d-%d-%d",set.m_chulishijian.GetYear(),set.m_chulish

37、ijian.GetMonth(),set.m_chulishijian.GetDay());</p><p>  m_list.SetItemText(0,5,strTmp);</p><p><b>  }</b></p><p><b>  else</b></p><p>  MessageB

38、ox("此藥品已存在!"," 提示",MB_ICONSTOP);</p><p>  set.Close();</p><p><b>  }</b></p><p>  新藥錄入復(fù)選框的代碼:</p><p>  UpdateData(true);</p><

39、;p>  GetDlgItem(IDC_EDIT2)->EnableWindow(m_bEnabled);</p><p>  GetDlgItem(IDC_EDIT4)->EnableWindow(m_bEnabled);</p><p>  GetDlgItem(IDC_EDIT5)->EnableWindow(m_bEnabled);</p>&

40、lt;p><b>  新藥入庫(kù)按鈕代碼:</b></p><p>  UpdateData(TRUE);</p><p>  if(m_id.IsEmpty())</p><p>  MessageBox(" 藥品代碼不能為空!"," 提示",MB_ICONSTOP);</p&

41、gt;<p>  shuruset set;</p><p>  set.m_strFilter.Format("id='%s'",m_id);</p><p>  set.Open();</p><p>  if(!set.IsEOF())</p><p><b>  {</

42、b></p><p>  set.Edit();</p><p>  set.m_shuliang=m_shuliang;</p><p>  set.Update();</p><p>  m_list.InsertItem(0,set.m_id); </p><p>  m_list.SetItemText

43、(0,1,set.m_name);</p><p>  m_list.SetItemText(0,2,set.m_zongjia);</p><p>  m_list.SetItemText(0,3,set.m_shuliang);</p><p>  m_list.SetItemText(0,4,set.m_zhengzhuang);</p><

44、;p>  CString strTmp;</p><p>  strTmp.Format("%d-%d-%d",set.m_chulishijian.GetYear(),set.m_chulishijian.GetMonth(),set.m_chulishijian.GetDay());</p><p>  m_list.SetItemText(0,5,strTm

45、p);</p><p><b>  }</b></p><p><b>  else</b></p><p>  MessageBox("倉(cāng)庫(kù)內(nèi)沒(méi)有該藥品,請(qǐng)先進(jìn)行新藥注冊(cè)!"," 提示",MB_ICONSTOP);</p><p><b>  取

46、消按鈕的代碼:</b></p><p>  OnCancel();</p><p>  4.4過(guò)期藥品出庫(kù)模塊設(shè)計(jì)</p><p>  3.3過(guò)期藥品出庫(kù)頁(yè)面</p><p><b>  錄入按鈕的代碼:</b></p><p>  UpdateData(true);</p>

47、;<p>  m_list.DeleteAllItems();</p><p>  chukuset set;</p><p>  shuruset set1;</p><p>  int flag=1;</p><p>  if(m_id.IsEmpty()||m_name.IsEmpty()||m_riqi.IsEmpty(

48、)||m_shuliang.IsEmpty())</p><p><b>  flag=0;</b></p><p>  for(int i=0;i<m_id.GetLength();i++) </p><p><b>  { </b></p><p>  char c;

49、 </p><p>  c=m_id.GetAt(i); </p><p>  if(c<'0'||c>'9')</p><p><b>  flag=0;</b></p><p><b>  }</b></p><p>  i

50、f (flag==0)</p><p><b>  {</b></p><p>  MessageBox("有選項(xiàng)未填寫或填寫有誤!","提示",MB_ICONSTOP);</p><p><b>  return;</b></p><p><b>

51、  }</b></p><p><b>  else</b></p><p><b>  {</b></p><p>  set1.m_strFilter.Format("id='%s'",m_id);</p><p>  set1.Open();&l

52、t;/p><p>  if(set1.IsEOF())</p><p><b>  {</b></p><p>  MessageBox("倉(cāng)庫(kù)內(nèi)沒(méi)有此藥品!","提示",MB_ICONSTOP);</p><p><b>  return;</b></p&

53、gt;<p><b>  }</b></p><p><b>  else</b></p><p><b>  {</b></p><p>  set1.Delete();</p><p>  set1.Requery();</p><p>

54、;<b>  }</b></p><p><b>  }</b></p><p>  set1.Close();</p><p>  set.Open();</p><p>  set.AddNew();</p><p>  set.m_id=m_id;</p>

55、<p>  set.m_name=m_name;</p><p>  set.m_shuliang=m_shuliang;</p><p>  set.m_riqi=m_riqi;</p><p>  set.Update();</p><p>  set.MoveLast();</p><p>  m_l

56、ist.InsertItem(0,set.m_id);</p><p>  m_list.SetItemText(0,1,set.m_name);</p><p>  m_list.SetItemText(0,2,set.m_shuliang);</p><p>  m_list.SetItemText(0,3,set.m_riqi);</p><

57、;p>  set.Close();</p><p>  UpdateData(false);</p><p>  MessageBox("添加成功!","提示",MB_OK);</p><p><b>  刪除出庫(kù)按鈕:</b></p><p>  UpdateData(tr

58、ue);</p><p>  m_list.DeleteAllItems();</p><p>  chukuset set;</p><p><b>  int n=1;</b></p><p>  set.Open();</p><p>  set.MoveFirst();</p>

59、<p>  while(!set.IsEOF())</p><p><b>  {</b></p><p>  set.m_id.TrimRight();</p><p>  if(set.m_id==m_id)</p><p><b>  {</b></p><p

60、>  set.Delete();</p><p>  set.Requery();</p><p><b>  n=0;</b></p><p><b>  }</b></p><p>  set.MoveNext();</p><p><b>  } <

61、;/b></p><p><b>  if(n==1)</b></p><p>  MessageBox("沒(méi)有此藥品!","警告",MB_ICONSTOP);</p><p><b>  else</b></p><p>  MessageBox(&q

62、uot;刪除成功","警告",MB_OK);</p><p>  set.Close();</p><p>  4.5 庫(kù)存藥品查詢模塊設(shè)計(jì)</p><p>  圖3.5庫(kù)存藥品查詢窗口</p><p>  查詢按鈕的代碼同上。</p><p>  UpdateData();</p&

63、gt;<p>  jiansuo1 set;</p><p>  m_list.DeleteAllItems();</p><p>  if(m_choose==0)</p><p><b>  {</b></p><p>  if(m_cha.IsEmpty())</p><p>

64、<b>  {</b></p><p>  MessageBox("請(qǐng)輸入查詢內(nèi)容!","提示",MB_ICONSTOP);</p><p><b>  return;</b></p><p><b>  }</b></p><p>&l

65、t;b>  else </b></p><p><b>  { </b></p><p>  set.m_strFilter.Format("id='%s'",m_cha);</p><p>  set.Open();</p><p>  if(set.IsEOF()

66、)</p><p><b>  {</b></p><p>  MessageBox("沒(méi)有該藥品!","提示",MB_ICONSTOP);</p><p><b>  return;</b></p><p><b>  }</b><

67、;/p><p><b>  else</b></p><p><b>  {</b></p><p>  int n=m_list.GetItemCount();//獲取總行數(shù)</p><p>  m_list.InsertItem(n, set.m_id); //重新添加一行, 參數(shù)n:插入項(xiàng)的索引

68、值,后面為插入的字符串</p><p>  m_list.SetItemText(n,1,set.m_name);//n:行索引,1:列索引,最后為:文本字符串</p><p>  m_list.SetItemText(n,2,set.m_zongjia);</p><p>  m_list.SetItemText(n,3,set.m_shuliang);</

69、p><p>  m_list.SetItemText(n,4,set.m_zhengzhuang);</p><p>  CString strTmp;</p><p>  strTmp.Format("%d-%d-%d",set.m_chulishijian.GetYear(),set.m_chulishijian.GetMonth(),set.m

70、_chulishijian.GetDay());</p><p>  m_list.SetItemText(n,5,strTmp);</p><p>  set.Close();</p><p><b>  }</b></p><p><b>  }</b></p><p>

71、<b>  }</b></p><p>  else if(m_choose==1)</p><p><b>  {</b></p><p>  if(m_cha.IsEmpty())</p><p><b>  {</b></p><p>  Mess

72、ageBox("請(qǐng)輸入查詢內(nèi)容!","提示",MB_ICONSTOP);</p><p><b>  return;</b></p><p><b>  }</b></p><p><b>  else </b></p><p><

73、b>  { </b></p><p><b>  int n=0;</b></p><p>  set.Open();</p><p>  set.MoveFirst();</p><p>  while(!set.IsEOF())</p><p><b>  {

74、</b></p><p>  set.m_name.TrimRight(" ");</p><p>  if(set.m_name==m_cha)</p><p><b>  {</b></p><p>  m_list.InsertItem(n, set.m_id); //重新添加一行

75、, 參數(shù)n:插入項(xiàng)的索引值,后面為插入的字符串</p><p>  m_list.SetItemText(n,1,set.m_name);//n:行索引,1:列索引,最后為:文本字符串</p><p>  m_list.SetItemText(n,2,set.m_zongjia);</p><p>  m_list.SetItemText(n,3,set.m_shu

76、liang);</p><p>  m_list.SetItemText(n,4,set.m_zhengzhuang);</p><p>  CString strTmp;</p><p>  strTmp.Format("%d-%d-%d",set.m_chulishijian.GetYear(),set.m_chulishijian.GetM

77、onth(),set.m_chulishijian.GetDay());</p><p>  m_list.SetItemText(n,5,strTmp);</p><p><b>  n++;</b></p><p><b>  }</b></p><p>  set.MoveNext();&

78、lt;/p><p><b>  }</b></p><p>  set.Close();</p><p><b>  if(n==0)</b></p><p>  MessageBox("沒(méi)有該藥品!","提示",MB_ICONSTOP);</p>

79、<p><b>  }</b></p><p><b>  }</b></p><p><b>  else</b></p><p>  MessageBox("請(qǐng)選擇查找類型!","提示",MB_ICONSTOP);</p><

80、p>  4.6采購(gòu)商信息管理模塊設(shè)計(jì)</p><p>  3.6采購(gòu)商信息管理模塊界面</p><p><b>  修改按鈕代碼:</b></p><p>  UpdateData(true);</p><p>  shangset set;</p><p><b>  int n

81、=0;</b></p><p>  set.Open();</p><p>  set.MoveFirst();</p><p>  while(!set.IsEOF())</p><p><b>  {</b></p><p>  set.m_id.TrimRight();<

82、/p><p>  if(set.m_id==m_chaid)</p><p><b>  {</b></p><p>  MessageBox("已找到采購(gòu)商信息,確定修改嗎?","提示",MB_OKCANCEL);</p><p>  set.Edit();</p>

83、<p>  if(m_chechname.GetState()==1)</p><p>  set.m_name=m_name;</p><p>  if(m_chechadd.GetState()==1)</p><p>  set.m_address=m_add;</p><p>  if(m_chechphone.GetSta

84、te()==1)</p><p>  set.m_phone=m_phone;</p><p>  set.Update();</p><p>  MessageBox("修改成功!","提示",MB_OK);</p><p><b>  n=1;</b></p>&

85、lt;p>  }set.MoveNext();</p><p><b>  }</b></p><p>  set.Close();</p><p><b>  if(n==0)</b></p><p>  MessageBox("未找到采購(gòu)商信息,請(qǐng)確認(rèn)信息正確性!"

86、,"提示",MB_ICONSTOP);</p><p><b>  刪除按鈕代碼:</b></p><p>  UpdateData(true);</p><p>  m_list.DeleteAllItems();</p><p>  shangset set;</p><p&g

87、t;<b>  int n=1;</b></p><p>  set.Open();</p><p>  set.MoveFirst();</p><p>  while(!set.IsEOF())</p><p><b>  {</b></p><p>  set.m_id

88、.TrimRight();</p><p>  if(set.m_id==m_chaid)</p><p><b>  {</b></p><p>  set.Delete();</p><p>  set.Requery();</p><p><b>  n=0;</b>&

89、lt;/p><p><b>  }</b></p><p>  set.MoveNext();</p><p><b>  } </b></p><p><b>  if(n==1)</b></p><p>  MessageBox("沒(méi)有此供貨商

90、!","警告",MB_ICONSTOP);</p><p><b>  else</b></p><p>  MessageBox("刪除成功!","警告",MB_OK);</p><p>  set.Close();</p><p>  4.7 藥品

91、采購(gòu)信息查詢模塊設(shè)計(jì)</p><p>  3.7藥品采購(gòu)信息查詢界面</p><p>  查詢按鈕代碼:m_list.DeleteAllItems();</p><p>  UpdateData(TRUE);</p><p>  if(m_chaid.IsEmpty())</p><p><b>  {&l

92、t;/b></p><p>  MessageBox("搜索信息不能為空!","提示",MB_ICONSTOP);</p><p><b>  return;</b></p><p><b>  }</b></p><p>  caigouset set

93、;</p><p><b>  int n=0;</b></p><p>  set.m_strFilter.Format("id='%s'",m_chaid);</p><p>  set.Open();</p><p>  if(set.IsEOF())</p>&l

94、t;p><b>  {</b></p><p>  MessageBox("此藥品不存在!","提示",MB_ICONSTOP);</p><p><b>  return;</b></p><p><b>  }</b></p><p

95、><b>  else</b></p><p><b>  {</b></p><p>  m_list.InsertItem(0,set.m_id); //重新添加一行, 參數(shù)n:插入項(xiàng)的索引值,后面為插入的字符串</p><p>  m_list.SetItemText(0,1,set.m_name);//n:

96、行索引,1:列索引,最后為:文本字符串</p><p>  m_list.SetItemText(0,2,set.m_fenlei);</p><p><b>  }</b></p><p>  set.Close();</p><p>  UpdateData(false);</p><p>&

97、lt;b>  錄入代碼查詢:</b></p><p>  UpdateData(TRUE);</p><p>  caigouset set;</p><p>  if(m_id.IsEmpty()||m_name.IsEmpty())</p><p><b>  {</b></p>&

98、lt;p>  MessageBox("信息不能為空!","提示",MB_ICONSTOP);</p><p><b>  return;</b></p><p><b>  }</b></p><p>  set.Open();</p><p>  se

99、t.AddNew();</p><p>  set.m_id=m_id;</p><p>  set.m_name=m_name;</p><p>  if(m_a==0)</p><p>  set.m_fenlei="處方藥";</p><p>  else if(m_a==1)</p&g

100、t;<p>  set.m_fenlei="處方藥";</p><p><b>  else</b></p><p><b>  {</b></p><p>  MessageBox("請(qǐng)選擇藥品類型!","提示",MB_ICONSTOP);<

101、/p><p><b>  return;</b></p><p><b>  }</b></p><p>  set.Update();</p><p>  set.MoveLast();</p><p>  m_list.InsertItem(0,set.m_id);</

102、p><p>  m_list.SetItemText(0,1,set.m_name);</p><p>  m_list.SetItemText(0,2,set.m_fenlei);</p><p>  set.Close();</p><p>  UpdateData(false);</p><p>  MessageB

103、ox("添加成功!","提示",MB_OK);</p><p>  刪除代碼查詢:UpdateData(TRUE);</p><p>  caigouset set;</p><p>  if(m_id.IsEmpty()||m_name.IsEmpty())</p><p><b>  

104、{</b></p><p>  MessageBox("信息不能為空!","提示",MB_ICONSTOP);</p><p><b>  return;</b></p><p><b>  }</b></p><p>  set.Open();&

105、lt;/p><p>  set.AddNew();</p><p>  set.m_id=m_id;</p><p>  set.m_name=m_name;</p><p>  if(m_a==0)</p><p>  set.m_fenlei="處方藥";</p><p> 

106、 else if(m_a==1)</p><p>  set.m_fenlei="處方藥";</p><p><b>  else</b></p><p><b>  {</b></p><p>  MessageBox("請(qǐng)選擇藥品類型!","提示

107、",MB_ICONSTOP);</p><p><b>  return;</b></p><p><b>  }</b></p><p>  set.Update();</p><p>  set.MoveLast();</p><p>  m_list.Inse

108、rtItem(0,set.m_id);</p><p>  m_list.SetItemText(0,1,set.m_name);</p><p>  m_list.SetItemText(0,2,set.m_fenlei);</p><p>  set.Close();</p><p>  UpdateData(false);</p&

109、gt;<p>  MessageBox("添加成功!","提示",MB_OK);</p><p>  BOOL chuku::OnInitDialog() </p><p><b>  {</b></p><p>  CDialog::OnInitDialog();</p>&

110、lt;p>  // TODO: Add extra initialization here</p><p>  m_list.InsertColumn(0,"藥品代碼",LVCFMT_LEFT,100);</p><p>  m_list.InsertColumn(1,"藥品名稱",LVCFMT_LEFT,100);</p>&l

111、t;p>  m_list.InsertColumn(2,"處理數(shù)量",LVCFMT_LEFT,90);</p><p>  m_list.InsertColumn(3,"處理日期",LVCFMT_LEFT,120);</p><p>  chukuset set;</p><p><b>  int n=0;&

112、lt;/b></p><p>  set.Open();</p><p>  while(!set.IsEOF())</p><p><b>  {</b></p><p>  m_list.InsertItem(n,set.m_id); //重新添加一行, 參數(shù)n:插入項(xiàng)的索引值,后面為插入的字符串</p

113、><p>  m_list.SetItemText(n,1,set.m_name);//n:行索引,1:列索引,最后為:文本字符串</p><p>  m_list.SetItemText(n,2,set.m_shuliang);</p><p>  m_list.SetItemText(n,3,set.m_riqi);</p><p>  se

114、t.MoveNext();</p><p><b>  n++;</b></p><p><b>  }</b></p><p>  set.Close();</p><p>  return TRUE; // return TRUE unless you set the focus to a c

115、ontrol</p><p>  // EXCEPTION: OCX Property Pages should return FALSE</p><p><b>  打印按鈕代碼:</b></p><p>  CWnd *cWnd;</p><p>  cWnd=GetDlgItem(IDOK);</p>

116、<p>  if(!KillTimer(0))</p><p><b>  {</b></p><p>  SetTimer(0,100,NULL);</p><p>  cWnd->SetWindowText("手動(dòng)");</p><p><b>  }</b>

117、;</p><p><b>  else</b></p><p><b>  {</b></p><p>  cWnd->SetWindowText("自動(dòng)");</p><p><b>  }</b></p><p><

118、b>  五、系統(tǒng)評(píng)價(jià)</b></p><p>  進(jìn)入如圖3.1所示的登錄界面后,根據(jù)數(shù)據(jù)庫(kù)設(shè)計(jì)的用戶密碼表,如果密碼輸入不正確,或是用戶名錯(cuò)誤,都會(huì)彈出“用戶名或密碼有誤”的窗口。</p><p>  進(jìn)入如圖3.2所示的選擇界面,有5個(gè)選項(xiàng),我主要設(shè)計(jì)的是藥品入庫(kù),藥品出庫(kù)和倉(cāng)庫(kù)管理這幾個(gè)按鈕。單擊進(jìn)貨商管理按鈕,跳出如圖4.1所示的窗口。這個(gè)窗口能夠管理供貨商信息。

119、</p><p>  圖4.1 信息管理窗口 </p><p>  此窗口可以完成添加、修改,刪除,查詢的功能。</p><p>  錄入的功能,按照要求在各個(gè)編輯框輸入信息,單擊錄入則錄入信息,若輸入的藥品代碼已存在,或信息填寫不準(zhǔn)確,就會(huì)跳出“此供貨商已存在”</p><p>  則會(huì)彈出如圖5.1提示對(duì)話框</p>

120、;<p><b>  5.1 提示對(duì)話框</b></p><p>  添好信息后,若單擊錄入按鈕,如果信息填寫正確就會(huì)添加到列表控件里,并且數(shù)據(jù)庫(kù)中會(huì)對(duì)應(yīng)的添加對(duì)話框。添加成功后會(huì)彈出如圖5.2對(duì)話框</p><p><b>  5.2提示對(duì)話框</b></p><p><b>  修改的功能,&l

121、t;/b></p><p><b>  5.3界面</b></p><p>  填寫供貨商代碼,此信息會(huì)對(duì)應(yīng)出現(xiàn)在下邊的編輯框中,如果要修改,選定修改復(fù)選框,選擇修改的內(nèi)容,修改后單擊修改按鈕就會(huì)顯示修改成功對(duì)話框,單擊刪除就會(huì)跳出刪除成功的對(duì)話框。查詢可以按照供貨商代碼或供貨商名稱,只需單擊與之對(duì)應(yīng)的小圓圈就可以選擇。單擊查詢后,在列表控件里會(huì)顯示出對(duì)應(yīng)的信息

122、。</p><p><b>  庫(kù)存藥品查找功能:</b></p><p>  通過(guò)單選框選擇查找類型,輸入代碼或藥品名稱,若不存在此藥品不存在則彈出如圖5.3對(duì)話框</p><p>  5.4 出錯(cuò)提示界面</p><p>  若存在,則會(huì)顯示所有的符合查詢要求的藥品,則會(huì)顯示如圖5.5界面</p>&

123、lt;p><b>  5.5查詢顯示界面</b></p><p>  出庫(kù)按鈕為關(guān)聯(lián)兩個(gè)表,將藥物從庫(kù)存表刪除,同時(shí)將藥物加入出庫(kù)記錄表,從而達(dá)到實(shí)現(xiàn)動(dòng)態(tài)更新的目的</p><p><b>  5.7提示</b></p><p>  添加成功后,使用查詢功能,查詢所有出庫(kù)的藥品</p><p>

124、;  其余藥品入庫(kù),采購(gòu)信息管理等,測(cè)試方法類似,在此就不在一一贅述。</p><p>  六、課程設(shè)計(jì)心得、總結(jié)</p><p>  為了提高我們的實(shí)踐能力,讓我們學(xué)以致用,能靈活運(yùn)用所學(xué)的知識(shí)進(jìn)行再創(chuàng)造,學(xué)校特安排我們進(jìn)行為期二周的Visual C++課程設(shè)計(jì)實(shí)習(xí),并安排了指導(dǎo)老師幫助輔導(dǎo),讓我們?cè)谝?guī)范化、嚴(yán)謹(jǐn)化、實(shí)用化上面有了很大進(jìn)展。</p><p>  在

125、此次字符統(tǒng)計(jì)程序開發(fā)過(guò)程中,有很多東西值得我們思考并總結(jié)。</p><p>  開發(fā)過(guò)程大體可分為以下幾個(gè)步驟:</p><p> ?。?)思考總體設(shè)計(jì)方案:總體結(jié)構(gòu)和模塊外部設(shè)計(jì),功能分配。思考要實(shí)現(xiàn)整個(gè)程序大體需要的幾個(gè)模塊和其中用到的Visual C++語(yǔ)言基本操作符、語(yǔ)句等。</p><p> ?。?)畫出總體設(shè)計(jì)方案流程圖:用流程圖的形式展現(xiàn)你的基本編程思

126、想。</p><p>  (3)流程圖具體化:即將流程圖中的幾大模塊的具體實(shí)現(xiàn)思考清楚,可以用流程圖的形式展現(xiàn).并想好實(shí)現(xiàn)的關(guān)鍵代碼。</p><p> ?。?)編輯程序代碼:這是一個(gè)至關(guān)重要復(fù)雜而且需要反復(fù)修改的環(huán)節(jié),在此環(huán)節(jié)中你將發(fā)現(xiàn)總體設(shè)計(jì)和模塊思想會(huì)存在很多問(wèn)題,需不斷改進(jìn).如何實(shí)現(xiàn)各函數(shù)功能,達(dá)到預(yù)期效果也將是一項(xiàng)繁復(fù)的工作。</p><p> ?。?)代

127、碼的調(diào)試:在Visual C++6.0環(huán)境下輸入代碼并進(jìn)行調(diào)試和正確運(yùn)行。在調(diào)試過(guò)程中會(huì)遇到很多需要精化的地方,需要十足的耐心與細(xì)心,不斷改進(jìn)完善程序。</p><p> ?。?)最后修飾:程序可以正確運(yùn)行之后,再不影響程序功能的情況下,運(yùn)用各種輔助性符號(hào),使界面更加美觀漂亮,操作更人性化.增強(qiáng)程序的新意與可行性。 </p><p>  通過(guò)這次課程設(shè)計(jì),使我們更加熟悉的掌握了Visual

128、 C++語(yǔ)言的運(yùn)用。幫助我們熟悉了更多Visual C++語(yǔ)言的功能,提高了我們的動(dòng)手能力,學(xué)到了許多解決實(shí)際問(wèn)題的寶貴經(jīng)驗(yàn).同時(shí)也挖掘出了我們潛在的能力,使我們對(duì)自己更有自信,對(duì)編程也更有興趣。我相信,只要努力、勤奮、堅(jiān)持不懈,就沒(méi)有什么做不到的事,不能還沒(méi)開始就退縮,要勇于拼搏,敢于創(chuàng)新。同時(shí)我們的自學(xué)能力有了很大的提高,在這兩周的時(shí)間內(nèi),我們自學(xué)了很多的以前老師沒(méi)有講過(guò)的內(nèi)容,Visual C++語(yǔ)言博大精深,我們也會(huì)不斷學(xué)習(xí),不

129、斷進(jìn)取。</p><p><b>  參考文獻(xiàn):</b></p><p>  [1]賀懷清.VISUAL C++ 程序設(shè)計(jì)及應(yīng)用[M].電子出版社出版</p><p>  [2]王珊. 數(shù)據(jù)庫(kù)系統(tǒng)簡(jiǎn)明教程[M].北京:高等教育出版社</p><p>  [3]李閩溟等.Visual C++ 6.0 數(shù)據(jù)庫(kù)系統(tǒng)開發(fā)實(shí)例導(dǎo)航

溫馨提示

  • 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)論