医院进销存系统设计报告汇编.docx
《医院进销存系统设计报告汇编.docx》由会员分享,可在线阅读,更多相关《医院进销存系统设计报告汇编.docx(37页珍藏版)》请在冰豆网上搜索。
医院进销存系统设计报告汇编
3、你是否购买过DIY手工艺制品?
秘诀:
好市口+个性经营
标题:
上海发出通知为大学生就业—鼓励自主创业,灵活就业2004年3月17日
二、资料网址:
4、“体验化”消费
(一)创业机会分析
我们长期呆在校园里,对社会缺乏了解,在与生意合作伙伴应酬方面往往会遇上困难,更不用说商业上所需经历的一系列繁琐手续。
他们我们可能会在工商局、税务局等部门的手续中迷失方向。
对具体的市场开拓缺乏经验与相关的知识,缺乏从职业角度整合资源、实行管理的能力;
上海市劳动和社会保障局所辖的“促进就业基金”,还专门为大学生创业提供担保,贷款最高上限达到5万元。
(四)大学生对手工艺制品消费的要求
6、你购买DIY手工艺制品的目的有那些?
山东交通学院
面向对象语言课程设计
医院药品进销存系统
(院)系:
信息工程系
专业:
信息类
班级:
信息083
姓名:
李志浩
学号:
080810314
指导教师:
庞希愚
时间:
9月14日至9月27日
课程设计任务书
题目医院药品进销存管理系统
系(部)信息工程系
专业信息类
班级信息083
学生姓名李志浩
学号080810314
9月14日至9月27日共2周
指导教师(签字)
系主任(签字)
2009年9月25日
一、设计目的
学生根据所学的数据库原理与程序设计的知识,能够针对一个小型的数据库管理系统,进行系统的需求分析,系统设计,数据库设计,编码,测试等,完成题目要求的功能,从而达到掌握开发的一个小型数据库系统的目的。
二、设计内容
1.必须设计的数据表:
药品分类代码表,药品库存表,供货商信息表,采购信息表等。
2.功能模块
1)新药品的入库
2)过期药品的出库登记,处理记录。
3)药品库存检索
4)供货商信息检索
5)药品采购记录管理
6)药品用药说明信息管理
7)输出相应的数据报表
三、设计完成后提交的文件
1.课程设计报告(3000—5000字),纸质打印稿及电子版
(1)需求分析(功能模块层次图)
(2)系统设计(包括详细设计和界面设计)
(3)代码设计(主要功能函数)
(4)测试记录(测试各项功能的正确性、容错性)
(5)课程设计总结
2.系统程序演示。
3.课程设计任务书。
四、进度计划
9月14-15日,熟悉VisualC++6.0(创建基于MFCAPPWizard[exe]),SQLSERVER2000,MFCODBC数据库开发技术的环境。
9月15-17日,学习MFCODBC数据库的有关知识。
9月18-21日,初步建立数据库,用MFCODBC连接数据源。
9月22-23日,完善数据库,初步写代码。
9月23-26日,完成程序。
五、主要参考资料
[1]贺怀清.VISUALC++程序设计及应用[M].电子出版社出版
[2]王珊.数据库系统简明教程[M].北京:
高等教育出版社
成绩评定表
口试(答辩)成绩
报告成绩
总评成绩
摘要
随着国家的政治经济政策的优化改革,使得国内中小企业得以蓬勃发展。
可是随着企业的发展,客户数量的的为断增多,财务工作繁杂化,库存产品零乱等一系列问题也接踵而至,给企业经营者运作带来了很大的困扰。
信息技术的迅猛发展,科学经营管理观念的迅速传播,使中小企业经营者逐渐认识到转变企业经营管理理念,改善企业经营管理模式是企业适应时代的发展急需解决的问题。
现代管理,应该建立在真实、有效的数据信息基础之上,应该是一种科学的、理性的管理体制,而这种管理与经营的联系与互助,又必须依赖于计算机的强大的数据统计功能,计算机管理系统便是实际的企业进销问题与计算机强大数据统计功能相结合的产物。
管理系统解决的了商业企业商品的进、销、存一系列操作流程中的数据信息的处理问题,提供一系列的数据分析,帮助经营者合理的调整各个经营运作环节的运作节奏,并对商品流转过程进行了全程跟踪管理、相应款项流通的全程记录管理和票据信息统计的管理。
因此进销存管理系统的全面应用,规范业务流程、提高了企业的管理水平,提高资金流动的透明度,加快商品资金周转速度,进而全面提高了企业的经营水平、进而全面提升了企业的经济效益。
关键词:
进销存;数据库;触发器;记录集
抄録
を使用して、国の政治や経済政策、繁栄し、国内の中小企業を改革を最適化します。
しかし、企業は、オフに金融業務、在庫管理の問題や障害は、一連の複雑な続いて、企業の演算子にトラブルの多くを実行するもたらしたを向上するため、顧客の数を開発した。
情報技術の急速な発展を、科学的管理法のアイデアに急速に広がるように、中小企業の演算子を変更して経営のコンセプトを実現するため、企業の経営モデルを改良来て企業のアクセスの問題を解決するために必要に適応するための開発です。
近代的な管理は、リアルタイムかつ効果的なベースのデータ管理と操作は、連絡先、相互扶助、彼らはコンピュータの強力なデータでは、頼らなければならない科学的合理的な管理システムは、統計関数をする必要がありますに基づいている必要がありますは、コンピュータの管理システムは、コンピューターの販売事業との本当の問題は、強力な統計機能製品の組み合わせにされます。
商業企業の商品の輸入販売のための管理システムのソリューションは、データ処理の問題で、業務プロセスは、一連のデータ分析の範囲を提供維持し、リズムの操作の合理的な部分のさまざまな操作を調整するには演算子を支援し、商品転送プロセスを管理追跡している、資金管理統計情報の楽器の流れを全体に対応するレコード管理。
請求書発行管理システム、そのための包括的なアプリケーションは、標準化されたビジネスプロセスと企業の管理レベルを向上させることにより、総合的に企業の管理レベルの向上、資本の流れ、財の資本回転速度を上げるの透明性を向上させるため、企業の全体的な経済効率の向上。
キーワード:
請求書発行、データベース、トリガ、レコードセット
前言
随着计算机技术的发展,可视编程技术占有了越来越重要的作用。
VisualC++6.0是一种功能强大行之有效的可视化编程工具。
因此此软件是在VisualC++6.0环境下编写的。
对于我们,随着学习的深入,已经大体掌握了VisualC++6.0环境下的程序开发。
为了将我们的编程能力提升到一个更高的水平,深化面向对象的编程思维和解决问题的能力,值此课程设计周期间,进行基于VisualC++6.0环境的软件开发,先以字符统计软件作为开始,对VisualC++6.0环境和面向对象程序设计进行回忆和熟悉,使得在此基础上的下一个课程设计的开发进行的更加顺利。
本文档详细叙述了基于VisualC++6.0环境下的医院进销存系统软件的设计过程以及程序源代码。
本文档从概要设计,详细设计,参考源程序代码以及显示程序运行的截屏等方面详尽的介绍了软件开发过程。
此次医院进销存系统软件的开发目的学生根据所学的数据库原理与程序设计的知识,能够针对一个小型的数据库管理系统,进行系统的需求分析,系统设计,数据库设计,编码,测试等,完成题目要求的功能,从而达到掌握开发的一个小型数据库系统的目的。
本文档的安排如下:
第一章主要介绍了对面向对象C++语言以及VisualC++6.0编程环境。
第二章主要的介绍说明了药品进销存系统的编程思想和详细设计。
第三章主要对本软件进行调试,运行程序并截图,显示运行界面和结果。
第四章主要介绍了软件开发过程中遇到的一些问题,对该软件进行的一个总结。
程序在设计的过程中遇到的问题已及时更正,但由于编者的能力和水平有限,字符统计软件和文档中不免会出现一些不期待的错误,望文档读者能够理解和体谅,并欢迎提醒和纠正,在此表示感谢以及敬意。
1.课程设计概述
1.1.VisualC++6.0概述
VisualC++是微软公司的重要产品之一,是一种功能强大行之有效的可视化编程工具。
它提供了MFC类库,使用户可以方便的开发自己想实现的功能。
VisualC++6.0的主要特点:
(1)自动化和宏功能。
(2)可以灵活地定制工具栏和菜单。
(3)可以直接运行和调试程序,还可以使用宏语言来自动操作调试器。
(4)支持Internet连接。
(5)一个新的便捷的项目系统可以允许一个工作区内包含多个不同的项目类型。
(6)在工作区内可以包含多个并列的工程文件。
(7)可以在对话框中使用WizardBar将程序同可视化元素联系起来。
(8)FindinFile命令支持两个独立的输出窗格,可以保存上一次搜索的结果。
这些新特性可以更好地利用VisualC++开发工具进行Windows应用程序开发。
1.2.VisualC++6.0运行环境
图1-2 VisualC++6.0运行环境
1.3.SQLserver2000数据库概述
SQLServer是一种关系型数据库系统,SQLServer2000是在SQLServer7.0的基础上扩展升级的产品。
该版本不仅继承了SQLServer7.0版本的稳定性、便于管理和易于开发等优点。
同时又比它增加了许多更先进的功能,具有可伸缩性好与相关软件集成程度高等优点,可跨越多种平台使用。
SQLServer2000已成为目前广为使用的数据库管理系统。
SQLServer2000的特性表现在以下4方面:
1.Internet集成。
SQLServer2000数据库引擎提供完整的XML支持,允许用户使用内置的存储过程以XML格式轻松存储和检索数据。
用户还可以使用XML轻松地插入、更新和删除程序。
SQLServer2000程序设计模型与WindowsDNA构架集成,可用来开发Web应用程序。
利用SQLServer2000的EnglishQuery和Microsoft搜索服务等功能,可在Web应用程序中实现用户友好的查询和强大的搜索功能。
2.可伸缩性和可用性。
同一个数据库引擎实例可以在不同的平台上使用,从运行MicrosoftWindows98的便携式电脑,到运行MicrosoftWindows2000的大型多处理器服务器。
SQLServer2000企业版支持索引视图和联合服务器等功能,使其得以升级到最大Web站点所需的性能级别。
3.企业级数据库功能。
SQLServer2000数据库引擎支持当今苛刻的数据处理环境所需的功能。
数据库引擎将管理上千个并发修改数据库的用户的开销减到最小,同时,充分保护数据完整性。
SQLServer2000分布式查询使您得以象引用SQLServer2000数据库本身的数据那样引用来自不同数据源的数据,同时分布式事务支持充分保护任何分布式数据更新的完整性。
复制不仅能使您得以维护多个数据复本,同时还可确保单独的数据复本保持同步。
4.易于安装、部署和使用。
SQLServer2000中包括一系列管理和开发工具,这些工具可简化在多个站点上安装、部署、管理和使用SQLServer的过程。
基于标准的、与WindowsDNA集成的程序设计模型得到了SQLServer2000很好的支持,使SQLServer数据库和数据仓库的使用成为生成强大的可伸缩系统的无缝部分。
SQLServer2000所提供的功能使SQLServer应用程序可以快速交付,并且客户只需最少的安装和管理开销即可实现这些应用程序。
1.4.医药进销存管理系统系统概述
系统主要为登陆,登陆后可以浏览,查询,添加,删除药品信息外还可以对销售记录进行浏览,删除,添加,修改。
本系统是根据中小企业的实际需求而开发的,完全能够实现药品入库、销售管理,通过本系统可以达到以下目标:
系统运行稳定,安全可靠。
界面设计美观,人机交互界面友好。
信息查询灵活、方便、快捷、准确,数据存储安全可靠。
强大的报表预览、打印功能。
信息安全保密。
本系统可以基本满足中小企业的需求,简单易操作
2.系统需求分析
企业经营如逆水行舟不进则退。
每一个努力发展的企业都明白,先进管理的重要作用,引进先进管理系统使企业经营变得规范、合理。
进销存管理系统无论是在功能设计还是业务流程上都尽可能做到满足经营管理运作流程的需求,并且操作方便、功能强大,即使操作者对计算机知识一窍不通也能一用就会。
它强化库存管理,规范业务流程,提高资金管理的透明度,加快商品资金周转,是企业经营管理中数据分析中必不可少的管理工具。
根据市场的需求,要求系统具有以下功能:
1)新药品的入库。
2)过期药品的出库登记、处理记录。
3)药品库存检索。
4)供货商信息检索。
5)药品采购记录管理。
6)药品用药说明信息管理。
7)输出相应的数据报表。
系统主要为登陆,登陆后可以浏览,查询,添加,删除药品信息外还可以对销售记录进行浏览,删除,添加,修改。
本系统是根据中小企业的实际需求而开发的,完全能够实现药品入库、销售管理,通过本系统可以达到以下目标:
❑系统运行稳定,安全可靠。
❑界面设计美观,人机交互界面友好。
❑信息查询灵活、方便、快捷、准确,数据存储安全可靠。
❑强大的报表预览、打印功能。
❑信息安全保密。
开发及运行环境
硬件要求
CPU:
300MHz以上的处理器
内存:
128MB,推荐256MB
硬盘:
150MB以上剩余空间
显示像素:
最低800*600,最佳效果1024*768
软件要求
操作系统:
Windows2000/NT/XP/Vista。
数据库:
SQLServer2000。
3.总体设计
3.1.项目规划
根据需求分析,设计系统框架。
进销存系统由7部分组成。
设计各部分具体功能如下:
1)药品信息模块。
包括药品代码,名称,分类等。
2)供货商信息模块。
包括供货商代码,供货商名,地址,联系电话。
3)库存模块。
包括药品名称,药品代码,库存量,处理日期。
4)采购信息模块。
包括药品代码,采购量,采购日期,采购总价,主治症状。
5)过期药品处理模块。
包括药品代码,处理量,过期时间。
6)用户密码模块。
包括用户名,密码。
3.2.系统结构功能
图2.1系统结构功能图
3.3.系统设计
3.3.1.数据库概要说明
本系统采用SQLServer2000数据库,系统数据库名为医院药品进销存系统,中共包含28个表,其中作为临时表的有20个,作为数据存储表的有8个。
下图所示的即为本系统中数据库的数据表结构图,该数据表结构图包含系统所有数据表。
可以清晰地反应数据库信息。
图2.2数据表结构图
3.3.2.数据库逻辑结构
3.3.2.1.原始表设计:
表2.1药品分类代码表
字段中文名
字段名
类型
长度
类别
leibie
char
10
药品代码
yaodaima
char
10
药品名称
yaoming
char
30
表2.2供货商信息表:
字段中文名
字段名
类型
长度
供货商代码
shangdaima
char
10
供货商名称
shangming
char
40
供货商地址
address
char
50
供货商电话
phone
char
20
表2.3药品库存表:
字段中文名
字段名
类型
长度
药品名称
yaoming
char
30
药品代码
yaodaima
char
10
库存数量
kucunliang
float
8
药品信息
yaoxinxi
varchar
50
生产日期
shengchanriqi
datetime
8
有效期至
youxiaoqizhi
datetime
8
表2.4采购信息表:
字段中文名
字段名
类型
长度
药品代码
yaodaima
char
10
供货商代码
shangdaima
char
10
采购数量
caigouliang
float
8
采购总价
czong
float
8
表2.5过期药品处理表
字段中文名
字段名
类型
长度
药品代码
yaodaima
char
10
处理数量
chuliliang
float
8
处理日期
chuliriqi
datetime
8
处理方法
chulifa
varchar
50
生产日期
shenchanriqi
datetime
8
表2.6用户密码表
字段中文名
字段名
类型
长度
用户
yonghu
char
30
密码
mima
char
10
4.功能模块设计
4.1.登陆框设计
图3.1登陆界面
登录按钮的代码:
UpdateData(true);
mimasetset;
set.m_strFilter.Format("id='%s'",m_id);
set.m_mima.TrimRight();
set.Open();
if(m_id.IsEmpty())
{
MessageBox("用户名不能为空!
","提示",MB_ICONSTOP);
return;
}
if(m_mima.IsEmpty())
{
MessageBox("密码不能为空!
","提示",MB_ICONSTOP);
return;
}
if(!
set.IsEOF())
{
set.m_id.TrimRight();
set.m_mima.TrimRight();
if(set.m_mima==m_mima)
{
menuDlg;
Dlg.DoModal();
}
else
MessageBox("密码错误!
","提示",MB_ICONSTOP);
}
else
MessageBox("用户名不正确!
","提示",MB_ICONSTOP);
4.2.主菜单模块设计
图3.2功能选择窗口
子菜单选择按钮代码:
shuruDlg;
Dlg.DoModal();
其余按钮代码相同
4.3.新药入库模块设计
图3.3供货商信息查询窗口
新药注册按钮的代码:
UpdateData(TRUE);
if(m_id.IsEmpty())
MessageBox("药品代码不能为空!
","提示",MB_ICONSTOP);
shurusetset;
set.m_strFilter.Format("id='%s'",m_id);
set.Open();
if(set.IsEOF())
{
set.AddNew();
set.m_id=m_id;
set.m_name=m_name;
set.m_zongjia=m_zongjia;
set.m_shuliang=m_shuliang;
set.m_zhengzhuang=m_zhengzhuang;
set.m_chulishijian=m_time;
set.Update();
m_list.InsertItem(0,set.m_id);
m_list.SetItemText(0,1,set.m_name);
m_list.SetItemText(0,2,set.m_zongjia);
m_list.SetItemText(0,3,set.m_shuliang);
m_list.SetItemText(0,4,set.m_zhengzhuang);
CStringstrTmp;
strTmp.Format("%d-%d-%d",set.m_chulishijian.GetYear(),set.m_chulishijian.GetMonth(),set.m_chulishijian.GetDay());
m_list.SetItemText(0,5,strTmp);
}
else
MessageBox("此药品已存在!
","提示",MB_ICONSTOP);
set.Close();
}
新药录入复选框的代码:
UpdateData(true);
GetDlgItem(IDC_EDIT2)->EnableWindow(m_bEnabled);
GetDlgItem(IDC_EDIT4)->EnableWindow(m_bEnabled);
GetDlgItem(IDC_EDIT5)->EnableWindow(m_bEnabled);
新药入库按钮代码:
UpdateData(TRUE);
if(m_id.IsEmpty())
MessageBox("药品代码不能为空!
","提示",MB_ICONSTOP);
shurusetset;
set.m_strFilter.Format("id='%s'",m_id);
set.Open();
if(!
set.IsEOF())
{
set.Edit();
set.m_shuliang=m_shuliang;
set.Update();
m_list.InsertItem(0,set.m_id);
m_list.SetItemText(0,1,set.m_name);
m_list.SetItemText(0,2,set.m_zongjia);
m_list.SetItemText(0,3,set.m_shuliang);
m_list.SetItemText(0,4,set.m_zhengzhuang);
CStringstrTmp;
strTmp.Format("%d-%d-%d",set.m_chulishijian.GetYear(),set.m_chulishijian.GetMonth(),set.m_chulishijian.GetDay());
m_list.SetItemText(0,5,strTmp);
}
else
MessageBox("仓库内没有该药品,请先进行新药注册!
","提示",MB_ICONSTOP);
取消按钮的代码:
OnCancel();
4.4.过期药品出库模块设计
3.3过期药品出库页面
录入按钮的代码:
UpdateData(true);
m_list.DeleteAllItems();
chukusetset;
shurusetset1;
intflag=1;
if(m_id.IsEmpty()||m_name.IsEmpty()||m_riqi.IsEmpty()||m_shuliang.IsEmpty())
flag=0;
for(inti=0;i{
charc;