OA办公自动化系统 毕业设计 论文Word下载.docx
《OA办公自动化系统 毕业设计 论文Word下载.docx》由会员分享,可在线阅读,更多相关《OA办公自动化系统 毕业设计 论文Word下载.docx(35页珍藏版)》请在冰豆网上搜索。
在这种情况下,开发OA办公自动化系统是当务之急的事了。
本系统是以新闻发布、文件传送为核心的办公自动化系统,是一套集新闻管理、文件传送管理、信息发布、人事管理、局域网短消息快速传送等5部分为一体的办公自动化系统。
该系统除了必须满足当前的应用要求外,在整套系统的设计过程中,还专门强调了其先进性及可扩展性。
当前的信息技术日新月异,如果这套系统只着眼于当前的需求,而忽视了对系统技术的前瞻性,可以在不久的将来,系统必将不能满足客户日益增长的需求,导致系统的生命周期缩短,从而增加客户在信息化建设上的投资。
1系统分析
1.1需求分析
通过调查,要求系统需要有以下功能:
❑由于操作人员的计算机知识普遍较差,那么就要求有良好的人机界面。
❑由于该系统的使用对象多,要求有较好的权限管理。
❑原始数据修改简单方便,支持多条件修改。
❑方便的数据查询,支持多条件查询。
❑信息发布与文件传送速度快。
❑通过计算机,能够直接“透视”公司的各项工作及活动安排。
❑图表分析活动投票管理。
❑在相应的权限下,删除数据方便简单,数据稳定性好。
1.2可行性分析
开发任何一个基于计算机的系统,都会受到时间和资源上的限制。
因此,在接受任何一个项目开发任务之前,必须根据客户可能提供的时间和资源条件进行可行性分析,以减少项目开发风险,避免人力、物力和财力的浪费。
本系统数据库采用目前比较流行的MicrosoftSQLServer,该数据库系统在安全性、准确性、运行速度方面有绝对的优势,并且处理数据库量大,效率高;
前台采用Microsoft公司的VisualBasic6.0作为主要的开发工具,其可与SQLServer2000数据库无缝链接。
2总体设计
2.1项目规划
OA办公自动化系统是一个典型的网络办公开发应用程序,包含通知管理模块、新闻管理模块、文件传送管理模块、交流管理模块、系统维护管理模块5部分组成,规划系统功能模块如下:
❑通知管理模块
该模块主要负责信息的发布、接收等。
❑新闻管理模块
该模块的主要负责新闻的发布、接收等。
❑文件传送管理模块
该模块主要负责文件的传送与接收等。
❑交流管理模块
该模块主要实现意见反馈、活动投票、短消息服务(局域网)。
❑系统维护管理模块
部门信息的基础设置、职员信息的基础设置、投票活动管理设置、系统操作员及权限设置。
2.2系统工作原理网络结构图
系统工作原理网络结构图如图1所示。
图1系统工作原理网络结构图
2.3系统功能结构图
图2系统功能结构图
3详细设计
3.1公共模块设计
为了节省系统资源,实现代码重用,可以在系统中新建一个Modulel模块。
就本系统而言,该模块主要实现数据库安装和共享数据库连接。
系统第一次使用时,根据用户设置的DataBase.ini配置文件,将数据库文件(db_OA_Data.MDF)和数据库日志文件(db_OA_Log.LDF)自动安装到指定的SQLServer数据库服务器上。
为了优化ADO+SQL数据库的连接,在公共模块(Module1)中建立数据库连接共享字符串。
在以后的编程中,如果使用对象访问数据库或ADOData控件访问数据库,则可以直接将数据库共享连接字符串(PublicStr)值赋值给相应的ConnectionString属性,从而避免了重复建立数据库连接的麻烦,而失去了ADO+SQL的优越性能。
模块中代码如下:
PublicPublicStrAsString
DimconAsNewADODB.Connection,rsAsNewADODB.Recordset
DimStrAsString,ServerAsString,uidAsString,DimpwdAsString
PublicSubmain()
'
读取数据库配置文件
Open(App.Path&
"
\DataBase.ini"
)ForInputAs#1
LineInput#1,Intext
Server=Mid(Intext,10,Len(Trim(Intext))-9)
uid=Mid(Intext,7,Len(Trim(Intext))-6)
pwd=Mid(Intext,7,Len(Trim(Intext))-6)
Close#1
'
附加数据库
OnErrorResumeNext
con.ConnectionString="
Provider=SQLOLEDB.1;
PersistSecurityInfo=False;
UserID="
&
uid&
;
PWD="
pwd&
InitialCatalog=db_OA;
DataSource="
Server&
"
con.Open'
打开数据库连接
Setrs=NewADODB.Recordset
开始附加数据库
Str="
EXECsp_attach_db@dbname=N'
db_SSS'
@filename1=N'
+App.Path+"
\DataBase\db_OA_Data.MDF"
+"
@filename2=N'
\DataBase\db_OA_Log.LDF"
rs.Openstr,con,1,adLockOptimistic
Setrs=con.Execute(Str)
con.Close'
关闭数据库连接
共享连接字符串
PublicStr="
frm_login.Show
EndSub
3.2系统登录设计
本系统属于OA办公自动化系统,用户权限分为两种:
系统管理员和普通用户。
系统登录验证操作员及其密码,主要通过记录集结果(RecordSet)结合If语句,判断用户输入的操作员及密码是否符合数据库中的操作员和密码,如果符合则允许登录,并给予相应的权限,否则提示用户非法登录。
1.窗体设计
(1)新建一个窗体,将窗体的“名称”属性设置为frm_login,BorderStyle属性设置为0-None,设置Picture属性,为窗体添加背景图片。
(2)添加Adodc控件,设置名称为adoLogin,Visible属性为False,由于该控件属于ActiveX控件,在使用之前必须从“部件”对话框将其添加到工具箱中。
添加方法为:
在“工程”/“部件”对话框中勾选“MicrosoftAdoDataControls6.0(SP4)”列表项。
(3)添加2个TextBox控件,分别设置名称(Name属性)为Text1和Text2,设置BorderStyle属性为0-None。
(4)添加2个Label控件,将名称设置为labLogin和labEnd,BackStyle属性为0-Transparent。
系统登录窗体的设计结果如图3所示。
图3系统登录窗体设计
2.代码设计
单击名称为labLogin的Label控件用来进行用户安全性检查,如果用户名称和密码正确,则进入系统并分配相应的权限。
在Label控件名称为labLogin的Click事件下,添加代码如下:
PrivateSublabLogin_Click()
adoLogin.ConnectionString=PublicStr
adoLogin.RecordSource="
select*fromtbOA_userwhereusername='
+Text1.Text+"
anduserpwd='
+Text2.Text+"
adoLogin.Refresh
IfadoLogin.Recordset.RecordCount>
0Then
IfadoLogin.Recordset.Fields
(2).Value=0Then
frm_mainBefore.Show
frm_mainBefore.System.Enabled=False'
权限约束
frm_mainBefore.StatusBar1.Panels
(1).Text="
操作职员:
Text1.Text
设置控件TreeView树状菜单
Setn1=frm_mainBefore.TreeView1.Nodes.Add(,tvwChild,"
通知管理"
"
1)
Setnode1=frm_mainBefore.TreeView1.Nodes.Add(n1.Index,tvwChild,"
发布通知"
接收通知"
已发通知"
Setn2=frm_mainBefore.TreeView1.Nodes.Add(,tvwChild,"
新闻管理"
Setnnode2=frm_mainBefore.TreeView1.Nodes.Add(n2.Index,tvwChild,"
新闻发布"
Setnode2=frm_mainBefore.TreeView1.Nodes.Add(n2.Index,tvwChild,"
接收新闻"
已发新闻"
Setn4=frm_mainBefore.TreeView1.Nodes.Add(,tvwChild,"
文件传送"
Setnnode4=frm_mainBefore.TreeView1.Nodes.Add(n4.Index,tvwChild,"
传送文件"
Setnode4=frm_mainBefore.TreeView1.Nodes.Add(n4.Index,tvwChild,"
接收文件"
已发文件"
Setn3=frm_mainBefore.TreeView1.Nodes.Add(,tvwChild,"
交流管理"
Setnode3=frm_mainBefore.TreeView1.Nodes.Add(n3.Index,tvwChild,"
意见箱"
投票活动"
短消息服务"
Else
Setn5=frm_mainBefore.TreeView1.Nodes.Add(,tvwChild,"
系统维护管理"
Setnode5=frm_mainBefore.TreeView1.Nodes.Add(n5.Index,tvwChild,"
人事管理"
投票管理"
意见箱管理"
系统设置"
EndIf
UnloadMe
3.3主界面设计
主界面主要包括菜单、树状菜单(TreeView控件实现)、状态栏以及显示OA办公系统的最新新闻和最新通知。
界面设计简单明了,为用户提供便捷的访问途径,把一些具有共性的命令集中于一个简单的菜单之下。
状态栏将显示系统运行时间、公司信息和操作员信息,其中状态栏上的操作员信息主要通过“系统登录窗体”中“登录操作员”项传递而得到的。
主界面运行结果如图4所示。
图4主界面
(1)新建1个窗体,将窗体的“名称”属性设置为frm_mainBefore,Caption属性为“★OA办公自动化系统★”,MaxButton属性为False,设置Picture属性,为窗体添加背景图片。
(2)为窗体设计菜单。
(3)添加ImageList控件,使用默认名称,该控件属于ActiveX控件,在使用之前必须从“部件”对话框将其添加到工具箱中。
在“工程”/“部件”对话框中勾选“MicrosoftWindowsCommonControls6.0(SP6)”列表项。
(4)添加MSHFlexGrid控件,该控件属于ActiveX控件,使用之前必须将MSHFlexGrid控件添加到工具箱中,添加方法为:
在“工程”/“部件”对话框中勾选“MicrosoftHierarchicalFlexGridControl6.0”列表,添加2个MSHFlexGrid控件,名称分别为MSHFlexGrid1和MSHFlexGrid2,二者的属性完全相同,主要设置控件的背景色、前景色及表格颜色,方法为:
在控件上单击鼠标右键选择“属性”菜单,弹出“属性页”选择“颜色”选项卡设置控件的相关颜色,如图5所示。
图5设置MSHFlexGrid控件颜色属性
(5)添加StatusBar(状态栏)控件,主要用来显示系统操作员信息、系统时间及公司名称和网站。
该控件属于ActiveX控件,添加ImageList控件时已经将该控件添加到工具箱中。
StatusBar控件的名称为默认名,单击鼠标右键打开“属性页”,为StatusBar控件添加3个窗格,第1个窗格显示系统操作员、第2个窗格显示系统日期、第3个窗格显示公司名称和网址,该控件的属性设置方法在前面的章节中已经详细讲解过了,这里就不做介绍了。
2.程序代码设计
当窗体激活时,将TreeView控件中所有的节点展开。
在Form窗体的Activate事件下添加如下代码:
PrivateSubForm_Activate()
Fori=1ToTreeView1.Nodes.Count
展开全部节点
TreeView1.Nodes(i).Expanded=True
Nexti
单击树状菜单中的菜单,根据所选择的菜单显示相应的窗体。
在TreeView控件的NodeClick事件下添加代码如下:
PrivateSubTreeView1_NodeClick(ByValNodeAsMSComctlLib.Node)
IfTreeView1.SelectedItem.Key="
ThenfrmNotice_issue.Show
ThenfrmNotice_incept.Show
ThenfrmNotice_toVoice.Show
ThenfrmNews_issue.Show
ThenfrmNews_incept.Show
ThenfrmNews_toNews.Show
ThenfrmFile.Show
ThenfrmFile_incept.Show
ThenfrmFile_toFile.Show
ThenfrmAC_idear.Show
ThenfrmAC_vote.Show
ThenfrmAC_QQ.Show
ThenfrmSys_person.Show
ThenfrmSys_vote.Show
ThenfrmSys_idear.Show
IfTreeView1.SelectedItem