基于VB的设备管理信息系统(共35页).doc

上传人:飞****2 文档编号:19374748 上传时间:2022-06-06 格式:DOC 页数:35 大小:462KB
返回 下载 相关 举报
基于VB的设备管理信息系统(共35页).doc_第1页
第1页 / 共35页
基于VB的设备管理信息系统(共35页).doc_第2页
第2页 / 共35页
点击查看更多>>
资源描述

《基于VB的设备管理信息系统(共35页).doc》由会员分享,可在线阅读,更多相关《基于VB的设备管理信息系统(共35页).doc(35页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、精选优质文档-倾情为你奉上专心-专注-专业摘要随着经济的发展,企业规模也正快速发展在这种情况下就需要设计一个企业设备的数据库管理系统,由计算机来代替人工执行一系列诸如设备的添加、删除、借入、借出查询等操作,这样就使办公人员可以轻松快捷地完成设备信息管理工作。本系统是为企业设备的信息化管理而设计的。我结合企业信息管理的要求,采用Visual Basic作为开发工具,使用Microsoft Access数据库作为后台,采用ADO技术连接数据库,完成数据库的一系列操作。主要完成对企业设备管理系统的需求分析、功能模块划分、数据库模式分析,并由此设计了数据库结构和应用程序。数据库应用系统开发的目标是建立

2、一个满足用户长期需求的产品。系统运行结果证明,我所设计的企业设备管理系统可以满足企业对设备信息化管理的需要。关键词:Visual Basic;Microsoft Access数据库;设备管理系统AbstractThis system is designed for the information-based management of equipments .Along with the development of economy , enterprises also develop fast. In this case database management system of equip

3、ments is needed.Computer will replace artificial performance such as adding , deleting, borrowing and lending guidance of equipments etc. So it is easy for the operator to complete information management of equipments fast .According to the request of enterprise information management , Visual Basic

4、 is used as the tool for developing and Microsoft Access as the backstage.Furthermore, ADO technique can be used to conjunct database and complete a series of operation.The aim is to complete analysis of enterprise equipments management , division of the functional mold piece and mode analysis of da

5、tabase.So the structure and application procedure of the database aredesigned.The target of Database application system is to establish a product which can satisfy long-term need of customers. The result of operation shows that the management system of enterprise equipments can meet the demand of eq

6、uipments management .Keywords: Visual Basic;the database of Microsoft Access;Equipments management system目录1绪论1.1VB系统简介Visual Basic(VB)是一种由微软公司开发的包含协助开发环境的事件驱动编程语言。它源自于BASIC编程语言。VB拥有图形用户界面(GUI)和快速应用程序开发(RAD)系统,可以轻易的使用DAO、RDO、ADO连接数据库,或者轻松的创建ActiveX控件。程序员可以轻松的使用VB提供的组件快速建立一个应用程序1-3。Visual Basic 是一种可视

7、化的、面向对象和采用事件驱动方式的结构化高级程序设计语言,可用于开发 Windows 环境下的各类应用程序。它简单易学、效率高,且功能强大可以与 Windows 专业开发工具SDK相媲美。在Visual Basic环境下,利用事件驱动的编程机制、新颖易用的可视化设计工具,使用Windows内部的广泛应用程序接口(API)函数,以用动态链接库(DLL)、对象的链接与世隔嵌入(OLE)、开放式数据连接(ODBC)等技术,可以高效、快速地开发Windows环境下功能强大、图形界面丰富的应用软件系统。 一个典型的VB进程VB的中心思想就是要便于程序员使用,无论是新手或者专家。VB使用了可以简单建立应用

8、程序的GUI系统,但是又可以开发相当复杂的程序。VB的程序是一种基于窗体的可视化组件安排的联合,并且增加代码来指定组建的属性和方法。因为默认的属性和方法已经有一部分定义在了组件内,所以程序员不用写多少代码就可以完成一个简单的程序。1.2课题研究的目的与意义1.2.1设计目的在企业的生产经营活动中,设备管理的主要任务是为企业提供优良而又经济的技术装备,使企业的生产经营活动建立在最佳的物质技术基础之上,保证生产经营顺利进行,以保证企业提高产品的质量,提高生产效率,降低生产成本,进行安全文明生产,从而是企业获得最高经济效益。企业根据市场需求和市场预测,决定进行产品的生产经营活动;在产品的设计、试制、

9、加工、销售和售后服务等全过程的生产经营活动中,无不体现出设备管理的重要要性。本系统为企业方便管理设备信息而设计。在实际应用中,企业设备管理系统代替了原来的人工操作,从而快速、准确地对设备的各种信息进行管理和维护。我们涉及本系统,具体有四个目标:(1)支持企业对设备资产进行系统的信息管理;(2)支持高效率的日常资产管理维护工作;(3)能够方便的进行资产设备信息查询工作;(4)企业设备信资产息管理工作的计算机化,各种设备资产管理信息可以通过计算机更加快速,准确地进行增加、修改、删除、查询等操作。使管理人员对所有设备的使用和折旧信息基本概况能够一目了然,便于管理,并能够极大地提高工作人员的工作效率,

10、节约人力资源。1.2.2设计意义一个优秀的企业设备资产管理系统将利用计算机及网络技术,应该结合各种先进的设备管理思想和方法,集成设备管理中各个业务层面的信息,量化和固化设备资产管理流程,形成动态的设备管理工作平台、经济技术分析平台和知识管理平台,利用对设备资产管理信息流的控制,是企业更有效地配置生产设备、人员及其他资源,提高设备可利用率及可靠性,控制维护及维修费用,延长设备生命周期,满足先进的生产设备对现代生产组织保障的要求。企业管理的各个方面都面临着信息化建设的要求。在企业进行信息化建设的过程中,一个容易产生的偏差是:企业用企业资源计划系统(ERP)取代设备管理信息化工作,认为用ERP可以完

11、成设备管理信息系统的工作。实际上,这种认识是错误的,企业资源计划系统和设备资源管理系统是两个建设目标、建设内容、实施方法和管理绩效不同。因此,设备管理系统的信息化势必成为企业信息化建设的重要组成部分。2系统设计2.1系统分析 2.1.1应用需求分析企业设备管理信息系统需要满足来自两方面的需求,这两个方面分别是企业的员工和系统管理者。企业员工的需求是查询设备的使用信息;系统管理者的需求是管理设备信息,可以新增、修改、删除设备的信息,并且可以对系统更新维护。企业管理者的需求管理设备的信息,可以新增、修改、删除设备的信息,并且可以对系统更新维护。系统管理者需求的信息量大,数据安全性和保密性要求最高。

12、本功能实现对设备信息的管理、统计、查看及维护。企业管理者可以浏览、查询、添加、删除、修改、统计设备的基本信息,所以我设计了普通用户、数据操作员、系统管理员三个用户选项。2.1.2 系统功能分析经过上述系统功能分析和需求总结,设计如下系统功能结构。设备管理模块:包含设备的添加、删除、借入、借出、注销、报废项目。查询设备模块:包含查询设备和查看全被设备。用户管理模块:添加、删除用户。报表管理模块:包含设备登记卡、部门统计表、注销统计表、报废统计表。系统管理模块:包含修改密码、退出系统、数据备份、数据整理、数据清理。2.2数据库设计2.2.1数据库概念结构设计“用户信息”实体的E-R图如图1所示。用

13、户信息编号权限水平用户名密码创建日期图1 实体的E-R图“部门信息”实体的E-R图如图2所示。部门信息编号号部门代码号部门名称图2 “部门信息”实体的E-R图 “设备信息”实体的E-R图如图3所示。设备信息编号设备代码设备名称设备型号类型代码部门代码价格购买时间折旧操作日期注销日期报废日期状态图3 “设备信息”实体的E-R图 “借入借出信息”实体的E-R图如图4所示。借入借出设备编号借入机构借入日期借入人操作编号图4 “借入借出信息”实体的E-R图“设备类型”实体的E-R图如图5所示。设备类型编号类型代码类型名称图5 “设备类型”实体的E-R图2.2.2数据库逻辑结构设计“用户信息”表(tbl

14、User)的数据结构如表1所示。表1 “用户信息”表(tblUser)的数据结构字段名类型大小空值描述UIDint4编号Loginnvarchar20用户名Pwdnvarcha10密码UserLevelsmallint2Y权限水平,1为数据操作员,-1为系统管理员,2为普通用户CreateDatesmalldatetime4Y创建日期 “部门信息”表(tblDepartment)的数据结构如表2所示。表2 “部门信息”表(tblDepartment)的数据结构字段名类型大小空值描述DIDint4编号DeptNOnvarchar10Y部门代码Departmentnvarchar100Y部门名称“

15、设备信息”表(tblDevice)的数据结构如表3所示。表3 “设备信息”表(tblDevice)的数据结构字段名类型大小空值描述IIDint4编号DeviceNOnvarchar20设备代码DeviceNamenvarchar50Y设备名称DeviceModelnvarchar10Y设备型号TypeNOnvarchar10Y类型代码DeptNOnvarchar10Y部门代码ProductPricemoney8Y价格ProductCostmoney8Y折旧ProductDatesmalldatetime4Y购买日期Statusint4Y状态RejectDatesmalldatetime4Y报废

16、日期DiscardDatesmalldatetime4Y注销日期RecordDatesmalldatetime4Y操作日期 “计入借出信息(tblLend)的数据结构如表4所示。表4 “计入借出信息(tblLend)的数据结构字段名类型大小空值描述LIDint4编号DeviceIDint4Y设备编号Operationnvarchar10Y操作LendDeptnvarchar50Y借入机构LendDatesmalldatetime4Y借入日期LendMannvarchar20Y借入人 “设备类型信息tblTypeInfo)的字段设置如表5所示。表5 “设备类型信息tblTypeInfo)的字段设

17、置字段名类型大小空值描述TIDint4编号TypeNOnvarchar10类型代码TypeNamenvarchar50Y类型名称表53程序开发3.1系统主要功能模块程序设计3.1.1添加Activce控件打开“【工程】”选项,单击【部件】按钮,打开“部件”选项,选择如图6所示选择如图所示选项添加如图的所示的选项。效果如图6所示。图6 添加Activce控件3.1.2 公共模块这个模块包括一个函数和一个过程。过程“Main”的主要功能是完成数据库的打开操作和主窗体的打开操作函数“getDate”是通过的提取日期函数。 过程“Main”的代码如下: Public Sub Main() Dim Co

18、nn As String Set gConn = New ADODB.Connection On Error GoTo err_handle Conn = Provider=Microsoft.Jet.OLEDB.4.0;Data Source= & _ App.Path & databaseDeviceMIS.mdb & ;Persist Security Info=False gConn.Open Conn frmLogin.Show vbModal If frmLogin.LoginSucceeded = False Then Unload frmLogin gConn.Close Se

19、t gConn = Nothing Exit Sub End If Set gUser = New ClassUser gUser.loadDataByName (Trim(frmLogin.txtUserName) Unload frmLogin frmMain.Show Exit Sub err_handle: MsgBox 连接数据库失败! Set gConn = Nothing Exit Sub End Sub函数“getDate”的代码如下:Public Function getDate(thedate As String) As String Dim frm As New frmG

20、etDate frm.setDate thedate frm.Show vbModal getDate = frm.SelectDate Unload frm Set frm = NothingEnd Function3.1.3类模块1.本程序采用面向对象设计的思想,采用了类模块的设计。这样的设计提高了系统的安全性、可继承性和可拓展性。可视化类如图7所示。加载类生成器实用工具,单击【外接程序】【外接程序管理器】选项打开如图8所示的外接程序管理器。图7 外接程序管理器双击【VB6类生成工具】就能加载类生成器实用工具。然后在Visual Basic界面中,单击【外接程序】【类生成器实用工具】选项打

21、开的类生成器实用工具,如图10所示。图8 类生成器实用工具2.用户类(classUser.cls)用户类主要用于对用户的管理的操作。在这里可以验证用户密码、查询、添加、和删除用户。首先我们利用类生成实用工具查看classUser.cls的属性和方法。classUser.cls的属性有isDirty、Level、uid和UserName,各个属性的数据类型和属性声明如图9所示。图9 用户类各个属性的数据类型和属性声明classUser.cls的方法有addData、deleteData、loadDataByID、loadDataByName、resetPassword和SaceData,各个方法

22、的数据类型和参数信息如图10所示。此外classUser.cls模块还有一个loadData函数,它的功能是按照SQL语句提取用户信息,从而实现查询的功能。图10 classUser.cls各个方法的数据类型和参数信息3.设备类(classDevice.cls)设备类主要用于对设备的管理的操作。在这里可以对设备进行添加、删除、查询、报废、注销和借入借出操作。首先我们利用类生成使用工具查看classDevice.cls的属性和方法。classDevice.cls的属性有Department、DeptNo、DeviceModel、DeviceName、DeviceNo、DiscardDate、ii

23、d、isDirty、ProductCost、ProductPrice、PurchaseDate、RejectDate、Status、TypeName和TypeNo,各个属性的数据类型和属性声明如图11所示。图11设备类各个属性的数据类型和属性声明classDevice.cls的方法有addData、deleteData、DisCard、loadDataByDeviceNo、loadDataByID、Reject和saveData,各个方法的数据类型和参数信息如图12所示。此外classDevice.cls模块还有一个loadData函数,它的功能是按照SQL语句提取设备记录,从而实现查询的功能

24、。图12 classDevice.cls各个方法的数据类型和参数信息3.2窗体设计3.2.1创建主窗体因为是采用的面向对象的程序设计,所以窗体的代码设计就变得非常简单。这个系统主要的功能是在一个窗体frmMain.frm中实现的。这个窗体包含了设备的管理、设备的查询、报表的管理、用户管理和系统管理模块。单击【新建】按钮选择【新建工程】选项,打开“新建工程”对话框,选择“标准EXE”选项,然后单击“确定”按钮,新建一个工程,如图13所示。为设计多个文档界面,单击【工程】按钮选择【添加MDI窗体】选项,打开“添加MDI窗体”对话框。选择“MDI窗体”选项,然后单击“打开”按钮,如图14所示。图13

25、 新建工程图14 新建MDI窗体3.2.2创建系统主菜单系统功能模块的调用通过主界面中的菜单实现,在主窗体中添加菜单。右击窗体。单击快捷菜单中的【菜单编辑器】选项。弹出“菜单编辑器”对话框。设置系统菜单的属性。 3.2.3添加工具栏1.工具栏中按钮的功能与菜单栏中的功能相对应,添加工具栏的步骤如下。单击【工具】选项,选择【部件】打开对话框,选择其中的“Microsoft WindowsCommonControls6.0”选项。2.双击工具箱中的Toolbar控件将添加一个工具栏,默认Toolbar控件将出现在窗体的最上方。3.右击窗体的Toolbar控件,单击快捷菜单中的【属性】选项,打开“属

26、性页”对话框。打开“按钮”选项卡。插入第1个按钮,设置“描述” 为ssue Book”,工具提示文本为“设备管理”,然后单击“插入”按钮,插入其他按钮。4.设置各控件的相关属性,设计完成主体。3.3创建设备管理模块本设计中的设备管理模块包括“添加设备”、“删除设备”、“借入借出”、“设备注销”和“设备报废”。为了在MSFlexGrid控件中显示设备的信息,我们首先定义了一个fillDeviceGrid过程,然后再调用它。fillDeviceGrid过程代码如下:Private Sub fillDeviceGrid(grid As MSFlexGrid, Optional strSQL As S

27、tring) Dim rs As ADODB.Recordset Dim strRowData As String Dim rowindex As Integer If Len(strSQL) = 0 Then strSQL = SELECT a.*,b.department,c.TypeName FROM (tblDevice AS A INNER JOIN tblDepartment AS B ON a.DeptNO=b.DeptNO) INNER JOIN tblTypeInfo C ON a.TypeNO=c.TypeNO ORDER BY A.IID DESC End If rowi

28、ndex = 1With grid If .Tag = Then Set rs = gConn.Execute(strSQL) .Rows = 1 .Cols = 13 .Row = 0 .Col = 0 .Text = 序号 .Col = 1 .Text = ID .ColWidth(1) = 0 .Col = 2 .Text = 设备编号 .Col = 3 .Text = 设备名称 .Col = 4 .Text = 设备型号 .Col = 5 .Text = 设备分类 .Col = 6 .Text = 所属部门 .Col = 7 .Text = 购买价格 .Col = 8 .Text =

29、折旧成本 .Col = 9 .Text = 购买日期 .Col = 10 .Text = 状态 .Col = 11 .Text = 报废日期 .Col = 12 .Text = 注销日期 Do Until rs.EOF strRowData = rowindex & vbTab strRowData = strRowData & rs(IID).value & vbTab strRowData = strRowData & rs(DeviceNO).value & vbTab strRowData = strRowData & rs(DeviceName).value & vbTab strR

30、owData = strRowData & rs(DeviceModel).value & vbTab strRowData = strRowData & rs(TypeName).value & vbTab strRowData = strRowData & rs(Department).value & vbTab strRowData = strRowData & rs(ProductPrice).value & vbTab strRowData = strRowData & rs(Productcost).value & vbTab strRowData = strRowData & F

31、ormatDateTime(rs(PurchaseDate).value, vbLongDate) & vbTab If rs(Status).value = 0 Then strRowData = strRowData & 在库 & vbTab Else strRowData = strRowData & 借出 & vbTab End If strRowData = strRowData & rs(RejectDate).value & vbTab strRowData = strRowData & rs(DisCardDate).value & vbTab .AddItem strRowD

32、ata rs.MoveNext rowindex = rowindex + 1 Loop rs.Close Set rs = Nothing .Tag = 1 End IfEnd WithEnd Sub3.3.1创建“添加设备”选项为了完成添加设备的操作,我们定义了一个doDevice过程,然后单击【添加设备】按钮调用该过程。创建好的界面如图15所示:图15 添加设备”选项代码如下:执行设备显示列表操作Private Sub doDevice(iid As String) Dim frm As New frmDevice If Len(iid) 0 Then frm.loadDevice ii

33、d End If frm.setStatus frm.Show vbModal If frm.isUpdate = True Then grdDevice.Tag = Call fillDeviceGrid(grdDevice) End If Unload frm Set frm = NothingEnd Sub3.3.2 创建“删除设备”选项如图16所示图16 “删除设备”选项代码如下:Private Sub cmdDelete_Click() Dim iid As String With grdDevice If .Row = 0 Then MsgBox 请选择要删除的设备! Else I

34、f MsgBox(你是否真的要删除当前选择的设备吗?删除后将不能恢复!, vbOKCancel) = vbOK Then .Col = 1 iid = .Text Dim device As New classDevice device.deleteData iid grdDevice.Tag = Call fillDeviceGrid(grdDevice) End If End If End WithEnd Sub3.3.3创建“借入借出”按钮单击【借入借出】按钮就弹出借入借出窗体,如图17所示.用户可以在这个窗体上进行借入借出设备和归还设备的操作。 图17 “借入借出”按钮在如图19所示的

35、窗体上单击【借入借出】按钮代码如下:Private Sub cmdLend_Click() Dim lendDept As String Dim strSQL As String If theDevice.Status = 0 Then 借出设备 If cboDept.ListIndex = 0 Then MsgBox 请选择借出设备的部门! Else lendDept = cboDept.List(cboDept.ListIndex) strSQL = INSERT INTO tblLend (DeviceID, Operation, Lenddept, LendMan, LendDate)

36、 VALUES( strSQL = strSQL & theDevice.iid & ,借出, & lendDept & , & gUser.UserName & ,now() gConn.Execute strSQL gConn.Execute UPDATE tblDevice SET Status=1 WHERE Status=0 AND IID= & theDevice.iid isUpdate = True Me.Hide End If Else 归还设备 strSQL = INSERT INTO tblLend (DeviceID, Operation, Lenddept, Lend

37、Man, LendDate) VALUES( strSQL = strSQL & theDevice.iid & ,归还, & gUser.UserName & ,now() gConn.Execute strSQL gConn.Execute UPDATE tblDevice SET Status=0 WHERE Status=1 AND IID= & theDevice.iid isUpdate = True Me.Hide End IfEnd Sub3.3.4 创建【设备注销】按钮可以完成对设备的注销操作,代码如下:Private Sub cmdDisCard_Click() Dim i

38、id As String Dim strDate As String With grdDevice If .Row = 0 Then MsgBox 请选择要注销的设备! Else If MsgBox(你是否真的要注销当前选择的设备吗?注销后将不能恢复!, vbOKCancel) = vbOK Then .Col = 1 iid = .Text strDate = getDate() If Len(strDate) 0 Then Dim device As New classDevice If device.Reject(iid, strDate) = True Then .Tag = fill

39、DeviceGrid grdDevice End If Set device = Nothing End If End If End If End WithEnd Sub3.3.5 创建【设备报废】按钮完成设备报废的操作,代码如设备注销相同。3.4创建设备查询模块3.4.1 按照部门进行查询这个模块实现了对设备按照各种条件进行查询。考虑到部门的查询条件,首先判断用户是否选择了部门这个查询类型,并设置了相应的查询条件。若选择则写入相应的SQL语句。这部分代码如下:If cboQDept.ListIndex 0 Then DeptNo = getDeptNo() strSQL = a.deptno= & DeptNo & End If3.4.2 按照设备类别进行查询考虑设备类别的查询条件。首先判断用户是否选择了设备类别这个查询类型,并设置了相应的查询条件。若选择则写入相应的SQL语句。这部分代码如下:If cboQTypeNO.ListIndex 0 Then TypeNo = getTypeNO() If L

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁