毕业设计(论文)VB6.0科研人员信息管理系统(含源代码)_第1页
毕业设计(论文)VB6.0科研人员信息管理系统(含源代码)_第2页
毕业设计(论文)VB6.0科研人员信息管理系统(含源代码)_第3页
毕业设计(论文)VB6.0科研人员信息管理系统(含源代码)_第4页
毕业设计(论文)VB6.0科研人员信息管理系统(含源代码)_第5页
已阅读5页,还剩83页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、摘 要 i 摘 要 随着市场经济的高速发展,越来越多的机构、企业认识到人员信息的有效 管理是机构,企业创作效益、提高水平的有效渠道。而科研机构作为一个特殊 的社会机构,推动社会经济发展,促进社会进步,同样面临着人员信息庞大,情 况复杂,项目多,安排人员困难的问题, 本文详细介绍了一个专门面向科研机构 的信息管理系统的设计流程,该系统的特点是以科研人员为核心、构建针对科 研人员和科研项目的信息管理系统,加强了人员管理,提高工作效率,促进科 研人员管理手段科学化、规范化、信息化。该系统使用 visualbasic 编写前台 应用程序,可以访问 oracle, sql server, foxpro

2、等多种数据库,通用性强;模 块化的功能设计,使其可以很简单的添加新的功能.本文主要介绍的是访问 sql server 数据库。 【关键词】 科研机构 科研人员管理系统 人员管理 科研项目管理 microsoft sql server 2000 microsoft visualbasic6.0 源代码,联系源代码,联系 qq153893706 abstract ii abstract with the rapid development of market economy, a growing number of institutions, enterprises recognize that

3、effective management of personnel information is the institutions, enterprises create efficiency and enhance the level of the effective channel. and scientific research institutions, as a special social institutions, to promote socio-economic development, promoting social progress, the same informat

4、ion is faced with a huge staff, the situation is complex, the project more difficult to arrange the issue, this article details a specialized information for scientific research institutions management system design process, the characteristics of the system is at the core of scientific research per

5、sonnel and building projects for scientific research and information management systems, strengthening management, improving the efficiency of personnel management tools to promote scientific research, standardization, and information technology . the system uses the preparation of future applicatio

6、ns visualbasic, you can access oracle, sql server, foxpro and many other databases, high universality; modular design so that it can be very simple to add new features. in this paper, visit the sql server database. 目 录 iii 目 录 第 1 章 引言.1 第 2 章 科研人员信息管理系统的开发平台.2 2.1 开发环境 .2 2.2 后台数据库 .2 2.2.1 sql ser

7、ver 2000 简介.2 2.2.2 企业管理器 .3 2.3 前台应用程序的开发平台 .4 2.3.1 visualbasic 简介.4 2.3.2 visualbasic 的特点.5 2.3.3 vb 连接 sql 数据库.6 第 3 章 科研人员信息管理总体设计.8 3.1 系统目标设计 .8 3.2 系统功能分析 .8 3.3 解决方案设计 .9 3.4 功能模块设计 .9 3.5 数据库设计 .13 3.5.1 数据库需求分析.13 3.5.2 er 模型分析.14 3.5.3 数据表设计 .14 第 4 章 详细设计.17 4.1 主窗口模块 .17 4.1.1 添加主窗口.17

8、 4.1.2 添加模块代码.23 4.2 登录与系统模块设计 .26 4.3 科研人员定义模块 .32 4.3.1 增加科研人员.32 4.3.2 修改科研人员 .40 4.3.3 查询科研人员 .48 4.3.4 删除科研人员 .55 4.4 科研项目模块设计 .58 4.4.1 添加要研发的科研项目 .58 4.4.2 修改要研发的科研项目 .62 4.4.3 删除要研发的科研项目 .63 4.4.4 查询已研发的科研项目 .66 4.4.5 查询正在审核的科研项目 .69 4.4.6 发成功科研项目.72 4.4 模块测试 .73 第 5 章 结束语.77 目 录 iv 参 考 文 献.

9、78 英文资料原文.79 第 1 章 引言 1 第 1 章 引言 随着计算机技术的发展和机构办公自动化的建设,信息化办公已经成为各 个企事业单位进行日常管理工作的必然趋势.相对于传统的人工方式的信息管理,利 用数据库应用软件来进行信息管理有着十分明显的优点: 1. 使用信息管理软件比人工操作有着更高的效率,更为可靠. 2. 信息管理软件保密性更强,更安全. 3. 信息管理软件可以促进企业实现规范化操作和管理. 使用信息管理软件来进行信息管理工作不仅是一种趋势,也是当今社会对高 速度,高效率的追求带来的一种必然结果.无论什么行业,在涉及到信息管理之类 的工作的时候,使用信息管理软件来进行操作都是

10、最为明智的选择. 而当今社会,科学技术已经成为推动社会发展的主要因素之一,科研越来越 受到社会的重视.各类型的科研机构纷纷扩大规模,增加人员编制,面向各类科研 机构的数据库应用软件需求非常旺盛.而与此同时专门面向科研机构而设计的信 息管理系统却很少,因此开发一套适合科研机构使用,能够满足科研机构信息管 理需求的信息管理系统软件是一件具有相当价值的事情.在下面的各章中将会介 绍一款科研人员信息管理系统的开发设计情况过程,并对相关问题进行讨论和分 析. 使用信息管理软件来进行信息管理工作不仅是一种趋势,也是当今社会对高 速度,高效率的追求带来的一种必然结果.无论什么行业,在涉及到信息管理之类 的工

11、作的时候,使用信息管理软件来进行操作都是最为明智的选择. 科研人员信 息管理系统使科研管理工作更加规范化、科学化,建设一个科研管理信息系统 已显得非常重要。科研人员信息管理信息系统包括科研人员,科研项目管理等, 科研人员信息管理系统本着经济、实用、高效的原则,为科研机构提供一个高 效、规范、轻松的营销工作环境,满足机构的需要。实现目标如下: 1.系统采用人机对话方式,界面美观友好,信息查询灵活、方便、快捷、 准确,数据存储安全可靠。 2.对用户输入的数据,系统进行严格的数据检验,尽可能排除人为的错误。 3.不同的操作员有不同的操作权限,增强了系统的安全性。 4.系统最大限度地实现了易安装性、易

12、维护性和易操作性。 电子科技大学成都学院本科毕业设计论文 2 5.系统运行稳定、安全可靠。 第 2 章 科研人员信息管理系统的开发平台 3 第 2 章 科研人员信息管理系统的开发平台 2.1 开发环境 本系统在设计时采用了基于微软公司 windows xp sp3 操作系统的平台,前 台客户端程序运用美国著名的微软公司开发的信息系统编程语言 visualbasic 进行编写,后台数据库系统则是使用了微软公司在大型关系库领域的旗舰产品 sql server 2000.在当今最为流行的操作系统平台上进行编写工作,开发工具在 当今的数据库开发领域使用也是及其广泛,这样可以保证程序能够最大程度上兼 容

13、现在大多数工作平台,也使得本系统可以更好的与时代接轨. 需要加以说明的是,本系统在设计时虽然采用的是这样的开发环境,但是其 中大部分内容在不同的软件版本环境下有一定的通用性. 2.2 后台数据库 2.2.1 sql server 2000 简介 本系统的后台数据库采用的是微软公司开发的 sql server 2000,它是目前 windows 平台上安装最多的数据库产品之一.sql server 2000 所代表的不仅仅 是一个软件,它和它的相关联产品,如数据仓库软件,内容管理软件等,一起构成 了一整套数据库应用和数据分析的解决方案,从而成为广大 windows 平台企业用 户在电子商务应用领

14、域的首要选择. sql server 2000 是一个非常典型的客户机/服务器体系结构应用程序.根 据各模块功能的不同,sql server 2000 可以被划分为:客户端组件,服务器端组 件和通信组件三部分.本系统主要是利用 sql server 2000 来建立数据库服务器 以及对其进行的操作,客户端程序的编写是靠 powerbuilder 来实现,所以应用到 的主要是其中的服务器端组件和通信组件. 其中服务器端组件主要应用到的组件有: .sql server 以服务的形式实现,是 sql server 2000 数据库管理系统的 核心数据库引擎,管理着系统拥有的所有文件,是系统内唯一可以

15、直接读取 和修改数据的组件.主要功能是负责协调和安排客户端服务请求的执行顺序,然 后逐一解释和执行 sql 指令,并返回执行结果. .sql server agent 以服务的形式存在,提供 sql server 的调度服务,通 电子科技大学成都学院本科毕业设计论文 4 过对其配置和使用,用户可以实现数据库系统的定时,自动管理. 由于设计的考虑,本系统没有采用分布式数据库,用来协调和处理分布式事 务的 ms dtc 组件就没有得到应用. sql server 2000 的客户端组件在本文中主要得到应用的是企业管理器.企 业管理器是图形化的集成管理工具,使用企业管理器可以实现 sql serve

16、r 2000 服务器有效的配置和管理,本文主要利用其来创建和修改数据库服务器. 通信组件的分析由于涉及到具体的操作,所以放在后面章节加以介绍. 2.2.2 企业管理器 本系统对 sql server 2000 的使用主要是通过操作企业管理器来加以实现 的,在这里就主要对 sql server 2000 的企业管理器加以简要介绍: sql server 2000 提供了功能强大而又使用方便的数据库管理工具.其中, 企业管理器是最主要的管理工具,绝大部分的数据库管理工作都可以在企业管理 器中完成.企业管理器与 windows 系统在功能上紧密集成,它以树型结构的形式 来管理 sql server

17、数据库服务器,数据库以及数据库中的对象,能够在单一的控 制界面上实现对位于同一企业网络结构中多个 sql server 数据库服务器的有效 管理. 执行企业管理器的步骤如下: (1)打开”开始”菜单. (2)在 microsoft sql server 2000 程序组里选择企业管理器. 系统将打开企业管理器.在窗口中可以看出,企业管理器使用了类似于资源 管理器的树型结构.在左边的树型结构图上,根节点是”控制台根目录”,表示它 是所有服务器控制台的根.在第一层节点上有一个默认的节点是 microsoft sql servers,所有的 sql server 服务器组都是 microsoft s

18、ql server 节点的子节 点. 可以在 microsoft sql server 节点下面,自己定义新的服务器组.服务器组 一般按照不同的用途和功能对服务器进行分类. 按照模块化管理的原则,所有的服务器都必须按组进行分类.当安装完 sql server 2000 后,系统会默认地提供一个名叫”sql server 组”的服务器组.刚 安装成功的服务器就注册在该服务器组下面.在每个服务器下面是该服务器的所 有管理对象和可以执行的管理任务,分为数据库,数据转换服务,管理,安全性,复 第 2 章 科研人员信息管理系统的开发平台 5 制,支持服务和元数据服务(meta data services

19、)七大类.在每一类下面又可以 进一步进行细分. 在企业管理器提供的系统菜单中,工具菜单包含了 sql server 2000 提供的 各种管理工具的调用途径.可以通过单击”工具”菜单中的命令,进入实现具体 管理功能的管理工具环境中. 使用企业管理器是进入其他 sql server 工具的捷径.如果要进入 sql 查询 分析器来编写 transact-sql 语句或执行存储过程,可以从工具菜单中执行”sql 查询分析器”命令. sql server 在企业管理器中提供了很多的向导.这些向导,可以用图形化的 方式,一步一步地指导用户完成相应地数据库操作.例如:创建存储过程,创建数 据库,创建索引等

20、. 2.3 前台应用程序的开发平台 2.3.1 visualbasic 简介 一、visual basic 是什么? visual basic,简称 vb,是 microsoft 公司推出的一种 windows 应用程序 开发工具。是当今世界上使用最广泛的编程语言之一,它也被公认为是编程效 率最高的一种编程方法。无论是开发功能强大、性能可靠的商务软件,还是编 写能处理实际问题的实用小程序,vb 都是最快速、最简便的方法。 何谓 visual basic?“visual”指的是采用可视化的开发图形用户界面 (gui)的方法,一般不需要编写大量代码去描述界面元素的外观和位置,而只 要把需要的控件拖

21、放到屏幕上的相应位置即可;“basic”指的是 basic 语言, 因为 vb 是在原有的 basic 语言的基础上发展起来的,至今包含了数百条语句、 函数及关键词,其中很多和 windows gui 有直接关系。专业人员可以用 visual basic 实现其它任何 windows 编程语言的功能,而初学者只要掌握几 个关键词就可以建立实用的应用程序。 vb 提供了学习版、专业版和企业版,用以满足不同的开发需要。学习版使 编程人员很容易地开发 windows 和 windows nt 的应用程序;专业版为专业编程 人员提供了功能完备的开发工具;企业版允许专业人员以小组的形式来创建强 健的分布

22、式应用程序。 电子科技大学成都学院本科毕业设计论文 6 2.3.2 visualbasic 的特点 (1)visual basic 提供可视化的编程工具 用传统的高级语言编程时,程序的各种功能、用户界面和显示的结果全要 由程序语句来实现,这就增加了编程难度。而用 visual basic 开发应用程序, 包括两部分工作:一是设计用户界面,二是编写程序代码。 visual basic 向程序设计人员提供图形对象(窗体、控件、菜单等)来进 行应用程序的界面设计,例如程序人员可以根据用户的需要轻而易举地在屏幕 上画出下图的用户界面。visual basic 提供的“工具箱”内存放若干个“控件” ,程

23、序设计者可以自由地从工具箱中取出所需控件,放到窗体中的指定位置, 而不必为此编写程序。也就是说,屏幕上的用户界面是用 visual basic 提供的 可视化设计工具直接“画”出来的,而不是用程序“写出来的”。 (2)程序采用“事件驱动“方式 在设计好用户界面后,第二件事是编写程序。visual basic 改变了程序的 机制,它没有传统意义上的主程序,而由“事件”来驱动子程序的运行。一般 来说,每个子程序要实现的功能是单一的,子程序的规模一般不会太大,也就 是说,把原来一个统一控制的、包罗万象的大程序分解为许多个独立的、小规 模的子程序,分别由各种“事件”来驱动执行,于是编程难度大大降低了。

24、 (3)visual basic 融入了最新的计算机技术 visual basic 的设计者在 visual basic 中融入了最新的计算机技术,使 得用 visual basic 编程能充分利用了这些最新的技术,例如在多媒体方面的应 用、在 internet 方面的应用等。 总之,visual basic 是面向对象的、结构化的计算机语言。visual basic 的界面由一些对象组成,每个对象有若干个属性、方法和事件,程序人员的任 务是设计这些对象的事件处理过程。visual basic 是一种很容易学习并很快就 可以熟练掌握的功能强大的编程语言。 运行环境如下: 第 2 章 科研人员信

25、息管理系统的开发平台 7 图 1-1 运行环境界面 2.3.3 vb 连接 sql 数据库 1.数据库连接处理 2. 3.public function connectsybase(sr, db, us, pd, bs) as boolean 4. on error goto errmsg 5. 判断数据库是否已经打开 如果打开则先关闭 6. if consb.state = adstateopen then 7. consb.close 8. end if 9. 10. dim strconnect as string 11. consb.connectiontimeout = 3 12.

26、电子科技大学成都学院本科毕业设计论文 8 13. select case bs 14. case 0: 15. - 16. 连接 sql 数据库 17. strconnect = provider=sqloledb.1;data source= persist security info=true;user id= password= initial catalog= persist security info=false _ user id= initial catalog= data source= persist security info=false _ user id= passwo

27、rd= initial catalog= data source= & strdatasource end if dbfinance.open 打开数据库 exit function errorhandle: if dbfinance.errors.count 1 then msgbox err.description, vbokonly + vbexclamation 显示错误描 述 else for each e in dbfinance.errors msgbox e.description 显示错误描述 next e end if dbconnection = false dbconn

28、ection 为假(false)时表示打 开数据库有误 set dbfinance = nothing 关闭错误的数据库 end function public sub dbclose() 关闭数据库 第 4 章 详细设计 27 on error resume next dbfinance.close set dbfinance = nothing end sub public function resultcount(rs as adodb.recordset) as long 返回 结果集中的记录数 on error resume next resultcount = 0 do while

29、 rs.eof = false resultcount = resultcount + 1 rs.movenext loop rs.movefirst end function 4.2 登录与系统模块设计 用户在打开系统,或单击启动的 exe 可执行文件后,首先是要求使用者登录 系统的窗口,其界面如下图 3.1 所示,这里已经在数据库默认存放了一个公用 登陆者 aaa,密码也是 aaa。 另外,登录用户也可以进行增加管理员和修改管理员密码的操作。单击系 统主界面的“增加管理员”和“更改管理员密码”两个按钮,分别如下图所示 的界面。 电子科技大学成都学院本科毕业设计论文 28 图 2-3 添加管

30、理员界面 图 2-4 修改管理员密码界面 代码如下: private sub command1_click() dim sql as string dim rs as new adodb.recordset if user.text = “” then 判断管理员 id 输入框不为空 msgbox “管理员 id 不能为空!”, vbcritical user.setfocus exit sub end if if pass.text = “” then 判断管理员密码输入框不为空 msgbox “管理员密码不能为空!”, vbcritical pass.setfocus exit sub e

31、nd if if dbhandle.dbconnection then 打开数据库连接 sql = “tbl_admin” 对 tbl_admin 进行操作 rs.cursortype = adopendynamic rs.locktype = adlockoptimistic rs.filter = “admin_id= ” & user.text & “ ” 选择条 第 4 章 详细设计 29 件是符合 user.text 的管理员记录 rs.open sql, dbfinance if dbhandle.resultcount(rs) = 1 then 如果找到一条存 在的管理员记录就报

32、错 msgbox “管理员 id 已经存在!”, vbexclamation rs.close dbhandle.dbclose exit sub else 否则新建一条管理员记录完成添加 rs.close rs.filter = “” rs.open sql, dbfinance rs.addnew rs(“admin_id”) = user.text rs(“admin_password”) = pass.text rs.update rs.close end if msgbox “管理员成功添加!” unload me else 当数据库连接打不开时候报错 msgbox “数据库错误!”

33、, vbexclamation dbhandle.dbclose end end if end sub 电子科技大学成都学院本科毕业设计论文 30 private sub command2_click() me.hide 取消按钮返回主窗体 end sub private sub form_load() me.left = (screen.width me.scalewidth) / 2 把窗体定位 居中显示 me.top = (screen.height me.scaleheight) / 2 end sub private sub form_unload(cancel as integer

34、) on error resume next 窗体关闭时候关闭数据库连接 dbhandle.dbclose end sub private sub frame1_dragdrop(source as control, x as single, y as single) end sub 修改登陆密码的代码: private sub command1_click() dim sql as string dim rs as new adodb.recordset if newpass.text chkpass.text then 新密码和验证密码要 相同 msgbox “新密码不一致!”, vbcr

35、itical 第 4 章 详细设计 31 newpass.setfocus exit sub end if if user = “” then 密码和用户 id 输入框不能为空 msgbox “管理员 id 不能为空!”, vbcritical user.setfocus exit sub end if if oldpass.text = “” then msgbox “管理员密码不能为空!”, vbcritical oldpass.setfocus exit sub end if if dbhandle.dbconnection then sql = “tbl_admin” 打开管理员表,查

36、看是否要添加的管理 员 id 已经存在 rs.cursortype = adopendynamic rs.locktype = adlockoptimistic rs.filter = “admin_id= ” & user.text & “ ” rs.open sql, dbfinance if dbhandle.resultcount(rs) 1 then 不存在出错退出 msgbox “管理员 id 不存在!”, vbexclamation rs.close dbhandle.dbclose user.setfocus exit sub else 存在查看输入的原是密码是否和数据库保存的

37、密码相 电子科技大学成都学院本科毕业设计论文 32 一致 if rs(“admin_password”) oldpass.text then 不一致要 求重新输入原是密码 msgbox “管理员密码错误!”, vbexclamation rs.close oldpass.setfocus exit sub end if rs(“admin_password”) = newpass.text 一致就设置新 的管理员密码 rs.update rs.close end if msgbox “管理员密码成功修改!” unload me else 数据库打开失败退出 msgbox “数据库错误!”, v

38、bexclamation dbhandle.dbclose end end if end sub private sub command2_click() me.hide 返回主窗体 end sub private sub form_load() 第 4 章 详细设计 33 me.left = (screen.width me.scalewidth) / 2 窗体居中显 示 me.top = (screen.height me.scaleheight) / 2 end sub private sub form_unload(cancel as integer) on error resume

39、next 对话框关闭时候关闭数据库连接 dbhandle.dbclose end sub private sub frame1_dragdrop(source as control, x as single, y as single) end sub 4.3 科研人员定义模块 4.3.1 增加科研人员 1)界面设计 向工程中添加一个新的 form 窗口,并向其上添加一些控件,界面样式如图所示。 图 2-5 添加人员窗口界面 “增加科研人员”窗口与主要控件属性的表 4 如下: 电子科技大学成都学院本科毕业设计论文 34 表 4 2)编写代码 窗口初始化的时候,打开数据库连接,将职称,学历表中静态

40、记录从数据 库中提取出来添加到相应的 combobox 控件中去。其代码如下: private sub form_load() dim sql as string dim rs as new adodb.recordset me.left = (screen.width - me.scalewidth) / 2 把窗体定 位居中显示 me.top = (screen.height - me.scaleheight) / 2 if dbhandle.dbconnection then sql = tbl_region rs.cursortype = adopendynamic rs.lockty

41、pe = adlockoptimistic rs.filter = rs.open sql, dbfinance do while rs.eof = false 循环加入下拉列表 zhic.additem (rs(region_name) zhic.itemdata(zhic.newindex) = rs(region_id) rs.movenext loop 第 4 章 详细设计 35 rs.close 释放结果集,关闭数据库 set rs = nothing dbhandle.dbclose else 打开连接失败则退出 msgbox 数据库错误!, vbexclamation dbhan

42、dle.dbclose end end if if dbhandle.dbconnection then sql = tbl_industry rs.cursortype = adopendynamic rs.locktype = adlockoptimistic rs.filter = rs.open sql, dbfinance do while rs.eof = false 循环加入下拉列表 xuel.additem (rs(industry_name) xuel.itemdata(xuel.newindex) = rs(industry_id) rs.movenext loop rs.

43、close 释放结果集,关闭数据库 set rs = nothing dbhandle.dbclose else 打开连接失败则退出 msgbox 数据库错误!, vbexclamation dbhandle.dbclose end 电子科技大学成都学院本科毕业设计论文 36 end if id.text = 初始化所有输入控件 sname.text = zhic.text = email.text = phone.text = xuel.text = marketing.text = plan.text = remark.text = end sub private sub form_unl

44、oad(cancel as integer) on error resume next dbhandle.dbclose 窗体关闭时关闭数据库连接 end sub 3)单击“确定”按钮判断输入的信息是否完整和合理,然后向数据库中添 加。其代码如下: private sub command1_click() dim sql as string dim rs as new adodb.recordset dim posat as long on error resume next if id.text = then 判断科研人员 id 输入框不为空 msgbox 科研人员 id 不能为空!, vb

45、critical 第 4 章 详细设计 37 id.setfocus exit sub end if if sname.text = then 判断科研人员姓名输入框不为空 msgbox 科研人员姓名不能为空!, vbcritical sname.setfocus exit sub end if if zhic.listindex = -1 then 确保科研人员职称被选择 msgbox 科研人员职称必须选择!, vbcritical zhic.setfocus exit sub end if if email.text = then 判断科研人员 email 输入框不为空 msgbox 科研

46、人员 email 不能为空!, vbcritical email.setfocus exit sub end if posat = instr(1, email.text, , vbtextcompare) if posat = 0 then msgbox 科研人员输入 email 不合法!, vbcritical email.setfocus exit sub end if if instr(posat, email.text, ., vbtextcompare) = 0 then 判 断科研人员 email 输入是否合法 msgbox 科研人员输入 email 不合法!, vbcritic

47、al 电子科技大学成都学院本科毕业设计论文 38 email.setfocus exit sub end if if phone.text = then 判断科研人员电话输入框不为空 msgbox 科研人员电话不能为空!, vbcritical phone.setfocus exit sub end if if xuel.listindex = -1 then 确保学历被选择 msgbox 学历必须选择!, vbcritical xuel.setfocus exit sub end if if marketing.text = then 判断科研人员政治面貌输入框 不为空 msgbox 科研人

48、员政治面貌不能为空!, vbcritical marketing.setfocus exit sub end if if plan.text = then 判断科研人员民族输入框不为空 msgbox 科研人员民族不能为空!, vbcritical plan.setfocus exit sub end if if remark.text = then 判断科研人员个人简介信息输入框 第 4 章 详细设计 39 不为空 msgbox 科研人员个人简介信息不能为空!, vbcritical remark.setfocus exit sub end if if dbhandle.dbconnectio

49、n then sql = tbl_seller 查找科研人员表,确定输入科研人 id 是不存在的. rs.cursortype = adopendynamic rs.locktype = adlockoptimistic rs.filter = seller_id= & id.text & rs.open sql, dbfinance if dbhandle.resultcount(rs) = 1 then 存在则提示出 错,退出 msgbox 错误,已经存在科研人员 id 号!, vbexclamation id.setfocus rs.close set rs = nothing dbha

50、ndle.dbclose exit sub end if rs.close sql = tbl_seller 打开科研人员表,添加科研人员记录 rs.cursortype = adopendynamic rs.locktype = adlockoptimistic rs.filter = rs.open sql, dbfinance 电子科技大学成都学院本科毕业设计论文 40 rs.addnew rs(seller_id) = id.text 科研人员 id rs(seller_name) = sname.text 科研人员姓名 rs(seller_zhic) = zhic.itemdata(

51、zhic.listindex) 所 在地区 rs(seller_email) = email.text 科研人员电子邮件 rs(seller_phone) = phone.text 科研人员电话 rs(seller_xuel) = xuel.itemdata(xuel.listindex) 从事 行业 rs(seller_marketing) = marketing.text rs(seller_plan) = plan.text 科研人员销售计划金额 rs(seller_remark) = remark.text 科研人员电话 rs.update rs.close dbhandle.dbcl

52、ose msgbox 记录成功添加! unload me else 打开数据库失败则提示出错退出 msgbox 数据库错误!, vbexclamation dbhandle.dbclose end end if end sub 3)最后是“重置”按钮的功能实现,单击刷新界面,清理所有控件已经填 入的信息,使界面回到窗口打开时的状态,代码如下: 第 4 章 详细设计 41 private sub command2_click() id.text = 重置所有输入控件 sname.text = zhic.listindex = -1 email.text = phone.text = xuel.l

53、istindex = -1 marketing.text = plan.text = remark.text = end sub private sub command3_click() unload me end sub 4.3.2 修改科研人员 1)界面设计 向工程中添加两个新的 form 窗口,并向其上添加一些控件,第一个窗口用 于输入要修改的科研人员 id 编号;第二个窗口用于显示要修改的科研人员已有 的信息,用户在此窗口进行修改并保存。这两个窗口的界面样式如图 1 和 2 所 示。 图 2-6 修改科研人员记录界面 1 电子科技大学成都学院本科毕业设计论文 42 图 2-7 修改科研

54、人员记录弹出界面 2 修改科研人员信息的第一个窗口的控件属性如下表 5 表 5 2)编写代码 1.为第一个窗口的 command1 控件添加 click 事件,用于判断填写的科研人 员 id 不为空且存在数据库中,然后调出第二个窗口并把此科研人员原有信息预 先填入。此外,在第二个窗口中设置了一个公共变量 cancel 用于记录第二个窗 口返回值,这个值标志着用户是否真的要修改第二个窗口中的信息,如果为 “真”则完成数据库修改。其代码如下: private sub command1_click() if id.text = then 科研人员 id 编号对话框不可为空 msgbox 请输入科研人

55、员 id 编号!, vbexclamation id.setfocus exit sub 第 4 章 详细设计 43 end if if dbhandle.dbconnection then 检查输入的科研人员 id 编 号记录是否存在 sql = tbl_seller rs.cursortype = adopendynamic rs.locktype = adlockoptimistic rs.filter = seller_id= & id.text & rs.open sql, dbfinance if dbhandle.resultcount(rs) 1 then 不存在科研人 员 i

56、d 编号删除失败,退出 msgbox 错误,不存在的科研人员 id 编号记录!, vbexclamation id.setfocus rs.close set rs = nothing dbhandle.dbclose exit sub end if fixseller2.cancel = true fixseller2.left = (screen.width - fixseller2.scalewidth) / 2 把窗体定位居中显示 fixseller2.top = (screen.height - fixseller2.scaleheight) / 2 sql = tbl_region

57、 提取职称表中静态记录 rs2.cursortype = adopendynamic rs2.locktype = adlockoptimistic rs2.filter = rs2.open sql, dbfinance 电子科技大学成都学院本科毕业设计论文 44 do while rs2.eof = false 循环加入下拉列表 fixseller2.zhic.additem (rs2(region_name) fixseller2.zhic.itemdata(fixseller2.zhic.newindex) = rs2(region_id) rs2.movenext loop rs2.

58、close 释放结果集,关闭数据库 sql = tbl_industry rs2.cursortype = adopendynamic rs2.locktype = adlockoptimistic rs2.filter = rs2.open sql, dbfinance do while rs2.eof = false 循环加入下拉列表 fixseller2.xuel.additem (rs2(industry_name) fixseller2.xuel.itemdata(fixseller2.xuel.newindex) = rs2(industry_id) rs2.movenext lo

59、op rs2.close 释放结果集,关闭数据库 set rs2 = nothing fixseller2.id.text = rs(seller_id) 初始化所有输 入控件默认值 fixseller2.sname.text = rs(seller_name) fixseller2.zhic.listindex = rs(seller_zhic) - 1 fixseller2.email.text = rs(seller_email) 第 4 章 详细设计 45 fixseller2.phone.text = rs(seller_phone) fixseller2.xuel.listinde

60、x = rs(seller_xuel) - 1 fixseller2.marketing.text = rs(seller_marketing) fixseller2.plan.text = rs(seller_plan) fixseller2.remark.text = rs(seller_remark) fixseller2.show 1 if fixseller2.cancel then rs(seller_id) = fixseller2.id.text 科研人员 id rs(seller_name) = fixseller2.sname.text 科 研人员姓名 rs(seller_

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论