医院药品进销存系统(DOC37页).doc

上传人:小飞机 文档编号:2078437 上传时间:2023-01-07 格式:DOC 页数:37 大小:878KB
返回 下载 相关 举报
医院药品进销存系统(DOC37页).doc_第1页
第1页 / 共37页
医院药品进销存系统(DOC37页).doc_第2页
第2页 / 共37页
医院药品进销存系统(DOC37页).doc_第3页
第3页 / 共37页
医院药品进销存系统(DOC37页).doc_第4页
第4页 / 共37页
医院药品进销存系统(DOC37页).doc_第5页
第5页 / 共37页
点击查看更多>>
资源描述

《医院药品进销存系统(DOC37页).doc》由会员分享,可在线阅读,更多相关《医院药品进销存系统(DOC37页).doc(37页珍藏版)》请在三一办公上搜索。

1、目 录一、概述71.1 课程设计的目的71.2 课程设计的内容71.3 课程设计的要求7二、需求分析72.1 系统需求72.2 数据字典7三、系统总体设计73.1系统总体设计思路73.2 概念模型设计73.2.1 局部E-R图73.2.2 全局E-R图73.3 逻辑结构设计73.4 数据库建立实施73.4.1 建立数据库73.4.2 建立关系表8四、系统实现8五、系统评价8六、课程设计心得、总结8参考文献:8一、概述1.1课程设计的目的随着互联网的发展,利用网络技术来实现“无纸办公”这个概念已经深入人心,医药管理系统作为医院信息化建设的一个重要平台在完成各种医药资源的合理统计与分配,互联网访问

2、,医院管理,电子设备等方面面发挥了重要的作用。但是现在十分缺少类似的能够满足医院需求的医药进销存管理系统,为规范医院的医药进存销管理和数据统计和分析,在较小的代价下满足用户信息需求,设计了这个医药进存销管理系统。1.2课程设计的内容(1)主要的数据表药品分类代码表,药品库存表,供货商信息表,采购信息表等等。(2)主要功能模块1) 新药品的入库。2) 过期药品的出库登记、处理记录。3) 药品库存检索。4) 供货商信息检索。5) 药品采购记录管理。6) 药品用药说明信息管理。7) 输出相应的数据报表。8) 具有数据备份和数据恢复功能。1.3课程设计的要求具体项目内容去医院进行调研,药品编码也应参考

3、国家统一编码方法。二、需求分析2.1 系统需求目前中小型药店的营业规模不断的扩大,药品的数量和种类不断增加。对于许多仍处于人工管理阶段的药店来说管理也越来越复杂。如果以药店工作人员的增加来实现药品的管理虽然能使工作变得方便起来但是这样带来更大的经济开销对于中小型药店来说要解决实际问题并不是很合适。开发药品进销存管理系统可以很大程度上方便管理人员对药品的管理实现药品管理的高效化和统一化。为便于管理的方便性和可行性。根据现阶段的应用需求的开发目标设计药品进销存数据库管理系统。实现药品采购库存和销售管理的功能完成对药品从采购到销售的流水作业的数据管理功能。根据市场的需求,要求系统具有以下功能:1)新

4、药品的入库。2)过期药品的出库登记、处理记录。3)药品库存检索。4)供货商信息检索。5)药品采购记录管理。6)药品用药说明信息管理。7)输出相应的数据报表。8)具有数据备份和数据恢复功能。系统主要为登陆,登陆后可以浏览,查询,添加,删除药品信息外还可以对销售记录进行浏览,删除,添加,修改。本系统是根据中小企业的实际需求而开发的,完全能够实现药品入库、销售管理,通过本系统可以达到以下目标:q 系统运行稳定,安全可靠。q 界面设计美观,人机交互界面友好。q 信息查询灵活、方便、快捷、准确,数据存储安全可靠。q 强大的报表预览、打印功能。q 信息安全保密。开发及运行环境硬件要求CPU:300MHz以

5、上的处理器内存:128MB,推荐256MB硬盘:150MB以上剩余空间显示像素:最低800*600,最佳效果1024*768软件要求操作系统:Windows2000/NT/XP/Vista。数据库:SQL Server2000。2.2数据字典2.2.1数据项数据项编号数据项名数据项含义与其他数据项关系类型Dl-1Supnumber供应商编号varchar(10)Dl-2Supname供应商名称varchar(30)Dl-3Supadress供应商地址varchar(30)Dl-4Supphone供应商电话varchar(20)Dl-5Gsname药品名称varchar(20)Dl-6Gkind

6、药品分类varchar(20)Dl-7Gtype药品剂型varchar(20)Dl-8Gprice药品单价floatDl-9Gshelf药品保质期dateDl-10Empnumber职员编号varchar(10)Dl-11Empkind职员类别varchar(10)Dl-12Empname职员姓名varchar(10)Dl-13Hounumer仓库编号varchar(10)Dl-14Houkind仓库类别varchar(10)Dl-15Houaddr仓库地址varchar(20)Dl-16Buynumber采购单编号varchar(10)Dl-17Buydate采购日期dateDl-18Buy

7、liang采购量intDl-19Sendnumber发货单编号varchar(10)Dl-20Sendliang发货量intDl-21Senddate发货日期dateDl-22Lostnumber报损单编号varchar(10)Dl-23Lostreas报损原因varchar(30)Dl-24Lostliang报损量intDl-25Swnumber实物清单编号varchar(10)Dl-26Swliang实物数量intDl-27Jcnumber盘查记录单编号varchar(10)Dl-28Jcliang记录量intDl-29Pancnumber盘存单编号varchar(10)Dl-30Panc

8、liang盘存实际量intDl-31Dynumber订药单编号varchar(10)Dl-32Dydate订药日期dateDl-33Dyliang订药数量intDl-34Salenumber销售单编号varchar(10)Dl-35Saledate销售日期dateDl-36Saleliang销售量intDl-37Cusnumber客户编号varchar(10)Dl-38Cusname客户姓名varchar(10)Dl-39Cussex客户性别varchar(2)Dl-40Cusphone客户电话varchar(20)Dl-41Innumber药品入库单编号varchar(10)Dl-42Ind

9、ate药品入库日期dateDl-43Inliang药品入库量intDl-44Outnumber药品出库单编号varchar(10)Dl-45Outreas药品出库原因varchar(30)Dl-46Outdate药品出库时间dateDl-47Outliang药品出库量intDl-48CBacknum客户退货单编号varchar(10)Dl-49Cbackliang客户退货单量intDl-50Cbackreas客户退货原因varchar(30)Dl-51Sbacknum药店退货单编号varchar(10)Dl-52Sbackliang药店退货单数量intDl-53Sbackreas药店退货原因v

10、archar(30)2.2.2数据结构数据结构编号数据结构名称数据结构含义 数据结构组成DS-1Supplier供应商Supnumber,Supname,Supadress,SupphoneDS-2Customer客户Cusnumber,Cusname,Cussex,CusphoneDS-3Goods药品Gname,Gkind,Gtype,Gprice,GshelfDS-4Hourse仓库Hounumber,Houkind,HouaddrDS-5Employer职员Empnumber,Empname,EmpkindDS-7Buylist采购单Buynumber,Buydate,Buyliang

11、,Gname,Supnumber,EmpnumberDS-8Sendlist发货单Sendnumber,Sendliang,Senddate,Gname,Supnumber,EmpnumberDS-9Lostlist报损单Lostnumber,Lostreas,Lostliang,Gname,Empnumber,HounumberDS-10Swlist实物清单Swlistnumber,Swliang,Gname,Empnumber,HounumberDS-11Jclist盘查记录单Jcnumber,Empnumber,JcliangDS-12Panclist盘存单Pancnumber,Panc

12、liang,Gname,Hounumber,EmpnumberDS-13Dyaolist订药单Dynumber,Dydate,Dyliang, Gname,Cusnumber,EmpnumberDS-14Salelist销售单Salenumber,Saledate,Saleliang,Cusnumber,Empnumber,GnameDS-15Inlist入库单Innumber,Indate,Inliang,Gname,Empnumber,HounumberDS-16Outlist出库单Outnumber,Outdate,Outliang,Gname,Empnumber,HounumberDS

13、-17Cbacklist客户退货单CBacknumber,Cbackliang,Cbackreas,Gname,Cusnumber,EmpnumberDS-18Sbacklist采购退货单Sbacknumber,Sbackliang,Sbackreas,Gname,Empnumber,Supnumber2.2.3数据流数据流名称简述数据流来源数据流去向 数据流组成数据流量高峰流量发货单供应商发出的收货单供应商验收货品模块Sendnumber,Sendliang,Senddate,Gname,Supnumber,Empnumber15/月30/月采购单采购部发给供应商的采购单采购部供应商Buyn

14、umber,Buydate,Buyliang,Gname,Supnumber,Empnumber15/月30/月合格单采购部发给库管员的进货单采购部库管模块Buynumber,Buydate,Buyliang,Gnumber,Gsname,Empnumber,Kugname15/月30/月不合格单采购部发给退货部的清单采购部退货模块Buynumber,Buydate,Buyliang,Gnumber,Gsname15/月30/月退货单退货部发给供应商的退货单退货部供应商Sbacknumber,Sbackliang,Sbackreas,Gname,Empnumber,Supnumber15/月3

15、0/月入库单库管员编制的入库记录库管员编制库存记录模块Innumber,Indate,Inliang,Gname,,Hounumber30/月60/月退货记录单退货部向供应商的退单记录退货部编制退货记录模块Sbacknum,Sbackliang,Sbackreas,Sbackdate,Gnumber,Gsname31/月61/月采购记录单采购部编制的采购记录采购部采购记录模块SendnumberSendliangSenddate,Gnumber,Gsname,Supnumber,Supname32/月62/月订货单客户发出的订货单客户销售部Dynumber,Dydate,Dyliang, Gn

16、ame,Cusnumber,Empnumber50/月100/月销售单销售部给客户的销售记录销售部客户Salenumber,Saledate,Saleliang,Cusnumber,Empnumber,Gname51/月101/月出库单销售部给库房的出库记录销售部库房Outnumber,Outdate,Outliang,Gname,Empnumber,Hounumber52/月102/月退货单客户给退货部的退货单客户退货模块CBacknumber,Cbackliang,Cbackreas,Gname,Cusnumber,Empnumber15/月30/月销售记录单销售部编制的销售记录销售部销售

17、记录模块Salenumber,Saledate,Saleliang,Cusnumber,Empnumber16/月31/月退货记录单退货部给客户的退单记录退货部编制退货记录模块CBacknumber,Cbackliang,Cbackdate,Gnumber,Cusnumber17/月32/月退单退货部审核通过的客户退单客户退货模块CBacknum,Cbackliang,Cbackreas,Cbackdate,Gnumber,Cusnumber18/月33/月退货确认单退货部给库房的退货记录退货部库房CBacknum,Cbackliang,Cusnumber,Empnumber,19/月34/月

18、报损单库管给主管部的报损记录库管员编制主管部Lostnumber,Lostreas,Lostliang,Gname,Empnumber,Hounumber30/月50/月不合格报损单主管检查不生效的报损单主管部库管Lostnumber,Lostliang,Gnumber,Gsname,Empnumber31/月51/月合格报损单主管检查生效的报损单主管部报损模块Lostnumber,Lostliang,Gnumber32/月52/月报损记录单主管检查的生效报损记录单主管部报损记录模块Lostnumber,Lostliang,Gnumber33/月53/月报损清单主管部发给库房的报损记录主管部库

19、房记录模块Lostnumber,Lostliang,Gnumber,Empnumber34/月54/月药品清单库管发给盘查部的实物清单库管员编制盘查部Pancnumber,Pancdate,Pancliang,Gnumber,Empnumber35/月55/月记录单盘查部盘查后的记录单盘查部编制盘查部Pancnumber,Pancdate,Pancliang,Gnumber36/月56/月盘存单账务不实盘查部生成新的盘存单盘查部编制库房和盘存记录Pancnumber,Pancliang,Gname,Hounumber,Empnumber37/月57/月盘存清单盘查部发给库房的记录盘查部编制库房

20、记录模块Pancnumber,Pancdate,Pancliang,Gnumber,Empnumber38/月58/月盘存记录单盘查部生成的盘查记录盘查部编制盘查记录模块Pancnumber,Pancdate,Pancliang,Gnumber,Empnumber38/月58/月2.2.4处理逻辑处理逻辑编号处理逻辑名称简述输入的数据流处理输出的数据流处理频率P1.1验收采购部检验来货F1发货单根据发货单检验商品F3合格单,F4不合格单30/月P1.2入库检验合格入库F3合格单登记库存账目F6入库记录单,F8采购记录单35/月P1.3退货检验不合格退去F4不合格单确定退货F5退货单,F7退货记

21、录单10/月P2.1销售销售部向客户卖货F9订货单导购提货F10销售单,F11出库单50/月P2.2确认退货退货部处理客户退货单F12退货单处理退货单F15退单5/月P2.3退货客户退货成功F15退单客户退货成功F14退货记录单,F16退货确认单5/月P3.1主管检查主管检查报损单F17报损单根据报损单检查报损F18不合格报损单,F19合格报损单1/月P3.2确定报损单主管接受合格报损单F19合格报损单确定报损单F20报损记录单,F21报损清单1/月P3.3报损不生效主管反馈不合格报损单F18不合格报损单向库管反馈不合格报损单F18不合格报损单1/月P4.1存货清查对仓库存货清查F22药品清单

22、根据药品清单存货清查F23记录单2/月P4.2对比账单对比清查结果F23记录单根据药品清单对比记录单F22药品清单,F24盘存单3/月P4.3确定盘存单确定盘存单F24盘存单登记盘存和库存记录F25盘存清单,F26盘存记录单4/月2.2.5数据存储数据存储编号数据存储名称 简述 数据存储组成相关联的处理S1库存记录商品入库出库,客户退货,报损盘存清查后修改库存量商品编号,仓库编号,存储量P1.2,P2.2,P2.3,P3.2,P4.3S2采购记录商店从供应商采购的货物记录供应商编号,商品编号,商品名,商品数量,商品价格P1.2S3退货记录商店退给供应商的退货记录供应商编号,商品编号,商品名,商

23、品数量P1.3S4销售记录商品卖给客户的销售记录商品编号,客户编号,商品名,商品数量P2.1S5退货记录客户退给商店的退货记录商品编号,客户,商品名,商品数量P2.3S6报损记录库房报损记录仓库编号,商品编号,商品名,报损数量P3.2S7盘存记录商品盘存清查的记录仓库编号,商品编号,商品名,实际数量P4.3三、系统总体设计3.1系统总体设计思路将需求分析得到的用户需求抽象为信息结构(概念模型)的过程。要能充分的反应事物与事物之间的联系,是对现实世界的一个真实模型。在需求分析阶段得到的应用需求首先抽象为信息世界的结构才能更好的用某一DBMS实现这些需求。E-R模型是概念模型的有力工具。逐一设计分

24、E-R图,再将所有的分E-R图综合成系统的总E-R图。3.2 概念模型设计3.2.1 局部E-R图局部E-R图的建立依据于数据流图的建立。以下可从第二层数据流图分别建立局部E-R图。详见图1-1至1-8。 图1-1 局部E-R图 图1-2 局部E-R图 图1-3 局部E-R图 图1-4 局部E-R图 图1-5 局部E-R图 图1-6 局部E-R图 图1-7 局部E-R图 图1-8 局部E-R图3.2.2 全局E-R图综合各部分的局部E-R图,药品进销存管理系统的总体E-R图的设计如下图1-10所示。图1-10 全局 E-R图3.3 逻辑结构设计逻辑结构设计的任务就是把概念结构设计阶段设计好的基

25、本E-R图转换为与选用DBMS产品所支持的数据模型相符合的逻辑结构。根据DBMS产品以及不同系统的限制,设计逻辑结构时一般有以下三个步骤:首先将概念结构转换为一般的关系,网状,层次模型;将转换来的关系,网状,层次模型向特定DBMS支持下的数据模型转换;最后对数据模型进行优化。药品管理系统的设计采用关系模型。E-R图转化为关系模型实际上就是要将实体型、实体的属性和实体型之间的联系转换为关系模式。一个实体型转换为一个关系模式。实体的属性就是关系的属性,实体的码就是关系的码。对于实体型间的联系有以下不同的情况:(1) 一个1:1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。如

26、果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性。(2) 一个1:n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并。如果转换为一个独立的关系没模式,则与联系向连的各实体的码以及联系本身的属性均转换为关系的属性。(3) 一个m:n联系转换为一个关系模式,与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,各实体的码组成关系的码或关系的码的一部分。3.4 数据库建立实施 3.4.1 建立数据库3.4.1.1索引建立索引是加快查询速度的有效手段。如果访问某一数据项的频率较高时,可为之建立索引。而系统在存取数据时会自动选择合适的索引

27、作为存取路径,对用户是透明的。在本系统由于药品和供应厂家的访问频率较大,故为之建立索引。由于在使用时供应商的信息表,药品信息表,客户信息表访问的次数较多。故为之建立索引。建立的索引如下表所示。 表3-1编号名称定义备注I-1In_SupName见附录3.4.1.2触发器触发器是用户定义在关系表上的一类由事件驱动的过程。触发器的定义可以更加便捷的实现数据的操作,增加数据操作的灵活性,对数据有更大的控制能力。这里只要建立触发器来实现对数据的约束条件。如进货量,药品入库时保质期的检测等。主要建立的触发器见表。编号触发器名称定义作用T-1tri_C02见附录限制删除C-02客户的退货记录T-2tri_

28、Acc见附录限制某一药品入库量不小于400T-3tri_gprice见附录限制更新的药品价格不小于1元,小于元的改为1元T-4tri_gshelf见附录保质期到2010年的不允许插入T-5tri_buy见附录限制采购量更新量不小于100表3-23.4.1.3存储过程存储过程可以实现数据库操作的增删改功能,在执行时需要调用。运用想函数一样,也可以有参数的参与。定义存储过程提供了过程封装的效果,执行只需调用,在更大程度上简化了数据处理过程。药品的进销存过程部分存储过程如下表所示。表3-3编号存储过程名称定义作用P-1Goods_shelf见附录查询某一药品保质期P-3pro_Gtype见附录查询剂

29、型为普通片的药品P-4pro_cback见附录查询某种原因的药品的退货量P-5pro_addgoods见附录插入一条药品信息P-6pro_delgoods见附录删除一条药品记录P-7pro_orderSale见附录按药品销量排序P-8pro_updIn见附录更新入库量3.4.2建立关系表 供应商列名数据类型约束主外键供应商编号varchar(10)not null主键供应商名称varchar(30)not null供应商地址varchar(40)供应商电话varchar(20) 药品列名数据类型约束主外键药品名称varchar(30)not null主键药品分类varchar(20)药品剂型v

30、archar(20)药品单价floatnot null药品保质期date 职员列名数据类型约束主外键职员编号varchar(10)not null主键职员姓名varchar(10)职员类别varchar(10) 仓库列名数据类型约束主外键仓库编号varchar(10)not null主键仓库类别varchar(10)仓库地址varchar(20) 客户列名数据类型约束主外键客户编号varchar(10)not null主键客户姓名varchar(10)not null客户性别varchar(2)客户的电话varchar(20) 采购列名数据类型约束主外键采购单编号varchar(10)not

31、null主键供应商编号varchar(10)not null外键药品名称varchar(30)not null外键职员编号varchar(10)not null外键采购量intnot null采购日期date 发货列名数据类型约束主外键发货单编号varchar(10)not null主键供应商编号varchar(8)not null外键药品名称varchar(30)not null外键职员编号varchar(10)not null外键发货量intnot null发货日期date 采购退货列名数据类型约束主外键采购退货单编号varchar(10)not null主键供应商编号varchar(10

32、)not null外键药品名称varchar(30)not null外键职员编号varchar(10)not null外键退货量intnot null退货原因varchar(30) 客户退货列名数据类型约束主外键客户退货单编号varchar(10)not null主键客户编号varchar(10)not null外键药品名称varchar(30)not null外键职员编号varchar(10)not null外键退货量intnot null退货原因varchar(30) 销售列名数据类型约束主外键销售单编号varchar(10)not null主键客户编号varchar(10)not nul

33、l外键药品名称varchar(30)not null外键职员编号varchar(10)not null外键销售量intnot null销售日期date 客户订药列名数据类型约束主外键订药单编号varchar(10)not null主键客户编号varchar(10)not null外键药品名称varchar(30)not null外键职员编号varchar(10)not null外键订药量intnot null订药日期date 入库列名数据类型约束主外键入库单编号varchar(10)not null主键药品名称varchar(30)not null外键仓库编号varchar(10)not nu

34、ll外键职员编号varchar(10)not null外键入库量intnot null入库日期date 出库列名数据类型约束主外键出库单编号varchar(10)not null主键药品名称varchar(30)not null外键仓库编号varchar(10)not null外键职员编号varchar(10)not null外键出库量intnot null出库日期date 报损列名数据类型约束主外键报损单编号varchar(10)not null主键药品名称varchar(30)not null外键仓库编号varchar(10)not null外键职员编号varchar(10)not nul

35、l外键报损量intnot null报损原因varchar(30) 盘存 列名数据类型约束主外键盘存单编号varchar(10)not null主键药品名称varchar(30)not null外键仓库编号varchar(10)not null外键职员编号varchar(10)not null外键盘存量intnot null四、系统实现4.1 数据库实施(详见附录)数据库的物理设计阶段之后就进入了实施阶段,这一阶段要用SQL2000来操作。具体的数据库,数据表,视图,索引和存储过程等都是这个阶段用SQL语句创建。4.1.1数据库及数据库对象建立药店的药品管理所涉及的对象主要包括:数据库、基本表、

36、视图、索引、触发器以及存储过程。以实现对数据的操作的简便和有效。(详细的sql代码见附录)。4.1.2 数据入库对各个主要数据表要录入20条以上的记录,方法可用EXCEL批量导入,也可以逐条录入。4.1.3 数据库测试主要内容是对建立的数据库及数据库对象进行测试具体要求:(1)要设计好测试数据(2)对测试的结果要以图片形式,同时注意图片的格式(3)对测试结果进行分析,是否满足设计要求。(数据操作的验证,存储过程的验证详见附录。)五、系统评价这次数据库的课程设计是医院药品进销存系统,医院药品进销存系统能够为用户提供充足的信息和快捷的查询手段。例如:检索迅速、查找方便、可靠性高、存储量大、保密性好

37、等。这些优点能够极大地提高医院药品进销存系统的效率, 而在本系统中还有很多的遗漏和欠缺,但是基本的医院药品进销存系统的功能,已经能够实现。六、课程设计心得、总结在此次数据库设计中,我有一下心得及体会:一在这学期的数据库系统概论学习中,因为对数据库系统的认识不够深刻,以及平时所做的练习都是老师给定的表,自己只是做简单的查询,删除,更新工作,所以给了我一个很大的误区:数据库系统只是一个很简单的系统,它只会做简单的工作。在老师说做数据库设计师,我觉得就是一个简单的事情。但是我错了,在这次实习中我遇到了很多的问题,比如:对于我的题目医药销售管理系统,在对现实的抽象上我遇到了较多的问题,我觉得自己可以做的业务一经老师的指导才知道看似简单的问题其实是那么的复杂。二我深刻的感受到了数据库设计是环环嵌套的,只有做好了需求分析,有了好的数据流图,才会使后期的工作顺利的展开,否则就会在折回来接着做需求分析,所以我们要花大量的时间去做需求分析。在此次课程设计中我按时完成了数据库设计的要求。同时经过这

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号