vb企业进销存管理系统.docx
《vb企业进销存管理系统.docx》由会员分享,可在线阅读,更多相关《vb企业进销存管理系统.docx(65页珍藏版)》请在冰豆网上搜索。
![vb企业进销存管理系统.docx](https://file1.bdocx.com/fileroot1/2023-6/2/5ea82aae-09bc-4392-96e9-98bead6ec05e/5ea82aae-09bc-4392-96e9-98bead6ec05e1.gif)
vb企业进销存管理系统
【摘要】
进入二十一世纪以来,随着社会的不断进步和科学技术的飞速发展,信息技术进入了爆炸式的年代,信息技术与人们的生活工作已息息相关、密不可分。
计算机局域网、办公自动化已成为各大小企事业单位提高工作效率、简化工作流程、创造更大经济效益的重要手段。
随着计算机在企业管理中应用的普及,利用计算机实现企业的各种管理工作势在必行。
而企业生产制造的关键在于如何规划和计划各种资源在时间、地点、产品之间的合理配备,如何按计划监督责任方对资源的使用情况,如何根据预测和历史情况为决策者提供更有效地利用资源的分析数据。
本系统结合工业企业的生产中的特点经过实际的需求分析,采用功能强大的VisualBasic6.0和SQL
Server2000作为开发工具而开发出来的企业进销存管理系统。
本系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。
对于前者要求建立起数据一致性和完整性强、数据安全性好的库。
而对于后者则要求应用程序功能完备,易使用等特点。
该系统的数据库使用了SQLServer2000。
程序的设计使用了具有一系列崭新功能的传统数据库开发工具VisualBasic6.0。
系统的主要功能是制定采购计划、物料需求计算、材料供求分析。
并设计了几个小模块,以实现数据的处理、查询、统计及维护等功能。
VisualBasic的强大功能中数据窗口技术由于其简单、直观、功能强大等特点成为本系统使用最多的技术。
由于VisualBasic采用的是Client/Server的体系结构,所以本系统可以在局域网上运行以适应需求。
因时间关系以及自身水平的限制,本系统的制作并不完善,所以难免有错误之处,请老师批评指正。
论文主要介绍了本课题的开发背景,所要完成的功能和开发的过程。
重点的说明了系统设计的重点、设计思想、难点技术和解决方案。
关键词:
SQLServer2000数据库,VisualBasic6.0,基本信息管理
、八、,
前言
进入二十一世纪以来,随着社会的不断进步和科学技术的飞速发展,信息技术进入了爆炸式的年代,信息技术与人们的生活工作已息息相关、密不可分。
计算机局域网、办公自动化已成为各大小企事业单位提高工作效率、简化工作流程、创造更大经济效益的重要手段。
随着计算机在企业管理中应用的普及,利用计算机实现企业的各种管理工作势在必行。
而企业生产制造的关键在于如何规划和计划各种资源在时间、地点、产品之间的合理配备,如何按计划监督责任方对资源的使用情况,如何根据预测和历史情况为决策者提供更有效地利用资源的分析数据。
我们经过分析研究,为了能使本系统能够与现有系统更好地接轨,采用了目前使用率最高、保密性好的数据库系统—SQLServer2000数据库,并选择了VisualBasic6.0作为前台数据库开发工具。
SQLServer是数据库技术的倡导者和先驱,是标准SQL数据库语言的产品。
自从推出以来,它受到社会的广泛注意。
近二十年来,SQL不断将先进的数据库
技数融入其中,并极有预见性地领导着全球数据库技术的发展。
SQLServer
2000在数据库管理、数据完整性检查、数据库查询功能、数据库安全性方面都具有强大的功能,而且它还在保密机制、备份与恢复、空间管理、开放式联接以及开发工具方面提供了不同的手段和方法。
VisualBasic是目前广泛流行的一种面向对象的、具有可视化图形界面的快速交互式数据库前台开发工具,它支持客户/服务器机制、分布式组件开发与因特网应用。
利用它既可以开发功能强大的、运行在多个平台的、能够操作多个数据库的应用系统,还可以开发客户/服务器、分布式、因特网应用系统。
本系统中,我们利用SQLServer数据库创建应用数据库,建立表空间和表,利用VisualBasic前台开发工具,由于本系统是要应用于局域网上,所以建立与SQL数据库的连接是本系统的第一个重要环节,我们发现直接使用ADC对象要比工具容易多,因此我们使用ADO对象模型进行数据库的连接。
建立与SQL
Server数据库的连接后,利用各类管理画笔窗口和VisualBasic语言,开发一系列功能模块,实现了对数据库数据进行生成、处理、查询、统计及字典维护等一系列功能,并能将新生成的数据制作成报表,以实现我们的设计思想。
通过我们大家的共同努力和指导老师的帮助,我们完成了整个系统的设计开发,基本实现了预期的目的,同时也通过这次设计开发过程增加了自身的实践经验,提高了自身的设计开发能力,为将来工作打下了良好的基础。
由于时间关系和自身的水平,我们的设计并不完善,其中也难免有错误之处,也请各位老师给予批评和指导。
第一章绪论
随着计算机技术的飞速发展,计算机在企业管理中应用的普及,利用计算机实现企业的生产管理势在必行。
对于大中型企业来说,利用计算机支持企业高效率完成生产管理的日常事务,是适应现代企业制度要求、推动企业生产走向科学化、规范化的必要条件;而企业生产制造的关键在于如何规划和计划各种资源在时间、地点、产品之间的合理配备,如何按计划监督责任方对资源的使用情况,如何根据预测和历史情况为决策者提供更有效地利用资源的分析数据。
而生产管理是一项琐碎、复杂而又十分细致的工作,产品的供应、销售、统计、发放的工作量很大,一般不允许出错,如果实行手工操作,每月须手工填制大量的表格,这就会耗费工作人员大量的时间和精力,计算机进行生产管理工作,不仅能够保证产品各种信息准确无误、快速输出,而且还可以利用计算机对有关产品的各种信息进行统计,服务于财务部门其他方面的核算和财务处理,同时计算机具有着手工管理所无法比拟的优点.例如:
检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。
这些优点能够极大地提高生产管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。
经过我们一段时间的调查研究,资料搜集分析并结合工业企业现在的生产管理状况,我们发现现有软件虽然具有传递功能,但是在数据处理、数据统计、数据汇总上存在一定的缺陷,于是我们决定尝试开发一个系统来弥补这些缺陷。
结合我们目前的现有条件设备,我们采用了SLQServer2000数据库系统和
VisualBasic6.0数据库开发工具,设计开发了《企业进销存管理系统》,开发了数据生成、数据汇总、数据查询、数据统计和维护等几个小模块,可以从现有数据中提取企业生产制造的专用数据,进行分类汇总,生成每日报表和每月报表。
1.2开发工具的选择
现在,市场上可以选购的应用开发产品很多,流行的也有数十种。
目前在我国市场上最为流行、使用最多、最为先进的可用作企业级开发工具的产品有:
Microsoft公司的VisualBasic
Microsoft公司的SQLServer2000
Microsoft公司的ActiveXDataObjects
VisualBasic是一种可视化的、面向对象和条用事件驱动方式的结构化高级程序设计,可用于开发Windows环境下的各类应用程序。
它简单易学、效率高,且功能强大。
在VisualBasic环境下,利用事件驱动的编程机制、新颖易用的可视化设计工具,使用Windows内部的应用程序接口(API)函数,以及动态链接库(DLL)、对象的链接与嵌入(OLE)、开放式数据访问(ODBC等技术,可以高效、快速地开发出Windows环境下功能强大、图形界面丰富的应用软件系统。
总的来说,VisualBasic具有以下特点:
可视化编程:
用传统程序设计语言设计程序时,都是通过编写程序代码来设计用户界面,在设计过程中看不到界面的实际显示效果,必须编译后运行程序才能观察。
如果对界面的效果不满意,还要回到程序中修改。
有时候,这种编程-编译-修改的操作可能要反复多次,大大影响了软件开发效率。
VisualBasic提供了可视化设计工具,把Windows界面设计的复杂性“圭寸装”起来,开发人员不必为界面设计而编写大量程序代码。
只需要按设计要求的屏幕布局,用系统提供的工具,在屏幕上画出各种“部件”,即图形对象,并设置这些图形对象的属性。
VisualBasic自动产生界面设计代码,程序设计人员只需要编写实现程序功能的那部分代码,从而可以大大提高程序设计的效率。
面向对象的程序设计
4.0版以后的VisualBasic支持面向对象的程序设计,但它与一般的面向对象的程序设计语言(C++)不完全相同。
在一般的面向对象程序设计语言中,对象由程序代码和数据组成,是抽象的概念;而VisualBasic则是应用面向对象的程序设计方法,把程序和数据圭装起来作为一个对象,并为每个对象赋予应有的属性,使对象成为实在的东西。
在设计对象时,不必编写建立和描述每个对象的程序代码,而是用工具画在界面上,VisualBasic自动生成对象的程序代码并圭装起来。
每个对象以图形方式显示在界面上,都是可视的。
结构化程序设计语言
VisualBasic是解释型语言,在输入代码的同时,解释系统将高级语言分解翻译成计算机可以识别的机器指令,并判断每个语句的语法错误。
在设计VisualBasic程序的过程中,随时可以运行程序,而在整个程序设计好之后,可以编译生成可执行文件(.EXE),脱离VisualBasic环境,直接在Windows环境下运行。
事件驱动编程机制
在用VisualBasic设计大型应用软件时,不必建立具有明显开始和结束的程序,而是编写若干个微小的子程序,即过程。
这些过程分别面向不同的对象,由用户操作引发某个事件来驱动完成某种特定的功能,或者由事件驱动程序调用通用过程来执行指定的操作,这样可以方便编程人员,提高效率。
访问数据库
VisualBasic具有强大的数据库管理功能,利用数据控件和数据库管理窗口,可以直接建立或处理MicrosoftAccess格式的数据库,并提供了强大的数据存储和检索功能。
同时,VisualBasic还能直接编辑和访问其他外部数据库,如dBASE,FoxPro,Paradox等,这些数据库格式都可以用VisualBasic编辑和处理。
VisualBasic提供开放式数据连接,即ODBCS能,可通过直接访问或建立连接的方式使用并操作后台大型网络数据库,如SQLServer,Oracle等。
在应用程序中,可以使用结构化查询语言SQL数据标准,直接访问服务器上的数据库,并提供了简单的面向对象的库操作指令和多用户数据库访问的加锁机制和网络数据库的SQL的编程技术,为单机上运行的数据库提供了SQL网络接口,以便在分布式环境中快速而有效地实现客户/服务器(client/server)方案。
对象的链接与嵌入(OLE)
对象的链接与嵌入(OLE)将每个应用程序都看做是一个对象(object),将不同的对象链接(link)起来,再嵌入(embed)某个应用程序中,从而可以得到具有声音、影像、图像、动画、文字等各种信息的集合式的文件。
OLE技术是Microsoft公司对象技术的战略,它把多个应用程序合为一体,将每个应用程序看做是一个对象进行链接和嵌入,是一种应用程序一体化的技术。
利用OLE技术,可以方便地建立复合式文档(compounddocument),这种文档由来自多个不同应用程序的对象组成,文档中的每个对象都与原来的应用程序相联系,并可执行与原来应用程序完全相同的操作。
动态链接库(DLL)
VisualBasic是一种高级程序设计语言,不具备低级语言的功能,对访问机器硬件的操作不太容易实现。
但它可以通过动态链接库技术将C/C++或汇编语言编写的程序加入到VisualBasic应用程序中,可以像调用内部函数一样调用其他语言编写的函数。
此外,通过动态链接库,还可以调用Windows应用程序接口(API)函数。
SQLServer2000是在SQLServer7.0的基础上扩展升级的产品。
SQLServer7.0是Microsoft公司在数据库领域中非常重要的产品,它具有非常好的再造和重写特性。
SQLServer7.0以良好的性能、稳定性、便于管理和易于开发的优势。
SQLServer2000继承了数据软件设计和引擎方面的优势,已经成为新一代网络应用程序的最佳数据库和分析解决方案之一。
作为Microsoft.NETEnterpriseServer的核心组件,它将减少电子商务、在线商务和数据仓储应用程序推向市场的时间,并对需要的环境提供可靠的支持。
SQLServer2000对XML和HTTP提供充分的支持;提供分割装载和确保时间的特性;提供先进的管理和协调机制,可以自动管理线程任务,降低总体开销。
除此而外SQLServer2000充分的利用了Windows2000的功能。
ActiveXDataObjects是Microsoft公司应用UniversaldataAccess的一种方式。
UniversaldataAccess允许用户为相关和非相关数据使用同一高速界面,同时还可以提供一个使用简单、语言独立的界面。
在我们的此次设计中我们应用了ADC中的对象有:
Command(运行SQL语句或存储过程)、Connection(用于管理连接数据库或其他OLEDB数据提供者所需要的信息)、Error(包含特定错误的有关信息)、Errors(包含一个Error对象集合)、Field(包含数据库中特定字段的信息)、Fields(包含一个Field对象的集合)、Record(说明Recordset对象、文件或电子邮件信息中的一个数据行)、Recordset(用于管理询问操作产生的行组)。
在ADO对象模型中,主要有三个用于数据库访问的对象:
Connection对象
提供了一个通向数据源的途径,Comman对象包含了执行SQL语句或存储过程所需要的信息,Record对象包含了询问的结果。
如果需要,Comman和Rrcordest对象能够创建一个绝对的Connection对象,所以仅通过创建一个单一的对象就可以访问一系列的记录或运行数据库函数。
Record和Steram对象主要被用来支持访问非数据露资源。
Record对象代表记录集中的一个数据行,也代表一个文件或一条电子邮件信息中的数据行;Stream对象为控制文件或电子邮件信息中的数据提供了便利的条件。
Record对象用于说明诸如此类的信息:
文件系统中的子目录和文件、电子邮件系统中的文件夹或信息。
Record对象也可以用来说明Recordset对象中的数据行。
Steram对象用于对Record对象相关信息和文件的二进制信息进行读写。
1.3本文所工作
第一章绪论部分绪论主要叙述课题提出背景、目前应用现状、分析比较当前开发工具,数据库技术的比较。
第二章结合软件工程方法,对系统进行需求分析、功能划分、数据流图设计,并结合数据库原理和功能划分进行ER图的绘制、数据库结构设计,
第三章根据需求分析的结果,用户概念数据模型表示数据及其相互间的联系。
第四章根据需求分析的结果,对系统进行详细设计,主要介绍用Visual
Basic6.0实现每一个模块的具体功能。
第五章毕业设计小结,总结部分介绍了设计体会和编程体会,并指出了系统设计中的不足和改进的方向。
第二章需求分析
2.1总体需求调查
2.1.1组织结构图
2.1.2系统目标
本系统是根据工业企业的生产过程,控制生产过程中的材料消耗,产品销售,销售成本等数据,具体管理范围包括材料采购,材料库存,生产计划,生产控制,物料需求,产品购进,产品销售,产品产出等。
2.1.3核心任务
本系统的主要功能是制定生产/采购计划,物料需求计算,材料供求分析,其核心任务是:
降低材料成本,降低库存成本,缩短生产/采购周期,如何获得
更咼的利润。
2.1.4业务总体流程调
产品类别信息,包括的数据项有:
类别编号,类别名称。
产品信息,包括的数据项有:
产品编号,产品名称,计量单位,类别,入库价格,分销价格,零售价格,生产厂家,更新日期,备注信息等。
客户信息,包括的数据项有:
客户编号,客户名称,地址,由E政编码,电话号码,公司主页,电子邮件地址,税号,银行账户,开户银行,联系人,备注信息等。
供应商信息,包括的数据项有:
供应商编号,供应商名称,地址,邮政编码,电话号码,公司主页,电子邮件地址,税号,开户银行,联系人,备注信息等。
业务员类别信息,包括的数据页有:
类别编号,类别名称等。
业务员信息,包括的有数据项:
业务员员编号,业务员姓名,类别,电话号码,家庭住址,身份证号码,备注信息等。
仓库信息,包括的数据项有:
仓库编号,仓库名称。
进货订单信息,包括的数据项有:
订货日期,编号,业务员,供应商编号,产品编号,数量,单价,折扣比例,总金额,备注信息等。
入库单信息,包括的数据项前:
入库日期,编号,业务员,供应商编号,产品编号,数量,单价,折扣比例,总金额,是否是即时付款,是否记账,预付比例,备注信息等。
销售出货单信息,包括的数据项有:
销售日期,编号,业务员,客户编号,产品编号,数量,单价,折扣比例,总金额,是否即时付款,是否记帐,预付比例,备注信息等。
库存信息,包括的数据项有:
更新日期,编号,仓库编号,产品编号,数量,单价,总金额,备注信息等。
转仓信息,包括的数据项有:
转仓日期,编号,业务员,转出仓库的编号,转入仓库的编号,产品编号,数量,总金额,备注信息等。
2.2系统功能调查
系统开发的总体任务是实现各种住处的系统化,规范化和自动化
系统功能分析是在系统开发的总体任务的基础上完成。
工业企业进销存系统需要完成的功能主要有:
2.2.1基本信息管理
包括产品设置,产品类别设置,供应商设置,客户设置,业务员类别设置,业务员设置,仓库设置。
2.2.2进货信息管理
包括订货单的管理,入库单的管理以及进货信息的查询等。
2.2.3销售信息的管理
包括销售单的管理以及销售信息的查询等。
2.2.4库存信息的管理
包括转仓单的管理,产品盘点和转仓信息的查询等。
2.3系统功能模块图
第三章数据库的设计
3.1数据库设计概述
数据库设计是建立数据库及其应用系统的技术,是信息系统开发和建设中的核心技术,是指对于一个给定的环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求。
数据库设计既是一项涉及多学科的综合性技术,有时一项庞大的工程项目数据库建设是硬件、软件、和干件的结合;数据库设计应该和应用系统设计相结合,即整个设计过程中要把结构设计和行为设计紧密结合起来。
数据库及其应用系统开发全过程可分为以下几个步骤:
(一)需求分析;
(二)数据库的逻辑结构设计
3.2需求分析
上章我们已经做了详细的分析在此不在进行说明了。
3.3数据库的逻辑结构设计
概念结构设计就是将需求分析得到的用户需求抽象为信息结构即概念模型的过程。
它是整个数据库设计的关键。
本系统采用自底向上方法,即自顶向下进行需求分析,然后在自底向上底设计概念结构。
逻辑结构设计的任务就是把设计好的基本E-R图转换为与选用DBM产品所支持的数据模型相符合的逻辑结构。
在这一阶段我们上一阶段所设计的各实体及属性就转换为新数据库中各个表中的记录的数据项。
由于我们使用的关系型数据库SQLServer2000,所以概念结构转化关系模型,再进行特定的转换成为SQL所支持的数据模型,再进行优化。
我们根据数据库的需求分析和概念结构设计,设计了我们所需的数据库。
数据库由下面多个表格组成,各个表格的设计结果如下面表格所示。
每个表格表示在数据库的一个表。
3.4数据库的实现
创建数据库和存储过程如下:
1.创建进货定单表
CREATETABLE[dbo].[dh](
[in_date][datetime]NULL,
[ywman][char](8)COLLATEChinese_PRC_CI_ASNULL,[dh_no][char](8)COLLATEChinese_PRC_CI_ASNOTNULL,[gfdm][char](8)COLLATEChinese_PRC_CI_ASNULL,[wzdm][char](30)COLLATEChinese_PRC_CI_ASNOTNULL,[sl][numeric](10,0)NOTNULL,[in_danj][numeric](12,2)NULL,[i_zk][numeric](5,0)NULL,[i_zke][numeric](12,2)NULL,
[bz][char](100)COLLATEChinese_PRC_CI_ASNULL
)ON[PRIMARY]
GO
2.创建仓库表
CREATETABLE[dbo].[dm_ck](
[dm][char](6)COLLATEChinese_PRC_CI_ASNOTNULL,
[mc][char](40)COLLATEChinese_PRC_CI_ASNULL,
[bz][char](255)COLLATEChinese_PRC_CI_ASNULL)ON[PRIMARY]GO
3.创建供应商表
CREATETABLE[dbo].[dm_gf](
[dm][char](8)COLLATEChinese_PRC_CI_ASNOTNULL,[mc][char](40)COLLATEChinese_PRC_CI_ASNULL,[addr][char](40)COLLATEChinese_PRC_CI_ASNULL,[yzbm][char](6)COLLATEChinese_PRC_CI_ASNULL,[tel][char](40)COLLATEChinese_PRC_CI_ASNULL,[itladd][char](50)COLLATEChinese_PRC_CI_ASNULL,[email][char](50)COLLATEChinese_PRC_CI_ASNULL,[sui_no][char](20)COLLATEChinese_PRC_CI_ASNULL,[bank_no][char](20)COLLATEChinese_PRC_CI_ASNULL,[bank][char](30)COLLATEChinese_PRC_CI_ASNULL,[ywman][char](8)COLLATEC