已阅读5页,还剩4页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
药店管理系统摘 要:药店管理系统开发的总体任务是实现对药店业务系统化,规范化,和自动化的管理,简化业务人员的手工劳动,减轻事物处理人员的劳动强度,合理的记录和管理药店的药品信息,提高药店的生存能力,加强管理,增进效益,所以我们从药店基本需求出发,有针对性的开发了本药店管理系统。它可以满足一个药店的基本业务需求,包括药品基本信息的管理,药品的购进,销售,对库存中的药品进行效期报警以及分析等功能,并能够形成需要的报表。药店管理系统是一种信息管理系统,它的开发包括后台数据库的建立维护和前台应用程序的开发,前者要求数据要具有一致性,完整性及安全性,后者要求功能完备,操作简便灵活实用。经过分析,我们使用Microsoft Access2000建立数据库,Microsoft Visual Basic6.0作为前台开发工具,结合ADO数据库开发技术,开发本系统。在开发的过程中,对原始模型不断的改进,针对用户对报表图表的需求,使用了Crystal Reports 9.20,使系统逐步完善,直到形成用户满意的可行系统。经过多次大量实验和用户的使用检验,本系统可以满足中小药店的业务需要。关键词:ADO数据库开发技术,Crystal Reports 9.20,数据库,打印Abstract:The total mission of Pharmacy management system is to manage the Pharmacy operation systemic standardized and automatically, simplify the business personnels handicraft labor, ease the labor strength of people, note and management the medicine information, improve the pharmacy viability, strengthen the management, promote the performance. For a pharmacy the most important operations are purchase, sell and storage, so we are from the Pharmacy basic need, develop the Pharmacy management system pertinently.Including ,sell ,return ,cancel ,analyze and so on, it can make the need report and chart. The Pharmacy management system is a kind of MIS, its development includes setting up the database of background and application of proscenium, and the first require the data keep coherence, integrality and security, and the operation is simple and vivid and practical. Across analyze, we develop the system use Microsoft Access2000 built database, Microsoft Visual Basic6.0 as develop tools, combine ADO database develop technology .In the process of develop, we improve original model continuously, for the users need of report and chat, we use Crystal Reports 9.20 to make the system gradually perfect, until form a system can go and make user satisfied. Through much experimentation and user use, the system can satisfy the business demand of the medium and small pharmacy. Keywords :ADO database develop technology, Crystal Reports 9.20, Database,Print.1. 序言随着科学技术的发展和计算机科学的日渐成熟,信息时代已经来临,计算机已经应用于各行各业,人们对计算机也不再陌生。人们可以方便的存储大量的数据,而且容易保存,不宜丢失损坏。针对以上问题和有利条件,我们开发了本药店管理系统。药店管理系统可以完成药店的基本业务如药品的入库、销售,可以进行返货、退货处理,同时还可以实现特殊业务如报损收益、效期报警等。另外它可以根据业务需求生成报表图形如销售毛利表等。它可以帮助业务处理人员轻松的摆脱大量重复的手工劳动,方便快捷的处理数据,进行分析汇总,大大提高了工作效率。根据分析后台数据库的建立我使用了Microsoft Access2000,它提供了数据库中最常用的功能,使用便捷,可以满足本系统的需要。完成了对后台数据库的搭建和设计,通过ADO数据库开发技术与前台的Visual Basic 6.0进行连接,同时我在开发过程中为了美化界面和完成报表功能应用了第三方控件和Crystal Report 9.2。在下面的介绍中,将详细的介绍药店管理系统-票据处理的开发过程,同时,阐述开发过程中所涉及到的问题及解决方法。2. 应用软件与开发环境概述2.1 Microsoft Access2000数据库Microsoft Access2000是Microsoft公司开发的一套桌面数据库,是微软Office办公套件的重要组成部分。它具有使用便捷、系统资源占用低、交换数据非常方便的优点,它快速、小巧、灵活,作为本系统的后台数据库可以胜任。微软的JET数据库引擎提供了与数据库打交道的途径,并利用SQL语句或者ADO 控件实现与数据库的连接,我们是通过它以及Visual Basic 来访问数据库并对其进行各种操作。Visual Basic、Access以及其他微软的软件产品都是通过共用JET数据库引擎,从而给用户提供了丰富的数据类型。在此系统利用SQL语句完成对数据库中数据的操作。2.2 Crystal Report 9.2 Crystal Report 9是世界领先的桌面及 Web 报表工具,它除了可以替windows与web应用程序创建报表外,更可以将报表发布成web服务器上的报表web服务。Crystal Report 9可以内嵌到Microsoft Visual Basic6.0中,用户可以更方便的设计报表。Crystal Report 9在Microsoft Visual Basic6.0中的设计器Crystal Report是所见即所得的报表设计工具,其对数据库的访问可以通过“提取模式”(pull model)和“推入模式”(push model)两种模式,并支持当前流行的各种数据源。2.3 Microsoft Visual Basic 6.0Microsoft Visual Basic6.0数据库开发技术有DAO数据库开发技术、RDO数据库开发技术、ADO数据库开发技术、ODBC数据库开发技术。本系统的开发应用的是ADO数据库开发技术。ADO是一种提供访问各种数据类型的连接机制,不仅可以使用SQL Server、Oracle、Access等数据库应用程序,也可使用与Excel表格、文本文件、图形文件和无格式的数据文件。3. 药店管理系统的开发分析3.1 需求分析通过和用户的交流详细了解客户的需求,细化功能要求,准确地回答系统必须作什么。系统可能完成功能要求包括:(1) 药品的入库、及其信息的查询和即时记录打印;(2) 即时查询打印当前收银员的收银情况,及选定时间内所有收银员的收银情况;(3) 对供应商供货金额的查询、单品的保管帐查询;(4) 每天的结帐处理,其中包括对入库(返货)、销售(退货)、库存;(5) 通过每日的结帐可以查询打印选定时间内的销售毛利表;(6) 选定时间内销售排行(分别按柜组和单品)前10名的柱状图的显示。3.2 总体设计药店管理系统需要满足来自三方面的需求,分别是药品基本信息的查询、药品出库、入库的记录及库存的统计和系统管理人员的个人信息的更改。药品基本信息查询的需求是查询药品所在的柜组、编码、拼音编码、产地等基本信息;药品基本信息及管理员个人信息的修改;系统管理人员的功能最为复杂,包括对供应商,药品基本信息、个人信息、进行管理和维护,及系统状态的查看、维护。系统管理人员功能的信息量大,权限高,并且对数据安全性和保密性要求最高。4药店管理系统的实现 4.1 具体功能的实现报表打印模块:针对不同的需要利用SQL语句选出需要的数据给以显示并实现打印功能。销售排行:直方图的形式显示(柜组/单品)销售额的前10名。具体实现将在后面叙述。4.2 数据库功能的实现 首先在模块中利用ADO数据库开发技术自定义了一个执行程序中SQL 语句的函数,此函数自动连接数据库执行SQL语句后将返回执行结果的记录集。本系统中与数据库有关的操作,各种查询及对数据库中表的操作、各中数据集的得到均由以上几种操作组合实现,具体过程参见程序源码,此处不再叙述。4.3 打印与出图功能的实现导出到excel表中,通过Excel进行打印。实现:由于入库查询结果项目众多,而对于查询的结果并不需要打印所有项目,查询者可以有选择的选择需要的打印项目,Excel的灵活性正好符合要求,所以此处选择此方法。首先通过Excel建立打印的模版文件入库查询.xls存于excel目录下,为了避免对模版文件的修改,先复制模版文件为到temp目录下名为新入库查询结果.xls,然后将查询结果到入此文件中并自动打开此文件等待打印操作。以收银员收银报表介绍交叉报表的实现。添加Crystal Reports 9后选择使用专家报表,选择专家中选择交叉表,选择完需要的表后设置如图4-1所示。图4-1 交叉表创建向导点击完成后经过,自动形成交叉表,设计修改后得到需要的报表,显示效果如图4-2所示。图4-2收银员收银报表建立新的设计器选择数据库、表之后选择插入图表结果如图4-3所示。图4-3图表专家再选择上图的数据,确定后得到柜组销售排行前10的柱状图,操作如图4-4所示。 图4-4柜组销售排行系统中其它的由Crystal Reports 9实现的打印与出图功能的均可由上面介绍的方法实现,其中在设计的时候首先设置打印机选择合适的纸张,本系统设计过程中打印机的设置为EPSON-LQ1600K与实际应用的想符合,而纸张的大小选择与实际最相接近的10x11的纸。5系统测试与问题解决5.1 解决不完善的问题多次查询连续打印,打印的数据不能更新,如销售毛利查询,进入系统第一次确定查询选择打印运行正常,继续查询显示的数据无误,但是再选择打印,打印的仍为上次的查询结果,只有完全退出系统在再进,即每次进入系统只能正确打印一次。解决通过反复实验发现当显示打印结果的控件CRViewer9的EnableRefreshButton属性为true会出现一个刷新按钮,多次查询打印前先通过此按钮刷新便可得到最新的需要打印的数据。不完善在于打印数据不能自动刷新。5.2 未解决的问题系统与实际的业务情况还存在差距,如实际中实售价应可以改、由于某种需要某种药的某几笔货要暂时禁止销售(所谓的挑库存)、当库存中药品的批号与计算机内不符的时候可以改批号等功能没有实现。系统的运行只在1024x768下运行,在其它的显示模式下会出现窗体显示不全的问题。当用户添加一条新的药品记录是系统会将数据库中最后一条记录的编号取出并加一,使其作为新记录的编号。但是由于一些规定,已删除的药品编号不能作为新药品的编号。系统帮助部分只设计了界面排版工作,具体的功能尚未实现在测试中,发现提示信息过于死板,利用 MsgBox 的vbQuestion, 属性做了处理以后,界面较为美观,但仍然不足。此系统还没有实现添加新柜组的功能。5.3 测试小结在测试的时候我尽量更靠近实际情况,全面的考虑实际操作中可能出现的特殊情况,发现并解决了一些问题,同时也发现了一些暂时无法解决的问题,只能在以后的开发过程中逐步找到解决的办法。当然通过测试也发现了一些由于马虎产生的语法错误,也都及时的修改。单个模块测试后由于业务的连贯性,我又从实际业务的角度用实际的数据进行录入,对手中正确的数据和各功能实现的结果相比较,以确保功能的正确性,最终完成系统中本人负责的功能模块。 6小结以上是药店管理系统本人开发部分的全部过程,这次毕业设计迄今历时三个月。通过本次毕业设计的锻炼,在实践中我学到了很多的东西,对软件的开发有了更深入的认识,提高了自己应用程序开发的水平和对事物的思考,逻辑分析能力有了长足的进步,同时也看到了自己的缺点和不足,由于本身技术和理论水平有限系统中还有些不足,希望老师批评指正,开发过程中一些没有想到的地方,也希望老师给予指点,以便在今后的学习工作中改进。通过这次锻炼相信在以后的学习和工作中,我一定会不断的充实自己,使自己的水平不断提高。7谢辞本毕业设计是在马春华,孙珊珊,李欣老师们的悉心指导下完成的。在课题的选择和设计开发过程中各位老师们给予了我热心的帮助和大力支持,借此论文成稿之时,向他们致以忠心的感谢。 同时我要感谢我的合作伙伴李帛霖,黄冬,课题的完成需要合作,通过这次合作我更了解了团结合作的作用。最后对所有大学期间指导、关心、帮助和支持过我的老师和同学,致以最崇高的敬意和最真诚的感谢。参考文献:1 李盛,Visual Basic数据库编程技术与实例,第三版,北京,人民邮电出版社, 2005,21-22页2 张立科,Visual Basic 6.0程序设计参考手册, 北京 ,人民邮电出版社 , 2003,122-123页3 齐锋,Visual Basic 6.0程序设计,第二版, 北京 ,中国铁道出版社,2002,154-156页4 廖疆星 张艳钗,中文Access2002数据库开发指南,冶金工业出版社 ,2001,10-12页5 Microsoft公司,Visual Basic 6.0应用程序开发,第二版,北京大学出版社,2000,25-26页6Ed Robinson,Upgrading Visual Basic 6.0 to Visual Basic .NET(影印版),世界图书出版公司,2001,23-24页7 美DIANE ZAK ,VISUAL BASIC 6.0编程(提高版)(英文原版),电子工业出版社, 2002,26-27页8 Joe Estes,Teach Yourself Crystal Reports 9 in 24 Hours, Sams,2003,101-103 页9 Alex Kriegel,Voris M.Trukhnov SQL Bible,wiley,2003,58-60页附录:销售排行:Private Sub Command1_Click() Dim i As Integer Dim sql As String Dim rs As ADODB.Recordset Dim sqlin As String Dim rs1 As ADODB.Recordset If Option1.Value = True Then sql = delete * from 销售量排行柜组 transactsql (sql) sql = select 柜组,sum(数量),sum(金额) from 销售记录表 where datevalue(销售日期) between # & DTPicker1.Value & # and # & DTPicker2.Value & # group by 柜组 Set rs = transactsql(sql) If rs.EOF And rs.BOF Then MsgBox 没有销售记录!, , 提示! Exit Sub Else For i = 1 To rs.RecordCount sqlin = insert into 销售量排行柜组 values( & rs(0) & , & rs(1) & , & rs(2) & ,# & DTPicker1.Value & #,# & DTPicker2.Value & #) transactsql (sqlin) rs.MoveNext Next i xhphgz.Show End If End If If Option2.Value = True Then sql = delete * from 销售量排行单品 transactsql (sql) sql = select 编码,sum(数量),sum(金额) from 销售记录表 where datevalue(销售日期) between # & DTPicker1.Value & # and # & DTPicker2.Value & # group by 编码 Set rs = transactsql(sql) If rs.EOF And rs.BOF Then MsgBox 没有销售记录!, , 提示! Exit Sub Else For i = 1 To rs.RecordCount sql = select * from 药品基本表 where 编码= & rs(0) & Set rs1 = transactsql(sql) sqlin = insert into 销售量排行单品 values( & rs(0) & , & rs1(3) & , & rs(1) & , & rs(2) & ,# & DTPicker1.Value & #,# &
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 豫南地区猪繁殖与呼吸综合征的血清学剖析及病毒溯源探究
- 谷红注射液对大鼠脑出血模型中NGB与IL-6表达影响及脑保护机制探究
- 谐波电能计量中FFT算法的改进与优化研究
- 2026中铁会展有限公司长春分公司招聘5人笔试备考题库及答案详解
- 语料库视角下英式英语词汇美国化的深度剖析与演进洞察
- 语境赋能:高中英语词汇教学的创新与实证探索
- 语域与语类理论:英语听力教学革新的关键钥匙
- 语义与交际翻译视角下英语新闻标题翻译的多维度解析
- 2026陕西西安交通大学大型仪器设备共享实验中心招聘4人考试参考题库及答案详解
- 2026陕西西安国际港务区陆港第七小学教师招聘15人笔试备考题库及答案详解
- 剧本杀剧本创作技巧与角色设计
- 雨课堂学堂云在线《数据链技术与系统》单元测试考核答案
- 2025贵州贵阳市投资控股集团房地产置业有限公司招聘12人笔试历年备考题库附带答案详解试卷2套
- 雨课堂在线学堂《中国哲学经典著作导读》作业单元考核答案
- 高速服务站安全培训课件
- 岩棉夹芯板内墙施工方案
- 胰腺炎护理查房
- 小餐饮经营许可申请书
- 激光选区熔化技术(SLM)应用与发展
- 电梯安装工程吊装方案(3篇)
- 年产10万吨高精度铝及铝合金板带箔材生产线项目可行性研究报告
评论
0/150
提交评论