企业管理软件设计开发部门维护系统设计.doc_第1页
企业管理软件设计开发部门维护系统设计.doc_第2页
企业管理软件设计开发部门维护系统设计.doc_第3页
企业管理软件设计开发部门维护系统设计.doc_第4页
企业管理软件设计开发部门维护系统设计.doc_第5页
免费预览已结束,剩余7页可下载查看

下载本文档

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

文档简介

第 1 页 共 12 页 企业管理软件设计开发 部门维护系统 设计文档企业管理软件设计开发 部门维护系统 设计文档 设计者 罗红亮 时间 2009 5 6 第 2 页 共 12 页 目录目录 1 1 系统介绍系统介绍 3 3 1 1 软件操作流程图 3 1 2 VB 下方法调用流程图 4 2 2 数据库操作部分数据库操作部分 5 5 2 1 数据库连接 5 2 2 VB 下对数据库操作语句 提取 插入 删除等 5 3 3 部门数据编辑操作部分部门数据编辑操作部分 6 6 3 1 在选中部门下添加部门信息 6 3 2 修改选中部门信息 7 3 3 删除选中部门信息 8 4 4 部门信息保存操作部分部门信息保存操作部分 1010 5 5 关于该系统关于该系统 1111 5 1 系统所存在的不足 11 6 6 设计总结设计总结 1212 第 3 页 共 12 页 1前言前言 1 1 软件操作流程图 图 1 1 软件图形界面 系统界面 文件 连接数据库 点击 TreeView 控件下欲操作部门编号 编辑 添加部门信息编辑 修改部门信息编辑 删除选中部门信息 图 1 2 软件操作流程图 第 4 页 共 12 页 1 2 VB 下方法调用流程视图 BMWH Fm ConnectSQL Show Fm miAdd S how Fm miDelete S how Fm miAbout Show Fm miModify Show ConnectSQL CommBOk Click CommBOk Cli ck CommBOk Click CommBOk Cli ck BMWH Form L oad BMWH For m Load BMWH Form Load BMWH For m Load BMWH Form Load miSave 图 1 3 方法调用流程图 第 5 页 共 12 页 2 数据库操作部分数据库操作部分 2 1 数据库连接 在软件打开时界面所有控件内容为空 通过 文件 连接数据库 从数据库 下载数据到 TreeView 控件和 MSFlexGrid 控件 从而有如图 1 1 所示的效果 连接数据库通过如下配置实现 Public conn As Variant 定义数据库连接字符 Public rs As Variant 定义创建 Recordset 对象 Set conn New ADODB Connection Set rs New ADODB Recordset Set rs1 New ADODB Recordset conn ConnectionString Driver sql server server USER EF373E3BAF uid sa pwd 123456 database BMDB conn ConnectionTimeout 30 conn Open 在连接数据库前首先要在 VB 菜单中 工程 引用 从中选择 microsoft activeX Data objects 2 6 library 和 microsoft activeX Data objects recordset 2 8 library 两个组件 这是在连接数据前所必做的工作 目的要为接 下来定义 ADO 的连接对象做好准备 2 2 VB 下对数据库操作语句 提取 插入 删除等 提取语句 提取语句 rs Open select from BMDM conn adOpenStatic adLockReadOnly adCmdText 插入语句 插入语句 sql insert into BMDM 表元素 values 待插入值 conn Execute sql 执行上面的 sql 语句 删除语句 删除语句 sql delete from BMDM where 条件表达式 conn Execute sql 第 6 页 共 12 页 3 3 部门数据编辑操作部分部门数据编辑操作部分 3 1 在选中部门下添加部门信息 部分程序如下 部分程序如下 判断部门编号在组织机构中是否有同编号处理代码 判断部门编号在组织机构中是否有同编号处理代码 rs Open select from BMDM conn adOpenStatic adLockReadOnly adCmdText While Not rs EOF If txt5 0000 Then BMID Flag True End If If txt5 rs BMID Then BMID Flag True End If rs MoveNext Wend rs Close 判断部门名称在同级下是否同名处理代码 判断部门名称在同级下是否同名处理代码 rs Open select BMMC from BMDM where SJBMID BMWH TV Select conn adOpenStatic adLockReadOnly adCmdText While Not rs EOF If txt6 rs BMMC Then BMMC Flag True End If rs MoveNext Wend rs Close 做插入处理部分代码 做插入处理部分代码 If BMID Flag True Then MsgBox 部门编号在组织机构中有同编号的同名冲突 请重设 vbOKOnly 冲突提示 txt 5 Text txt 5 SetFocus BMID Flag False Else If BMMC Flag True Then MsgBox 部门名称与同级目录下部门名称有同名冲突 请重设 vbOKOnly 冲突提示 txt 6 Text txt 6 SetFocus BMMC Flag False Else If txt5 Then MsgBox 部门编号不能为空 请设置 vbOKOnly 非空提示 txt 5 SetFocus Else 第 7 页 共 12 页 If txt6 Then MsgBox 部门名称不能为空 请设置 vbOKOnly 非空提示 txt 6 SetFocus Else sql insert into BMDM BMID BMMC BZ SJBM SJBMID values txt5 txt6 txt7 txt8 txt9 conn Execute sql txt 5 Text txt 6 Text txt 7 Text MsgBox 部门已经成功添加 vbOKOnly OK BMWH Form Load Unload Me End If End If End If End If 先判断整个组织机构中是否有同编号 如果有则将存在同编号标志 BMID Flag 置为 True 然后再判断同级下是否有同部门名称 如果有则将同部门名称标志置 BMMC Flag 置为 True 接下来就根据标志位的取值做部门的插入操作 3 2 修改选中部门信息 做修改处理部分代码 做修改处理部分代码 If BMID Flag True Then MsgBox 部门编号在组织机构中有同编号的同名冲突 请重设 vbOKOnly 冲突提示 Txt 5 Text txt5 Txt 5 SetFocus BMID Flag False Else If BMMC Flag True Then MsgBox 部门名称与同级目录下部门名称有同名冲突 请重设 vbOKOnly 冲突提示 Txt 6 Text txt6 Txt 6 SetFocus BMMC Flag False Else If txt5 Then MsgBox 部门编号不能为空 请设置 vbOKOnly 非空提示 Txt 5 SetFocus Else If txt6 Then MsgBox 部门名称不能为空 请设置 vbOKOnly 非空提示 Txt 6 SetFocus Else sql update BMDM set BMID txt5 BMMC txt6 BZ txt7 第 8 页 共 12 页 where BMID txt5 rs Open select from BMDM where SJBMID Txt 0 Text conn adOpenStatic adLockReadOnly adCmdText While Not rs EOF 将其子部门的 SJBMID 对应的修改成修改项 txt0 rs BMID txt1 rs BMMC txt2 rs BZ txt3 rs SJBM txt4 txt5 sql delete from BMDM where BMID txt0 conn Execute sql sql insert into BMDM BMID BMMC BZ SJBM SJBMID values txt0 txt1 txt2 txt3 txt4 conn Execute sql rs MoveNext Wend rs Close sql delete from BMDM where BMID Txt 0 Text conn Execute sql sql insert into BMDM BMID BMMC BZ SJBM SJBMID values Txt 5 Text Txt 6 Text Txt 7 Text Txt 8 Text Txt 9 Text conn Execute sql BMWH Form Load MsgBox 部门已经成功修改 vbOKOnly OK Unload Me End If End If End If End If 在做修改操作之前也和插入操作一样要做组织机构是否有同编号判断和同级下 是否有同部门名称判断 然后再依据判断得到的标志位进行修改操作 3 3 删除选中部门信息 做删除处理部分代码 做删除处理部分代码 将确定待删除的数据以数组的形式存储下来 将确定待删除的数据以数组的形式存储下来 rs Open select BMID from BMDM where SJBMID txt1 conn adOpenStatic adLockReadOnly adCmdText While Not rs EOF I I 1 ReDim Preserve DelSQL I DelSQL I 1 rs BMID rs MoveNext Wend 第 9 页 共 12 页 rs Close n I I 1 从第二个数据开始遍历 While I n rs Open select BMID from BMDM where SJBMID DelSQL I conn adOpenStatic adLockReadOnly adCmdText While Not rs EOF n n 1 ReDim Preserve DelSQL n 数据再次加载 DelSQL n 1 rs BMID rs MoveNext Wend rs Close I I 1 Wend 做删除处理部分代码 做删除处理部分代码 While I n sql delete from BMDM where BMID DelSQL I 逐个删除记录 conn Execute sql I I 1 Wend 其实在做这一块的时候最重要的是要加载选中部门的下级部门信息 然后再 做级联删除 完成这一块所用到的一个处理方法是通过数组多次加载来实现 具体 做法是先将数组的第一个数据保存为当前获取的部门编号信息 然后通过遍历数组 中的部门编号信息从数据库中查找到上级部门编号与当前遍历到的数组中编号相匹 配的部门信息 然后扩大数组空间 将查找到的匹配的部门编号信息再加载到数组 中 直到数据库遍历结束 这样所有待删除的信息也就全部加载到数组中了 然后 要做的工作就是逐个删除与数组中编号相同的数据库信息了 第 10 页 共 12 页 4 4 部门信息保存操作部分部门信息保存操作部分 做保存处理部分代码 做保存处理部分代码 rs Open select from BMDM conn adOpenStatic adLockReadOnly adCmdText CommD CancelError True On Error GoTo ErrHandle 取消 异常处理 CommD FileName BMWH CommD DefaultExt BMWH CommD Filter doc doc CommD InitDir C Documents and Settings All Users Documents CommD Action 2 Open CommD FileName For Output As 1 While Not rs EOF Print 1 部门编号 rs BMID Print 1 部门名称 rs BMMC Print 1 备注 rs BZ Print 1 上级部门名称 rs SJBM Print 1 上级部门编号 rs SJBMID Print 1 rs MoveNext Wend ErrHandle rs Close 做这一块相当于就是对文件的一个操作 通过加载一个 CommonDialog 控件 然后调用 Windows 自带的保存对话框就可以做到了 对文本操作关键一步是打开

温馨提示

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

评论

0/150

提交评论