医药进销存管理系统
信息A1022班
一系统分析
1 需求分析
随着互联网的发展,利用网络技术来实现“无纸办公”这个概念已经深入
人心,医药管理系统作为医院信息化建设的一个重要平台在完成各种医药资源的合理统计与分配,互联网访问,医院管理,电子设备等方面面发挥了重要的作用。但是现在十分缺少类似的能够满足医院需求的医药进销存管理系统,为规范医院的医药进存销管理和数据统计和分析,在较小的代价下满足用户信息需求,设计了这个医药进存销管理系统。
该医药进存销管理系统是针对医院医药管理方面而开发的一款以医药管理为基础(涉及
到医药的基本信息查询和管理,医药采购,医药销售,医药退货,医药商的信息维护,客户的信息维护等)的医药信息管理软件,它以广泛的调查为基础,最大程度上满足使用需求,同时辅助于其他自定义管理的医院管理系统来提升医院的管理水平,优化资源,尽可能地降低成本,统筹安排以实现最大效益化。
1.1系统需求说明
随着计算机的普及和计算机科学技术的飞速发展,人们开始越来越多地利用计算机解决实际问题。进销存管理是医药行业管理中的重要部分,面对大量的药品进销存信息,采用人力畜力将浪费大量时间,人力和物力,并且数据准确性低,数据汇总速度慢,所
以针对医药行业由于每天销售量很大,呆账,错帐时有发生且常出现开“空单”的现象,开发一个界面友好,易于操作的进销存软件成为医药企业的首选。通过计算机对企业信
息流通过程中的数据进行自动化管理是开发本系统的主要目的。
整个系统从操作简便、界面友好、灵活、使用、安全的要求出发,完成对进货、销
售、库存查询管理的全过程的信息跟踪与管理,包括对操作员与系统数据的维护,信息
的添加、删除、查询、统计等。本系统可以满足医药行业中各种批发、零售及经销公司
的进、销、存方面的需求。
1.2用户需求说明
该需求说明明确的表达了设计实现该医药进存销系统所需要的各种数据和操作需求,建立在这个基础上设计的系统在最大程度上满足了用户的需求而且代价相对较小,其中主要包括有关医药的各种基本信息以及管理人员在处理医药的过程中所体现出来的各种操作特性及相关信息
1.3数据需求:
1:药品在录入信息前要提供药品的基本信息:药品编号、药品名称、通
用码、拼音码、单位、规格、剂型、包装数量、产地、有效期质量标准、经营方式、批号、零售价格、进货价格、批发价格、药品类别、医疗编号等。
2:客户的基本情况信息:客户名,客户号(唯一标识这个客户),客户联系
方式(所在地、邮编、电话、联系人),汇款账号,客户的联系方式等基本信息。3:供应商的基本信息包括:供应商的代号,供应商的地区,供应商的联系方式以及收款银行信息等。
4:药品的采购情况信息,入库时间,药品数量,相应供应商的信息,经办人,
库存状态(采购之后及时调整库存,以便于销售)。
5:药品的销售情况:销售单据,客户编号,销售数量,收款信息,退货状态
(如果客户不满意退货是则修改该状态,并将数据库里的库存修改)等
6:实时提供库存的信息,以便于在进行库存盘点的时候:定期或临时对库存
商品的实际数量进行清查、清点的作业,即为了掌握货物的流动情况(入库、在库、出库的流动状况),对仓库现有物品的实际数量与保管账上记录的数量相核对,以便准确地掌握库存数量。
7:需要用户的信息,以便于权限管理和系统维护。
8:由于在顾客购买药品的时候可能不能一次性付清账,所以需要二次回款,因
而必须在销售的过程中提供收款信息,并在提供回款信息,以便于及时清理账目。
2 可行性分析
经济可行性分析:
项目提出者投资开发此系统之后,药品进销存管理实现了自动化,只需要工作人员录药品,供应商,客户,业务员的相关信息,用户可以共享这些数据,减少工作人员的重复劳动,同时,公司员工可以方便查询库存情况,了解各种商品的库存量以及仓库的分布情况,尽量减少商品的挤压,系统提供业绩查询功能,可按供应商,客户分级也业务员计算业绩,减少管理成本,这样,可以节约企业办公开支和人力成本,提供工作效率;系统开发成本低廉,界面友好,操作简单,不需要投入系统运行维护费用,系统将开发的十分完整维护费用低;技术可行性分析:
硬件和软件的要求都不是很高,目前市场上的一般计算机都可以满足系统开发的要求,维护工作也很方便,有一定经验的人员可以在短时间掌握维护工作;社会可行性分析:
随着计算机网络和信息技术,电子商务的发展壮大,当期医院信息化特别是药
品进销存系统化成为必然;
3 业务流程分析
通过对医院药品进销存的实际调查分析,弄清了药品进销存管理工作的业务流程和管理功能;
系统的业务流程图如下所示:
从业务流程图可以看出该医药进销存系统主要有以下几项管理功能:(1)登录功能
由于是限定医院使用,只有登录系统。
(2)库存管理功能
库存管理功能是在使用系统的开始初始化医院的库存,还对现在的库存进行列表显示,并在显示的列表中做修改操作;库存管理还包括检查库存下限报警和药品有效期报警,给予应有的提示。
(3)药品管理功能
管理员在初始化药品库存的时候,要先添加药品,建立药品库,对所有药品实行编码并生成相应的编号。药品添加要把药品所有信息进行添加,包括:药品名称、化学名称、规格、药品类别、剂型、以及批号厂商等。对于添加的药品数据信息也可以进行相应的修改,或者删除,全凭用户需要。
(4)入库单管理功能(采购业务)
入库单管理即是需要管理所有的入库单,并以列表的形式显示出来;该功能要实现添加入库单,完成药品入库,并在把入库信息显示出来,并能根据要求进行入库单修改或废除。
(5)出库单管理功能(销售业务)
管理员可以对出库的药品进行管理,在药品出库的时候把出库信息记录下来留作依据。如果出库药品需要修改的,可以在出库单列表中把单子选中出来进行修改,甚至删除。方便药品出库时的更改需要。
三数据流图
上述医药进销存管理系统的数据流图如下图所示:
药品库存管理数据流程图
、四数据字典
4.1数据流描述(入库单为例):
1.数据流编号:D_01
数据流名字:入库单
简述:根据库存信息的出来的库存信息;
数据流来源:采购部
数据流去向:入库单审核模块
数据项组成:库存信息=ID+药品编号+批号+药品名称+数量+单位+入库日期+下限+验收人
数据流量:约50张/日;
高峰流量:约80张/日;
2. 数据流编号:D_02
数据流名字:合格的入库单
简述:经过审核合格的药品图库单
数据流来源:入库单审核模块
数据流去向:入库处理模块
数据流组成:入库单信息=ID+药品编号+批号+入库日期+数量+单位+验收人
数据流量:约50张/日;
高峰流量:约80张/日;
3. 数据流编号:D_02
数据流名字:不合格的入库单
简述:经过审核不合格的药品图库单
数据流来源:入库单审核模块
数据流去向:采购部
数据流组成:入库单信息=ID+药品编号+批号+入库日期+数量+单位+验收人
数据流量:约1张/周;
高峰流量:约1张/周;
4.2数据处理描述(入库处理为例):
1.处理逻辑编号:P-01
处理逻辑名称:入库单审核
简述:审查采购部送来的入库单是否合格;
输入的数据流:入库单
处理描述:审查车间送来的额入库单填写格式是否正确,药品实际入库数量和金额与入库单上填写的数据是否一致等,不合的单据返回给采购部,合格的数据单据交给记账员进行库存台账登记;
输出的数据流:合格的入库单、不合格的入库单;
处理频率:30次/日
2.处理逻辑编号:P-02
处理逻辑名称:入库处理
简述:根据合格的入库单,将入库数据登记到库存台账;
输入的数据流:合格的入库单
处理描述:根据合格的入库单,将入库数据登记到库存台账输出的数据流:合格的入库单、不合格的入库单;
输出的数据流:入库数据
处理频率:30次/日
4.3数据存储的描述(以库存台账为例):
数据存储编号:F-01
数据存储的名称:库存台账
简述:记录药品出入库的明细账
数据存储的组成:日期+药品代码+药品名称+入库数量+零售数量+批发数量+ 库存数量
关键字:日期+药品代码
相关联的处理:P-01,P-02,P-03;
4.4 外部实体描述
外部实体编号:S-01
外部实体的名称:采购部
简述:采购药品入库
输入的数据流:D-03
输出的数据流:D-01
外部实体编号:S-02
外部实体的名称:销售部
简述:销售药品出库
输入的数据流:D-07
输出的数据流:D-05
二系统设计
1 系统功能设计
系统管理模块分为用户登录、库存管理、药品管理、入库单管理和出库单管理;库存模块主要是库存初始化模块、库存下限报警模块、药品有效期模块;药品管理模块主要有数据修改(药品添加)模块;入库单模块主要有入库单数据修改(入库);出库单管理模块主要有出库单数据修改(出库)。
系统体系结构框图如下图:
2数据库设计
概念设计
E-R图:
数据库逻辑设计
关系模式:
供应厂家(供应厂编号,供应厂名称,供应厂厂址,供应厂电话,供应厂网站)
药品(药品编码,药品商品名,通用名,药品分类,药品剂型,单价,生产日期,保质期,库存量,报损量)
仓库(仓库编号,仓库类别,仓库管理人员)
管理(职工号,仓库号)
客户(客户编号,名称,性别,电话)
供应(供应厂家编号,药品编码,供应量)
销售(药品编号,客户编号,销售量)
退货(药品编号,客户编号,退货原因,退货数量)
数据库数据表:
附录2模式定义
表2-1 Supplier关系模式定义
属性列数据类型可否为
空说明
SupplierNo char(10) not
null 供应商编号
SupplierName char(20) not
null 供应商名称
SupplierAddr char(20) 供应商地址
SupplierTel char(15) 供应商联系方式
SupplierNet char(20) not
null 供应商网站
表2-2 Medicine关系模式定义
属性列数据类型可否为
空说明
MedNo char(10) not null 药品编号MedName char(20) not null 药品商品名MedTong char10) not null 药品通用名MedKind char(10) 药品分类MedType char(10) 药品剂型
MedIpri char(10) 药品进货单价
MedDate date 生产日期MedExp char(10) 保质期
表2-3 Storehouse关系模式定义
属性列数据类型可否为空说明StoNo char(10) not null 仓库编号StoKind char(10) 仓库类别StoMan char(10) 管理人员
表2-4 Employee关系模式定义
属性列数据类型可否为空说明
EmpNo char(10) not null 职员职工号
EmpName char(10) 职员姓名EmpSex char(2) 职员性别EmpAge smallint 职员年龄表2-5 Customer 关系模式定义
属性列数据类型可否为
空说明
CusNo char(10) not null 客户编号CusName char(10) not null 客户名称CusSex char(2) 性别
CusTel char(15) not null 客户联系方式
表2-6 Buy关系模式说明
属性列数据类型可否为空说明
BuyNo char(10) not null 采购单编号
BuyQua int 采购量表2-7 Storage关系模式说明
属性列数据类型可否为
空说明
AccNo char(10) not
null
药品入库单
编号
AccQua int 药品入库数量
表2-8 Sale关系模式说明
属性列数据类型可否为
空说明
SaleNo char(10) not
null 销售单编号
SaleTime datetime 销售时间SaleQua int 销售数量
SaleMoney float 销售所得金额
表2-9 Back关系模式说明
属性列数据类型可否为
空说明
BackNo char(10) not
null 退货单编号
BackSake Char(20) 退货原因BackQua int 退货数量
输入输出设计:
医药进销存管理系统主界面
药品采购
基本信息查询
入库明细查询
药品销售
三数据库实施与测试
3.1 数据库实施
数据库的物理设计阶段之后就进入了实施阶段,这一阶段要用SQL2000来操作。具体的数据库,数据表,视图,索引和存储过程等都是这个阶段用SQL语句创建。
3.1.1 数据库及数据库对象建立
药店的药品管理所涉及的对象主要包括:数据库、基本表、视图、索引、触发器以及存储过程。以实现对数据的操作的简便
和有效。
3.1.2 数据入库
各个主要数据表如药品信息,供应厂家信息记录在20条以上,经过整理数据收集在Excel中,设置所需格式用批量导入的方式进行导入到数据库中。先导入基本表,然后导入关系表,成功证明导入后的数据表可以打开,导入失败要检验是否符合完整性和逻辑要求。进行修改重新导入。
3.2 数据库测试
主要内容是对建立的数据库及数据库对象进行测试。设计的测试案例主要有基本信息表数据的查询,插入,删除和更新操作。插入不满足约束条件的数据以检测触发器触发,基本操作都是以存储过程的形式实现代码的封装,执行时调用存储过程。