《药品进销存管理系统(22页).doc》由会员分享,可在线阅读,更多相关《药品进销存管理系统(22页).doc(22页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、-药品进销存管理系统-第 18 页新疆财经大学毕业(设计)论文题目:药品进销存管理系统学生姓名: 努尔曼古丽艾散学 号: 2008100641 院 部: 计算机科学与工程专 业: 计算机科学与技术 班 级: 计算机08-2班 指导教师姓名及职称: 古丽米热老师完成日期: 2012-11-14摘要随着科学技术的进步,计算机行业的迅速发展,大大提高人们的工作效率。计算机信息处理系统的引进已彻底改变了许多公司的经营管理。甚至附近的一个小店主也可能正在用计算机来控制销售、记账及其他活动。在一些大公司里,电子信息处理系统检测全部工作设备的操作与运行。在药店里,药品进销存管理是一项非常重要的工作,使用人工
2、方式管理各项药品信息不仅效率低下,而且容易出错、安全性很差。并且在实际操作中,数据的查找和维护都不容易实现。药品进销存管理系统,就是为了解决这些问题而设计的。其目的是实现药品信息管理和出入库记录的快速高效检索,使操作简单安全,提高工作效率和质量。药品分类互不雷同。现在国家也没有相关的规范,只是明确了大的分类原则。好多药店理解不同,导致分类各有千秋。药品进销存是药品分类管理要求的主要体现,规范合理的进销存系统有利于零售药店加强处方药与非处方药的分类管理,减少因记录混乱而错拿药品等事件的发生。本系统使用的开发工具是PB9.0,数据库使用的是PB自带的ASA数据库,它实现了药店的主要数据录入和数据的
3、统计分析处理。为药店整合各药品信息,进药信息,员工信息,退货信息,销售信息与统计提供了很好的统计工具。很好的实现了管理智能化,轻松化,简便化的目标。 关键词: 药品进销存管理系统,需求分析,系统设计,系统模块,ASA数据库.目录第一章开发背景和意义1第二章 系统分析2 系统应用需求2 可行性分析2 系统主要功能概述32.4 系统运行环境3第三章 系统设计53.1 系统结构设计53.2 业务流程分析63.3 数据库实体图73.4 系统的功能结构设计9 数据库设计103.6 数据库表结构10第四章 系统实现12 登录界面12 系统主界面14 药品进货登记界面14 药品销售登记界面16 销售统计表1
4、8 入库退货界面18第五章 总结21结束语22致 谢23参 考 文 献24第一章 开发背景和意义随着当今世界计算机技术的飞速发展,计算机在企业管理中应用的普及,利用计算机实现企业进销存管理势在必行。使用传统的手工管理方式,一方面效率低下,另一方面容易造成错误。企业要实现现代化的主要内容之一就是实现药品的进销存信息管理系统的现代化,只有将计算机引入企业的管理,才能真正形成现代化企业的组织形式、管理和运用方式,才能真正体现企业规范化、科学化、现代化管理的手段。各行各业的管理、控制都越来越离不开计算机的辅助。“药品进销存管理系统”的开发就是为了辅助大多数药房的基本管理,实现信息管理的系统化、规范化和
5、自动化。以前的手工管理效率低是最明显的缺陷,另外,数据的一致性不好维护,如某个药品信息的某条记录有所改动,那么该要品的其他记录就与此不一致,造成查询的费时费力。要把全部数据都更改又相当不方便。对药品库存的盘点也很不方便,而且需要较多的人来进行管理操作,而且容易出错,造成数据的不一致。因此,运用高效、准确的管理系统来替代手工管理是完善医药业管理的有效手段。利用药品进销存管理系统可以很好的对数据进行维护,减少由于数据不一致等错误带来的麻烦,方便数据的更新和查询,降低错误率,方便药品信息的维护及库存的盘点。可以运用较少的人员,高效的完成对医药的管理。由于社会的发展不断趋于信息化,各个行业都要加强自身
6、的信息化程度以适应社会的发展。而管理信息化正迎合了这个趋势,数据库系统在医药业的应用业实现了医药业执行工具、业务管理等的信息化,在这个信息化社会为医药业的发展增加了新的动力。相信随着社会的不断发展对该类系统的需求会越来越高。 药品进销存管理系统,即服务于个人,又服务于企业,并最终服务于社会,这是让科技为人类服务的最好例证,其开发意义显而易见。药品进销存管理系统可以实现药品商家的高效管理,还可以节约资源。通过集中式的信息数据库,将商家的进、销、存等经营业务有机的结合起来中,达到数据共享、降低成本、提高效率、改进服务等目的。第二章 系统分析 系统应用需求1、需求分析:随着计算机网络技术以及数据库技
7、术的迅速发展,管理信息系统得到了广泛应用。对于一个药店来讲:货品数量少则数以百计,多则数以万计;另外,不同超市的实际情况也有所不同。要对这些药品进行统一、高效的管理,靠人工完成工作量庞大、难免有错漏之处。为此,一个自动化的药品进销存管理系统的开发非常必要。2、功能需求:1. 登陆功能要使用药品进销存管理系统,需要有用户名和密码,用户类别才能进入进行操作。按用户类别的不同,他们能做的操作也不同。2. 用户登陆后可以添加、查询、修改和删除药品信息,处理进货、售货、退货。进货和售货的时候可以不用记住药品的太多的信息,可以通过选择药品架位号来进行操作。退货操作只能管理员才能实现。仓库员和销售员没有退货
8、的权力。3.销售员销售药品后,及时录入药品信息等数据,在数据库中进行数据更新。4.在查询的时候,用户不用记住药品的太多信息,可以通过选择药品名称,架位号,药品分类来进行操作。在进行了有关药品的数量操作后,库存可以自动实现同步功能。 5.在收银处,随时录入卖出商品信息,如名称,架位号,数量,单价等,及时更新数据库数据。6.在销售统计表中,随时可以录入几个月的销售量查询时可以显示出月总额和销售量的统计的图标。 可行性分析通过对药店的各个方面进行了具体的了解和分析之后,现对该单位进行药品进销存管理系统的开发可行性进行分析。技术:该系统所需硬件设备,市场上销售价格较低,甚至可以使用原有的设备,软件上,
9、操作系统采用Windows系列操作系统,数据库管理系统采用 ASA数据库,开发工具采用power builder 9.0,这些软件在开发中已被大量应用,技术上都比较成熟。因此在技术上是可行的。本系统开发需求的软件有: Windows XP 操作系统、 PB 9.0、ASA 数据库。药品进销存管理系统并不仅仅能代替传统的书面操作,更重要的是它提供了信息分析的功能,只要单击一个按钮就可以查看到目前销售最好的药品或者是库存最多的药品,从而起到指导经营的作用。使药店节省货物管理中的人力,减少劳动强度。降低成本及其他费用。改进薄弱环节,提高工作效率。提高数据处理的及时性和准确性。提高了企业的经济效益,所
10、以从经济上是完全可行的。 系统主要功能概述1、基础信息的管理员工信息的管理:包括员工信息的新增、修改和删除等。药品基本信息管理:包括药品基本信息的新增、修改和删除等。2、进货管理药品进货信息管理:药品进货信息包括药品架位号,药品名称,进货数量、进货价、销售价、进货日期,进货人员等。药品进货管理功能完成信息登记等。药品登记查询:可以根据药品架位号,药品名称,药品分类来查看某种药品的进货情况。退货管理:批发进货的药品如果有什么问题,那么药店对药品厂家退货药品。退货信息的变动直接关系到库存的变化,已经退货的药品保存在退货表中,库存表的数量会减小的。库存报表:对库存在某一段时间内的情况统计,提醒进货等
11、信息。3、销售管理药品销售登记:药品销售登记包括药品架位号,药品名称,药品分类,销售数量,销售价,销售日期,销售人员,销售日期等。药品销售管理功能完成销售信息登记、修改和删除等。销售信息的变动直接关系到库存的变化。销售登记查询:可以根据药品的名称,架位号,药品分类来查看某种药品的销售情况。销售统计表:在这里对销售表在一段时间内的销售情况可以统计,提高操作者对药品的销售情况的理解。 2.4 系统运行环境为了保证该系统运行的效率和可靠性,服务器应具有较高的软硬件配置,客户端的要求不是很高。其运行要求如下:(1)软件环境开发工具:P。数据库:Powerbuilder提供的ASA(Adaptive S
12、erver Anywhere 9)。开发环境:Windows98/2000/XP/WIN7/VISTA等。(2)硬件环境CPU:P200MMX以上,P/233及以上机型内存64M及以上容量,40G以上的硬盘空间。第三章 系统设计3.1 系统结构设计1、药品进销存管理系统功能模块图:药品进销存管理系统进货管理销售管理库房管理基础信息管理系统管理入库登记入库报表入库退货入库登记查询销售登记销售登记查询销售统计表库存表浏览库存信息管理药品信息管理员工信息管理修改密码数据备份2、系统管理 修改密码。数据备份。3、药品销售管理模块药品销售的操作。药品销售信息。药品销售统计。4、库房管理模块库存表浏览。库
13、存信息管理5、药品进货管理模块药品进货操作 。药品进货信息。药品退货。库存报表。6、基础信息管理模块药品基本信息,添加、删除、查询商品信息。员工信息管理。3.2 业务流程分析超市货品管理系统主要是以先进的管理理念和科学的计算机技术来取代原始的手工操作。系统主要业务分析:1、进货业务进货管理是药店经营活动中极其重要的一环,它关系到产品质量能否得到保证,生产是否能够顺利进行,采购成本能否得到有效控制等问题。2、 库存业务库存管理是指在生产经营中为销售和耗用而储存的各种资产。企业存货不当都会增加不必要的费用:存货过多将导致物资积压、存储费用增加、流动资金周转不利,并且过量的库存会掩盖管理不善的问题。
14、存货不足则影响企业的正常销售活动。库存管理的目标是寻求最佳存货数量,使库存的成本总额最小化。其主要业务如下:药品入库、出库等日常处理。科学合理地确定某库存物资的库存控制参数。3、销售业务销售对一个企业的生存和发展是至关重要的,它不再是传统意义上的“卖东西”,它对外关系到企业产品、服务和企业形象等多方面因素,对内涉及到销售、库存、财务、生产等信息。此外信息化的高速发展为企业的销售工作提出了新的挑战,封闭意味着落后,企业要抓住时机,引入现代化的销售管理模式,实施企业的信息化、智能化销售管理,才能使企业在激烈的市场竞争中立于不败之地。3.3 数据库实体图实体图也称实体-联系图(Entity Rela
15、tionship Diagram),提供了表示实体类型、属性和联系的方法,用来描述现实世界的概念模型。构成E-R图的基本要素:构成E-R图的基本要素是实体型、属性和联系,其表示方法为:实体型(Entity):具有相同属性的实体具有相同的特征和性质,用实体名及其属性名集合来抽象和刻画同类实体;在E-R图中用矩形表示,矩形框内写明实体名;属性(Attribute):实体所具有的某一特性,一个实体可由若干个属性来刻画。在E-R图中用椭圆形表示,并用无向边将其与相应的实体连接起来;联系(Relationship):联系也称关系,信息世界中反映实体内部或实体之间的联系。实体内部的联系通常是指组成实体的各
16、属性之间的联系;实体之间的联系通常是指不同实体集之间的联系。 主要的数据库实体图 如下:药品信息药品单价药品数量药品名称药品架号药品分类登记日期图3.3 药品类型信息实体图进货信息药品名称进货数量进货日期进货单价图3.4 药品信息实体图销售信息药品架号药品数量销售价销售日期图3.5 销售信息实体图3.4 系统的功能结构设计在设药品进销存管理系统的整个过程中,我们对整个问题进行分解,从而把设计过程划分为几个阶段,每个阶段都有相对独立的任务,然后逐步完成每个阶段的任务。前阶段任务的完成为以后工作的进行提供了前提和基础,而后一阶段任务的完成,则使前一阶段提出的解法更进一步具体化。结构如图所示:开始输
17、入用户名和密码,类别是否正确进入系统主界面进货管理销售管理库房管理基础信息管系统管理 数据库设计 数据库是一种存储数据并对数据进行操作的工具。数据库的作用在于组织和表达信息,简而言之,数据库就是信息的集合。计算机的数据库可以分为两类:非关系数据库(flat-file)和关系数据库(relational)。关系数据库中包含了多个数据表的信息,数据库含有各个不同部分的术语,象记录、域等。创建任何一个数据库的第一步是仔细的规划数据库,设计必须是灵活的、有逻辑的。创建一个数据库结构的过程被认为是数据模型设计。1 标识需要的数据;2 收集被标识的字段到表中;3 标识主关键字字段;4 绘制一个简单的数据图
18、表;5 规范数据;6 标识指定字段的信息;数据库之间的关系指明两个库之间共享一个共同的关键字值。一个连接是指一种虚拟的表,这种表是在当用户要求从相互关联的各个不同的表中获取信息时建立的,关键字段用于在相互连接的不同表中查找匹配的记录。一个更高级的连接形式称为自连接。这种连接是指一个表被连接到它自己的一个字段,或在不同的纪录中由重复数据的组合字段。数据库中有三种不同类型的关键字:主关键字、组合关键字和外关键字。在表中使用的关键字类型用于描述库表示什么以及在数据库中如何与其它的库建立关系。3.6 数据库表结构根据超市的业务量,本系统采用了小型的Asa数据库。数据库名称是药品进销存管理系统Sjk。数
19、据表如下:用户表、库存表、销售表、退货表、职工表,一共5张表。字段名称字段类型大小说明Yhm(用户名)char10Mm(密码)char8Yhlx(用户类型)char10表3.2 药品信息表字段名称字段类型大小说明架位号Char10药品名称Char10产地Char10药品分类Char10进货价Char10有效期Date操作员Char10字段名称字段类型大小说明Xh(序号)Char10Bh(编号)Char10Mc(名称)Char10Lx(类型)Char10Sl(数量)IntegerDj(单价)Decimal5Je(金额)Decimal5Rq(日期)DateEy(销售员)Char10字段名称字段类型
20、大小说明Gh(工号)char10Xm(姓名)char10Zw(职务)char10Gz(工资)char10Sfzh(身份证号)char18Dh(电话)char11第四章 系统实现 登录界面首先给大家详细地介绍系统的登陆窗体的功能;用户登录窗体中在这一模块的设计中使用了文本框, 标签,并用了下拉列表框,按用户类型的不同,给他们分配权限,然后把它们绑定到用户表。如果登录者用户表中的用户那么他可以进入系统菜单窗口打开后,按自己权限范围来适应相应的功能,这是为了系统的安全性而设计的. 如果添错了就系统提醒“密码错误重新输入”再登录,如果想修改密码就按“修改密码”可以进行操作,如不想登录按“取消”可以退出
21、了;登陆界面设计:代码分析:string a1,a2,a3if sle_1.text=OR isNULL(sle_1.text) thenmessagebox(缺少数据!,请输入用户名!)sle_1.setfocus()returnend ifif sle_2.text=OR isNULL(sle_2.text) thenmessagebox(缺少数据!,请输入正确的密码!)sle_2.setfocus()returnend ifif a3= thenmessagebox(警告,请你选择准确的用户类型!)returnend if select 用户名,密码,用户类别 into :a1,:a2,
22、:a3 from 用户表 where 用户名=:a1 and 密码=:a2 and 用户类别=:a3;if sqlca.sqlcode=0 thenmessagebox(提示!,登陆成功!)open(w_main)choose case a3 case 销售员main.m_进货管理.m_入库退货.enabled=falsemain.m_进货管理.m_入库报表.enabled=falsemain.m_进货管理.m_入库登记.enabled=falsemain.m_库房管理.enabled=falsemain.m_系统管理.m_数据备份.enabled=falsemain.m_基础信息管理.ena
23、bled=falsecase 仓库员main.m_进货管理.m_入库退货.enabled=falsemain.m_基础信息管理.m_员工信息.enabled=false main.m_系统管理.m_数据备份.enabled=falsemain.m_销售管理.m_销售登记.enabled=falsemain.m_销售管理.m_销售登记查询.enabled=falsemain.m_销售管理.m_销售报表.enabled=falsecase 管理员main.m_进货管理.enabled=truemain.m_销售管理.enabled=truemain.m_库房管理.enabled=truemain.
24、m_基础信息管理.enabled=truemain.m_系统管理.enabled=trueend chooseclose(w_denglu)elsemessagebox(提示!,登陆失败!请重新输入)sle_1.text=sle_2.text=ddlb_1.text=end ifss1=a1 系统主界面本系统采框架顶部里是系统的标题。主框架顶树型功能菜单,整个系统功能模块的跳转主要在这里完成。右部框架用来显示和操作各主要功能模块。系统主界面如下图所示 药品进货登记界面在本系统中,“入库表”模块包括商品编号,商品名称,数量,单价,日期等。进货窗口的界面如图所示;就要功能是:进货人员打开该窗口只要
25、输入商品编号,系统自动按照商品编号来名称,类型等一些列信息自动单出,进货者只要输入数量就添加到入库表,如果要进以前没有的货需要每个信息自己填写,从第二次开始不用一个一个的填写。通过代码:string s1,s2,s3,s4,s5,s7,s8,s9,s10,s11,s12dec s6date t1s6=dec(sle_6.text)t1=today()select 架位号 into :s12 from 库存表 where 架位号=:s1;if sqlca.sqlcode0 theninsert into 库存表(架位号,药品名称,规格,产地,单位,数量,进货价,销售价,批号,药品分类,有效期,进
26、货日期) values(:s1,:s2,:s3,:s4,:s5,:s6,:s7,:s8,:s9,:s10,:s11,:t1);else update 库存表 set 数量=数量+:s6 where 架位号=:s1;end if messagebox(恭喜,进货成功)dw_1.retrieve()sle_1.text=sle_2.text=sle_3.text=sle_4.text=sle_5.text=sle_6.text=sle_7.text=sle_8.text=sle_9.text=sle_10.text=sle_11.text=sle_1.setfocus() 药品销售登记界面在本系统
27、中,“销售表”模块包括药品架位号,药品名称,数量,进货价,销售价,销售日期等。销售窗口的界面如图所示;就要功能是:销售人员打开该窗口只要输入药品架位号,系统自动按照药品架位号来名称,类型等一些列信息自动单出,销售者只要输入数量就可以销售成功并且这些信息到销售表,库存表的数量自然会减小。图通过代码:if sle_1.text=OR isNULL(sle_1.text) thenmessagebox(缺少数据!,请输入架位号!)sle_1.setfocus()returnend ifif sle_4.text=OR isNULL(sle_4.text) thenmessagebox(缺少数据!,请
28、输入销售数量!)sle_4.setfocus()returnend ifsle_9.text=string(dec(sle_8.text) - dec(sle_6.text)messagebox(恭喜,销售成功)int n1n1=messagebox(提示,是否要打印?,question!,yesno!)if n1=1 then open(w_dayin)end if 销售统计表药店经理利用销售统计窗口,可以查看有关药品销售的基本情况,及时把握药店的各种药品的销售情况,可以了解某个时间范围内的各项产品的销售情况,利用统计图来可以做决策。 入库退货界面本窗体是供管理员对供应商药品进行退货操作的窗
29、体。如果发现药品有什么问题可以进行退货操作。 退货窗口的界面如图所示;代码分析:string s1,s2,s3,s4,s5,s6dec n1date t1,t2t1=date(sle_7.text)t2=today()s5=(sle_6.text)n1=dec(sle_3.text)if sle_1.text= thenmessagebox(警告,本操作无效!)end ifinsert into 退货表(架位号,药品名称,数量,产地,进货价,销售价,进货日期,退货日期) values(:s1,:s2,:n1,:s4,:s6,:s5,:t1,:t2);messagebox(恭喜,本货已退成功!)
30、dw_1.retrieve()sle_1.text=sle_2.text=sle_3.text=sle_4.text=sle_5.text=sle_8.text=sle_6.text=sle_7.text=sle_8.text=update 库存表 set 数量=数量 - :n1 where 架位号=:s1;第五章 总结在实习当中认我认识到开发一项好的软件不是某一个人就能完成的任务。一个团队的小组,一个勤奋的小组非常重要,沟通是解决问题的就好办法。俗话也得好:“不怕虎一样的敌人,就怕猪一样的队伍”。所以小组中的每个成员的能力与协作能力也是致关重要的。同时,不仅是团队内部的交流,更多需要协调好团
31、队之间的交流。其次呢,在实习中我了解了,在开发一个项目时一定要先做好规划,按照软件的开发过程,详细地写好每一个必要的文档。一般的规则是,写文档需要团队协作,这样就允许开发人员和文档编写者利用彼此的长处,取长补短。例如,如果预期读者是系统设计师,开发人员需要提供技术细节,然后文档编写者按照正确语法组织和编辑内容。软件文档的最主要目标是传达一个系统的技术要素和使用方法。第二个目标是提供软件开发过程中的需求,决策,行为,角色和责任的书面记录。只有实现了这两个目标,软件文档才真正提供了有意义的信息。软件的概念就是:程序+文档,程序就是文档,文档集成在程序中。它要求在选择开发环境时不仅要考虑环境对设计、
32、开发的完美支持,而且要考虑对维护、文档的支持;它要求软件人员在设计、开发过程中要考虑维护问题、文档问题;它要求程序与文档存储在同一位置、同一系统中;它要求使用相同工具进行程序与文档的书写、检索;它要求在编写和维护程序的同时形成文档,在书写文档时编写、维护程序。程序与文档合一的概念不仅存在于系统的设计、开发阶段而且存在于系统的维护阶段,它贯穿软件的生命周期。本系统的缺点和打算:这次我第一次自己动手作了软件设计,因为知识的有限和简单的思想,时间的不够所以我们做的此系统特别简单。另外我第一次独立接触药品进销存管理系统。 结束语经过4个多月的设计和开发,药品进销存管理系统基本开发完毕,其功能基本符合用
33、户需求,能够完成药店经营活动信息管理的各项任务要求如系统管理、报损管理、药品销售管理、药品进货管理、系统管理。本次毕业设计,即将画上一个句号,但对我来说,毕业设计所产生的影响还远远没有结束我从本次毕业设计中学到了许多课本上没有的知识。一方面,我个人从设计任务书的下达到今天基本实现任务书中的设计要求,在这个期间,通过自己的努力,通过各位老师的指导和教育,使我不仅在知识水平和解决实际问题的能力上有了很大的提高,我的动手实践能力、自学能力、查找资料等能力都有了长足的进步。同时也巩固了以前所学的理论知识,并能够把理论知识同实践很好地结合起来;更重要的是从思想的深处体会到把自己的所想所思变成现实时所将面
34、对的种种难题所需要的勇气、毅力、智力还有体力,各方面的条件的综合。设计中,思考与动手同在,遇到难题的彷徨与攻克难关的喜悦并存。这也是对即将走上社会的我的一次很好的锻炼。正视困难,就一定能解决困难。 当然由于能力所限,系统难免有不尽如人意的地方,例如本系统只能单机运行,不能实现网络联结。希望能在以后的使用和运行中把该系统修改的更加完善。另一方面,我终于可以将所学知识用到实际生产生活的机会。通过解决开发过程中遇到、思索和解决一系列的困难,我认识到,计算机技术并不是一门孤立的技术,它必须与管理等各方面的知识结合起来才能发挥计算机在生产实践中的巨大作用,而我在这方面的知识是相当欠缺的。我明白要想成为一
35、个对社会更有作用的人必须全面提高自己的科学理论知识,同时要加强实践活动,更多将集资的理论知识付之行动。致 谢大学四年的学习生活即将过去,在这四年中,我遇到了许多良师益友,他们无论是在学习上,还是生活上都给了我极大的理解、关心和帮助。在此,我对他们表示我最衷心的谢意,感谢他们给我的帮助。在本次毕业设计中,我从指导老师身上学到了很多东西,指导老师认真负责的工作态度,严谨的治学精神和深厚的理论水平都使我收益匪浅。他无论在理论上还是在实践中,都给与我很大的帮助,使我得到不少的提高这对于我以后的工作和学习有很大的帮助,感谢他耐心的辅导。参 考 文 献1王珊,师煊.数据库系统概论.北京高等教育出版社. 2006年. 2潘文林编著.数据库应用系统开发案例与实践教程.清华大学出版社.2004年. 3中国知识网J/OL. . .2000年 . 2007年.