版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
/OA辦公自動化系統(tǒng)學(xué)院專業(yè)班級學(xué)號姓名指導(dǎo)教師教師職稱年月日摘要【摘要】系統(tǒng)針對企業(yè)機(jī)關(guān)辦公中存在的信息不暢、效率底下、操作不規(guī)范等一系列問題。用信息化的手段和新一代規(guī)范等一系列問題。用信息化手段和新一代的管理思想提供了強(qiáng)有力的網(wǎng)絡(luò)化、電子化支持。把協(xié)同辦公的理念、知識管理的思想帶入了現(xiàn)代社會的辦公生活,從而提升了現(xiàn)代企業(yè)的信息化程度,改變了人們的生活?!娟P(guān)鍵詞】OA辦公自動化目錄摘要 1目錄 1引言 11系統(tǒng)分析 21.1需求分析 21.2可行性分析 22總體設(shè)計(jì) 22.1項(xiàng)目規(guī)劃 22.2系統(tǒng)工作原理網(wǎng)絡(luò)結(jié)構(gòu)圖 22.3系統(tǒng)功能結(jié)構(gòu)圖 33詳細(xì)設(shè)計(jì) 33.1公共模塊設(shè)計(jì) 33.2系統(tǒng)登錄設(shè)計(jì) 43.3主界面設(shè)計(jì) 63.4新聞管理 93.5傳送文件 133.6文件接收 153.7投票活動管理 18附錄A參考文獻(xiàn) 21附錄B數(shù)據(jù)表結(jié)構(gòu) 22附錄C文件架構(gòu)圖 25引言在市場競爭過程中,對于一個企業(yè)而言,對信息的掌握程度、信息獲取是否與時、信息能否得到充分的利用、對信息的反應(yīng)是否敏感準(zhǔn)確,也越來越成為衡量一個企業(yè)市場競爭能力的重要因素。商場如戰(zhàn)場,新一代的戰(zhàn)爭是信息化戰(zhàn)爭,如何使企業(yè)信息化建設(shè)完善起來?在這種情況下,開發(fā)OA辦公自動化系統(tǒng)是當(dāng)務(wù)之急的事了。本系統(tǒng)是以新聞發(fā)布、文件傳送為核心的辦公自動化系統(tǒng),是一套集新聞管理、文件傳送管理、信息發(fā)布、人事管理、局域網(wǎng)短消息快速傳送等5部分為一體的辦公自動化系統(tǒng)。該系統(tǒng)除了必須滿足當(dāng)前的應(yīng)用要求外,在整套系統(tǒng)的設(shè)計(jì)過程中,還專門強(qiáng)調(diào)了其先進(jìn)性與可擴(kuò)展性。當(dāng)前的信息技術(shù)日新月異,如果這套系統(tǒng)只著眼于當(dāng)前的需求,而忽視了對系統(tǒng)技術(shù)的前瞻性,可以在不久的將來,系統(tǒng)必將不能滿足客戶日益增長的需求,導(dǎo)致系統(tǒng)的生命周期縮短,從而增加客戶在信息化建設(shè)上的投資。
1系統(tǒng)分析1.1需求分析通過調(diào)查,要求系統(tǒng)需要有以下功能:由于操作人員的計(jì)算機(jī)知識普遍較差,那么就要求有良好的人機(jī)界面。由于該系統(tǒng)的使用對象多,要求有較好的權(quán)限管理。原始數(shù)據(jù)修改簡單方便,支持多條件修改。方便的數(shù)據(jù)查詢,支持多條件查詢。信息發(fā)布與文件傳送速度快。通過計(jì)算機(jī),能夠直接“透視”公司的各項(xiàng)工作與活動安排。圖表分析活動投票管理。在相應(yīng)的權(quán)限下,刪除數(shù)據(jù)方便簡單,數(shù)據(jù)穩(wěn)定性好。1.2可行性分析開發(fā)任何一個基于計(jì)算機(jī)的系統(tǒng),都會受到時間和資源上的限制。因此,在接受任何一個項(xiàng)目開發(fā)任務(wù)之前,必須根據(jù)客戶可能提供的時間和資源條件進(jìn)行可行性分析,以減少項(xiàng)目開發(fā)風(fēng)險,避免人力、物力和財力的浪費(fèi)。本系統(tǒng)數(shù)據(jù)庫采用目前比較流行的MicrosoftSQLServer,該數(shù)據(jù)庫系統(tǒng)在安全性、準(zhǔn)確性、運(yùn)行速度方面有絕對的優(yōu)勢,并且處理數(shù)據(jù)庫量大,效率高;前臺采用Microsoft公司的VisualBasic6.0作為主要的開發(fā)工具,其可與SQLServer2000數(shù)據(jù)庫無縫鏈接。2總體設(shè)計(jì)2.1項(xiàng)目規(guī)劃OA辦公自動化系統(tǒng)是一個典型的網(wǎng)絡(luò)辦公開發(fā)應(yīng)用程序,包含通知管理模塊、新聞管理模塊、文件傳送管理模塊、交流管理模塊、系統(tǒng)維護(hù)管理模塊5部分組成,規(guī)劃系統(tǒng)功能模塊如下:通知管理模塊該模塊主要負(fù)責(zé)信息的發(fā)布、接收等。新聞管理模塊該模塊的主要負(fù)責(zé)新聞的發(fā)布、接收等。文件傳送管理模塊該模塊主要負(fù)責(zé)文件的傳送與接收等。交流管理模塊該模塊主要實(shí)現(xiàn)意見反饋、活動投票、短消息服務(wù)(局域網(wǎng))。系統(tǒng)維護(hù)管理模塊部門信息的基礎(chǔ)設(shè)置、職員信息的基礎(chǔ)設(shè)置、投票活動管理設(shè)置、系統(tǒng)操作員與權(quán)限設(shè)置。2.2系統(tǒng)工作原理網(wǎng)絡(luò)結(jié)構(gòu)圖系統(tǒng)工作原理網(wǎng)絡(luò)結(jié)構(gòu)圖如圖1所示。圖1系統(tǒng)工作原理網(wǎng)絡(luò)結(jié)構(gòu)圖2.3系統(tǒng)功能結(jié)構(gòu)圖圖2系統(tǒng)功能結(jié)構(gòu)圖3詳細(xì)設(shè)計(jì)3.1公共模塊設(shè)計(jì)為了節(jié)省系統(tǒng)資源,實(shí)現(xiàn)代碼重用,可以在系統(tǒng)中新建一個Modulel模塊。就本系統(tǒng)而言,該模塊主要實(shí)現(xiàn)數(shù)據(jù)庫安裝和共享數(shù)據(jù)庫連接。系統(tǒng)第一次使用時,根據(jù)用戶設(shè)置的DataBase.ini配置文件,將數(shù)據(jù)庫文件(db_OA_Data.MDF)和數(shù)據(jù)庫日志文件(db_OA_Log.LDF)自動安裝到指定的SQLServer數(shù)據(jù)庫服務(wù)器上。為了優(yōu)化ADO+SQL數(shù)據(jù)庫的連接,在公共模塊(Module1)中建立數(shù)據(jù)庫連接共享字符串。在以后的編程中,如果使用對象訪問數(shù)據(jù)庫或ADOData控件訪問數(shù)據(jù)庫,則可以直接將數(shù)據(jù)庫共享連接字符串(PublicStr)值賦值給相應(yīng)的ConnectionString屬性,從而避免了重復(fù)建立數(shù)據(jù)庫連接的麻煩,而失去了ADO+SQL的優(yōu)越性能。模塊中代碼如下:PublicPublicStrAsStringDimconAsNewADODB.Connection,rsAsNewADODB.RecordsetDimStrAsString,ServerAsString,uidAsString,DimpwdAsStringPublicSubmain()'讀取數(shù)據(jù)庫配置文件Open(App.Path&"\DataBase.ini")ForInputAs#1LineInput#1,IntextServer=Mid(Intext,10,Len(Trim(Intext))-9)LineInput#1,Intextuid=Mid(Intext,7,Len(Trim(Intext))-6)LineInput#1,Intextpwd=Mid(Intext,7,Len(Trim(Intext))-6)Close#1'附加數(shù)據(jù)庫OnErrorResumeNextcon.ConnectionString="Provider=SQLOLEDB.1;PersistSecurityInfo=False;UserID="&uid&";PWD="&pwd&";InitialCatalog=db_OA;DataSource="&Server&""con.Open'打開數(shù)據(jù)庫連接Setrs=NewADODB.Recordset'開始附加數(shù)據(jù)庫Str="EXECsp_attach_db@dbname=N'db_SSS',@=N'"+App.Path+"\DataBase\db_OA_Data.MDF"+"',@=N'"+App.Path+"\DataBase\db_OA_Log.LDF"+"'"'rs.Openstr,con,1,adLockOptimisticSetrs=con.Execute(Str)con.Close'關(guān)閉數(shù)據(jù)庫連接'共享連接字符串PublicStr="Provider=SQLOLEDB.1;PersistSecurityInfo=False;UserID="&uid&";PWD="&pwd&";InitialCatalog=db_OA;DataSource="&Server&""frm_login.ShowEndSub3.2系統(tǒng)登錄設(shè)計(jì)本系統(tǒng)屬于OA辦公自動化系統(tǒng),用戶權(quán)限分為兩種:系統(tǒng)管理員和普通用戶。系統(tǒng)登錄驗(yàn)證操作員與其密碼,主要通過記錄集結(jié)果(RecordSet)結(jié)合If語句,判斷用戶輸入的操作員與密碼是否符合數(shù)據(jù)庫中的操作員和密碼,如果符合則允許登錄,并給予相應(yīng)的權(quán)限,否則提示用戶非法登錄。1.窗體設(shè)計(jì)(1)新建一個窗體,將窗體的“名稱”屬性設(shè)置為frm_login,BorderStyle屬性設(shè)置為0-None,設(shè)置Picture屬性,為窗體添加背景圖片。(2)添加Adodc控件,設(shè)置名稱為adoLogin,Visible屬性為False,由于該控件屬于ActiveX控件,在使用之前必須從“部件”對話框?qū)⑵涮砑拥焦ぞ呦渲?。添加方法為:在“工程?“部件”對話框中勾選“MicrosoftAdoDataControls6.0(SP4)”列表項(xiàng)。(3)添加2個TextBox控件,分別設(shè)置名稱(Name屬性)為Text1和Text2,設(shè)置BorderStyle屬性為0-None。(4)添加2個Label控件,將名稱設(shè)置為labLogin和labEnd,BackStyle屬性為0-Transparent。系統(tǒng)登錄窗體的設(shè)計(jì)結(jié)果如圖3所示。圖3系統(tǒng)登錄窗體設(shè)計(jì)2.代碼設(shè)計(jì)單擊名稱為labLogin的Label控件用來進(jìn)行用戶安全性檢查,如果用戶名稱和密碼正確,則進(jìn)入系統(tǒng)并分配相應(yīng)的權(quán)限。在Label控件名稱為labLogin的Click事件下,添加代碼如下:PrivateSublabLogin_Click()adoLogin.ConnectionString=PublicStradoLogin.RecordSource="select*fromtbOA_userwhereusername='"+Text1.Text+"'anduserpwd='"+Text2.Text+"'"adoLogin.RefreshIfadoLogin.Recordset.RecordCount>0ThenIfadoLogin.Recordset.Fields(2).Value=0Thenfrm_mainBefore.Showfrm_mainBefore.System.Enabled=False'權(quán)限約束frm_mainBefore.StatusBar1.Panels(1).Text="操作職員:"&Text1.Text'設(shè)置控件TreeView樹狀菜單Setn1=frm_mainBefore.TreeView1.Nodes.Add(,tvwChild,"通知管理","通知管理",1)Setnode1=frm_mainBefore.TreeView1.Nodes.Add(n1.Index,tvwChild,"發(fā)布通知","發(fā)布通知",1)Setnode1=frm_mainBefore.TreeView1.Nodes.Add(n1.Index,tvwChild,"接收通知","接收通知",1)Setnode1=frm_mainBefore.TreeView1.Nodes.Add(n1.Index,tvwChild,"已發(fā)通知","已發(fā)通知",1)Setn2=frm_mainBefore.TreeView1.Nodes.Add(,tvwChild,"新聞管理","新聞管理",1)Setnnode2=frm_mainBefore.TreeView1.Nodes.Add(n2.Index,tvwChild,"新聞發(fā)布","新聞發(fā)布",1)Setnode2=frm_mainBefore.TreeView1.Nodes.Add(n2.Index,tvwChild,"接收新聞","接收新聞",1)Setnode2=frm_mainBefore.TreeView1.Nodes.Add(n2.Index,tvwChild,"已發(fā)新聞","已發(fā)新聞",1)Setn4=frm_mainBefore.TreeView1.Nodes.Add(,tvwChild,"文件傳送","文件傳送",1)Setnnode4=frm_mainBefore.TreeView1.Nodes.Add(n4.Index,tvwChild,"傳送文件","傳送文件",1)Setnode4=frm_mainBefore.TreeView1.Nodes.Add(n4.Index,tvwChild,"接收文件","接收文件",1)Setnode4=frm_mainBefore.TreeView1.Nodes.Add(n4.Index,tvwChild,"已發(fā)文件","已發(fā)文件",1)Setn3=frm_mainBefore.TreeView1.Nodes.Add(,tvwChild,"交流管理","交流管理",1)Setnode3=frm_mainBefore.TreeView1.Nodes.Add(n3.Index,tvwChild,"意見箱","意見箱",1)Setnode3=frm_mainBefore.TreeView1.Nodes.Add(n3.Index,tvwChild,"投票活動","投票活動",1)Setnode3=frm_mainBefore.TreeView1.Nodes.Add(n3.Index,tvwChild,"短消息服務(wù)","短消息服務(wù)",1)Elsefrm_mainBefore.Showfrm_mainBefore.StatusBar1.Panels(1).Text="操作職員:"&Text1.Text'設(shè)置控件TreeView樹狀菜單Setn1=frm_mainBefore.TreeView1.Nodes.Add(,tvwChild,"通知管理","通知管理",1)Setnode1=frm_mainBefore.TreeView1.Nodes.Add(n1.Index,tvwChild,"發(fā)布通知","發(fā)布通知",1)Setnode1=frm_mainBefore.TreeView1.Nodes.Add(n1.Index,tvwChild,"接收通知","接收通知",1)Setnode1=frm_mainBefore.TreeView1.Nodes.Add(n1.Index,tvwChild,"已發(fā)通知","已發(fā)通知",1)Setn2=frm_mainBefore.TreeView1.Nodes.Add(,tvwChild,"新聞管理","新聞管理",1)Setnnode2=frm_mainBefore.TreeView1.Nodes.Add(n2.Index,tvwChild,"新聞發(fā)布","新聞發(fā)布",1)Setnode2=frm_mainBefore.TreeView1.Nodes.Add(n2.Index,tvwChild,"接收新聞","接收新聞",1)Setnode2=frm_mainBefore.TreeView1.Nodes.Add(n2.Index,tvwChild,"已發(fā)新聞","已發(fā)新聞",1)Setn4=frm_mainBefore.TreeView1.Nodes.Add(,tvwChild,"文件傳送","文件傳送",1)Setnnode4=frm_mainBefore.TreeView1.Nodes.Add(n4.Index,tvwChild,"傳送文件","傳送文件",1)Setnode4=frm_mainBefore.TreeView1.Nodes.Add(n4.Index,tvwChild,"接收文件","接收文件",1)Setnode4=frm_mainBefore.TreeView1.Nodes.Add(n4.Index,tvwChild,"已發(fā)文件","已發(fā)文件",1)Setn3=frm_mainBefore.TreeView1.Nodes.Add(,tvwChild,"交流管理","交流管理",1)Setnode3=frm_mainBefore.TreeView1.Nodes.Add(n3.Index,tvwChild,"意見箱","意見箱",1)Setnode3=frm_mainBefore.TreeView1.Nodes.Add(n3.Index,tvwChild,"投票活動","投票活動",1)Setnode3=frm_mainBefore.TreeView1.Nodes.Add(n3.Index,tvwChild,"短消息服務(wù)","短消息服務(wù)",1)Setn5=frm_mainBefore.TreeView1.Nodes.Add(,tvwChild,"系統(tǒng)維護(hù)管理","系統(tǒng)維護(hù)管理",1)Setnode5=frm_mainBefore.TreeView1.Nodes.Add(n5.Index,tvwChild,"人事管理","人事管理",1)Setnode5=frm_mainBefore.TreeView1.Nodes.Add(n5.Index,tvwChild,"投票管理","投票管理",1)Setnode5=frm_mainBefore.TreeView1.Nodes.Add(n5.Index,tvwChild,"意見箱管理","意見箱管理",1)Setnode5=frm_mainBefore.TreeView1.Nodes.Add(n5.Index,tvwChild,"系統(tǒng)設(shè)置","系統(tǒng)設(shè)置",1)EndIfUnloadMeEndIfEndSub3.3主界面設(shè)計(jì)主界面主要包括菜單、樹狀菜單(TreeView控件實(shí)現(xiàn))、狀態(tài)欄以與顯示OA辦公系統(tǒng)的最新新聞和最新通知。界面設(shè)計(jì)簡單明了,為用戶提供便捷的訪問途徑,把一些具有共性的命令集中于一個簡單的菜單之下。狀態(tài)欄將顯示系統(tǒng)運(yùn)行時間、公司信息和操作員信息,其中狀態(tài)欄上的操作員信息主要通過“系統(tǒng)登錄窗體”中“登錄操作員”項(xiàng)傳遞而得到的。主界面運(yùn)行結(jié)果如圖4所示。圖4主界面1.窗體設(shè)計(jì)(1)新建1個窗體,將窗體的“名稱”屬性設(shè)置為frm_mainBefore,Caption屬性為“★OA辦公自動化系統(tǒng)★”,MaxButton屬性為False,設(shè)置Picture屬性,為窗體添加背景圖片。(2)為窗體設(shè)計(jì)菜單。(3)添加ImageList控件,使用默認(rèn)名稱,該控件屬于ActiveX控件,在使用之前必須從“部件”對話框?qū)⑵涮砑拥焦ぞ呦渲?。添加方法為:在“工程?“部件”對話框中勾選“MicrosoftWindowsCommonControls6.0(SP6)”列表項(xiàng)。(4)添加MSHFlexGrid控件,該控件屬于ActiveX控件,使用之前必須將MSHFlexGrid控件添加到工具箱中,添加方法為:在“工程”/“部件”對話框中勾選“MicrosoftHierarchicalFlexGridControl6.0”列表,添加2個MSHFlexGrid控件,名稱分別為MSHFlexGrid1和MSHFlexGrid2,二者的屬性完全相同,主要設(shè)置控件的背景色、前景色與表格顏色,方法為:在控件上單擊鼠標(biāo)右鍵選擇“屬性”菜單,彈出“屬性頁”選擇“顏色”選項(xiàng)卡設(shè)置控件的相關(guān)顏色,如圖5所示。圖5設(shè)置MSHFlexGrid控件顏色屬性(5)添加StatusBar(狀態(tài)欄)控件,主要用來顯示系統(tǒng)操作員信息、系統(tǒng)時間與公司名稱和網(wǎng)站。該控件屬于ActiveX控件,添加ImageList控件時已經(jīng)將該控件添加到工具箱中。StatusBar控件的名稱為默認(rèn)名,單擊鼠標(biāo)右鍵打開“屬性頁”,為StatusBar控件添加3個窗格,第1個窗格顯示系統(tǒng)操作員、第2個窗格顯示系統(tǒng)日期、第3個窗格顯示公司名稱和網(wǎng)址,該控件的屬性設(shè)置方法在前面的章節(jié)中已經(jīng)詳細(xì)講解過了,這里就不做介紹了。2.程序代碼設(shè)計(jì)當(dāng)窗體激活時,將TreeView控件中所有的節(jié)點(diǎn)展開。在Form窗體的Activate事件下添加如下代碼:PrivateSubForm_Activate()Fori=1ToTreeView1.Nodes.Count'展開全部節(jié)點(diǎn)TreeView1.Nodes(i).Expanded=TrueNextiEndSub單擊樹狀菜單中的菜單,根據(jù)所選擇的菜單顯示相應(yīng)的窗體。在TreeView控件的NodeClick事件下添加代碼如下:PrivateSubTreeView1_NodeClick(ByValNodeAsMSComctlLib.Node)IfTreeView1.SelectedItem.Key="發(fā)布通知"ThenfrmNotice_issue.ShowIfTreeView1.SelectedItem.Key="接收通知"ThenfrmNotice_incept.ShowIfTreeView1.SelectedItem.Key="已發(fā)通知"ThenfrmNotice_toVoice.ShowIfTreeView1.SelectedItem.Key="新聞發(fā)布"ThenfrmNews_issue.ShowIfTreeView1.SelectedItem.Key="接收新聞"ThenfrmNews_incept.ShowIfTreeView1.SelectedItem.Key="已發(fā)新聞"ThenfrmNews_toNews.ShowIfTreeView1.SelectedItem.Key="新聞發(fā)布"ThenfrmNews_issue.ShowIfTreeView1.SelectedItem.Key="接收新聞"ThenfrmNews_incept.ShowIfTreeView1.SelectedItem.Key="已發(fā)新聞"ThenfrmNews_toNews.ShowIfTreeView1.SelectedItem.Key="傳送文件"ThenfrmIfTreeView1.SelectedItem.Key="接收文件"ThenfrmIfTreeView1.SelectedItem.Key="已發(fā)文件"ThenfrmIfTreeView1.SelectedItem.Key="意見箱"ThenfrmAC_idear.ShowIfTreeView1.SelectedItem.Key="投票活動"ThenfrmAC_vote.ShowIfTreeView1.SelectedItem.Key="短消息服務(wù)"ThenfrmAC_QQ.ShowIfTreeView1.SelectedItem.Key="人事管理"ThenfrmSys_person.ShowIfTreeView1.SelectedItem.Key="投票管理"ThenfrmSys_vote.ShowIfTreeView1.SelectedItem.Key="意見箱管理"ThenfrmSys_idear.ShowIfTreeView1.SelectedItem.Key="系統(tǒng)設(shè)置"ThenfrmSys_sys.ShowEndSub在Form窗體的裝載過程中,將最新的新聞和通知顯示在MSHFlexGrid表格中。PrivateSubForm_Load()'////設(shè)置NEWSadoNews.ConnectionString=PublicStradoNews.RecordSource="SELECTnews_date,news_textFROMtbOA_newsWHERE(news_acceptPerson='"&frm_login.Text1&"')ORDERBYnews_dateDESC"adoNews.RefreshSetMSHFlexGrid2.DataSource=adoNewsCallsetNewsDataGrid_Caption'/////設(shè)置通知adoNotice.ConnectionString=PublicStradoNotice.RecordSource="SELECTnotice_date,notice_person,notice_acceptDept,notice_acceptPerson,notice_textFROMtbOA_noticeWHERE(notice_acceptPerson='"&frm_login.Text1&"')ORDERBYnotice_dateDESC"adoNotice.RefreshSetMSHFlexGrid1.DataSource=adoNoticeCallsetNoticeDataGrid_CaptionEndSub每隔一分多鐘就更新一次最新新聞和最新通知。在Timer控件的Timer事件下添加如下代碼:PrivateSubTimer1_Timer()'////設(shè)置NEWSadoNews.RecordSource="SELECTnews_date,news_textFROMtbOA_newsWHERE(news_acceptPerson='"&Mid(StatusBar1.Panels(1).Text,6,Len(StatusBar1.Panels(1).Text)-5)&"')ORDERBYnews_dateDESC"adoNews.RefreshCallsetNewsDataGrid_Caption'//////設(shè)置通知adoNotice.RecordSource="SELECTnotice_date,notice_person,notice_acceptDept,notice_acceptPerson,notice_textFROMtbOA_noticeWHERE(notice_acceptPerson='"&Mid(StatusBar1.Panels(1).Text,6,Len(StatusBar1.Panels(1).Text)-5)&"')ORDERBYnotice_dateDESC"adoNotice.RefreshCallsetNoticeDataGrid_Caption'調(diào)用自定義過程EndSub自定義過程setNewsDataGrid_Caption()用來初始化新聞MSHFlexGrid2控件的列標(biāo)題和表格寬度。SubsetNewsDataGrid_Caption()‘初始化行序號Fori=1ToadoNews.Recordset.RecordCountMSHFlexGrid2.TextMatrix(i,0)=iNext‘初始化表格標(biāo)題和列寬MSHFlexGrid2.TextMatrix(0,0)="序號":MSHFlexGrid2.TextMatrix(0,1)="發(fā)布日期"MSHFlexGrid2.TextMatrix(0,2)="新聞內(nèi)容":MSHFlexGrid2.ColWidth(0)=400MSHFlexGrid2.ColWidth(1)=1000:MSHFlexGrid2.ColWidth(2)=6700EndSub3.4新聞管理新聞管理包含3個部分:新聞發(fā)布、新聞接收、已發(fā)新聞。其中新聞發(fā)布用來將新聞發(fā)布給某部門中某人;新聞接收用來接收其他職員發(fā)布新聞;已發(fā)新聞用來瀏覽將新聞發(fā)布給其他職員的新聞。下面筆者分別講解新聞發(fā)布、新聞接收和已發(fā)新聞的開發(fā)過程。1.新聞發(fā)布新聞管理窗體的設(shè)計(jì)結(jié)果如圖6所示。圖6新聞發(fā)布設(shè)計(jì)圖(1)新建1個窗體,設(shè)置窗體的“名稱”屬性為frmNews_issue、Caption屬性為“新聞發(fā)布”,MaxButton屬性為False。(2)在窗體中添加4個Label控件、2個Combo控件、3個ADO控件、2個TextBox控件和2個CommandButton控件。(3)添加DTPicker控件,該控件屬于ActiveX控件,在使用之前必須從“部件”對話框中添加到工具箱中。添加方法為:在“工程”/“部件”對話框中勾選“MicrosoftWindowsCommonControls2.6.0”列表項(xiàng),添加DTPicker控件后,其名稱為默認(rèn)的DTPicker1。(4)程序代碼。新聞發(fā)布就是將要發(fā)布的新聞按部門、職員和新聞數(shù)據(jù)存儲到tbOA_news數(shù)據(jù)表中。在【發(fā)布新聞】按鈕的Click事件下添加如下代碼:PrivateSubcmdSave_Click()adoNews.Recordset.AddNewadoNews.Recordset.Fields(1).Value=DTPicker1.ValueadoNews.Recordset.Fields(2).Value=Text2.TextadoNews.Recordset.Fields(3).Value=Combo1.TextadoNews.Recordset.Fields(4).Value=Combo2.TextadoNews.Recordset.Fields(5).Value=0adoNews.Recordset.Fields(6).Value=Text1.TextadoNews.Recordset.UpdateMsgBox"通知發(fā)布成功!",vbInformationEndSubForm窗體載入時,主要實(shí)現(xiàn)以下功能:(1)建立adoNews控件和adoDept控件數(shù)據(jù)庫連接。(2)為Combo1控件中添加部門名稱數(shù)據(jù)。(3)獲取系統(tǒng)操作職員姓名,并通過Text2控件顯示出來。(4)使DTPicker1控件顯示系統(tǒng)當(dāng)前日期。Form窗體的Load事件過程中的代碼如下:PrivateSubForm_Load()adoNews.ConnectionString=PublicStr‘建立數(shù)據(jù)庫連接adoNews.RecordSource="select*fromtbOA_news"‘檢索數(shù)據(jù)表數(shù)據(jù)adoNews.RefreshadoDept.ConnectionString=PublicStradoDept.RecordSource="select*fromtbOA_dept"adoDept.RefreshFori=0ToadoDept.Recordset.RecordCount–1‘將所有部門名稱添加到Combo1中Combo1.AddItemadoDept.Recordset.Fields(1).ValueadoDept.Recordset.MoveNextNextiText2.Text=Mid(frm_mainBefore.StatusBar1.Panels(1).Text,6,Len(frm_mainBefore.StatusBar1.Panels(1).Text)-5)‘獲取操作員姓名DTPicker1.Value=Date‘顯示系統(tǒng)當(dāng)前日期EndSub在Combo1控件中選擇不同的部門,檢索該部門的所有員工并將其添加到Combo2控件中。Combo1控件Click事件的代碼如下:PrivateSubCombo1_Click()Combo2.ClearadoEmployee.ConnectionString=PublicStradoEmployee.RecordSource="select*fromtbOA_employee"adoEmployee.RefreshFori=0ToadoEmployee.Recordset.RecordCount-1Combo2.AddItemadoEmployee.Recordset.Fields(1).ValueadoEmployee.Recordset.MoveNextNextiEndSub2.新聞接收新聞接收窗體的設(shè)計(jì)結(jié)果如圖7所示。圖7新聞接收設(shè)計(jì)圖(1)新建一個窗體,設(shè)置窗體的“名稱”屬性為frmNews_incept、Caption屬性為“新聞接收”、MaxButton屬性為False。(2)添加4個ComandButton控件和1個Adodc控件。(3)添加2個DTPicker控件,名稱分別為DTPicker1和DTPicker2。(4)添加DataGrid控件,使用默認(rèn)名稱。(5)程序代碼。在窗體裝載過程中,將adoNews控件查詢的數(shù)據(jù)通過DataGrid控件顯示,代碼如下:PrivateSubForm_Load()adoNews.ConnectionString=PublicStr‘建立數(shù)據(jù)庫連接‘?dāng)?shù)據(jù)庫查詢(以日期為標(biāo)準(zhǔn)降序查詢)adoNews.RecordSource="select*fromtbOA_newswherenews_acceptPerson='"+Mid(frm_mainBefore.StatusBar1.Panels(1).Text,6,Len(frm_mainBefore.StatusBar1.Panels(1).Text)-5)+"'orderbynews_datedesc"adoNews.RefreshSetDataGrid1.DataSource=adoNews‘將數(shù)據(jù)源綁定到DataGrid表格中CallsetDataGrid_CaptionEndSub通過鼠標(biāo)選擇DataGrid表格中數(shù)據(jù),然后單擊【刪除】按鈕,將選中的數(shù)據(jù)刪除,代碼如下:PrivateSubcmdDel_Click()OnErrorResumeNextadoNews.Recordset.DeleteEndSub在日期輸入框輸入開始日期和截止日期后,單擊【查詢】按鈕,將在DataGrid控件中顯示相應(yīng)查詢結(jié)果,代碼如下:PrivateSubcmdFind_Click()adoNews.ConnectionString=PublicStradoNews.RecordSource="select*fromtbOA_newswherenews_datebetween'"&DTPicker1.Value&"'and'"&DTPicker2.Value&"'andnews_acceptPerson='"+Mid(frm_mainBefore.StatusBar1.Panels(1).Text,6,Len(frm_mainBefore.StatusBar1.Panels(1).Text)-5)+"'orderbynews_datedesc"adoNews.RefreshSetDataGrid1.DataSource=adoNewsCallsetDataGrid_Caption‘調(diào)用自定義過程EndSub單擊【顯示所有新聞】按鈕后,顯示系統(tǒng)操作職員接收到的所有新聞,代碼如下:PrivateSubCommand1_Click()adoNews.ConnectionString=PublicStradoNews.RecordSource="select*fromtbOA_newswherenews_acceptPerson='"+Mid(frm_mainBefore.StatusBar1.Panels(1).Text,6,Len(frm_mainBefore.StatusBar1.Panels(1).Text)-5)+"'orderbynews_datedesc"adoNews.RefreshSetDataGrid1.DataSource=adoNewsCallsetDataGrid_CaptionEndSub由于本系統(tǒng)數(shù)據(jù)表中的字段都是英文字段,因此將ADOData控件綁定到DataGrid控件后,DataGrid控件的列標(biāo)題都為英文字段名稱,為方便用戶使用,筆者在此建立了setDataGrid_Caption()過程,該過程主要用于設(shè)置DataGrid控件的列標(biāo)題和列寬,代碼如下:SubsetDataGrid_Caption()DataGrid1.Columns(0).Caption="序號"DataGrid1.Columns(1).Caption="通日期"DataGrid1.Columns(2).Caption="發(fā)布新聞人"DataGrid1.Columns(3).Caption="接收部門"DataGrid1.Columns(4).Caption="接收人"DataGrid1.Columns(5).Visible=FalseDataGrid1.Columns(6).Caption="新聞內(nèi)容"DataGrid1.Columns(0).Width=600DataGrid1.Columns(1).Width=1000DataGrid1.Columns(2).Width=1000DataGrid1.Columns(3).Width=2000DataGrid1.Columns(4).Width=1000DataGrid1.Columns(6).Width=4000EndSub3.已發(fā)新聞已發(fā)新聞窗體的設(shè)計(jì)結(jié)果如圖8所示。圖8已發(fā)新聞窗體設(shè)計(jì)圖(1)新建1個窗體,將窗體的“名稱”屬性設(shè)置為frmNews_toNews,設(shè)置Caption屬性為“已發(fā)布新聞”,設(shè)置MaxButton屬性為False。(2)添加ADO控件,設(shè)置“名稱”屬性為adoNews,設(shè)置Visible屬性為False;添加DataGrid控件“名稱”屬性為默認(rèn)名稱DataGrid1;添加CommandButton控件名稱為默認(rèn)名稱、其Caption屬性為“退出”。(3)程序代碼。在窗體裝載過程中,將adoNews控件查詢的數(shù)據(jù)通過DataGrid控件顯示,代碼如下:PrivateSubForm_Load()adoNews.ConnectionString=PublicStradoNews.RecordSource="select*fromtbOA_newswherenews_person='"+Mid(frm_mainBefore.StatusBar1.Panels(1).Text,6,Len(frm_mainBefore.StatusBar1.Panels(1).Text)-5)+"'"adoNews.RefreshSetDataGrid1.DataSource=adoNewsCallsetDataGrid_CaptionEndSub'此處代碼,請參見光盤3.5傳送文件文件傳送在OA辦公自動化系統(tǒng)中占據(jù)很重要的位置,本系統(tǒng)文件傳送可以傳送多種類型的文件(如EXE,BAT,RAR,F(xiàn)RM,DOC等等)。傳送文件窗體的設(shè)計(jì)結(jié)果如圖9所示。圖9傳送文件窗體設(shè)計(jì)結(jié)果1.窗體設(shè)計(jì)(1)新建1個窗體,設(shè)置窗體“名稱”屬性為frm屬性為“文件傳送”、MaxButton屬性為False。(2)添加2個Combo控件、4個TextBox控件、3個CommandButton控件,其屬性設(shè)置如圖8.21所示。(3)添加2個ADO控件,名稱分別為adoDept和adoEmployee,其Visible屬性均為False。(4)添加1個DTPicker控件,默認(rèn)名稱為DTPicker1。(5)添加CommonDialog控件,默認(rèn)名稱CommonDialog1。CommonDialog控件為ActiveX控件,在使用之前必須從“部件”對話框中添加到工具箱中。添加方法為:在“工程”/“部件”對話框中勾選“MicrosoftCommonDialog6.0”列表項(xiàng)。2.程序代碼設(shè)計(jì)在Form窗體裝載中,主要實(shí)現(xiàn)以下功能:(1)建立adoDept控件數(shù)據(jù)庫連接。(2)為Combo1控件中添加部門名稱數(shù)據(jù)。(3)獲取系統(tǒng)操作職員姓名,并通過txtName控件顯示出來。(4)使DTPicker1控件顯示系統(tǒng)當(dāng)前日期。在Form窗體的Load事件添加如下代碼:PrivateSubForm_Load()adoDept.ConnectionString=PublicStradoDept.RecordSource="select*fromtbOA_dept"adoDept.RefreshFori=0ToadoDept.Recordset.RecordCount-1Combo1.AddItemadoDept.Recordset.Fields(1).ValueadoDept.Recordset.MoveNextNextitxtName.Text=Mid(frm_mainBefore.StatusBar1.Panels(1).Text,6,Len(frm_mainBefore.StatusBar1.Panels(1).Text)-5)DTPicker1.Value=DateEndSub單擊【傳送文件】按鈕,將相應(yīng)的文件數(shù)據(jù)保存到數(shù)據(jù)庫中,代碼如下:PrivateSubcmdSave_Click()DimcnAsADODB.Connection,rsAsADODB.Recordset,mstAsADODB.StreamMe.MousePointer=11Setcn=NewADODB.Connectioncn.ConnectionString="Provider=SQLOLEDB.1;PersistSecurityInfo=False;UserID=sa;InitialCatalog=db_OA;DataSource=MRZYT"cn.OpenSetrs=NewADODB.Recordsetrs.Open"select*fromtbOA_file",cn,adOpenStatic,adLockOptimisticSetmst=NewADODB.Streammst.Type=adTypeBinarymst.Openmst.LoadFromrs.AddNewrs.Fields(1).Value=txtSubject.Text:rs.Fields(2).Value=txtMemo.Textrs.Fields(3).Value=txtName.Text:rs.Fields(4).Value=Combo1.Textrs.Fields(5).Value=Combo2.Text:rs.Fields(6).Value=DTPicker1.Valuers.Fields(7).Value=mst.Read:rs.Fields(8).Value=rs.Updaters.Close:cn.CloseMe.MousePointer=0MsgBox"文件傳送成功!",vbInformationEndSub在Combo1控件中選擇部門,將檢索該部門的所有員工,并將其添加到Combo2控件中。Combo1控件的Click事件下代碼如下:PrivateSubCombo1_Click()Combo2.ClearadoEmployee.ConnectionString=PublicStradoEmployee.RecordSource="select*fromtbOA_employeewheree_dept='"&Combo1.Text&"'"adoEmployee.RefreshFori=0ToadoEmployee.Recordset.RecordCount-1Combo2.AddItemadoEmployee.Recordset.Fields(1).ValueadoEmployee.Recordset.MoveNextNextiEndSub單擊【瀏覽文件】按鈕,選擇將要傳送的文件,代碼如下:PrivateSubcmd()CommonDialog1.ShowOpentxt=CommonDialog1.:=CommonDialog1.EndSub3.6文件接收文件接收窗體主要用來接收其他員工傳送來的文件,并且將文件下載保存到本機(jī)器中。本窗體主要實(shí)現(xiàn)的功能為:以日期為標(biāo)準(zhǔn)查詢接收文件、下載接收文件、刪除接收文件、顯示所有接收文件。文件接收窗體的設(shè)計(jì)結(jié)果如圖10所示。圖10文件接收窗體設(shè)計(jì)結(jié)果1.窗體設(shè)計(jì)(1)新建一個窗體,設(shè)置窗體“名稱”屬性為frm,Caption屬性為“文件接收”,MaxButton屬性為False。(2)添加4個CommandButton按鈕控件,名稱分別為cmdFind、cmdDel、Command1、Command2,其Caption屬性為“查詢”、“刪除文件記錄”、“顯示所有文件”和“退出”。(3)添加ADO控件和DataGrid控件,設(shè)置名稱分別為ado。(4)添加2個DTPicker控件名稱分別為DTPicker1和DTPicker2。2.程序代碼設(shè)計(jì)在本窗體中聲明變量,代碼如下:PublicAsStringDimcnAsADODB.Connection,rsAsADODB.Recordset,mstAsADODB.Stream在窗體的裝載過程中,查詢系統(tǒng)操作職員接收的所有文件,并通過DataGrid控件顯示,代碼如下:PrivateSubForm_Load()ado=PublicStrado="select*fromtbOA_'"+Mid(frm_mainBefore.StatusBar1.Panels(1).Text,6,Len(frm_mainBefore.StatusBar1.Panels(1).Text)-5)+"'orderbydesc"adoSetDataGrid1.DataSource=adoFile‘將數(shù)據(jù)源綁定到DataGrid表格上CallsetDataGrid_CaptionEndSub通過鼠標(biāo)選擇DataGrid表格中數(shù)據(jù),然后單擊【刪除文件記錄】按鈕,將選中的文件數(shù)據(jù)刪除。下面是【刪除】按鈕的Click事件代碼:PrivateSubcmdDel_Click()OnErrorResumeNext‘當(dāng)數(shù)據(jù)表中沒有數(shù)據(jù)時,進(jìn)行錯誤處理adoEndSub在日期輸入框輸入開始日期和截止日期后,單擊【查詢】按鈕,將查詢結(jié)果顯示在DataGrid控件中,代碼如下:PrivateSubcmdFind_Click()ado="select*fromtbOA_'"+Mid(frm_mainBefore.StatusBar1.Panels(1).Text,6,Len(frm_mainBefore.StatusBar1.Panels(1).Text)-5)+"'andbetween'"&DTPicker1.Value&"'and'"&DTPicker2.Value&"'"adoCallsetDataGrid_CaptionEndSubPrivateSubCommand1_Click()ado=PublicStrado="select*fromtbOA_'"+Mid(frm_mainBefore.StatusBar1.Panels(1).Text,6,Len(frm_mainBefore.StatusBar1.Panels(1).Text)-5)+"'orderbydesc"adoSetDataGrid1.DataSource=adoFileCallsetDataGrid_CaptionEndSub'在DataGrid控件中選擇文件記錄,然后雙擊鼠標(biāo)左鍵,下載接收文件PrivateSubDataGrid1_DblClick()IfMsgBox("是否接收【"&DataGrid1.Columns(3).Text&"】傳送來的『"&DataGrid1.Columns(1).Text&"』嗎?",vbQuestion+vbYesNo)=vbYesThenCommonDialog1.=DataGrid1.Columns(8).TextCommonDialog1.ShowSave=CommonDialog1.Me.MousePointer=11Setcn=NewADODB.Connectioncn.ConnectionString=PublicStrcn.OpenSetrs=NewADODB.Recordsetrs.Open"select*fromtbOA_'"&frm(0).Value&"'",cn,adOpenStatic,adLockOptimisticSetmst=NewADODB.Streammst.Type=adTypeBinarymst.Openmst.Writers.Fields(7).Valuemst.SaveTo,adSaveCreateOverWrite'保存文件,adSaveCreateOverWrite為覆蓋以存在文件rs.Closecn.CloseMe.MousePointer=0MsgBox"現(xiàn)在成功!"&"文件保存在:"&frm,vbInformation,"文件下載"EndIfEndSub由于本系統(tǒng)數(shù)據(jù)表中的字段都是英文字段,因此將ADOData控件綁定到DataGrid控件后,DataGrid控件的列標(biāo)題都為英文字段名稱,為方便用戶使用,筆者在此建立了setDataGrid_Caption()過程,該過程主要用于設(shè)置DataGrid控件的列標(biāo)題和列寬,代碼如下:SubsetDataGrid_Caption()DataGrid1.Columns(0).Caption="序號":DataGrid1.Columns(1).Caption="主題"DataGrid1.Columns(2).Caption="文件備注":DataGrid1.Columns(3).Caption="傳送人"DataGrid1.Columns(4).Caption="接收部門":DataGrid1.Columns(5).Caption="接收人"DataGrid1.Columns(6).Caption="傳送日期":DataGrid1.Columns(7).Visible=FalseDataGrid1.Columns(8).Caption="文件標(biāo)題":DataGrid1.Columns(0).Width=500DataGrid1.Columns(1).Width=2000:DataGrid1.Columns(2).Width=3000DataGrid1.Columns(3).Width=1000:DataGrid1.Columns(4).Width=1000DataGrid1.Columns(5).Width=1000:DataGrid1.Columns(6).Width=1000DataGrid1.Columns(8).Width=2000EndSub3.7投票活動管理投票活動管理主要添加投票活動、刪除投票活動、清除投票記錄,列表形式統(tǒng)計(jì)票數(shù)與圖表統(tǒng)計(jì)票數(shù)。投票活動管理窗體的設(shè)計(jì)結(jié)果如圖11所示。圖11活動投票管理窗體設(shè)計(jì)圖1.窗體設(shè)計(jì)(1)新建一個窗體,將窗體的“名稱”屬性設(shè)置為frmSys_vote,設(shè)置Caption屬性為“活動投票管理”,設(shè)置MaxButton屬性為False。(2)添加2個Label標(biāo)簽控件、2個TextBox文本框控件與4個CommandButton按鈕控件。(3)添加Ado控件和DataGrid控件,設(shè)置其名稱為adoVote和DataGrid2。(4)添加MSChart圖表控件,其名稱為默認(rèn)名稱。由于MSChart控件為ActiveX控件,在使用之前必須從“部件”對話框中添加到工具箱中。添加方法為:在“工程”/“部件”對話框中勾選“MicrosoftChartControls6.0(OLEDB)”列表項(xiàng)。2.程序代碼設(shè)計(jì)在窗體裝載過程中,根據(jù)投票數(shù)量進(jìn)行投票排行,并通過表格或圖表顯示出來。窗體的Load事件代碼如下:PrivateSubForm_Load()'///投票活動設(shè)置adoVote.ConnectionString=PublicStradoVote.RecordSource="select*fromtbOA_voteorderbyvote_qtydesc"adoVote.RefreshSetDataGrid2.DataSource=adoVoteDataGrid2.Columns(0).Caption="序號":DataGrid2.Columns(1).Caption="活動名稱"DataGrid2.Columns(2).Caption="活動描述":DataGrid2.Columns(3).Caption="活動票數(shù)"EndSub單擊【顯示圖表】按鈕,可以切換通過圖表顯示投票結(jié)果或列表顯示投票結(jié)果。【顯示圖表】按鈕的Click事件下添加代碼如下:PrivateSubcmdChar_Click()IfcmdChar.Caption="顯示圖表"ThencmdChar.Caption="顯示列表"MSChart1.Visible=TrueDataGrid2.Visible=FalseadoVote.RecordSource="selectvote_subjectas活動名稱,vote_qtyas投票數(shù)量fromtbOA_vote"adoVote.RefreshSetMSChart1.DataSource=adoVoteElseIfcmdChar.Caption="顯示列表"ThencmdChar.Caption="顯示圖表"MSChart1.Visible=False:DataGrid2.Visible=TrueadoVote.RecordSource="select*fromtbOA_voteorderbyvote_qtydesc"adoVote.RefreshDataGrid2.Columns(0).Caption="序號":DataGrid2.Columns(1).Caption="活動名稱"DataGrid2.Columns(2).Caption="活動描述":DataGrid2.Columns(3).Caption="活動票數(shù)"EndIfEndSub單擊【添加】按鈕,添加相關(guān)投票活動?!咎砑印堪粹o的Click下代碼如下:PrivateSubcmdVoteAdd_Click()adoVote.RecordSource="select*fromtbOA_voteorderbyvote_qtydesc"adoVote.RefreshIftxtVote.Text=""ThenMsgBox"活動名稱不能為空!",vbInformation:txtVote.SetFocus:ExitSubadoVote.Recordset.AddNewadoVote.Recordset.Fields(1).Value=txtVote.TextadoVote.Recordset.Fields(2).Value=txtVoteMemo.TextadoVote.Recordset.UpdateMsgBox"添加成功",vbInformationDataGrid2.Columns(0).Caption="序號":DataGrid2.Columns(1).Caption="活動名稱"DataGrid2.Columns(2).Caption="活動描述":DataGrid2.Columns(3).Caption="活動票數(shù)"EndSub通過鼠標(biāo)選擇DataGrid表格中數(shù)據(jù),然后單擊【刪除】按鈕,將選中的數(shù)據(jù)刪除。下面是【刪除】按鈕的Click事件代碼:PrivateSubcmdVoteDel_Click()OnErrorResumeNext‘?dāng)?shù)據(jù)表沒有數(shù)據(jù)時,進(jìn)行錯誤處理adoVote.Recordset.DeleteDataGrid2.Columns(0).Caption="序號":DataGrid2.Columns(1).Caption="活動名稱"DataGrid2.Columns(2).Caption="活動描述":DataGrid2.Columns(3).Caption="活動票數(shù)"EndSub單擊【清除投票記錄】按鈕,將活動的所有投票結(jié)果刪除。下面是【清除投票記錄】按鈕的Click事件代碼:PrivateSubcmdClear_Click()adoVote.RecordSource="select*fromtbOA_vote"adoVote.RefreshIfadoVote.Recordset.RecordCount>0ThenFori=0ToadoVote.Recordset.RecordCount-1adoVote.Recordset.Fields(3).Value=0'將投票數(shù)量設(shè)置為0adoVote.Recordset.MoveNextNextiEndIfDimconAsADODB.ConnectionDimrsAsADODB.RecordsetSetcon=NewADODB.Connectioncon.ConnectionString=PublicStrcon.OpenSetrs=NewADODB.RecordsetSetrs=con.Execute("DELETEFROMtbOA_voteRecord")'清楚投票人記錄con.CloseMsgBox"數(shù)據(jù)清除成功!",vbInformationDataGrid2.Columns(0).Caption="序號":DataGrid2.Columns(1).Caption="活動名稱"DataGrid2.Columns(2).Caption="活動描述":DataGrid2.Columns(3).Caption=
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年武漢車都建設(shè)投資有限公司招聘筆試參考題庫含答案解析
- 2025年度電子產(chǎn)品分期購買與售后服務(wù)合同
- 2025年度人事代理與員工薪酬福利調(diào)整服務(wù)協(xié)議3篇
- 2025年高新技術(shù)企業(yè)授權(quán)合同簽訂委托書規(guī)范3篇
- 2025版新能源汽車租賃與智能交通控制系統(tǒng)合作框架協(xié)議3篇
- 2025年全球及中國垂直旋轉(zhuǎn)模塊行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報告
- 2025年全球及中國TGV玻璃芯基材行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報告
- 2025版城市更新項(xiàng)目土地使用權(quán)作價出資合作協(xié)議3篇
- 二零二五年度成都市二手房交易合同范本 正版官方規(guī)范修訂3篇
- 二零二五年度車隊(duì)運(yùn)輸保險合作協(xié)議3篇
- 小學(xué)六年級數(shù)學(xué)100道題解分?jǐn)?shù)方程
- 部編版五年級語文下冊第七單元大單元教學(xué)設(shè)計(jì)
- 社區(qū)獲得性肺炎護(hù)理查房內(nèi)科
- 淺談提高中學(xué)生歷史學(xué)習(xí)興趣的策略
- 藥品儲存養(yǎng)護(hù)知識大全
- 新版藥品批發(fā)企業(yè)質(zhì)量管理體系文件大全
- 項(xiàng)目管理實(shí)施規(guī)劃-無錫萬象城
- 浙大一院之江院區(qū)就診指南
- 離婚協(xié)議書電子版下載
- 相似三角形判定專項(xiàng)練習(xí)30題(有答案)
- 2023學(xué)年完整公開課版mydreamjob作文教學(xué)
評論
0/150
提交評論