返回列表 发帖

[毕业论文] [转帖]医药行业进销存系统论文=1=(VB+SQL Sever 2000)

摘 要
伴随着计算机技术在各行各业日益广泛和深入的应用,信息化的概念也早已经不仅仅限于只连接到互联网上了。使用一套信息管理专用软件代替原来的手工记账,在对于系统进行了适当的设置后,一旦登入凭证资料,执行审核和记账的功能后,将自动产生需要的信息记录,而后随时可以输出想要的信息才是信息化。计算机产业硬件和软件的更新和升级及管理工作在经济领域地位的日益提高,是两个不断前进着的车轮,在各自发展的进程中,又彼此促进和推动着,将信息化推向一个新的高度。本文主要讨论作为商品批发行业之一的医药公司,如何实现计算机信息化管理。
医药行业进销存系统是典型的信息管理系统(mis),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。
经过分析,我们使用 microsoft公司的 visual basic开发工具,利用其提供的各种面向对象的开发工具,尤其是数据窗口这一能方便而简洁操纵数据库的智能化对象,首先在短时间内建立系统应用原型,然后,对初始原型系统进行需求迭代,不断修正和改进,直到形成满足要求的可行系统。
关键词:vb;sql sever 2000;mis系统
abstract
following the technology of the computer in the extensive and deep application day by day of all trades and professions, concept that information turn too already through not only be limited by only link the internet ascended. use the special-purpose software of a set of information managements to replace original keeping accounts by hand, after carrying on proper establishment to the system , once inscroll the evidence materials, after carrying out the function of verifying and keeping accounts, will produce the information record needed automatically , it is the information and then can output the information wanted at any time. the industry hardware of the computer and improving day by day in economic domain position of renewal, upgrading and management of the software, it is two wheels advanced constantly, in the process of each development, promote and promote each other , will information and push to a new height . this text discusses mainly that authorizes for dispatch the pharmaceuticals, one of the trades as the goods, how to realize that the information of the computer is managed.
medical trade enter and sell and deposit system typical information management system (mis), it develops main two respects of development including setting-up and maintaining and front application program of backstage supporter's database . demand to set up the consistency of the data and integrity the storehouse of strong, data with good security to the former. require to the latter that the function of the application program is complete, apt characteristic of using etc.  
through analyzing, we use visual basic developing instruments of microsoft company, utilize its various kinds of target -oriented developing instruments offered, data window this can convenient succinct to handle intelligent target of the data base especially, set up system use prototype, then go on demand changes and takes the place of to initial prototype system within short time at first, revise and improve constantly, until forming the feasible system meeting the demands.

key words:vb;sql sever 2000;mis system
目 录
第1章 绪 论        1
1.1 信息化管理的背景与动机        1
1.2 医药行业计算机管理的意义        1
1.3 解决思想        1
第2章 可行性研究报告        3
2.1 引言        3
2.1.1 编写目的        3
2.1.2 背景        3
2.1.3 定义        3
2.2 可行性研究的前提        4
2.2.1 要求        4
2.2.2 目标        4
2.2.3 进行可行性研究的方法        4
2.2.4 评价尺度        4
2.3 对现有系统的分析        5
2.3.1 数据流程和处理流程        5
2.3.2 工作负荷        7
2.3.3 费用开支        7
2.3.4 设备        7
2.3.5 局限性        7
2.4 投资及收益分析        7
2.5 社会条件方面的可行性        7
2.5.1 法律方面的可行性        7
2.5.2 使用方面的可行性        7
2.6 结论        8
第3章 软件需求说明书        9
3.1引言        9
3.1.1编写的目的        9
3.1.2背景        9
3.2需求规定        9
3.2.1对功能的规定        9
3.2.2对性能的规定        9
3.2.3 数据管理能力的要求        10
3.2.4故障处理要求        10
3.2.5其它的专门的要求        10
3.3运行环境规定        11
3.4 将来可能提出的要求        11
3.5动态数据        11
3.5.1数据库描述        12
3.6要求和范围        12
3.6.1用户界面        12
第4章 设计说明书        14
4.1总体设计引言        14
4.1.1编写目的        14
4.1.2总体结构设计        14
4.1.3逻辑结构设计        15
4.2出错处理设计        15
4.2.1出错输出信息        15
4.2.2出错处理对策        16
4.2.3安全保密设计        17
4.3详细设计引言        17
4.3.1目的        17
4.3.2程序描述        17
4.3.3数据库设计        18
第5章        系统具体实现        20
5.1 编程环境的选择        20
5.1.1 visual basic界面简介        20
5.1.2 ado        22
5.2 关系型数据库的实现:        23
5.2.1 数据库简介        23
5.2.2 sql server 2000简介        24
5.3 二者的结合:        26
5.4开发过程介绍        26
5.4.1 用户界面的实现        26
5.4.2 表格控件总览:        29
5.4.3 模块功能的具体实现        30
结 论        40
参考文献        41
database programming of visual basic        42
visual basic数据库编程        49
致 谢        53
附 录        53
第1章 绪 论
1.1 信息化管理的背景与动机
随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对医药行业进销存信息进行管理,具有手工管理所无法比拟的优点。例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高医药公司管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。
1.2 医药行业计算机管理的意义
医药行业进销存系统是一个医药销售公司不可缺少的部分,它的内容对于公司的决策者和管理者来说都至关重要,所以医药行业进销存系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理各种账目信息,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。这样的机制已经不能适应时代的发展,因为它浪费了许多人力和物力,在信息时代这种传统的管理方法必然被计算机为基础的信息管理所取代。
因此,开发这样一套信息管理软件成为很有必要的事情。
开发一个医药行业进销存系统可以进行更有效的管理,归纳起来好处大约有以下几点:
1.        可以存储大量的商业信息,安全、高效;
2.        只需一到二名熟悉计算机的人员即可操作系统,节省大量人力;
3.        可以迅速查到所需信息,并打印输出。
1.3 解决思想
在各行各业使用计算机来解决问题,就要用科学的思想与技术把该问题作为一个工程来看待。因为这是一个花费时间和人员精力还有一定费用并且能够产生大量无形价值的工作。我热爱计算机行业,我尊重我的工作,所以我会严谨的进行数据调查,并按照大学里学到的软件工程课程的知识来严格的以工程的思想进行开发。
在下面的各章中我们将以开发一套医药行业进销存系统为例,详细介绍其开发过程和所涉及到的问题及解决方法。毕竟我们能力和经验有限,有一些不足的地方还请谅解。
第2章 可行性研究报告
可行性研究报告的编写目的是:说明该软件开发项目的实现在技术、经济和社会条件方面的可行性;评述为了合理地达到开发目标而可能先择的各种方案;说明论证所选定的方案。
2.1 引言
并不是所有的问题都用简单明显的解决办法,事实上,许多问题不可能在预定的系统规模之内解决。如果问题没有可行的解,那么花费在这项开发工程上的任何时间、资源、人力和经费都是无谓的浪费。
2.1.1 编写目的
可行性研究的目的不是解决问题,而是确定问题是否值得去解。
对于一般的中小型医药公司来说,他们的需求并不是很多,编写针对他们的行业软件,也没有太多的专业知识的门槛。所以,一般来说,开发一个医药行业的软件是不存在实现上的问题的。
市场上的医药行业软件各不相同,成熟的商业软件价格昂贵,小型软件公司或者个人开发的软件功能又比较混乱,造成中小医药公司选择上的困难。
这对我们来说是一个可行的机会。
2.1.2 背景
对于一部分中小医药公司的调查了解,我们得出大部分中小型医药公司还在使用手写记账方式,而少部分中型医药公司虽然已经使用上了计算机管理,但是他们所使用的软件各式各样,对于问题的解决各不相同,并不是非常适合他们的需求。
在这样一个有着求远大于供的行业中蕴含着足够大的市场,如果能开发出可以满足他们需求的软件产品,一定会很受欢迎的。
2.1.3 定义
对于毕业设计来说,大型行业软件是我们不可能能完成的,所以我们定位于中小医药公司的需求进行开发。  
2.2 可行性研究的前提
开发一个软件是为了使客户能都使用。但是如果过高的软件和硬件费用让客户止步,那么就没有开发的必要了。
我们是为了将大学的知识融会贯通,完成让我们自己满意的毕业设计,所以我们开发的软件是免费的。对于计算机硬件价格是非低廉的今天,硬件的实现是不成问题的。
2.2.1 要求
对于这个行业我们的了解只是表面上的东西,医药公司的资深人员给了我们一个最佳的建议,“简便的操作性,持久的稳定性,还有良好的安全性。真正经得起考验的从来都不是华而不实的东西。” 他的这句话也让我们放弃了做出吸引人的界面的打算,毕竟那会花费我们不少的时间。我们只简单、稳定、安全为软件开发的最终内涵。
2.2.2 目标
对大多数的医药公司的调查,我们发现他们希望我们能完成的主要目标有两个:
1.        为广大药品经营企业提供销存一体化解决方案         涵盖企业的物流和资金流整体业务流程,能够满足医药行业内的各种经营模式和特性。
2.        适合药品经营管理的特殊功能        针对医药行业经营品种繁多,对药品的有效期、药品的批准文号、合格证等监控比较的严格等等一系列行业特殊需求,系统增加了对药品的批次管理等等功能。
2.2.3 进行可行性研究的方法
在可以完成毕业设计和开发出一个优秀的软件中进行权衡,这是一个难题,我们没有经验和时间。很多资料都需要我们两个人一点一滴的搜集。
于是我们采用估算的数学方法,帮助解决这个问题。我们把任务分成几个阶段,每个阶段的工作按小时计算,并且留出一周时间作为计划延误的补充。
经过粗略估计,我们采取保守的态度,如果在最后期限前完不成任务的情况下,可以去掉一到两个额外的功能模块的方法,这样我们保证能完成我们的毕业设计。
2.2.4 评价尺度
把按照老师帮助我们分析的任务量和整体任务计划写成计划书的形式,它不但是我们最好的行动指南,而且是保证可行性的确认书。
2.3 对现有系统的分析
我们参照了几个医药行业的管理软件,比如富康医疗器械公司进销存管理系统等,发现它们的功能基本上都能满足用户的需要,只是操作上还是有一些不变。它们的界面都显得成熟华丽,但我们一时还不能达到这种程度,所以我们的目标是操作和功能。
2.3.1  数据流程和处理流程
图2.1系统处理流程图
图2.2添加数据的数据流图
图2.3系统部分e-r图示例
2.3.2 工作负荷
这个任务有我和安明同学合作完成,我想工作量是很合理的。由于我们缺少经验,最初的一周内需要我们额外的付出一些时间来查询资料和搜集信息,这样才能保证不耽误时间,保证计划可以顺利进行。
2.3.3 费用开支
包括进行资料搜集的交通费,购买必要的资料的费用和毕业设计论文打印的费用大概每人需要100元左右。
2.3.4 设备
我们都有自己的计算机,而且学校机房提供计算机,没有硬件方面问题。
2.3.5 局限性
我们并没有做过正式项目的经验,所以一切都不知道从哪里入手,虽然有老师的帮助,但是仍然不时感觉困惑。
由于没有受过良好的项目管理培训,我们在计划时间表的面前总是很狼狈,总是不能与它的脚步一致。
2.4 投资及收益分析
如果某医药公司使用计算机管理,需要购置一台计算机,大约3500元。使用计算机销售管理功能进行打印销售单并收款,至少相当于替代了一名普通职员。一名普通职员工资按照400元算,1年下来就节省了1300元。
而且,对于计算机管理对于工作效率的提升有可以提高不少的销售额。
2.5 社会条件方面的可行性
2.5.1 法律方面的可行性
这个医药行业进销存系统是由我们自己开发的,我们也对软件的版权进行了标记,所以根本不会产生法律方面的问题。
2.5.2 使用方面的可行性
我们从一开始就把简单的操作性,持久的稳定性和良好的安全性作为改系统的开发思想,所以只要一个稍微接触过的人员都可以正确使用该系统。
2.6 结论
经过我们的调查,开发这样一个软件从各方面来说都是可行的。
对于还不是很成熟的医药行业软件,我们开发这样一个新的软件是很有机会的。
所以有针对性的开发一个新的行业软件是很可行的,而且会很受欢迎的。

第3章 软件需求说明书
3.1引言
需求分析的基本任务是准确的回答系统必须完成那些工作,也就是对目标系统提出完整、准确、清晰、具体的要求。
3.1.1编写的目的
在可行性分析阶段已经划分出系统必须完成的许多基本功能,在需求分析阶段应该仔细分析这些基本功能并进一步将它们具体化,包括详细的数据留出,数据字典和一组简明的算法描述。
3.1.2背景
经过市场调研,我们发现中小型医药公司占市场比重很大一部分,所以我们以一家以销售批发为主的中小型医药公司作为典型的医药经营公司进行分析。
3.2需求规定
3.2.1对功能的规定
根据我们对部分医药公司的调查,采集了大量的数据,归纳和总结了他们的需求,明确了系统功能。其功能模块如下:
        基本信息的管理,包括药品设置、供应商设置、职员设置等。
        进货信息的管理,包括进货订货单的管理、入库单的管理以及进货信息的查询等。
        销售信息管理,包括销售单的打印和查询等。
        库存信息的管理,包括药品盘点、药品期限提醒等。
        财务信息管理,包括应付信息的管理、财务汇总等。
        系统管理,包括密码管理.
3.2.2对性能的规定
因为医药公司是一个全年营业的单位,并且整日有着大量的资金和货物的流通,这就要求该系统以稳定和安全为主。所以整个开发流程都要一颗已稳定和安全的运行为约束条件。
3.2.2.1精度
为了保证数据的准确性,我们会在数据库中设置详细的数据类型,以保证日期、时间、药品单位和药品单价等对数据要求严格的数据项。
3.2.2.2时间特性要求
医药公司对信息的管理是即时的,任何时间产生销售行为或者进货等行为,计算机都要立刻进行记录。这样,在营业中的医药公司来说,计算机操作员就比较繁忙。我们考虑到这一点,所以操作会尽可能的简单快捷。还有,繁忙的时候就容易出错,所以我们对信息处理进行了信息验证过程,不正确的信息就不能通过,来保证系统的正确性。
3.2.2.3灵活性
有一些人为的疏忽和不可避免的错误,这就是该管理系统能够解决的了。比如说,药品价格的变更,人员的信息变更等。但是,我们对这种情况也考虑到了,增加了信息的修改功能。这是处理小部分信息改动的方便的功能。
3.2.2.4输入输出要求
用户希望可以打印票据,但是我们不可能只考虑到这一点。在信息输入的过程中,我们会尽可能的提供方便,比如使用下拉框来选择数据,日期时间的自动生成等。
3.2.3 数据管理能力的要求
对于一个行业软件来说,稳定性是最主要的。因为社会需求变化太快,软件的生存周期不太可能长久,但是用户都希望该系统可以用上三年五年甚至更长的时间,这就要求数据保存的可靠性。我们使用sql server 2000数据库。因为是企业级数据库,而且是单用户操作,并不存在并发操作可以引发错误的危险性。其可以动态的改变数据库容量,这样,只要硬盘容量够大,就能够保证用户的长久使用。
3.2.4故障处理要求
对于可能出现的问题,我们有一定的出错处理功能。对于计算机程序不了解的操作员,我们用简单易懂的窗体会提示他操作。如果时间允许,我们会编写代码对数据库进行备份和恢复。
3.2.5其它的专门的要求
也有一些人希望我们可以提供财务和人事管理的功能,我们在时间可能的情况下会考虑,但是这应该完全不属于我们这个系统的范围,需要另外购买。
3.3运行环境规定
硬件环境:
   处理器pentium 3 500mhz以上,推荐采用pentium 4  1.8ghz处理器;
   内存在128m以上,推荐采用256m ddr 内存;
        硬盘容量应在20g以上;
软件环境:
   操作系统:windows 98 以上,推荐使用 windows xp;
   数据库系统:sql server 2000;
   开发工具:visual basic 6.0
因为该系统的最基本要求是要安全稳定,所以我们推荐使用windows xp系统。windows 98 系统应该是不允考虑,这是因为前一段时间,微软公司宣布过一段时间不会对windows 98 系统进行技术支持。
     
3.4 将来可能提出的要求
应该明确地列出那些虽然不属于当前系统开发范畴,但是据分析将来和可能会提出来的要求,以便一旦需要时能比较容易得进行这种扩充和修改。
我们列出了一些将来可能需要的功能,但是这些功能已经超出了进销存系统的包含范围,例如财务管理和人事管理等。       
3.5动态数据
针对医药行业销售业务的需求,通过对医药行业管理工作过程的内容和数据流程分析,设计如下面所示的数据项和数据结构:
        药品信息,包括的数据项有:药品编号、药品名称、卫准字、计量单位、类别、入库价格、零售价格、生产厂家、更新日期、备注信息等。
        供应商信息,包括的数据项有:供应商编号、供应商名称、地址、邮政编码、电话号码、公司主页、电子邮件地址、税号、银行帐户、开户银行、联系人、备注信息等。
        职员信息,包括的数据项有:职员编号、职员姓名、电话号码、家庭住址、身份证号码、备注信息等。
        进货订单信息,包括的数据项有:订货日期、编号、业务员、供应商编号、药品编号、有效期限、数量、单价、折扣比例、总金额、是否即时付款、是否记账、预付比例、备注信息等。
        销售单信息,包括的数据项有:销售日期、销售时间、编号、业务员、药品编号、有效期限、数量、单价、总金额、备注信息等。
        库存信息,包括的数据项有:更新日期、编号、仓库编号、药品编号、有效期限、数量、单价、总金额备注信息等。
        工资信息,包括的数据项有:职员编号、职员姓名、基本工资、奖金、补贴、总额等。
3.5.1数据库描述
我们把服务器上的数据库名称定为“my_medsys” ,使用的清晰的命名方法。数据库中包含数个表,如下:药品类别表、药品信息表、客户信息表、供应商信息表、职员类别表、职员表、仓库表、进货订单表、入库单表、销售订单表、销售单表、库存表、转仓单表等。
3.6要求和范围
我们采集的数据基本上可以满足一般医药公司的使用了,对一些细节问题例如进货价格、分销价格、零售价格、折扣、生产日期、保质期和卫准字的数据项都考虑了。
3.6.1用户界面
我们开发了一个原型系统,以便于给用户演示并听取意见,下面是三幅示图:
图3.1登录窗体示图
图3.2 主窗体示图
图3.3 报表示图
有了上面的数据结构、数据项的准备信息,与一个可以知道总体方向的原型系统,我们准备进行下阶段的设计工作了。
第4章 设计说明书
4.1总体设计引言
总体设计的基本目的就是回答系统应该如何实现。通过这个阶段的工作将划分出组成系统的物理元素——程序、文件、数据库、人工过程等等,并设计出软件的结构,也就是要确定系统中的每个程序是由那些模块组成的,以及这些模块相互之间的关系。
4.1.1编写目的
这样,可以站在全局高度上,花较少成本,从较抽象的层次上分析对比多种可能的系统实现方案和软件结构,从中选出最佳方案和最合理的软件结构,从而用较低成本开发出较高质量的软件系统。
4.1.2总体结构设计
图4.1功能模块图
4.1.3逻辑结构设计
图4.2 逻辑结构设计图
4.2出错处理设计
4.2.1出错输出信息
因为非专业人员很难理解程序出错的提示信息,所以我们尽可能的在程序内部将错误问题解决,无法从内部解决的问题我们才会使用提示信息出错的方法。
下面是模块中数据库检索功能函数的程序代码,我们编写了两个不同的功能的出错处理,提示出错信息,并且保存退出。
public function executesql(byval sql _
   as string, msgstring as string) _
   as adodb.recordset
'executes sql and returns recordset
   dim cnn as adodb.connection
   dim rst as adodb.recordset
   dim stokens() as string
   on error goto executesql_error
   stokens = split(sql)
   set cnn = new adodb.connection
   cnn.open connectstring
   if instr("insert,delete,update,execute", _
      ucase$(stokens(0))) then
      cnn.execute (sql)
      msgstring = stokens(0) & _
         " query successful"
   else
      set rst = new adodb.recordset
      rst.open trim$(sql), cnn, _
         adopenkeyset, _
         adlockoptimistic
      'rst.movelast     'get recordcount
      set executesql = rst
      msgstring = "查询到" & rst.recordcount & _
         " 条记录 "
   end if
executesql_exit:
   set rst = nothing
   set cnn = nothing
   exit function      
executesql_error:
   msgstring = "查询错误: " & _
      err.description
   resume executesql_exit
end function
4.2.2出错处理对策
无论何时,我们都一直以安全稳定为程序编写的目标。
我们无法让用户了解到程序出错分为可处理错误和不可处理错误,都是如何来应对的。所以我们把可能的错误考虑到,有程序自己来解决,而不是让用户来解决,这样来避免由于用户处理不当而产生的数据丢失甚至更不可预测的失误。
4.2.3安全保密设计
我们使用密码来作为程序的保密设计,并且管理员可以在程序内部对密码修改。
我们使用visual basic 6.0开发时也考虑了控件的选择。比如vb中 datagrid 控件是直接可以从控件本身上对数据库进行修改,如果是不熟悉vb开发环境的人员恐怕会产生致命的错误。而microsoft flexgrid control、microsoft hierarchial flexgrid control两个控件只读属性控件,只会显现数据库信息,而不会对其修改。
4.3详细设计引言
详细设计阶段的任务还不是具体的编写程序,而是要设计出程序的“蓝图” ,以后程序员将根据这个蓝图编写出实际的程序代码。
4.3.1目的
详细设计阶段的根本目标是确定应该怎样具体的实现所要求的系统,也就是说,经过这个阶段的设计工作,应该得出对目标系统的精确描述,从而在编码阶段可以把这个描述直接翻译成用某种程序设计语言写的程序。
4.3.2程序描述
4.3.2.1功能
如图所示,我用有代表性的几幅示图来直观体现系统的主要功能。
图4.3进货订单设置信息示图
图4.4进货查询示图
程序中主要完成的就是显示、查询、添加、修改和删除功能。
基本上的实现就是:
1.        进货订单的添加:
2.        进货订单基本信息维护:包括修改、删除。
3.        进货订单基本信息查看
4.        进货订单基本信息查询:支持多条件查询,可以选择按供货方进货查询,可以选择按仓库进货查询,可以选择按业务员查询。
4.3.3数据库设计
数据库在一个信息管理系统中占有非常中央的地位,数据库结构设计得好会将直接对应用系统的效率以及实现的效果产生影响。合理的数据库结构设计可以提高数据存储的效率,保证数据的完整和一致。
设计数据库系统是应该首先充分了解用户各个方面的需求,包括现有的以及将来可能增加的需求。因为我们已经进行了详细的数据采集,所以前提工作已经完成了。
下面我们要把数据项转化成sql server 2000数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。
我简单的列举了两个表的内容,表的信息如下:

药品类别表
列名        数据类型        可否为空        说明
lbcode        char        not null        药品父类编号
lb        char        null        药品父类名称
lbcode1        char        not null        药品子类编号
lb1        char        null        药品子类名称
bz        char        null        备注信息

药品信息表
列名        数据类型        可否为空        说明
dm        char        not null        药品编号
mc        char        null        药品名称
bar_code        char        null        卫准字
jldw        char        null        计量单位
lbdm        char        null        药品类别编号
rkj        numeric        null        入库价格
fxj        numeric        null        分销价格
lsj        numeric        null        零售价格
cj        char        null        生产厂家
yxrq        numeric        null        更新日期
bz        char        null        备注信息

大家一定要支持啊

TOP

绝对

TOP

终于找到了,继续加油吧

TOP

TOP

TOP

TOP

TOP

TOP

支持,谢谢

TOP

返回列表

Powered by Discuz! 7.2   论坛QQ群:逐梦论坛群

© 2001-2021 Comsenz Inc. 鲁公网安备 37120302000001号