药品管理信息系统.docx

上传人:b****5 文档编号:6904293 上传时间:2023-01-12 格式:DOCX 页数:28 大小:25.21KB
下载 相关 举报
药品管理信息系统.docx_第1页
第1页 / 共28页
药品管理信息系统.docx_第2页
第2页 / 共28页
药品管理信息系统.docx_第3页
第3页 / 共28页
药品管理信息系统.docx_第4页
第4页 / 共28页
药品管理信息系统.docx_第5页
第5页 / 共28页
点击查看更多>>
下载资源
资源描述

药品管理信息系统.docx

《药品管理信息系统.docx》由会员分享,可在线阅读,更多相关《药品管理信息系统.docx(28页珍藏版)》请在冰豆网上搜索。

药品管理信息系统.docx

药品管理信息系统

第一章系统概述

1.1系统开发背景

     随着科技的不断进步,企业都在不断的注重管理的信息化以完善企业管理,增强企业自身的竞争力。

医药业也不例外,通过较完善的信息系统实现自身企业对内部管理的方便性、合理性、快捷性、高效性等要求。

以前的手工管理效率低使最明显的缺陷,另外,数据的一致性不好维护,如某个药品信息的记录有所改动(如更改编号),那么该要品的其他记录就与此不一致,造成查询的费时费力。

要把全部数据都更改又相当不方便。

对药品库存的盘点也很不方便,而且需要较多的人来进行管理操作,而且容易出错,造成数据的不一致。

而药品业是关民生的行业,错误信息可能会造成不可收拾的严重后果。

因此,运用高效、准确的信息管理系统来替代手工管理是完善医药业管理的有效手段。

1.2.系统开发意义

利用数据库系统可以很好的对数据进行维护,减少由于数据不一致等错误带来的麻烦。

方便数据的更新和查询,降低错误率,方便药品信息的维护及库存的盘点。

还可以运用较少的人员,高效的完成对医药的管理。

由于社会的发展不断趋于信息化,各个行业都要加强自身的信息化程度以适应社会的发展。

而管理信息化正迎合了这个趋势,数据库系统在医药业的应用业实现了医药业执行工具、业务管理等的信息化,在这个信息化社会为医药业的发展增加了新的动力。

相信随着社会的不断发展对该类系统的需求会越来越高。

医药管理信息系统,即服务于个人,又服务于企业,并最终服务于社会,这是让科技为人类服务的最好例证,其开发意义显而易见。

 

 

第二章需求分析

2.1信息需求(基本信息)

药品信息:

药品编号,药品名称,药品类别代码,售价,厂价,单位,库存量,有效期至,批准文号等

药品分类索引信息:

药品类别代码,类别说明等

供应商信息:

供应商号,供应商名,联系人,联系电话,所在城市等

药品销售信息:

销售编码,药品编码,药品名称,售价,单位,数量,总额,销售日期等

用户信息:

职工号,姓名,用户登录名,用户口令,用户身份,用户权限等

2.2功能需求

系统要实现的主要功能有:

(1)对药品信息的维护和管理,能够万册很能够药品信息的添加、修改和删除,并按一定条件查询药品信息。

(2)对供应商信息的管理,能够完成信息的添加、修改和删除,并按一定条件查询信息。

(3)对用户信息的管理,能够完成信息的添加、修改和删除,并按一定条件查询信息。

(4)仓库管理,能够查询库存药品信息,并对库存进行更新、盘点

(5)查询功能,要求可以按日期查询,也可按用户选择字段和输入内容查询。

 

 

2.4数据字典

●数据存储及数据流

名字:

销售信息

别名:

销售单

描述:

一次销售结束后所存储的信息并生成单据

定义:

销售信息=销售编码+药品编码+药品名称+单价+数量+单位+销售日期+总额+销售员编号

位置:

存储

输出给顾客

 

名字:

药品信息

别名:

描述:

仓库内存储的所有药品信息(包括所有药品查询的所需信息)

定义:

药品信息=药品编码+药品名称+药品类别+售价+厂价+单位+库存量+有效期至

位置:

存储

输出供查询

 

名字:

用户信息

别名:

描述:

系统用户的信息

定义:

用户信息=职工号+姓名+用户名+用户口令+职位+权限

位置:

存储

输出供查询及维护

 

名字:

供应商信息

别名:

描述:

药品供应商的信息

定义:

供应商信息=供应商号+供应商名称+联系人+联系电话+所在城市

位置:

存储

输出供查询及维护

 

名字:

查询信息

描述:

用户所提出的查询请求

定义:

查询信息=[销售管理查询信息|仓库管理查询信息|日常管理查询信息]

销售管理查询信息=[药品名称|药品类别]

仓库管理查询信息=[药品编码|药品名称|药品类别|过期药品]

日常管理查询信息=[药品编码|药品名称|药品类别|过期药品]

位置:

销售管理系统

仓库管理系统

日常管理系统

 

名字:

更新信息

描述:

用户操作对库存信息的添加、删除、修改

定义:

更新信息=[销售管理更新信息|仓库管理更新信息|日常管理更新信息]

销售管理更新信息=药品编码+新库存量

仓库管理更新信息=药品编码+药品名称+药品类别+售价+厂价+单位+库存量+有效期至

日常管理更新信息=[用户更新信息|供应商更新信息]

用户更新信息=职工号+姓名+用户名+用户口令+职位+权限

供应商更新信息=供应商号+供应商名称+联系人+联系电话+所在城市

位置:

销售管理系统

仓库管理系统

日常管理系统

 

名字:

查询结果

描述:

系统完成用户查询请求后所得结果

定义:

查询结果=[销售管理查询结果|仓库管理查询结果|日常管理查询结果]

销售管理查询结果=药品编码+药品名称+药品类别+售价+单位+库存量+有效期至

仓库管理查询结果=药品编码+药品名称+药品类别+售价+厂价+单位+库存量+有效期至

日常管理查询结果=[药品信息查询结果|销售记录查询结果|用户查询结果|供应商查询结果]

药品信息查询结果=药品编码+药品名称+药品类别+售价+厂价+单位+库存量+有效期至

销售记录查询结果=销售信息=销售编码+药品编码+药品名称+单价+数量+单位+销售日期+总额+销售员编号

用户信息查询结果=职工号+姓名+用户名+用户口令+职位+权限

供应商信息查询结果=供应商号+供应商名称+联系人+联系电话+所在城市

位置:

销售管理系统

仓库管理系统

日常管理系统

 

●处理

名字:

处理信息

编号:

1.1

输入:

销售信息

输出:

销售信息

 

名字:

生成单据

编号:

1.2

输入:

销售信息

输出:

销售信息+销售单

 

名字:

查询处理

编号:

1.4

输入:

药品信息

输出:

查询结果

 

名字:

更新库存

编号:

1.3

输入:

销售信息

输出:

更新信息

 

●数据项

名字:

药品编码

别名:

描述:

唯一地标识库存清单中一种特定药品的关键域

定义:

药品编码=6{字符}6

位置:

药品信息

销售管理查询信息及结果

仓库管理查询信息及结果

日常管理查询信息及结果

 

名字:

库存量

别名:

描述:

仓库内药品的实际数量

定义:

库存量=1{数字}4

位置:

药品信息

销售管理更新信息

仓库管理更新信息

查询结果

 

名字:

总额

别名:

总金额

描述:

记录每张销售单的总销售额

定义:

总额=8{货币}8

位置:

销售信息

 

名字:

销售日期

别名:

描述:

记录药品销售的时间

定义:

销售日期=8{时间}8

位置:

销售信息

第三章总体设计

3.1系统E-R图

3.1.1系统局部E-R图

图3.1供应商、药品实体联系图

图3.2药品、药品类别实体联系图

图3.3仓库、药品实体联系图

图3.4职工、药品实体联系图

3.1.2.系统全局E-R图

通过对系统局部ER图的优化设计系统的基本ER图如下:

图3.5

3.2关系模式

1.关系模式设计

该设计以概念结构设计中的E-R图为主要依据,设计出相关的整体逻辑结构。

根据总E-R图有五个实体但仓库实体在本系统中作用不大而且仅涉及到一个仓库,所以仓库不再单独设计一张表。

再加上一个多对多关系(本系统不考虑供应关系)总共五个关系模式:

药品信息(药品编码,药品名称,药品类别代码,售价,厂价,库存量,单位,有效期至)

药品类别索引(药品类别代码,类别说明)

供应商信息(供应商编码,供应商名称,联系人,联系电话,所在城市)

用户信息(职工号,姓名,用户名,用户口令,职位,权限)

药品销售信息(销售编码,销售日期,药品编码,药品名称,单价,数量,单位,总额,销售员编码)

2.关系模式优化

 3.2.1中的关系模式中的每一个分量都是不可分的数据项所以都符合第一范式;而且所有的前四个关系模式都是由单个属性作为码,没有任何属性对码部分依赖,在药品销售信息内虽由三个属性作为码,但也不存在属性对码的部分依赖,所以上述模式都符合第二范式;药品信息、药品类别索引、供应商信息三个关系模式中不存在传递依赖,都属于第三范式。

在用户信息关系模式中,用户是按照权限分类的,职位不同权限不同,这样该关系模式就存在了非主属性对码的传递依赖:

职工号→职位,职位→权限,所以应将用户信息分解为:

用户信息(职工号,姓名,用户名,用户口令,职位)

职位权限信息(职位,权限)

但本系统不考虑职工信息的管理,为了使销售员编号与销售员的职工号连系起来,并能通过职工姓名和职位来修改用户信息所以把员工的部分信息(职工号,姓名,职位)跟用户基本信息(用户名,用户口令,权限)合成了用户信息(职工号,姓名,用户名,用户口令,职位,权限)以便于系统功能的实现,所以在此不采用分解模式,仍采用原模式。

药品销售信息中有大量的数据冗余,且不够明确。

现将其分解为:

药品销售主表(销售编码,销售日期,销售员编号,总金额)

药品销售子表(销售编码,销售日期,药品编码,药品名称,单价,数量,单位,金额)

其中“金额”由“单价”和“数量”乘积求得,“总金额”由同一销售单内不同药品的“金额”求和得到。

这样不仅方便查询销售总额,也加快了合计数据的速度,也有利于程序的实现。

用户信息模式和药品销售子表模式是为了降低连接操作,减少外键和索引数目对原模式进行重建或分割得来的。

更重要得是,这样不但可以提高查询速度,而且有利于系统实现。

 

 

3.3数据表设计

   通过对关系模式的优化,得到六个基本表:

表3-1药品信息表

字段名

字段类型

长度

主键或外键

字段值约束

对应中文属性名

MedicineCode

Char

6

PrimaryKey

NotNull

药品编码

MedicineName

Varchar

32

 

NotNull

药品名称

MedKindCode

Char

1

Foreignkey

NotNull

药品类别代码

Price

Money

8

 

 

售价

ListPrice

Money

8

 

 

厂价

Number

Int

4

 

 

库存量

Unit

Char

2

 

 

单位

UsefulLife

Datetime

8

 

 

有效期至

 

表3-2供应商信息

字段名

字段类型

长度

主键或外键

字段值约束

对应中文属性名

FirmCode

Char

4

PrimaryKey

NotNull

供应商编码

FirmName

Varchar

16

 

NotNull

供应商名称

Link

Varchar

12

 

 

联系人

LinkTell

Varchar

11

 

 

联系电话

City

Varchar

8

 

 

所在城市

 

表3-3药品销售主表

字段名

字段类型

长度

主键或外键

字段值约束

对应中文属性名

SaleNo

int

4

PrimaryKey

NotNull

销售编码

WorkNo

Char

2

Foreignkey

NotNull

销售员编码

SaleDate

DateTime

8

 

 

销售日期

Amount

Money

8

 

 

总金额

 

表3-4药品销售子表

字段名

字段类型

长度

主键或外键

字段值约束

对应中文属性名

SaleNo

int

4

PrimaryKey

NotNull

销售编码

Medicinecode

Char

6

Foreignkey

NotNull

药品编码

MedicineName

Varchar

32

 

NotNull

药品名称

Price

Money

8

 

 

售价

Number

Int

4

 

 

数量

Unit

Char

2

 

 

单位

Amount

Money

8

 

 

金额

 

 

表3-5药品类别索引信息

字段名

字段类型

长度

主键或外键

字段值约束

对应中文属性名

MedKindCode

Char

1

PrimaryKey

NotNull

药品类别代码

KindExplanation

Varchar

16

 

NotNull

类别说明

 

表3-6用户信息

字段名

字段类型

长度

主键或外键

字段值约束

对应中文属性名

WorkNo

Char

2

PrimaryKey

NotNull

职工号

Name

Varchar

12

 

 

姓名

UserRegName

Char

3

 

NotNull

用户登录名

Password

Money

3

 

NotNull

用户口令

Position

Money

10

 

 

用户身份

Power

Int

10

 

 

用户权限

 

 

第四章实现

4.1数据库实现

   根据3.3数据表设计的设计结果,运用DBMSSQLServer2000的企业管理器建立数据库表。

药品信息表(MedInfor)设置药品编码(MedicineCode)为主码,药品类别索引表(MedKindInfor)设置药品类别代码(MedKindCode)为主码,销售主表(SaleMainTable)设置销售编码(Saleno)及销售日期(SaleDate)共同作为主码,销售子表(SaleChildTable)设置销售编码(SaleNo)、销售日期(SaleDate)和药品编码(MedcineCode)共同作为主码,用户信息表(UserInfor)设置职工号(WorkNo)作为主码,供应商信息表(FirmInfor)设置供应商编码(FirmCode)为主码。

属性的字符类型及长度参照3.3数据表设计结果进行设置

每类药品可以有好多种药,每种药只有一个类别,所以药品类别索引表与药品信息表存在一对多的关系,以MedKindInfor的主码MedKindCode作主键,MedInfor的MedKindCode作外键建立关系。

销售子表内的药品编码药参照药品信息表内的药品编码,即销售子表与药品信息表存在参照关系,以MedInfor的MedicineCode作主键,SaleChildTable的MedicineCode作外键建立关系。

销售主表与销售子表存在依赖关系,以SaleMainTable的Saleno和SaleDate作为主键,SaleChildTable的Saleno和SaleDate作为外键建立关系。

销售主表内的职工号药参照用户信息表的职工号,即销售主表与用户信息表存在参照关系,以SaleMainTable的Workno为主键,UserInfor的WorkNo为外键建立关系。

4.2系统功能结构

系统根据用户身份的不同分为三个功能模块:

销售管理模块,仓库管理模块和日常管理模块。

在销售管理模块,销售员可以根据顾客要求查询相关药品的部分信息,主要是库存量和售价的查询;还可以完成药品的销售,根据顾客所买药品的代码和数量存储销售信息,主要是对销售数量和销售总额的记录,并在销售完成后实现当前库存的更新。

在仓库管理模块,仓库管理员可以查看药品的全部信息,对药品信息进行维护,盘点库存信息,清除过期药品等。

在日常管理模块,管理者可以查看药品信息、销售记录,并对供应商信息和用户信息进行管理维护。

具体功能模块图如下:

图4.2系统功能图

4.3模块功能介绍

    该系统共三个功能模块:

销售管理、仓库管理和日常管理。

不同的用户可以进入不同的模块进行相应操作。

如:

销售人员凭借用户名和密码只能进入销售管理系统,进入后可以进行药品的销售和查询;仓库管理员凭借用户名和密码只能进入仓库管理系统,进行药品信息的查询和维护;管理者也要通过身份验证进入日常管理界面进行用户信息和供应商信息的维护即查询及药品信息和销售信息的查询。

系统主界面如下:

图4.3系统主界面

4.3.1销售管理模块

   该模块主要完成前台药品销售及前台查询功能:

销售过程要将销售信息自动存储到销售信息主表及子表内,便且为了维护数据的一致性,药品库存量要随销售量动态更新,若购药量大于库存时应拒绝销售操作;查询功能主要查询顾客所需药品大概信息,可以根据药品名称或所属类别进行查询。

如下是销售管理模块的实现界面:

1.销售员登录界面

图4.4销售管理模块登录界面

该界面通过如下代码跟数据库内用户信息表连接,具体实现代码见附录

PrivateSubForm_Load()

Adodc1.RecordSource="select*fromuserinforwhereuserregname='"&Text1&"'"

Adodc1.Refresh

EndSub

2.前台查询

(1)输入药品名称“盖中盖”所得查询结果如下

图4.5查询结果

(一)

(2)选择药品类别“非处方药”所得查询结果如下

图4.6查询结果

(二)

系统通过如下主要代码实现药品查询功能

按药品名查询

Adodc1.RecordSource="selectmedicinecode药品编码,medicinename药品名称,price 售价,stocknum 库存量,unit单位,usefullife有效期至fromMedInforwheremedicinename='"&Text1&"'"

Adodc1.Refresh

按药品类别查询

SelectCaseCombo1.Text

Case"处方药"

Adodc1.RecordSource="selectmedicinecodeas药品编码,medicinename  药品名称,priceas售价,stocknumas库存量,unitas单位,usefullifeas有效期至fromMedInforwheremedkindcode='1'"

Adodc1.Refresh

Case"非处方药"

Adodc1.RecordSource="selectmedicinecodeas药品编码,medicinenameas药品名称,priceas售价,stocknumas库存量,unitas单位,usefullifeas有效期至fromMedInforwheremedkindcode='2'"

Adodc1.Refresh

  

3.前台销售

(1)号药品,销售量为13时的销售界面

 

系统主要通过如下主要代码实现销售功能

更新库存

Adodc1.Recordset.Update

Text11.Text=Val(Text11.Text)-Val(Text2.Text)

Adodc1.Recordset.Update

Adodc1.Recordset.MoveLast

计算总额

Text17.Text=Val(Text9.Text)*Val(Text2.Text)

x=x+Val(Text17.Text)

Text6.Text=x

 

 

4.3.2仓库管理模块

该模块主要完成药品信息的维护和查询,其中查询功能可以分别按药品代码、药品名称、药品类别或过期药品来查询。

如下是仓库管理模块的实现界面:

1.仓库管理员登录界面

图4.9管理员登录界面

2.药品信息查询

(1)输入代码“”的查询结果界面

图4.10按药品编码的查询结果结果界面

(2)输入药品名称“白加黑”的查询结果界面

图4.11按药品名称的查询结果界面

 

 

 

 

(3)选择药品类别“处方药”的查询结果界面

图4.12按药品类别的查询结果界面

(4)按过期药品查询的结果界面

图4.13按过期药品的查询结果界面

系统主要通过如下主要代码实现查询功能

Adodc1.RecordSource="selectmedicinecodeas药品编码,medicinenameas药品名称,medkindcodeas药品类别代码,priceas售价,listpriceas厂价,stocknumas库存量,unitas单位,usefullifeas有效期至,ratifycodeas批准文号fromMedInforwheremedicinecode='"&Text1&"'"

Adodc1.Refresh

.

4.3.3日常管理模块

该模块可以进行用户信息和供应商信息的维护及查询,主要是对药品信息、销售信息、用户信息和供应商信息的查询。

如下是日常管理模块的实现界面:

1.管理者登录界面

图4.14管理员登录界面

2.药品信息查询(类似与仓库管理的药品信息查询)

3.销售记录查询

(一)销售主表查询界面

图4.15查询销售主表的结果界面

(二)销售子表查询界面

图4.16查询销售子表的结果界面

(三)全部信息查询界面

图4.17查询全部信息的结果界面

4.供应商信息查询

(一)输如供应商编码“1002”得查询结果界面

图4.18按供应商编码的查询结果界面

(二)输入所在城市名“上海”得查询结果界面

图4.19按供应商所在城市的查询结果界面

系统主要通过如下主要代码实现查询功能

Adodc1.RecordSource="selectsalenoas销售编码,amountas总额,saledateas销售日期,worknoas销售员编号fromsalemaintablewheresaleno='"&Trim(Text12.Text)&"'"

Adodc1.Refresh

.

 

第五章设计总结

在课程设计阶段,首先对医药管理进行了了解,仔细分析了该管理对系统功能的要求,并根据这些功能要求对系统进行定义,确定系统必须做什么。

但由于对医药管理了解不多,需求分析难免不够完善,但是基本需求都考虑到了,并用文档准确记录了系统的需求。

之后着手对系统的设计工作,首先是概念结构设计,根据需求分析结果总结系统内实体及联系并绘制系统的局部ER图和全局ER图。

然后是逻辑结构设计,结合需求分析与概念结构设计把设计好的ER图转换为DBMS(SQLServer2000)所支持的数据模型所符合的逻辑结构。

最后运用开发工具VB6.0进行功能的编码实现。

该系统最终能够基本实现绝大多数功能,但是也有很多不做之处,如药品进库信息功能,对新进药品进行入库存储,但是由于进价跟有效期的变化不能只是对该药品的库存量更改。

进价可以运用加成定价法更改,但有效期尚未想到解决方案。

希望老师给与意见及帮助,使系统功能更加完善。

  在这次课程设计中虽然遇到过很多的困难,但我从中学到了很多有用的知识,通过不断的翻阅资料,各个问题的解决使我对系统的设计越来越感兴趣。

相信我从这次课程设计所学到的东西可以让我在以后的学习及工作中受益无限。

 

 

 

 

附录

实验程序源代码

1.登录界面代码:

(以销售员登录为例,仓库管理员和日常管理者登录与此类似,不再赘述)

在主界面菜单“销售管理“内编写代码如下:

Pri

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

当前位置:首页 > 法律文书 > 调解书

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1