版權(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)--醫(yī)院藥品進(jìn)銷存系統(tǒng)
- 藥品進(jìn)銷存管理系統(tǒng)數(shù)據(jù)庫(kù)課程設(shè)計(jì)
- 進(jìn)銷存管理數(shù)據(jù)庫(kù)課程設(shè)計(jì)
- 超市進(jìn)銷存系統(tǒng)課程設(shè)計(jì)報(bào)告
- 網(wǎng)站進(jìn)銷存數(shù)據(jù)庫(kù)課程設(shè)計(jì)報(bào)告
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)--商品進(jìn)銷存管理系統(tǒng)
- 數(shù)據(jù)庫(kù)進(jìn)銷存管理系統(tǒng)設(shè)計(jì)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)--進(jìn)銷存管理系統(tǒng)需求分析與設(shè)計(jì)
- 藥品進(jìn)銷存系統(tǒng)數(shù)據(jù)流程圖.doc
- 數(shù)據(jù)庫(kù)原理與應(yīng)用課程設(shè)計(jì)--商店進(jìn)銷存管理系統(tǒng)
- 某家具城進(jìn)銷存管理系統(tǒng)數(shù)據(jù)庫(kù)課程設(shè)計(jì)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)--- 百貨進(jìn)銷存信息管理系統(tǒng)
- 數(shù)據(jù)庫(kù)應(yīng)用技術(shù)課程設(shè)計(jì)--超市進(jìn)銷存管理
- 畢業(yè)設(shè)計(jì)---基于vb系統(tǒng)藥品進(jìn)銷存系統(tǒng)設(shè)計(jì)
- cs企業(yè)進(jìn)銷存系統(tǒng)
- 【數(shù)據(jù)庫(kù)課程設(shè)計(jì)】基于javahibernate、spring和sqlserver2000的藥品進(jìn)銷存管理系統(tǒng)
- 課程設(shè)計(jì)---vs2008+microsoft sql server進(jìn)銷存系統(tǒng)設(shè)計(jì)
- 酒店進(jìn)銷存系統(tǒng)——論文
- jsp商品進(jìn)銷存系統(tǒng)
- 數(shù)據(jù)庫(kù)系統(tǒng)課程設(shè)計(jì)--工廠零件進(jìn)銷存及工程管理系統(tǒng)
評(píng)論
0/150
提交評(píng)論