药品.docx

上传人:b****1 文档编号:603729 上传时间:2023-04-29 格式:DOCX 页数:27 大小:735.13KB
下载 相关 举报
药品.docx_第1页
第1页 / 共27页
药品.docx_第2页
第2页 / 共27页
药品.docx_第3页
第3页 / 共27页
药品.docx_第4页
第4页 / 共27页
药品.docx_第5页
第5页 / 共27页
药品.docx_第6页
第6页 / 共27页
药品.docx_第7页
第7页 / 共27页
药品.docx_第8页
第8页 / 共27页
药品.docx_第9页
第9页 / 共27页
药品.docx_第10页
第10页 / 共27页
药品.docx_第11页
第11页 / 共27页
药品.docx_第12页
第12页 / 共27页
药品.docx_第13页
第13页 / 共27页
药品.docx_第14页
第14页 / 共27页
药品.docx_第15页
第15页 / 共27页
药品.docx_第16页
第16页 / 共27页
药品.docx_第17页
第17页 / 共27页
药品.docx_第18页
第18页 / 共27页
药品.docx_第19页
第19页 / 共27页
药品.docx_第20页
第20页 / 共27页
亲,该文档总共27页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

药品.docx

《药品.docx》由会员分享,可在线阅读,更多相关《药品.docx(27页珍藏版)》请在冰点文库上搜索。

药品.docx

药品

摘要

随着计算机及网络技术的飞速发展,Internet/Intranet应用在全球范围内日益普及,当今社会正快速向信息化社会前进,信息自动化的作用也越来越大,从而使我们从繁杂的事务中解放出来,提高了我们的工作效率。

如何利用现代信息技术使企业拥有快速、高效的市场反映能力和高度的效率,已是医药经营企业,特别是医药连锁经营企业特别关心的问题。

尽快建立一个功能齐备的药品管理系统,完善现代企业的信息化管理机制,已成为医药企业生存发展的当务之急.通过本系统,能帮助用户利用计算机管理药品,快速方便地对所需要的药品进行查找、信息修改等,也使用户更加方便的管理每天的进货情况.

本系统的建设基于Web平台,采用B/S模式实现在线的药品管理。

系统采用SQLServer2005数据库系统作为后台数据库,采用ASP.NET技术对数据库进行操作和维护,采用C#编程语言进行代码编写,详细分析了系统的整体方案设计和实现,具有用户使用更简单、界面更直观等优点。

关键字:

药品管理系统B/S模式数据库

一背景分析

如何利用现代信息技术使企业拥有快速、高效的市场反映能力和高度的效率,已是医药经营企业,特别是医药连锁经营企业特别关心的问题。

尽快建立一个功能齐备的药品进、出库管理系统,完善现代企业的信息化管理机制,已成为医药企业生存发展的当务之急。

通过开发这个药品管理系统,使药品进销存管理工作系统化,规范化,自动化,从而达到提高管理效率的目的。

本系统开发设计思想是实现药品管理的数字化。

尽量采用现有软硬件环境,及先进的管理系统开发方案,提高系统开发水平和应用效果的目的;系统应符合企业管理的规定,满足日常管理的需要,并达到操作过程中的直观,方便,实用,安全等要求;系统采用模块化程序设计方法,这样既便于系统功能的各种组合,又便于未参与开发的技术维护人员补充,维护;系统应具备数据库维护功能,及时根据用户需求进行数据的添加,删除,修改等操作。

1.开发背景和意义

随着计算机技术的飞速发展,计算机在系统管理中的应用越来越普及,利用计算机实现各个系统的管理显得越来越重要。

对于一些大中型管理部门来说,利用计算机支持管理高效率完成管理的日常事务,是适应现代管理制度要求、推动管理走向科学化、规范化的必要条件;而药品管理是一项琐碎、复杂而又十分细致的工作,药品数量之庞大、单价的变化、进货厂商的不同,一般不允许出错,如果实行手工操作,每天进货的情况以及进货时间等等须手工填制大量的表格,这就会耗费药品管理工作人员大量的时间和精力,如果利用计算机进行这些管理工作,不仅能够保证各种核算准确无误、快速记录,而且还可以利用计算机对有关的各种信息进行统计,服务于财务部门其他方面的核算和财务处理,同时计算机具有手工管理所无法比拟的优点,例如:

检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。

这些优点能够极大地提高管理的效率,也是管理行业的科学化、正规化管理,与世界接轨的重要条件。

随着计算机性能不断提高,价格不断下降,计算机已在医院医疗、教学、科研、管理的各个方面得到越来越广泛的应用。

计算机化的药品管理系统已成为现代化医院运营必不可少的基础设施与技术支撑环境。

就好像一个现代化医院的成功运行离不开功能完整、美观舒适的建筑物,技术娴熟的医护人员,性能齐全、高精确的医疗设备一样,它也离不开计算机化的药品管理系统。

2.系统的目的

21世纪以来,人类经济高速发展,人们发生了日新月异的变化,特别是计算机的应用及普及到经济和社会生活的各个领域。

使原本的旧的管理方法越来越不适应现在社会的发展。

许多人还停留在以前的手工操作。

这大大地阻碍了人类经济的发展。

为了适应现代社会人们高度强烈的时间观念,中小型医院药品管理系统软件为医院带来了极大的方便。

中小型医院药品管理系统可实现对药品进行各项管理。

借助本系统显示的结果可以达到以下目的:

●方便使用者可以安全的查找自己想要的各种药品信息;

●通过全面的药品信息采集和处理,辅助提高系统的管理水平;

使用本系统,可以有利的发展小型的药品管理系统的效率。

3.可行性分析

可行性分析是在系统调查的基础上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、社会的方面进行分析和研究,以避免投资失误,保证新系统的开发成功。

可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。

该系统的可行性分析包括以下几个方面的内容。

(1)技术可行性:

该系统采用了B/S技术结构,使用MicrosoftVisualStudio2008开发软件,数据库服务器选用微软公司的SQLServer2005数据库,它是目前能处理所有中小型系统最方便的流行数据库,它能够处理大量数据,同时保持数据的完整性并提供许多高级管理功能。

它的灵活性、安全性和易用性为数据库编程提供了良好的条件。

硬件方面,此系统是使用网页作为服务端的,所以对硬件没什么要求,安装有IE就够了。

(2)经济可行性:

本系统作为一个毕业设计,因此无需考虑。

(3)操作可行性:

作为一个毕业设计,要求很适中,而且都是完全根据所学的知识进行。

 

二、需求分析

1、用户需求

这个系统是帮助他们完成日常繁重窗口业务的工具。

借助计算机系统,使他们凌乱的工作变得有条理,解脱他们需要记忆大量信息(药品的规格,价钱,疾病的名称与编码等)的困难。

保证他们遵守某些规范,减轻他们汇总、统计、报告和传递这些信息的负担。

因此,尽量符合这些事务处理级工作人员的工作秩序与工作习惯,功能完整,操作简单,响应迅速,界面友善,易学易用成为这类软件必须满足的功能要求。

管理员登录以后可以很清晰的看到各种项目列表和可以实现的功能,药品管理一目了然。

由于是限定医院使用,所有只有登录系统。

这个药品管理系统主要涉及医院药库的药品进、出、存等业务。

该内容主要是药品信息管理的药品管理、供货商管理、销售管理、统计管理和用户管理等模块的结合实现,并实现了药品具体信息查询等功能。

系统从用户的角度出发,使用B/S结构,对于页面的美观也需要做一番苦功。

在登录及各个模块的功能做到最好的人性化和审美的结合。

2、功能需求

(1)登录功能

实现用户登录功能。

(2)用户管理功能

药品管理员可以在登陆验证通过以后,进入药品管理系统界面进行增加,删除,更新用户信息以及修改用户密码等.

(3)药品管理功能

用户登录该系统后,可对药品信息进行增加,删除,更新,并且对药品进行查询等操作.

(4)供货商管理功能

用户登录该系统后,可对供货商信息进行增加,删除,修改.

(5)销售管理功能

用户登录系统后,可对销售信息进行查询,对退货信息进行查询.

(6)统计管理功能

用户登录该系统后,可对销售信息进行统计,对进货信息进行统计,对报损信息进行统计.

3、系统数据流图

3.1、系统顶层DFD图

图3.1系统顶层DFD图

3.2、系统第二层DFD图

 

4、数据字典

1、名字:

用户信息(admin)

别名:

来源:

用户信息表

去向:

核对用户信息

定义:

用户信息=ID+用户姓名+用户密码

2、名字:

药品信息

别名:

来源:

药品信息表

去向:

核对药品库存初始化、核对出库信息、核对入库信息

定义:

药品信息=ID+药品名称+药品编号+类型编号+仓库编号+供货商编号+商品条码+单位+产品规格+批准字号+库存量+进价+售价+生产厂商+备注

3、名字:

供货商信息

别名:

来源:

供货商信息表

去向:

核对供货商信息

定义:

供货商信息=ID+供货商编号+供货商名称

4、名字:

交易信息

别名:

来源:

交易登记信息表

去向:

统计交易信息

定义:

交易信息=交易单号+交易编号+药品编号+类型编号+供货商编号+交易时间+交易类型+交易数量

 

5、E-R图

 

图5.1系统E-R图

5.1、药品实体图

5.2、用户实体图

 

图5.2.1用户E-R图

 

5.3、供货商实体图

图5.3.1供货商E-R图

5、开发工具和系统开发平台

5.1、开发工具及开发语言

本系统用到的开发工具是VisualStudio2005(C#),它是迄今为止所能找到的最好的.NET应用系统开发工具。

VisualStudio2005是集成了代码的编辑,编译,连接,调试功能为一体的集成开发工具,能够与SQLServer数据库系统高度的融合,同时提供了丰富的数据库控件,只需编写少量的代码就能够生成简单的数据库应用程序,同时其具有很强的兼容性。

5.2、Web应用程序的开发

简单来说,Web包含了前端的Web浏览器,支持HTTP协议的Web服务器,基于HTML格式的Web页及相关的计算机硬件及辅助设备。

Web开发技术大体上也可以被分为客户端技术和服务器端技术两大类。

客户端上的浏览器通过浏览Web服务器的Web程序,把程序的执行结果显示到客户端的浏览器上,一般为三层结构。

5.3、ASP.NET技术综述

ASP.NET是一个已编译的、基于.NET的环境,可以用任何与.NET兼容的语言(包括VisualBasic.NET、C#和JScrip.NET)创建应用程序。

另外,任何ASP.NET应用程序都可以使用整个.NET框架。

其主要的特点是:

①可管理性:

ASP.NET使用基于文本的、分级的配置系统,简化了将设置应用于服务器环境和Web应用程序的工作;②安全:

ASP.NET为Web应用程序提供了默认的授权和身份验证方案;③易于部署:

通过简单地将必要的文件复制到服务器上,ASP.NET应用程序即可以部署到该服务器上;④增强的性能:

ASP.NET是运行在服务器上的已编译代码。

ASP.NET能利用早期绑定、实时(JIT)编译、本机优化和全新的缓存服务来提高性能等。

5.4、基于B/S体系结构应用系统开发

(1)B/S结构的优点

B/S结构:

(Browser/Server,浏览器/服务器模式):

是WEB兴起后的一种网络结构模式,WEB浏览器是客户端最主要的应用软件。

这种模式统一了客户端,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用。

客户机上只要安装一个浏览器(Browser),如NetscapeNavigator或InternetExplorer,服务器安装Oracle、Sybase、Informix或SQLServer等数据库。

浏览器通过WebServer同数据库进行数据交互。

B/S最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件。

只要有一台能上网的电脑就能使用,客户端零维护。

系统的扩展非常容易。

(2)B/S架构软件的优势与劣势

①维护和升级方式简单。

目前,软件系统的改进和升级越来越频繁,B/S架构的产品明显体现着更为方便的特性。

对一个稍微大一点的单位来说,系统管理人员如果需要在几百甚至上千部电脑之间来回奔跑,效率和工作量是可想而知的,但B/S架构的软件只需要管理服务器就行了,所有的客户端只是浏览器,根本不需要做任何的维护。

无论用户的规模有多大,有多少分支机构都不会增加任何维护升级的工作量,所有的操作只需要针对服务器进行;如果是异地,只需要把服务器连接专网即可,实现远程维护、升级和共享。

所以客户机越来越“瘦”,而服务器越来越“胖”是将来信息化发展的主流方向。

今后,软件升级和维护会越来越容易,而使用起来会越来越简单,这对用户人力、物力、时间、费用的节省是显而易见的,惊人的。

因此,维护和升级革命的方式是“瘦”客户机,“胖”服务器。

②成本降低,选择更多。

大家都知道windows在桌面电脑上几乎一统天下,浏览器成为了标准配置,但在服务器操作系统上windows并不是处于绝对的统治地位。

现在的趋势是凡使用B/S架构的应用管理软件,只需安装在Linux服务器上即可,而且安全性高。

所以服务器操作系统的选择是很多的,不管选用那种操作系统都可以让大部分人使用windows作为桌面操作系统电脑不受影响,这就使的最流行免费的Linux操作系统快速发展起来,Linux除了操作系统是免费的以外,连数据库也是免费的,这种选择非常盛行。

③应用服务器运行数据负荷较重。

由于B/S架构管理软件只安装在服务器端(Server)上,网络管理人员只需要管理服务器就行了,用户界面主要事务逻辑在服务器(Server)端完全通过WWW浏览器实现,极少部分事务逻辑在前端(Browser)实现,所有的客户端只有浏览器,网络管理人员只需要做硬件维护。

但是,应用服务器运行数据负荷较重,一旦发生服务器“崩溃”等问题,后果不堪设想。

因此,许多单位都备有数据库存储服务器,以防万一。

5.5、MSSQLServer2005

MicrosoftSQLServer2005使用的语言称为Transact-SQL(简称T-SQL),这是一种功能强大的数据库查询和编程语言,它除了包含标准的SQL语句外,还增加了一些非标准的SQL语句。

SQLServer2000的特点:

①丰富的图形化管理工具,使系统管理,操作更为直观方便;②动态自动管理和优化功能;③丰富的编程接口工具,使用户开发SQLServer数据库应用程序更加灵活。

SQLServer存储过程:

在SQLServer中,存储过程是一个非常重要的组成部分。

它是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中。

实际上,存储过程就是SQL语句和流程控制语句的集合。

使用存储过程主要的优势如下:

①允许组件式编程:

创建后可以在程序中多次重复调用;②加快执行速度:

存储过程是预编译的,在首次执行后,查询优化器对其进行分析和优化处理。

并给出最终保存在系统表中的执行计划,从而在再次执行该存储过程时提升其执行的速度。

③易于更新:

由于存储过程预应用程序是相分离的,因此程序员可以随时修改存储过程,而对应用程序毫无影响,从而提高了程序的可移植性;

5.6、ADO.NET组件与对象模型

设计ADO.NET的目的是为了满足这一新编程模型的以下需要:

断开式数据结构、与XML的紧密集成、能够组合来自多个、不同数据源的数据的通用数据表示形式以及为与数据库交互而优化的功能,它们都是.NET框架固有的内容。

在创建ADO.NET时,Microsoft具有以下设计目标。

1、利用当前的ADO知识

ADO.NET的设计满足了当今应用程序开发模型的多种要求。

同时,该编程模型尽可能地与ADO保持一致,这使当今的ADO开发人员不必从头开始学习全新的数据访问技术。

ADO.NET是.NET框架的固有部分,因此对于ADO程序员决不是完全陌生的。

2、支持N层编程模式

ADO.NET为断开式n层编程环境提供了高级的支持,许多新的应用程序都是为该环境编写的。

使用断开式数据集这一概念已成为编程模型中的焦点。

n层编程的ADO.NET解决方案就是DataSet。

3、集成XML支持

XML和数据访问是紧密联系在一起的——XML的全部内容都是有关数据编码的,而数据访问越来越多的内容都与XML有关。

.NET框架不仅支持Web标准——它还是完全基于Web标准生成的。

ADO.NET的结构,以前,数据处理主要依赖于基于连接的双层模型。

当数据处理越来越多地使用多层结构时,程序员正在向断开方式转换,以便为他们的应用程序提供更佳的可缩放性[5]。

 

三、系统分析

模块化就是把程序划分成独立命名且可独立访问的的模块,每个模块完成一个子功能,把这些模块集成起来构成一个整体,可以完成指定的功能满足用户的需求。

采用模块化原理可以使系统结构清晰,不仅容易设计也容易阅读和理解。

因为程序错误常局限在有关的模块及它们之间的接口中,所以模块化使系统容易测试和调试,因而有助于提高软件的可靠性。

一个好的电子系统要有一些必要的模块组成,若缺少了某些模块那么这个系统就会有缺陷。

1、药品管理系统功能模块示意图

中小型医院药品管理系统需要实现的功能主要有五大块,系统的功能模块图如下图所示:

 

图1.1系统功能模块图

 

2、系统功能描述

2.1用户管理模块:

药品管理员可以在登陆验证通过以后,进入药品管理系统界面进行增加,删除,更新用户信息以及修改用户密码等.

2.2药品管理模块:

用户登录该系统后,可对药品信息进行增加,删除,更新,并且对药品进行查询等操作.

2.3供货商管理模块:

用户登录该系统后,可对供货商信息进行增加,删除,修改.

2.4销售管理模块:

用户登录系统后,可对销售信息进行查询,对退货信息进行查询.

2.5统计模块:

用户登录该系统后,可对销售信息进行统计,对进货信息进行统计,对报损信息进行统计.

 

3、系统数据库设计

3.1数据库表

该系统总共涉及6张表:

药品信息表、用户信息表、供货商信息表、交易登记表、仓库信息表、药品类型信息表。

具体如下:

表3-1药品信息表

字段名称

数据类型

字段大小

允许空值

说明

药品编号

Varchar

15

必填

唯一识别药品

类型编号

Nvarchar

10

必填

标识药品类型

仓库编号

Nvarchar

10

必填

标识药品存放仓库

供货商编号

Nvarchar

10

必填

标识药品供货商

药品名称

Varchar

20

必填

药品的名称

商品条码

Varchar

30

必填

商品的条形码

单位

Varchar

6

必填

药品单位

产品规格

Varchar

15

必填

药品的规格

批准字号

Varchar

20

必填

药品批准字号

库存量

Int

整型

必填

药品存储量

进价

Varchar

20

必填

进货价格

售价

Varchar

20

必填

出售价格

生产厂商

Varchar

50

必填

药品生产商

备注

Varchar

100

药品说明

 

表3-2用户信息表

字段名称

数据类型

字段大小

允许空值

说明

用户编号

Int

整型

必填

用户编号(主键)

用户姓名

Nvarchar

20

必填

用户姓名

用户密码

Nvarchar

20

必填

用户的密码

 

表3-3供货商信息表

字段名称

数据类型

字段大小

允许空值

说明

供货商ID

Int

整型

必填

(主键)

供货商编号

Nvarchar

20

必填

供货商的公司的编号

供货商名称

Nvarchar

20

必填

供货商的名称

 

表3-4交易登记表

字段名称

数据类型

字段大小

允许空值

说明

交易单号

Varchar

30

必填

主键

交易编号

Int

整型

自增

药品编号

Varchar

15

必填

唯一标识药品

类型编号

Nvarchar

10

必填

药品类型编号

供货商编号

Nvarchar

10

必填

供货商编号

交易时间

Varchar

20

必填

药品交易时间

交易类型

Varchar

20

必填

交易的类型

交易数量

Int

整型

必填

交易数量多少

表3-5仓库信息表

字段名称

数据类型

字段大小

允许空值

说明

仓库编号

Nvarchar

10

必填

(主键)

仓库名称

Nvarchar

20

必填

药品仓库名

表3-6药品类型信息表

字段名称

数据类型

字段大小

允许空值

说明

药品类型编号

Nvarchar

10

必填

(主键)

药品类型名

Nvarchar

20

必填

药品类型名称

3.2数据库表的说明

 

三、系统实现

1.系统登录

--------------------------------------------------------------------------------

SqlConnectionconn=DB.createCon();

conn.Open();

SqlCommandcmd=newSqlCommand("selectcount(*)fromuserInfowhereUserName='"+this.userName.Text+"'andUserPassWord='"+this.userPwd.Text+"'",conn);

intcount=Convert.ToInt32(cmd.ExecuteScalar());

if(count>0)

{

Session["flag"]="ok";

useru=newuser();

u.name=this.userName.Text;

u.password=this.userPwd.Text;

Session["user"]=u;

Response.Redirect("index.aspx?

");

}

else

{

Response.Write("");

}

----------------------------------------------------------------------

图1登录界面

 

2.药品信息查询

--------------------------------------------------------------------------------

protectedvoidPage_Load(objectsender,EventArgse)

{

Server.Execute("Judge.aspx");//防止绕过登录进入系统

if(!

IsPostBack)

{

getmedInfo();//调用getmedInfo()函数,显示数据

}

}

protectedvoidGridView1_RowUpdating(objectsender,GridViewUpdateEventArgse)//修改数据

{

stringmedid=this.GridView1.DataKeys[e.RowIndex][0].ToString();

stringmedName=((TextBox)this.GridView1.Rows[e.RowIndex].Cells[0].Controls[0]).Text.ToString();

stringtypeid=((TextBox)this.GridView1.Rows[e.RowIndex].Cells[1].Controls[0]).Text.ToString();

stringcangkuid=((TextBox)this.GridView1.Rows[e.RowIndex].Cells[2].Controls[0]).Text.ToString();

stringghsid=((TextBox)this.GridView1.Rows

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

当前位置:首页 > 总结汇报 > 学习总结

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2