数据库课程设计—物资管理系统

上传人:豆** 文档编号:70863039 上传时间:2022-04-06 格式:DOC 页数:20 大小:309.50KB
返回 下载 相关 举报
数据库课程设计—物资管理系统_第1页
第1页 / 共20页
数据库课程设计—物资管理系统_第2页
第2页 / 共20页
数据库课程设计—物资管理系统_第3页
第3页 / 共20页
点击查看更多>>
资源描述
【精品文档】如有侵权,请联系网站删除,仅供学习与交流数据库课程设计物资管理系统.精品文档.目 录1概述- 1 -1.1 项目背景:- 1 -1.2 编写目的:- 1 -1.3 项目名称:- 1 -1.4 开发环境:- 1 -2 需求分析- 2 -2.1 问题的提出:- 2 -2.2 需完成的功能:- 2 -3 数据库设计的过程- 3 -3.1 概念模型设计- 3 -3.2 逻辑数据库设计- 6 -3.3 规范化理论的应用- 7 -3.4 物理数据库设计- 8 -4 软件功能设计- 12 -4.1 系统功能分析- 12 -4.2 系统功能模块设计- 13 -5 设计心得- 19 -参考文献- 20 -附 录- 21 -第一章 概述1.1、项目背景物资管理系统是企业管理的一个重要内容,随着时代的进步,企业也逐渐变的庞大起来。如何管理好企业内部物质的信息,成为企业管理中的一个大问题。在这种情况下,一个可以规范化,自动化的物资管理信息系统就显得非常必要。最初的物资管理,都是靠人力来完成的。当企业规模比较小的时候,人力可以完成,随着企业的规模越来越大,企业的进出物资数量也越来越多,依然维持着人力进行物资管理,必然会造成工作效率低,工作错误增高的问题。物资管理系统就是把分散的企事业单位的职工信息实行统一,集中,规范的收集管理,建立分类编号管理,电脑存储查询以及防火,防潮,防蛀,防盗等现代化,专业化的管理系统,为企事业单位和职工解除后顾之忧。1.2、编写目的:物资管理系统是为了配合相关部门对自身本部门物资的管理,充分运用现代化信息技术手段高效、快捷的工作而开发的软件系统。物资管理信息系统为企事业单位提供信息咨询,信息检索,信息存取等服务。1.3、项目名称: 物资管理系统.1.4、开发环境: 本系统使用Microsoft Visual Basic 6.0 中文版作为前台设计和Microsoft SQL Server 2000管理数据库Visual Basic6.0作为Microsoft公司开发的Basic Studio6.0套件的一部分,是一个功能丰富、方便实用的程序开发环境,它的一个很大的特色就是功能强大、编程简单的数据库操作能力。可视化的开发环境、丰富的数据库访问空间的支持使得Visual Basic成为数据库应用程序项目中重要的开发工具。Microsoft SQL Server 2000中文版是基于客户机/服务器模式的新一代大型数据库管理系统,它在电子商务、数据仓库和数据库解决方案等应用中起着重要的核心作用,可为企业的数据管理提供强大的支持,并采取有效的措施来实现数据的安全性、完整性、备份和恢复。是目前广泛使用的关系型数据库。第二章 需求分析2.1、问题的提出: 物资管理是一般工业、商业企业生产管理环节中主要的一环,需要对物资基本信息管理,对物质调配信息等进行完整的监控,这样才能跟有效地利用物资。物资入库的时候首先需要登记物质的基本信息,包括物资的种类、名称、型号、单位、单价等;然后登记入、出库信息,包括物资的基本信息,入、出库人,经办人,物质数量,材料说明的等;对于仓库中的物资,即对剩余物资进行查询和统计。长期以来,物资管理工作中的信息管理是采用人工的方式,要付出大量人力,填写各种表格、凭证、账册、卡片和文件。由于信息是随着时间不断变化的,各业务部门对信息的使用要求也各不相同,所以要按照不同的分类经常不断地汇总、统计,往往要做许多重复登记和转抄。这种手工操作的管理方式,不仅浪费人力,而且存在许多缺点:(1)处理速度慢,影响信息及时性。(2)易出现错误,影响信息精确性。(3)不便于查询。(4)缺乏综合性,不能起控制作用。由于这些缺点,大大降低了信息的利用价值,显然越来越不适应现代物资管理工作的需要。因此,发展以电子计算机为基础的物资管理系统已是十分迫切和必要的了。2.2、需完成的功能:针对一般物资管理信息系统的需求,通过对上面物资调配工作过程的内容和数据流程分析,设计如下面所示的数据项和数据结构:l 有关物资基本信息的输入、包括物资编号、物资名称、规格型号、种类和计量单位等;l 物资基本信息的查询、修改;l 入库信息的输入、查询、修改;l 出库信息的输入、查询、修改;l 物质剩余物资的查询、预览,统计查询。第三章 数据库设计的过程3.1、数据库需求分析 用户的需求具体体现在各种的信息的提供、保存、更新和查询等方面。这就要求数据库能够充分满足各种输入信息和输出信息。开发者要收集基本数据、数据结构以及数据处理的流程,组成一份详尽的数据字典。为下一步的数据库具体设计做好充分的准备。再仔细分析物资管理信息系统需求的基础上,将得到以下如图3.1所示的本系统所处理的数据流程。物资登记基本信息录入物资基本信息管理物资入库信息管理物资领用信息管理物资调配物资余额信息管理 图3.1 物资管理信息系统数据流程图针对一般物资管理信息系统的需求,通过对物资调配工作过程的内容和数据流程分析,设计如下面所示的数据项和数据结构:l 物资基本信息,包括的数据项有:物资编号、物资名称、规格型号、类别、计量单位等。l 入库物资信息,包括的数据项有:物资编号、物资名称、规格型号、类别、计量单位、数量、单价、金额、领用时间、领用人、经办人、保管人、仓库、备注等。l 出库物资信息,包括的数据项有:物资编号、物资名称、规格型号、类别、计量单位、数量、单价、金额、领用时间、领用人、经办人、保管人、仓库、备注等。l 物资余额信息,包括的数据项有:物资编号、物资名称、规格型号、类别、计量单位、数量、金额、仓库等。3.2、概念模型设计得到上面的数据项和数据结构以后,就可以设计出能够满足用户需求的各种试题以及它们之间的关系,为后面的逻辑结构设计打下基础。这些试题包含各种具体信息,通过相互间的作用形成数据的流动。本系统根据上面的设计规划出的实体有:物资基本信息实体、物资入库信息实体、物资出库信息实体、物资余额信息实体。物资基本信息实体计量单位物资编号类别物资名称规格型号图3.21 物资基本信息实体E-R图物资入库信息实体保管人物资基本信息经办人入库时间图3.22 物资入库信息实体E-R图物资领用信息实体领用人物资基本信息经办人领用时间图3.23 物资出库信息实体E-R图物资出库信息实体仓库物资基本信息数量金额图3.24 物资余额信息实体E-R图在找出所有实体的基础上,需要进一步的分析各个实体之间的关系,经过分析可以的得到所有实体的ER图;如图3.25是通过ER图来说明这些实体之间的关系:库存信息出库信息领用入库信息登 记图3.25 物质管理信息的ER图3.2、逻辑数据库设计 通过对数据库概念模型的设计,确定以下是该系统需建立的几个表格。表3.21 物资表物资表 material字段名类型NULL其他备注wzidchar(8)NPK物资编号wznamechar(20)N物资名称wzspecchar(20)N物资型号wzkind,char(10)类型wzunitchar(10)计量单位表3.22 物资入库表物资入库表 msave字段名类型NULL其他备注rknochar(14)NPK入库号rkidchar(8)N物资编号rknamechar(20),N物资名称rkspecchar(20),规格型号rkkindchar(10) ,N类别rkunitchar(10) ,N计量单位rkaccountnumeric(5, 0)N数量rkpricenumeric(8, 2)N单价rkvaluenumeric(10, 2)N金额rkdatedatetimeN入库时间rkdeal_personchar(10)NPK经办人rksave_personchar(10)N保管人rkbasechar(10),Index,FK仓库rkmemotext备注表3.23 物资入库表物资入库表 msurplus字段名类型NULL其他备注yeidchar(8)NPk物资编号yenamechar(20),N物资名称yespecchar(20),物资型号yekindchar(10) ,N类别yeunitchar(10) ,N计量单位yeaccountnumeric(5, 0)N数量yepricenumeric(8, 2)N单价yebasechar(10),Index,FK仓库yememotext备注表3.24 物资领用表物资领用表 muse字段名类型NULL其他备注lynochar(14)NPK领用号lyidchar(8)N物资编号lynamechar(20),N物资名称lyspecchar(20),规格型号lykindchar(10) ,N类别lyunitchar(10) ,N计量单位lyaccountnumeric(5, 0)N数量lypricenumeric(8, 2)N单价lyvaluenumeric(10, 2)N金额lydatedatetimeN领用时间lydeal_personchar(10)NPK领用人lysave_personchar(10)N保管人lybasechar(10),PK仓库lymemotext备注3.3、规范化理论的应用 在以上的逻辑分析中,我们不难得出这些关系转化都在第三范式中。3.4、物理数据库设计在完成了数据库的逻辑设计之后,即可开始数据库的物理设计。基于以上数据库逻辑设计,考虑到程序设计的简易性及通用性,本物资管理信息系统采用的Microsoft SQL Server 2000数据库,并在其下创建了一个数据库和4个数据表。3.4.1 建立概念数据库模型根据前面的概念和逻辑模型设计,我们在PowerDesigner12中建立 ConceptualDataModel_1,如图3.4.1所示:图3.4.1 概念数据可模型3.4.2 将概念模型转换成物理模型概念模型建好后,在PowerDesigner12的T ools选项中选择Generate new Physical Data Model,将概念模型转换成物理模型,如图所示:图3.4.2 物理数据库模型3.4.3 生成数据库代码 建好物理模型后,在Database选择Generate Database,生成数据库代码,以下是建立数据库及其表格的代码(1)建数据库use mastergoif exists (select * from dbo.sysdatabases where name = MMS) drop database MMSGOcreate database MMSgouse MMSGo(2)建表if exists (select * from dbo.sysobjects where id = object_id(Ndbo.material) and OBJECTPROPERTY(id, NIsUserTable) = 1)drop table dbo.materialGOif exists (select * from dbo.sysobjects where id = object_id(Ndbo.msave) and OBJECTPROPERTY(id, NIsUserTable) = 1)drop table dbo.msaveGOif exists (select * from dbo.sysobjects where id = object_id(Ndbo.msurplus) and OBJECTPROPERTY(id, NIsUserTable) = 1)drop table dbo.msurplusGOif exists (select * from dbo.sysobjects where id = object_id(Ndbo.muse) and OBJECTPROPERTY(id, NIsUserTable) = 1)drop table dbo.museGOCREATE TABLE dbo.material (wzid char (8) COLLATE Chinese_PRC_CI_AS NOT NULL ,wzname char (20) COLLATE Chinese_PRC_CI_AS NOT NULL ,wzspec char (20) COLLATE Chinese_PRC_CI_AS NOT NULL ,wzkind char (10) COLLATE Chinese_PRC_CI_AS NULL ,wzunit char (10) COLLATE Chinese_PRC_CI_AS NULL ) ON PRIMARYGOCREATE TABLE dbo.msave (rkno char (14) COLLATE Chinese_PRC_CI_AS NOT NULL ,rkid char (8) COLLATE Chinese_PRC_CI_AS NOT NULL ,rkname char (20) COLLATE Chinese_PRC_CI_AS NULL ,rkspec char (20) COLLATE Chinese_PRC_CI_AS NULL ,rkkind char (10) COLLATE Chinese_PRC_CI_AS NULL ,rkunit char (10) COLLATE Chinese_PRC_CI_AS NULL ,rkaccount numeric(5, 0) NOT NULL ,rkprice numeric(8, 2) NOT NULL ,rkvalue numeric(10, 2) NOT NULL ,rkdate datetime NOT NULL ,rkdeal_person char (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,rksave_person char (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,rkbase char (10) COLLATE Chinese_PRC_CI_AS NULL ,rkmemo text COLLATE Chinese_PRC_CI_AS NULL ) ON PRIMARY TEXTIMAGE_ON PRIMARYGOCREATE TABLE dbo.msurplus (yeid char (8) COLLATE Chinese_PRC_CI_AS NOT NULL ,yename char (20) COLLATE Chinese_PRC_CI_AS NOT NULL ,yespec char (20) COLLATE Chinese_PRC_CI_AS NULL ,yekind char (10) COLLATE Chinese_PRC_CI_AS NULL ,yeunit char (2) COLLATE Chinese_PRC_CI_AS NULL ,yeaccount numeric(5, 0) NOT NULL ,yevalue numeric(10, 2) NOT NULL ,yebase char (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,yememo text COLLATE Chinese_PRC_CI_AS NULL ) ON PRIMARY TEXTIMAGE_ON PRIMARYGOCREATE TABLE dbo.muse (lyno char (14) COLLATE Chinese_PRC_CI_AS NOT NULL ,lyid char (8) COLLATE Chinese_PRC_CI_AS NOT NULL ,lyname char (20) COLLATE Chinese_PRC_CI_AS NULL ,lyspec char (20) COLLATE Chinese_PRC_CI_AS NULL ,lykind char (10) COLLATE Chinese_PRC_CI_AS NULL ,lyunit char (2) COLLATE Chinese_PRC_CI_AS NULL ,lyaccount numeric(5, 0) NOT NULL ,lyprice numeric(8, 2) NULL ,lyvalue numeric(10, 2) NULL ,lydate datetime NOT NULL ,lyuse_person char (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,lydeal_person char (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,lybase char (10) COLLATE Chinese_PRC_CI_AS NULL ,lymemo text COLLATE Chinese_PRC_CI_AS NULL ) ON PRIMARY TEXTIMAGE_ON PRIMARYGO3.4.4 生成数据库 打开Microsoft SQL Server的查询分析器,输入以上代码,于是得到了我们需要的数据库MMS(物资管理系统)。 第四章 软件功能设计4.1、系统功能分析系统开发的总体设计任务就是实现物质信息的系统化,规范化和自动化。系统功能分析是在系统开发总体任务的基础上进行的,本系统中需要的的主要功能有:u 添加用户;u 删除用户;u 修改用户密码;u 浏览物质信息;u 添加物质信息;u 删除物质信息u 物质剩余信息查询;对上述各项功能进行集中、分块,按照结构化程序设计的要求,得到如图4.1所示的系统功能模块图。登陆模块浏览物质表添加物资基本信息物质基本信息管理删除物资基本信息修改物资基本信息浏览物资入库表物质管理系统添加物资入库信息 物质入库信息管理删除物资基本信息修改物资基本信息浏览物资余额表添加物资余额信息物质余额信息管理删除物资约信息修改物资余额信息浏览物资领用表物质领用信息管理添加物资领用信息删除物资领用信息 修改物资基本信息 帮助图4.1系统功能模块图4.2 系统功能模块设计本系统的运行环境为Microsoft Visual Basic 6.0 4.2.1 登录程序执行后点击进入系统按钮将弹出系统的登录界面,如下图所示:用数据库中存储的用户信息登录系统,如图4.2.1所示图4.2.1登录界面若用户输入的用户信息错误,会弹出警告,登录3次失败后系统自动退出4.2.2 主界面登录成功后进入系统的主界面,如图4.2.2:通过菜单栏,用户可以参与数据的相关操作,如插入、修改、删除和统计等。图4.2.2 主菜单4.2.3浏览物质信息通过各模块中的浏览物质信息,可以对物质的各种信息进行浏览,其中包括按表和按行浏览两种方式。如图4.2.32和4.2.33所示时对物质基本信息进行的两种浏览方式。图4.2.31主菜单上的浏览选项图4.2.32 按表格浏览物资表图4.2.33 按行浏览物资表其余的浏览操作与上述的操作类似,这里不再赘述。4.2.4 添加物质信息每个关于物质信息是我模块都可以进行添加信息的操作,如图4.2.4是添加物质基本信息4.2.41主菜单上的添加选项图4.2.42 添加界面图4.2.43 添加信息图4.2.44 添加成功提示其余的添加操作与上述的操作类似,这里不再赘述。4.2.5删除物质信息点击系统中的删除按钮,可对物质的各种信息进行删除,如对物质基本信息进行删除操作:(1) 按物质编号删除 点击删除菜单的子菜单,选择按物质编号删除,弹出删除删除信息的界面如图4.2.52,在其中输入或选择物质的编号,选择确定,将弹出警告提示,如图4.2.54所示。选择确定,系统给出删除成功的提示,如图4.2.55所示,如果选择取消,则弹出操作被撤销的提示,如图4.2.56所示4.2.51 主界面的删除选项 图4.2.52 删除界面图4.2.53删除物资 图4.2.54删除警告图4.2.55 删除成功 图4.2.56 删除被撤销(2) 按物质名称删除图4.2.57 删除界面图 4.2.58 删除物质按物质名称删除与按物质编号删除类似,这里不再赘述。其余的物质的各种信息删除也与上面说讲的类似,这里就不再多说了4.2.6修改物质信息 如果想要修改物质的各种信息,点击各个模块中的修改选项,将弹出当前的各种物质信息,如图4.2.61是物资基本信息的修改选项,图4.2.62所示是对物质基本信息所进行的修改操作:图4.2.61 主界面的修改选项图4.2.62 修改物质信息修改完后,点击 “确定”,于是修改就成功了。点击“取消”,则操作被撤销,点击退出,则返回主界面。其余的物质信息的修改操作也与上面说讲的类似,这里就不再多说了4.2.7 余额统计通过主界面的余额统计选项,可对各种物质的余额进行统计 图4.2.71主界面的余额统计选项图 4.2.72 统计物质余额 图4.2.73 统计余额4.2.8 系统帮助用户点击菜单栏上的关于,可以查询到系统的简介和使用说明图4.2.8 关于系统第五章 设计心得 回顾该系统从选题,到调研、需求分析、设计、编码实现、测试等,这系列连贯的过程,感想颇多,收获也很多。大致的总结几点,如下:1设计开发一个软件,首先要了解所涉及到行业的现状,一定要想办法进行行业调研,从不同途径获取该行业的专业知识。合理安排系统设计开发时间,进行实际开发会发现需求分析与系统设计占主要的时间,如果前面的工作做好了,编码实现占用的时间很短。所以我们要借助软件工程的思想对软件开发过程进行控制。2. 在开发一个系统时,前期的分析准备工作非常的重要。对于系统的需求要明确,这样才能做到有的放矢。特别是对于系统中数据的存储和重要算法的设计,设计的不好会出现大量的冗余,不仅浪费存储空间,还影响查询效率。3.在设计的初期,对一个功能模块的设计,要想出两种或两种以上方案,这样可以进行比较,从而获得更佳的设计方案,设计开发过程中一定要吸取经验教训,避免返工。尤其是一些重要算法或功能。在对具体实现功能模块进行编程时,要养成良好的加注释的习惯,这样的话不仅能理清思路,而且可以为以后的调试程序带来很大的方便。由于本人即本人所在的小组是初次开发系统,在知识、经验方面都存在着不足。另外,在整个开发的过程中,时间也比较仓促。因此,该系统还有许多不尽如人意的地方,比如联机文档比较少,用户界面不够美观,出错处理不够,系统维护功能不全,对于数据的一致性的问题也没有完全解决等多方面问题,这些都有待工作中进一步改善。 谨请老师提出宝贵的意见。参考文献 王珊,萨师煊 .数据库系统概论.第四版 .北京:高等教育出版社,2006 易钢,刘少华,刘艳松 .新编Visual Basic程序设计教程.长沙国防科技大学出版社,2009 陈文军,陈晓铭 . Visual Basic.NET数据库编程.北京:清华大学出版社,2005 袁福庆 . Visual Basic程序设计标准教程.上海:上海科学普及出版社,2007附录工程模块设计代码Public Mycon As New ADODB.Connection Mycon用于数据库连接Public MyRs As New ADODB.Recordset MyRS用于保存记录集Public MyRs1 As New ADODB.Recordset MyRS1用于保存记录集Public MyRs2 As New ADODB.Recordset MyRS2用于保存记录集登录界面设计代码Dim i As Integer 变量i用于累计连接的错误次数Private Sub Command1_Click() 确定 If Trim(Text1.Text) = Then 如果用户名为空,则给出提示 MsgBox 请输入用户名, vbExclamation, 注意 Text1.SetFocus 将焦点定位在用户名文本框中 Else On Error GoTo ErrorHandler 出错则转向ErrorHandler处执行 Mycon.ConnectionString = Driver=SQL Server;Server=PC-201006022034;Database=MMS Mycon.Open 按ConnectionString的设置打开指定的连接 Unload Me 关闭当前窗口 Form3.Show 显示系统的主菜单窗口Form3 End If Exit SubErrorHandler: 错误处理程序入口 i = i + 1 连接错误,变量i累加1 If i = 2 Then 如果连接错误次数不超过2两次 MsgBox 连接失败,请重试用户名或密码, vbExclamation, 注意 Text1.SetFocus Else 如果连接错误次数超过2两次 MsgBox 连接失败次数过多,你不能使用本系统, vbExclamation, 注意 End 结束系统的运行 End IfEnd SubPrivate Sub Command2_Click() 退出按钮 Unload Me 回到主封面End SubPrivate Sub Image1_Click()End SubPrivate Sub Form_Load()End SubPrivate Sub Text1_GotFocus() 用户名框获得焦点时 选中Text1中的文本 Text1.SelStart = 0 Text1.SelLength = Len(Text1.Text)End SubPrivate Sub Text1_KeyUp(KeyCode As Integer, Shift As Integer) If KeyCode = 13 Then 如果在用户名框中输入了回车键,则 Text2.SetFocus 将焦点切换到密码框 End IfEnd SubPrivate Sub Text2_GotFocus() 密码框获得焦点时 选中Text2中的文本 Text2.SelStart = 0 Text2.SelLength = Len(Text2.Text)End SubPrivate Sub Text2_KeyUp(KeyCode As Integer, Shift As Integer) If KeyCode = 13 Then 在密码框输入完密码并按下了回车键 If Trim(Text1.Text) = Then 如果用户名为空,则给出提示 MsgBox 请输入用户名, vbExclamation, 注意 Text1.SetFocus 将焦点定位在用户名文本框中 Else On Error GoTo ErrorHandler 出错则转向ErrorHandler处执行 Mycon.ConnectionString = Driver=SQL Server;Server=PC-201006022034;Database=MMS Mycon.Open Unload Me Form3.Show 显示系统的主菜单窗口Form3 End If Exit SubErrorHandler: 错误处理程序入口 i = i + 1 连接错误,变量i累加1 If i = 2 Then MsgBox 连接失败,请重试用户名或密码, vbExclamation, 注意 Text1.SetFocus Else MsgBox 连接失败次数过多,你不能使用本系统, vbExclamation, 注意 End End If End IfEnd Sub主界面设计部分代码Private Sub about_Click()frmAbout.Show 1End SubPrivate Sub cx111_Click() If MyRs.State = adStateOpen Then MyRs.Close End If MyRs.Open material, Mycon, adOpenStatic, adLockOptimistic, adCmdTableDirect 打开物资基本信息表 Form7.Caption = 按表格浏览物资表 Form7.Show 1 用Form7实现对物资基本信息表按表格浏览End SubPrivate Sub cx112_Click() 按行浏览物资表 If MyRs.State = adStateOpen Then MyRs.Close End If MyRs.Open material, Mycon, adOpenStatic, adLockOptimistic, adCmdTableDirect Form4.Caption = 按行浏览物资表 Form4.Show 1 用Form4实现对物资基本信息表按行浏览End SubPrivate Sub sc11_Click() Dim strSql As String strSql用于保存查询字符串 Form18.DataCombo1.Enabled = True 设置显示物资编号的组合框有效 Form18.Label1.Enabled = True 设置显示物资编号的文字提示有效 Form18.DataCombo2.Enabled = False 设置显示物资名称的组合框有效 Form18.Label2.Enabled = False 设置显示物资名称的文字提示无效 strSql = SELECT DISTINCT wzid FROM material If MyRs1.State = adStateOpen Then 如果记录集MyRS1处于打开状态 MyRs1.Close 关闭记录集MyRS1 End If MyRs1.Open strSql, Mycon, adOpenStatic, adLockReadOnly 按查询字符串strSql指定的查询产生记录集 Set Form18.DataCombo1.RowSource = MyRs1 设置Form16的显示物资编号的组合框的数据源为MyRS1 Form18.DataCombo1.ListField = wzid 设置Form16的显示物资编号的组合框与记录集MyRS1的学号字段绑定 Form18.DataCombo1.Text = Form18.DataCombo2.Text = Form18.Show 1End SubPrivate Sub sc12_Click() Dim strSql As String strSql用于保存查询字符串 Form18.DataCombo1.Enabled = False 设置显示物资编号的组合框有效 Form18.Label1.Enabled = False 设置显示物资编号的文字提示有效 Form18.DataCombo2.Enabled = True 设置显示物资名称的组合框有效 Form18.Label2.Enabled = True 设置显示物资名称的文字提示无效 strSql = SELECT DISTINCT wzname FROM material 产生查询字符串,用于从物资表中选择物资名称。 If MyRs1.State = adStateOpen Then 如果记录集MyRS1处于打开状态 MyRs1.Close 关闭记录集MyRS1 End If MyRs1.Open strSql, Mycon, adOpenStatic, adLockReadOnly 按查询字符串strSql指定的查询产生记录集 Set Form18.DataCombo2.RowSource = MyRs1 设置Form16的显示物资名称的组合框的数据源为MyRS1 Form18.DataCombo2.ListField = wzname 设置Form16的显示物资名称的组合框与记录集MyRS1的物资名称字段绑定 Form18.DataCombo1.Text = Form18.DataCombo2.Text = Form18.Show 1End SubPrivate Sub tc_Click() If MyRs.State = adStateOpen Then MyRs.Close End If If MyRs1.State = adStateOpen Then MyRs1.Close End If If MyRs2.State = adStateOpen Then MyRs2.Close End If Set MyRs = Nothing Set MyRs1 = Nothing Set MyRs2 = Nothing Set Mycon = Nothing Unload MeEnd SubPrivate Sub sg2_Click()End SubPrivate Sub tij1_Click() 添加物资基本信息 Form9.Show 1End SubPrivate Sub xg1_Click() If MyRs.State = adStateOpen Then 如果记录集MyRS处于打开状态 MyRs.Close 关闭记录集MyRS End If MyRs.Open material, Mycon, adOpenKeyset, adLockBatchOptimistic, adCmdTable Form12.Show 1End Sub添加物资基本信息代码Private Sub Command1_Click() Dim strInsert As String strInsert = INSERT INTO material VALUES( & Text1.Text & , & Text2.Text & , & Text5.Text & , & Text3.Text & , & Text4.Text & ) On Error GoTo errhandle 如果出错则转向errhandler处执行 Mycon.BeginTrans 开始事务 Mycon.Execute (strInsert) 执行添加 Mycon.CommitTrans 提交事务 MsgBox 添加成功 显示添加操作完成的提示消息 Text1.Text = : Text2.Text = : Text5.Text = : Text3.Text = : Text4.Text = 清空在界面上录入的信息 Exit Suberrhandle: 错误处理程序入口,当添加操作出现错误时执行 MsgBox 添加失败 Mycon.RollbackTrans 撤销事务End SubPrivate Sub Command2_Click() Unload MeEnd SubPrivate Sub Form_Load()End Sub删除物资基本信息代码Private Sub Command1_Click() Dim strDelete As String, StudName As String If Trim(DataCombo1.Text) And Trim(DataCombo2.Text) = Then strDelete = DELETE material WHERE wzid LIKE & Trim(DataCombo1.Text) & % ElseIf Trim(DataCombo1.Text) = And Trim(DataCombo2.Text) Then strDelete = DELETE material WHERE wzname LIKE & Trim(DataCombo2.Text) & % Else Exit Sub End If Mycon.BeginTrans Mycon.Execute strDelete a = MsgBox(确定要删除指定的物资基本信息吗?, vbOKCancel + vbExclamation, 注意) If a = vbOK Then Mycon.CommitTrans MsgBox 指定的物资基本信息已经从数据库中删除, vbInformation, 注意 Else Mycon.RollbackTrans MsgBox 删除被撤消, vbExclamation, 注意 End IfEnd SubPrivate Sub Command2_Click() Unload MeEnd SubPrivate Sub Form_Load()End Sub修改物资基本信息代码Private Sub Command1_Click() MyRs.UpdateBatch 按确定按钮,进行批更新End SubPrivate Sub Command2_Click() MyRs.CancelBatch 按取消按钮,取消批更新End SubPrivate Sub Command3_Click() Unload MeEnd SubPrivate Sub DataGrid1_Click()End SubPrivate Sub Form_Activate() Set DataGrid1.DataSource = MyRsEnd SubPrivate Sub Form_Unload(Cancel As Integer) Set DataGrid1.DataSource = Nothing MyRs.CloseEnd Sub余额统计代码Private Sub Command1_Click() Dim total As Integer, strSql As String 生成查询字符串 strSql = SELECT count(*) FROM msurplus WHERE yename like% & Trim(DataCombo1.Text) & % If MyRs.State = adStateOpen Then MyRs.Close End If 执行统计 Set MyRs = Mycon.Execute(strSql) 取出统计结果 MyRs.MoveFirst total = MyRs.Fields(0) MsgBox Trim(DataCombo1.Text) & 该物资的余额总数为: & Str(total), , 统计结果End SubPrivate Sub Command2_Click() Unload MeEnd SubPrivate Sub Form_Unload(Cancel As Integer) If MyRs.State = adStateOpen Then MyRs.Close End If Set DataCombo1.RowSource = NothingEnd Sub
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


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