数据库系统开发实习药品存销管理系统.docx
《数据库系统开发实习药品存销管理系统.docx》由会员分享,可在线阅读,更多相关《数据库系统开发实习药品存销管理系统.docx(15页珍藏版)》请在冰豆网上搜索。
数据库系统开发实习药品存销管理系统
数据库系统
开发实习
题目:
药品存销管理系统
学生姓名:
Candy
学号:
系部名称:
专业班级:
指导教师:
职称:
二○一二年七月十二日
前言………………………………………………………………………1
第一章药品库存管理系统概述………………………………………2
1.1任务概述………………………………………………………2
第二章系统的需求分析………………………………………………3
2.1功能需求………………………………………………………3
2.1.1功能划分………………………………………………3
2.1.2功能描述………………………………………………3
2.1.2功能模块图……………………………………………3
2.2性能需求……………………………………………………4
2.3数据描述……………………………………………………5
2.3.1要求……………………………………………………5
2.3.2目标……………………………………………………5
第三章系统的数据库相关设计………………………………………6
2.1系统的概念模型设计(E-R图)……………………………6
2.2系统的逻辑模型设计(逻辑表展现………………………6
2.3系统的物理结构设计(物理模型)…………………………8
第四章系统实现………………………………………………………10
第五章总结……………………………………………………………13
前言
随着经济的发展,人们生活水平的提高,医疗保险随之逐渐推广,导致药店市场的竞争越来越激烈,药品的种类也随之增加,对药店尤其是对药店的药品进行信息化管理已经成为药店生存与发展的必要条件之一。
药品的信息化管理是药店中必不可少的条件,几乎所有进行了信息化管理的药店类企业都建设了药品管理信息系统。
药品信息管理系统是指利用软硬件技术、网络通信技术等现代化手段,对药店经营过程中对药品的进货、出货、库存、价格及账务进行精确快速的管理,大大见底了经营管理中的复杂性以及出错率、减轻手工劳动的强度,提高顾客的满意度,从而为药店的整体运行提供全面的、自动化的管理及各种服务的信息系统。
市场上的管理系统软件类型有三种,一是通用版本;一是专为医药企业定制开发的,但周期长,费用高;三是在通用版本的基础上根据医药连锁企业的特点进行了重新开发和研制,许多企业都采用了这种信息系统。
目前管理软件多种多样,如:
博信药店管理系统、零天药店管理系统、利康药店管理系统,方舟药品管理系统等。
但多数系统都面型大型药店或连锁型药店且价格较高,针对小型单体药店却没有一个价格合理、功能合理的系统。
针对当前医药产品销售日益激烈的竞争情况,为加强管理,提高工作效率和改善服务质量而设计一套行之有效的管理系统.通过研究分析一个小型单体药店的整个销售流程,满足管理人员和一般客户的基本要求,将日常繁琐的工作简单化,规范化,电子化,自动化.力求将整个平台简化到几个人就足以完成全部的维护更新工作,解决药品管理工作中所遇到的问题,方便管理员可以随时地做添加、查询、删除、修改等工作,将管理人员繁重复杂的工作变得合理、简捷,且考虑到未来系统扩展的可能性,而采用Delphi和Database技术来实现.从而达到以下目的:
人力与设备费用的相对减少;
处理速度的提高;
人员利用率的改进;
节省投资和运营成本。
本药品信息管理子系统目的是为小型单体药店管理及销售人员、采购人员提供更确切的数据。
方便他们更方便快捷的对药品进行管理,节省了对于药品手工录入,而浪费的人力物力!
第一章药品库存管理系统概述
1.1任务概述
药品管理系统是为了加强药品管理,以便更好地对药品进行监督和管理,对售药机构人员的工作,起到了高效性、准确性管理而开发。
本系统主要包含系统用户管理模块、药品管理模块、销售管理模块、进货管理模块、存货转移管理模块。
药品管理系统是以合理、全面、准确的药品编码体系为基础,提供了对药品数量、金额、有效期的全面管理,统一的药价管理机制规范了药品的价格。
系统能随时提供药库的库存、药品流向和消耗,还能根据现有库存,药品有效期提供采购计划或应暂停采购的药品清单,以提高资金的利用率,避免不必要的损失,方便快捷的途径对药基本信息进行定期的更新和删除等管理。
管理人员通过系统实现与顾客进行交互。
销售人员通过输入药品编号,查出系统中存在的药品,通过医生看病以及配药,考虑所售药品的价格,将病人所要购买的药品列入药品清单中,最后的销售入库存系统将此次的交易数据保存到数据库中,最终完成交易,将药品交给病人手中。
经过对数据流程分析,提示出现行系统具有4个主要模块:
药品信息系统、药品库存管理系统、供应商管理系统、药品销售系统。
通过它们我们的药品管理系统才成为了一个能够成功的软件。
首先是药品信息系统:
在这个模块中由用户或管理员输入所有药品的基本信息即药品的初始化。
第二个是药品库存管理系统:
在这里这个系统有两个功能,一是查出现有药库中的所有过期药品,更新现有的数据库;二是实现药品入库,避免药品空缺造成的销售问题。
第三个是供应商管理系统:
供应商是药品进货时,从何处购得的一种记录方法,通过供应商可以方便的再次进货。
最后一个是药品销售系统:
在这个模块中,管理人员可以很方便地对销售情况进行查看,显示当天的销售金额并备份所有的数据库表。
药品管理系统与3个外部实体有关:
顾客、药房销售人员和系统管理员。
其中系统管理人员拥有所有信息资料添加、删除和修改的权限,而药房销售人员只具有普通权限不能对信息资料做任何的删除操作。
以上只是整个系统的总体流程,大概显示了一次一个用户完整交易的全部过程。
在这里我们还要对这个数据流程进行进一步详细的分解。
第二章系统的需求分析
2.1功能需求
2.1.1功能划分
药品管理系统分为系统用户管理、药品销售管理、药品库存管理、进货管理、职工管理、查询与报表分析。
要求本系统能够投入实际的使用并且满足基本的功能要求。
要求具有较高的可靠性、安全性和易维护性,具有较高的可移植性。
本系统实现了以下的功能:
基本信息模块:
包括药品信息、员工信息、客户信息、供应商信息四个子模块。
(1)进货管理模块:
包括入库登记、入库登记查询二个子模块。
(2)库房管理模块:
包括库存查询、库存盘点、退货处理三个子模块。
(3)销售管理模块:
包括销售登记、销售退货、销售报表查询三个子模块。
(4)财务统计模块:
包括当日统计、当月统计二个子模块。
(5)系统用户模块:
包括数据安全管理、操作员管理、权限设置三个模块。
2.1.2功能描述
(1)系统用户管理:
允许添加删除用户(只有管理员才可以修改),任意权限的用户允许更改自己的密码,添加或删除职工,修改职工,对药品进行销售和库存的控制的资料。
(2)药品进货管理:
当企业需要增加新的销售药品时,利用此模块可以添加新的药品信息,删除旧的药品信息,修改已存在的药品信息,提供所有与药品相关的各类信息,初始化库存,初始化供应商相关信息。
(3)药品销售管理:
药品统一的价格销售,对已查询销售单,可以对药品的价格进行控制。
(4)库存管理模块:
实际生活中容易发生药品过期和损毁,此时利用此模块对过期的药品和损毁的药品进行清理。
(5)查询与报表分析:
此功能并未单独作为一个模块,而是分布在各个模块中,各个模块产生业务时,可以在各模块的相应功能按钮上选择查询。
2.1.2功能模块图
2.2性能需求
为了保证系统能够长期、安全、稳定、可靠、高效的运行,药品管理系统应该满足以下的性能需求:
(1)系统处理的准确性和及时性
系统处理的准确性和及时性是系统的必要性能。
在系统设计和开发过程中,要充分考虑系统当前和将来可能承受的工作量,使系统的处理能力和响应时间能够满足学校对信息处理的需求。
(2)系统的开放性和系统的可扩充性
药品管理系统在开发过程中,应该充分考虑以后的可扩充性。
例如用户查询的需求也会不断的更新和完善。
所有这些,都要求系统提供足够的手段进行功能的调整和扩充。
而要实现这一点,应通过系统的开放性来完成,既系统应是一个开放系统,只要符合一定的规范,可以简单的加入和减少系统的模块,配置系统的硬件。
通过软件的修补、替换完成系统的升级和更新换代。
(3)系统的易用性和易维护性
管理系统是直接面对使用人员的,而使用人员往往对计算机并不时非常熟悉。
这就要求系统能够提供良好的用户接口,易用的人机交互界面。
要实现这一点,就要求系统应该尽量使用用户熟悉的术语和中文信息的界面;针对用户可能出现的使用问题,要提供足够的在线帮助,缩短用户对系统熟悉的过程。
(4)系统的标准性
系统在设计开发使用过程中都要涉及到很多计算机硬件、软件。
所有这些都要符合主流国际、国家和行业标准。
(5)系统的先进性
目前计算系统的技术发展相当快,做为药品管理系统工程,在系统的生命周期尽量做到系统的先进,充分完成企业信息处理的要求而不至于落后。
这一方面通过系统的开放性和可扩充性,不断改善系统的功能完成。
另一方面,在系统设计和开发的过程中,应在考虑成本的基础上尽量采用当前主流并先进且有良好发展前途的产品。
(6)系统的响应速度
药品管理系统系统在日常处理中的响应速度为秒级,达到实时要求,以及时反馈信息。
在进行统计分析时,根据所需数据量的不同而从秒级到分钟级,原则是保证操作人员不会因为速度问题而影响工作效率。
2.3数据描述
经过调研,我们发现,一个药店最基本的工作流程是进货和销售。
消费者选择药店进行购物,药店通过我们的药店管理系统进行药品的销售及销售后的库存整理。
流程简介:
2.3.1要求
A.为每种药品设置编号,输入药品的信息,以便于管理人员对药品进行管理,也便于核对修改
B.为职工设置库,便于操作员对职工进行管理
C.为供货商设置库,便于操作员及时与供货商联系货源
D.设置系统权限
E.药品价格分为进货价、零售价和批发价
2.3.2目标
A.使药品销售的信息能及时得到统计、查询
B.方便操作员的操作,达到简单、易用的效果
C.提高操作员的工作效率
D.提高操作的正确率
E.提高系统的可靠性及安全性
第三章系统的数据库相关设计
数据库的设计是指对一个给定的应用环境,构造数据库模式,建立数据库及其应用系统,满足各种用户需求。
作为信息资源开发、管理和服务的一种有效的手段,数据库技术的应用已越来越广泛,从小型的单项事务处理系统到大型的信息系统大都用先进的数据库技术来保持系统数据的安全性、完整性和共享性。
对一个实际的系统来说,数据库表的设计在遵循数据库理论的同时,必须能用开发工具来实现用户在各方面提出的功能要求。
2.1系统的概念模型设计(E-R图)
2.2系统的逻辑模型设计(逻辑表展现)
(1)系统的逻辑关系
药品信息(药品编号,药品名称,药品类别代号,售价,进价,库存量,供应商,有效期)外码:
药品类别代号、供应商
药品分类索引信息(药品类别代号,类别说明)
员工信息(员工号,姓名,用户名,密码,职位,权限)
客户信息(客户号,客户名称,联系人,联系方式,客户所在城市)
供应商信息(供应商号,供应商名称,联系人,联系方式,供应商所在城市)
药品销售信息(销售编码,销售日期,药品编码,药品名称,单价,数量,供应商,总额,销售员编码)外码:
销售员编码、药品编码
(2)关系模式与码:
药品信息(药品编号,药品名称,药品类别代号,售价,进价,库存量,供应商,有效期)外码:
药品类别代号、供应商
药品分类索引信息(药品类别代号,类别说明)
员工信息(员工号,姓名,用户名,密码,职位,权限)
客户信息(客户号,客户名称,联系人,联系方式,客户所在城市)
供应商信息(供应商号,供应商名称,联系人,联系方式,供应商所在城市)
药品销售信息(销售编码,销售日期,药品编码,药品名称,单价,数量,供应商,总额,销售员编码)外码:
销售员编码、药品编码
(3)关系模式优化:
在上述关系模式中,每一个分量都是不可分割的数据项所以都符合第一范式;而且前四个关系模式都是单个属性作为码,没有任何非主属性对码部分函数依赖,在药品销售信息内虽由三个属性作为码,但也不存在非主性对码的部分函数依赖,所以上都符合第二范式;药品信息、药品类别索引、客户信息、供应商信息四个关系模式中都不存在非主属性对码的传递函数依赖,都属于第三范式。
在员工信息关系模式中,员工是按照权限分类的,职位不同权限也不同,这样该关系模式就存在了非主属性对码的传递依赖:
职工号->职位,职位->权限,所以就将用员工信息分解为如下现个模式:
①员工信息(员工号,姓名,用户名,用户口令,职位)
②职位权限信息(职位,权限)
本系统不考虑职工信息的管理,为了使销售员编号与销售员的职工号连系起来,并能通过职工姓名和职位来修改用户信息所以把员工的部分信息(职工号,姓名,职位)和经理(用户名,密码)合成了员工信息(员工号,姓名,用户名,密码,职位,权限)以便系统功能的实现,所以在此不采用模式分解。
药品销售信息中有大量的数据冗余,表达不明确,将其分解为如下两个模式:
①药品销售主表(销售编码,销售日期,销售员编号,总金额)
②药品销售子表(销售编码,销售日期,药品编码,药品名称,单价,数量,供应商)
2.3系统的物理结构设计(物理模型)
表名:
药品信息表
字段名
字段类型
长度
主键或外键
字段值约束
对应中文属性名
MedicineCode
Char
6
PrimaryKey
NotNull
药品编码
MedicineName
Varchar
32
NotNull
药品名称
MedKindCode
Char
10
Foreignkey
NotNull
药品类别代码
Price
Money
8
售价
ListPrice
Money
8
进价
Number
Int
4
库存量
FirmCode
Char
10
Foreignkey
供应商
Usefulllife
Datetime
8
有效期至
表名:
客户信息
字段名
字段类型
长度
主键或外键
字段值约束
对应中文属性名
GuestCode
Char
10
PrimaryKey
NotNull
客户编码
GuestName
Varchar
16
NotNull
客户名称
gLink
Varchar
12
联系人
gLinkTell
Varchar
11
联系方式
City
Varchar
8
所在城市
表名:
供应商信息
字段名
字段类型
长度
主键或外键
字段值约束
对应中文属性名
FirmCode
Char
10
PrimaryKey
NotNull
供应商编码
FirmName
Varchar
16
NotNull
供应商名称
Link
Varchar
12
联系人
LinkTell
Varchar
11
联系电话
City
Varchar
8
所在城市
表名:
药品销售主表
字段名
字段类型
长度
主键或外键
字段值约束
对应中文属性名
SaleNo
int
4
PrimaryKey
NotNull
销售编码
WorkNo
Char
10
Foreignkey
NotNull
销售员编码
SaleDate
DateTime
8
销售日期
Amount
Money
8
总金额
表名:
药品销售子表
字段名
字段类型
长度
主键或外键
字段值约束
对应中文属性名
SaleNo
int
4
PrimaryKey
NotNull
销售编码
MedicineCode
Char
6
Foreignkey
NotNull
药品编码
MedicineName
Varchar
32
NotNull
药品名称
Price
Money
8
售价
Number
Int
4
数量
Unit
Char
8
单位
Amount
Money
8
金额
表名:
药品类别索引信息
字段名
字段类型
长度
主键或外键
字段值约束
对应中文属性名
MedKindCode
Char
10
PrimaryKey
NotNull
药品类别代码
KindExplanation
Varchar
12
NotNull
类别说明
表名:
员工信息
字段名
字段类型
长度
主键或外键
字段值约束
对应中文属性名
WorkNo
Char
10
PrimaryKey
NotNull
职工号
Name
Varchar
12
姓名
UserRegName
Char
6
NotNull
用户登录名
Password
Char
10
NotNull
用户口令
Position
Char
10
用户身份
Power
Int
4
用户权限
第四章系统实现
1.药品管理系统主界面:
2.入库子窗体:
Select*from入出库where货单号="&Text1.Text&"
Select*from货物详况
Select*from货源地
Select*from客户名
3.增加用户子窗体:
Updatepasswordsetwhereuser=“”+txtNo.Text+“”;
4.修改密码窗体:
Updatepasswordsetpassword=''
whereuser='403003'
5.库房管理子窗体:
1)insertinto销售清单
values('货单号','日期','货源地',编号,'经手人','备注',入出库)
2)updatestoresetst_place='中药区'
wherest_no='403003'
3)deletefromstuf
whereper_no='1234'
6.查询子窗体及其控件:
selectLdepartas货单号,Larrivalas货单号from货单
where货单.药品编号=药品.药品编号
7.货物汇总子窗体:
select总金额from供应商where地址='长沙'
第五章总结
回顾起此次课程设计,至今我仍感慨颇多,在如今单一的理论学习中,很少有机会能有实践的机会。
从选题到定稿,从理论到实践,在整整两星期的日子里,可以说得是苦多于甜,但是可以学到很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。
通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。
在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。