




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、課程案例企業辦公自動化管理系統通過本案例學習一下內容:1.企業辦公自動化管理系統開發的基本過程2.系統需求分析和可行性分析3.系統設計的方法4.構建開發環境5.如何分析并設計數據庫6.如何設計公共類7.主要功能模塊的實現方法8.系統的編譯與發布9.SQL server技術10. 面向對象的開發思想11.分層開發模式系統分析o一.需求分析對于企業辦公自動化管理系統來說,提高企業的管理效率、方便企業職員的協助是至關重要,企業的辦公環境如下:1.使用計算機網絡環境屬于局域網。2.公司規模50100人,人手一臺計算機。3.員工上下班考勤屬于人工考勤。4.實行人性化管理,允許員工自己有發表意見和想法。5
2、.員工在工作中傳送和接收文件,很不方便。6.對于公司的公告、新聞和規章制度,員工了解不及時7.重要通知都是逐一打電話通知。系統分析o需求分析結論1.部門管理功能2.員工管理功能3.公告管理功能4.文件管理功能5.交流管理功能6.考勤管理功能7.規章制度管理功能8.系統管理功能二、系統設計1.系統目標根據需求分析的描述以及與用戶的溝通,現制定系統實現目標如下:o系統采用人機對話方式,界面美觀友好,信息查詢靈活、方便,數據存儲安全可靠。o靈活、快速的發送和接收文件。o實現功能強大的公告發布與管理功能。o系統最大限度地實現易維護性和易操作性o界面簡潔、框架清晰、美觀大方。o實現企業部門和職員的信息管
3、理功能。o通過后臺查看與刪除公告信息、查看公文信息。o對員工信息、職位信息與部門信息的管理。二、系統設計o業務流程圖系統功能結構o企業辦公自動化管理系統前臺(職員)功能結構圖系統功能結構o企業辦公自動化管理系統前臺(職員)功能結構圖構建開放環境o1.web系統開發環境頁面開發環境:VS2005集成開發環境開發語言:ASP.NET +C#后臺數據庫: SQL Server2000開發環境運行平臺:XP(SP2)o2.服務器端WEB服務器:IIS6.0數據庫服務器:SQL Server 2000網站服務器運行環境:.NET Framework sdk2.0o3.客戶端n瀏覽器:IE6.0n分辨率:
4、最佳效果1024768數據庫設計o系統數據庫采用SQL Server2000數據庫,系統數據庫名稱為db_OAS.數據庫db_OAS中包括多張數據表。下面分別給出數據表概要說明、數據庫E-R圖、數據表關系圖、數據表的結構。數據表概要說明o 數據表樹形結構如下圖:數據庫E-R的分析o課堂練習: 對上表中的各個實體用E-R圖進行分析。要求:1.用E-R圖描述出各個實體。2.描述數據表結構。3.描述數據表之間的關系。實體描述舉例o企業部門實體E-R圖描述o企業部門數據表結構描述數據表的關系圖試寫出下列需求的SQL語句o根據輸入的”用戶名”“密碼”查詢“系統用戶表”中是否有記錄存在,并判斷該用戶是“管
5、理員”還是“普通職員”o增加部門信息;o根據ID查看某個部門信息o刪除某個部門復雜SQL語句的使用 顯示企業的年度優秀員工信息1.優秀員工的標準通過考勤考核(遲到和早退)2.考勤結果的前2位3.顯示的信息包括:員工姓名,所在部門,照片相關資料來自SQL聯機叢書使用使用 TOP 和和 PERCENT 限制結果集限制結果集oTOP 子句限制返回到結果集中的行數。oTOP n PERCENTon 指定返回的行數。如果未指定 PERCENT,n 就是返回的行數。o如果一個 SELECT 語句既包含 TOP 又包含 ORDER BY 子句,那么返回的行將會從排序后的結果集中選擇。整個結果集按照指定的順序
6、建立并且返回排好序的結果集的前 n 行。相關資料來自SQL聯機叢書o用用 ORDER BY 對行進行排序對行進行排序oORDER BY 子句按查詢結果中的一列或多列對查詢結果進行排序,用作排序依據的列總長度可達 8,060。有關 ORDER BY 子句最大大小的更多信息,請參見 SELECT。o排序可以是升序的 (ASC),也可以是降序的 (DESC)。如果沒有指定升序還是降序,就假定為 ASC。相關資料來自SQL聯機叢書o聚合函數聚合函數o聚合函數對一組值執行計算并返回單一的值。除 COUNT 函數之外,聚合函數忽略空值。聚合函數經常與 SELECT 語句的 GROUP BY 子句一同使用。
7、Transact-SQL 編程語言提供下列聚合函數:oAVG MAX SUM MIN COUNT等相關資料來自SQL聯機叢書o使用內聯接使用內聯接o內聯接是用比較運算符比較要聯接列的值的聯接。下面的 Transact-SQL 查詢是內聯接的一個示例: USE pubs SELECT * FROM authors AS a INNER JOIN publishers AS p ON a.city = p.city ORDER BY a.au_lname DESC 此內聯接稱為相等聯接。它返回兩個表中的所有列,但只返回在聯接列中具有相等值的行。o select ,a.dept,a.ph
8、otoPath,b.stateo from tb_employee AS a inner join o (select TOP 2 *o fromo ( select employeeName, sum(late)+sum(quit) as stateo from tb_sign group by employeeName)as aao order by state)as bo on =b.employeeNameo order by b.stateADO.NET 介紹oADO.NET 對 Microsoft SQL Server 和 XML 等數據源以及通過 OLE DB 和 X
9、ML 公開的數據源提供一致的訪問。 o在創建 ADO.NET 時,Microsoft 具有以下設計目標: 1.利用當前的 ActiveX 數據類型 (ADO) 知識。 2.支持 N 層編程模型。 3. 集成 XML 支持。ADO.NET介紹o和 .net framework類庫中其他所有東西一樣,ADO.net不過是一組類型(TYPES)而已,他們都位于SYSTEM.DATA名字空間中。ADO.NET介紹o每一種.NET數據供應器都實現為一組類型(types);oSystem.Data.SqlClient名字空間-SQL ProvideroSystem.Data.OleDb名字空間-OLE D
10、B Providero不論選擇哪種Provider,每一種都提供一套相似的類(Class)ADO.NET介紹.NET數據provider都支持的一些基礎對象。它們是:oConnection:用于建立和釋放連接(SqlConnection-OleDbConnection)oCommand:用于存儲和執行命令,如一個SQL查詢或一個存儲過程,并為命令指定參數。oDataReader:對數據庫中的數據提供直接、循環的只讀的訪問。oDataAdapter:建造于DataReader之上,用于創建和操作DataSet實體。ADO.NET介紹o客戶可以通過DataReader或者DataSet來訪問數據。
11、Visual Studio 中的數據命名空間 .NET Framework 中的數據和 XML 命名空間包括: oSystem.Data 由構成 ADO.NET 結構的類組成,該結構是托管應用程序的主要數據訪問方法。ADO.NET 結構使您可以生成可用于有效管理來自多個數據源的數據的組件。oSystem.Data.OleDb 構成兼容數據源的 OLE DB .NET Framework 數據提供程序的類。這些類使您能連接到 OLE DB 數據源、針對數據源執行命令并讀取結果。oSystem.Data.SqlClient 構成 SQL Server .NET Framework 數據提供程序的類
12、,該提供程序允許您連接到 SQL Server 7.0、執行命令并讀取結果。System.Data.SqlClient 命名空間與 System.Data.OleDb 命名空間類似,但為訪問 SQL Server 7.0 和更高版本進行了優化。訪問數據示例o示例如何打開一連接,如何創建一個命令,以及如何利用DataReaer讀取結果。o示例展示如何使用DataSets (一個DataAdapter如何用于將一個DataTable添加到一個DataSets中)訪問數據示例-DataReader 1.設置一個連接 SqlConnection Cn = New SqlConnection(Serve
13、r=(local);database=db_OAS;Uid=sa;Pwd=); 2.創建一個命令 SqlCommand Cmd = Cn.CreateCommand(); Cmd.CommandText = select * from tb_department where ID=20; 3. 打開連接Cn.Open(); 4. 執行命令-將結果存入DataReader oSqlDataReader Rdr = Cmd.ExecuteReader();訪問數據示例-DataReadero5.取結果并顯示o try o while (Rdr.Read()o o o System.Console.
14、WriteLine(String.Format(0,1,2, o Rdr0, Rdr1, Rdr2);o o o catch (System.Exception e)o o System.Console.WriteLine(Error:0, o e.Message);o o 訪問數據示例-DataReadero6.釋放資源,關閉連接ofinally Rdr.Close(); Cn.Close(); 訪問數據示例-DataSetsoSqlConnection Cn = new SqlConnection(Server=(local);database=db_OAS;Uid=sa;Pwd=);o
15、SqlCommand Cmd = Cn.CreateCommand();o Cmd.CommandText = select * from tb_department where ID=20;o SqlDataAdapter Da = new SqlDataAdapter();o Da.SelectCommand = Cmd;o DataSet Ds = new DataSet();o Cn.Open();o Da.Fill(Ds, tb_deparment);o Cn.Close();訪問數據示例-DataSeto取數據;o try if (Ds.Tables0.Rows.Count0) D
16、ataRow row = Ds.Tables0.Rows0; System.Console.WriteLine(String.Format(0,1,2, row0, row1, row2); o catch (System.Exception e) System.Console.WriteLine(Error:0, e.Message); 訪問數據示例-DataSetofinally if (Cn.State=ConnectionState.Open) Cn.Close(); o#region 利用DataSet存取查詢結果; public DataSet ExecuteSelect (str
17、ing strSql, string strTableName)o o SqlConnection conn = new o SqlConnection(strConn);o SqlCommand com = conn.CreateCommand();o com.CommandText = strSql;o SqlDataAdapter da = new SqlDataAdapter();o da.SelectCommand = com;o DataSet ds = new DataSet();o conn.Open();o da.Fill(ds, strTableName);o conn.C
18、lose();o o return ds;o o#endregiono#region 增加、刪除、添加SQL語句接口o public int ExecuteUpdateAndInsert(string strSql)o o SqlConnection conn = new SqlConnection(strConn);o SqlCommand com = conn.CreateCommand();o com.CommandText = strSql;o conn.Open();o int iResult=com.ExecuteNonQuery();o return iResult;o o#en
19、dregion接口的封裝o class DataAccesso o const string strConn; o public DataAccess () strConn = Server=(local);database=db_OAS;Uid=sa;Pwd=; o接口1:利用DataSet存取查詢結果針對SELECT語句;o接口2: 增加、刪除、添加SQL語句接口 接口1:利用DataSet存取查詢結果針對SELECT語句o #region 該方法執行查詢命令,并返回該方法執行查詢命令,并返回DataSet數據集;數據集;o public DataSet Run(string strSQL
20、, string strTableName)o o SqlConnection conn = new SqlConnection(strConn);o conn.Open();o SqlCommand com = new SqlCommand(strSQL, conn);o o SqlDataAdapter da = new SqlDataAdapter();o o da.SelectCommand = com;o DataSet ds = new DataSet();o da.Fill(ds, strTableName);o conn.Close();o return ds;o o #end
21、regiono 接口2: 增加、刪除、添加SQL語句接口o public bool Run(string strSQL)o o SqlConnection con = new SqlConnection(strConn);o con.Open();o /第二種產生命令對象的方法;o SqlCommand com = new SqlCommand(strSQL, con);o if (com.ExecuteNonQuery() 0)o o con.Close();o return true;o elseo o con.Close();o return false;o o 接口的使用o1.創建數據
22、類實例;o DataAccess da = new DataAccess();o2.調用接口;oDataSet ds = da.Run(Select * from b_department, dept);ostring strSQL = insert into tb_department values(+s1+,+s2+);oda.Run(strSQL);接口的使用o要求:點擊添加按鈕,將部門名和描述插入到Dropdownlist控件中顯示o點擊查詢按鈕,將顯示該部門的描述信息。接口的使用o數據綁定; opublic void BindDept()oo dlShow.DataSource =
23、o da.Run(Select * from tb_department, o dept);o dlShow.DataTextField = name;o dlShow.DataBind();o 接口的使用o點擊添加按鈕;oprotected void Button1_Click(object sender, EventArgs e)oo string s1=txtName.Text;o string s2 = txtDemo.Text;o string strSQL = oinsert into tb_department values(+s1+,+s2+);o da.Run(strSQL)
24、;o BindDept();接口的使用點擊查詢按鈕;protected void btnShowInfo_Click(object sender, EventArgs e)o o string s1 = dlShow.SelectedValue;o string strSql = o select * from tb_department where name= + s1 + ;o DataSet ds = da.Run(strSql,dept);o if (ds.Tables0.Rows.Count0)o o LblShow.Text = 該部門介紹: + ds.Tables0.Rows02
25、.ToString();o o C#+SQL+HTMLo protected void LoadInfo()o o DataSet ds =o da.Run(select * from tb_department, dept);o Response.Write();o Response.Write();o Response.Writeo(編號部門名稱部門介紹);o Response.Write();oC#+SQL+HTMLofor (int i = 0; i ds.Tables0.Rows.Count;i+ )o o Response.Write();o Response.Write(o+ds
26、.Tables0.Rowsi0.ToString()+ds.Tables0.Rowsi1.ToString()+ds.Tables0.Rowsi2.ToString()+“o );o Response.Write();o o o Response.Write();C#+SQL+HTML對連接對象執行 SQL 語句 來自MS幫助文檔public abstract int ExecuteNonQuery ()o可以使用 ExecuteNonQuery 執行編錄操作(例如查詢數據庫的結構或創建諸如表等的數據庫對象),或通過執行 UPDATE、INSERT 或 DELETE 語句更改數據庫中的數據。o
27、雖然 ExecuteNonQuery 不返回任何行,但是映射到參數的任何輸出參數或返回值都會用數據進行填充。o對于 UPDATE、INSERT 和 DELETE 語句,返回值為該命令所影響的行數。對于其他所有類型的語句,返回值為 -1。o返回值返回值-受影響的行數。 接口的使用o MyData md = new MyData();/ 創建對象 DataSet Ds = md.ExecuteSql(“select * from tb_department where ID=20”, “tb_department”); /使用接口 try if (Ds.Tables0.Rows.Count0) .
28、 catch (System.Exception e) . 接口參數控件的使用說明用戶控件用戶控件 BaseClass bc = new BaseClass(); if (rdoBtnAdmin.Checked) DataSet ds =bc.GetDataSet(select count(*) from tb_sysUser where userName=+txtName.Text+ and userPwd=+txtPwd.Text+and system=1,tb_employee); if (ds .Tables0.Rows.Count0) 用戶控件 BaseClass bc = new
29、BaseClass(); DataSet ds = bc.GetDataSet( select ,a.dept,a.photoPath,a.job,b.state from tb_employee as a inner join( select TOP 2 * FROM (select employeeName, sum(late)+sum(quit) as state from tb_sign group by employeeName ) as aa order by state) as b on =b.employeeName order by b.state“
30、 ,tb_sign); DataList1.DataSource = ds; DataList1.DataBind();數據綁定o asp:Image ID=Image1 ImageUrl= runat=server Height=54px Width=69px /o 姓名: 部門: o 職務: 顯示控件-GridView顯示控件-GridViewo顯示表格數據是軟件開發中的一個周期性任務。ASP.NET 提供了許多工具來在網格中顯示表格數據 可以使用 GridView 來完成以下操作:o通過數據源控件自動綁定和顯示數據。o通過數據源控件對數據進行選擇、排序、分頁、編輯和刪除。顯示控件-Gri
31、dView通過以下方式自定義 GridView 控件的外觀和行為:o指定自定義列和樣式。o利用模板創建自定義用戶界面 (UI) 元素。o通過處理事件將自己的代碼添加到 GridView 控件的功能中。比較 GridView 和 DataGridoGridView 控件是 DataGrid 控件的后繼控件。與 DataGrid 控件相似,GridView 控件旨在在 HTML 表中顯示數據。o當綁定到數據源時,DataGrid 和 GridView 控件分別將 DataSource 中的一行顯示為輸出表中的一行。 oDataGrid 和 GridView 控件都是從 WebControl 類派生
32、的。 比較 GridView 和 DataGrid 雖然 GridView 控件與 DataGrid 控件具有類似的對象模型,但與 DataGrid 控件相比,前者還具有許多新功能和優勢,包括: o更豐富的設計時功能。o改進的數據源綁定功能。o排序、分頁、更新和刪除的自動處理。o其他列類型和設計時列操作。o具有 PagerTemplate 屬性的自定義頁導航用戶界面 (UI)。GridView 控件中設置數據顯示格式 o可以指定 GridView 控件的行的布局、顏色、字體和對齊方式。o可以指定行中包含的文本和數據的顯示。o另外,可以指定將數據行顯示為項目、交替項、選擇的項還是編輯模式項。 G
33、ridView 控件中設置數據顯示格式使用 GridView 控件進行數據綁定 GridView 控件提供了兩個用于綁定到數據的選項(具體說明參見MSDN)o使用 DataSourceID 屬性進行數據綁定,此選項讓您能夠將 GridView 控件綁定到數據源控件 o使用 DataSource 屬性進行數據綁定,此選項使您能夠綁定到包括 ADO.NET 數據集和數據讀取器在內的各種對象。 使用 GridView 控件進行數據綁定o protected void Page_Load(object sender, EventArgs e) if (!IsPostBack) GridView1.Da
34、taSource = bc.GetDataSet(select * from tb_department,department); GridView1.DataKeyNames = new string ID ; GridView1.DataBind(); 使用 GridView 控件編輯和刪除數據 HyperLinkField 類 來自MSDNHyperLinkField 類字段表示在數據綁定控件中顯示為超鏈接的字段。重要屬性說明:DataNavigateUrlFields 屬性 獲取或設置數據源中字段的名稱,用于為 HyperLinkField 對象中的超鏈接構造 URL。DataNavi
35、gateUrlFormatString 屬性 取或設置當 URL 數據綁定到數據源中的字段時,HyperLinkColumn 中的超鏈接的 URL 的顯示格式。 DataNavigateUrlFormatString= “DeptInfoEdit2.aspx?id=0 顯示編輯的二級頁面顯示編輯的二級頁面o根據傳過來的ID進行查找,并顯示到頁面元素中去;oif (!Page.IsPostBack ) DataSet ds = bc.GetDataSet(SELECT * FROM tb_department WHERE ID = + Request.QueryStringid.ToString
36、() + , department); if (ds.Tables0.Rows.Count 0) TxtDeptName.Text = ds.Tables0.Rows0Name.ToString(); TxtDeptMemo.Text = ds.Tables0.Rows0memo.ToString(); 理解事件冒泡o在ASP.NET框架中包含3個支持事件冒泡的標準控件(Repeater、DataList和DataGrid控件)o事件冒泡指上述這些控件能捕獲其子控件的事件。當子控件產生一個事件時,事件就向上“冒泡”傳給包含該子控件的容器控件(父控件),而容器控件就可以執行一個子程序來處理該事件
37、事件處理刪除事件: bc.SqlExecute(DELETE FROM tb_department WHERE ID= + GridView1.DataKeyse.RowIndex.Value.ToString() + ); GridView1.DataSource = bc.GetDataSet(select * from tb_department, department); GridView1.DataBind();使用第三方控件-FreeTextBox使用第三方控件-FreeTextBoxo在頁面源代碼中添加:oo o使用第三方控件-FreeTextBox使用第三方控件-FreeTextBoxo通過存儲過程執行pr
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 山東省青島市超銀中學2025年初三新課程第三次適應性測試語文試題含解析
- 天津市津南區咸水沽三中學重點達標名校2025年初三下學期第一次摸擬試物理試題含解析
- 山西省晉中學市靈石縣重點中學2025屆初三下學期第一次模擬(網考)考試化學試題含解析
- 天津商業大學《冰雪運動》2023-2024學年第二學期期末試卷
- 西安電力高等??茖W?!夺t療服務營銷學》2023-2024學年第二學期期末試卷
- 四川文化藝術學院《建筑施工組織及BIM應用》2023-2024學年第一學期期末試卷
- 山東省青島市西海岸新區6中重點達標名校2025年初三第一次質量預測化學試題含解析
- 三峽旅游職業技術學院《珠寶首飾設計基礎》2023-2024學年第二學期期末試卷
- 石家莊鐵道大學《城市規劃與設計》2023-2024學年第二學期期末試卷
- 西北工業大學《口腔頜面外科學實驗二》2023-2024學年第二學期期末試卷
- 口腔門診6S管理
- 沉浸式體驗活動設計合同
- 易制毒化學品銷售人員崗位職責
- 2025四川九洲建筑工程有限責任公司招聘生產經理等崗位6人筆試參考題庫附帶答案詳解
- 2025-2030中國金紅石發展現狀及未來趨勢研究報告
- 結腸鏡檢查前后的護理
- 人工智能與人才測評融合-全面剖析
- 小區二次供水水箱清洗消毒的監督流程課件
- 2024年江蘇淮安中考滿分作文《這份考卷答的漂亮》2
- 1《神州謠》公開課一等獎創新教學設計
- GB/T 6433-2025飼料中粗脂肪的測定
評論
0/150
提交評論