版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、<p><b> 課 程 設(shè) 計</b></p><p><b> 2015年12月</b></p><p><b> 目錄</b></p><p><b> 一 可行性研究1</b></p><p> 1.1 問題描述1</
2、p><p> 1.2 研究目的1</p><p> 1.3 開發(fā)環(huán)境和運行環(huán)境1</p><p> 1.4 預(yù)期結(jié)果和意義2</p><p><b> 二 需求分析2</b></p><p> 2.1 功能需求2</p><p> 2.1.1 數(shù)據(jù)管理
3、2</p><p> 2.1.2考勤管理2</p><p> 2.1.3加班管理2</p><p> 2.1.4 請假管理2</p><p> 2.1.5 出差管理2</p><p> 2.2 功能模塊圖3</p><p> 2.3 系統(tǒng)數(shù)據(jù)流程圖4</p>
4、;<p> 2.4 數(shù)據(jù)字典4</p><p> 三 概念結(jié)構(gòu)設(shè)計4</p><p> 3.1 局部E-R圖4</p><p> 3.1.1 員工信息E-R圖4</p><p> 3.1.2 出勤記錄 E-R圖5</p><p> 3.1.3 出差記錄 E-R圖5</p&g
5、t;<p> 3.1.4 加班記錄 E-R圖5</p><p> 3.1.5 請假記錄 E-R圖6</p><p> 3.2 總 E-R圖6</p><p> 四 邏輯結(jié)構(gòu)設(shè)計7</p><p><b> 4.1關(guān)系模式7</b></p><p> 五 數(shù)據(jù)實施
6、和維護7</p><p> 5.1數(shù)據(jù)表的創(chuàng)建7</p><p> 5.2數(shù)據(jù)表的屬性8</p><p> 5.2.1出勤資料表8</p><p> 5.2.2加班資料表9</p><p> 5.2.3請假資料表10</p><p> 5.2.4出差資料表10</
7、p><p><b> 六 測試11</b></p><p> 6.1登錄模板測試11</p><p> 6.2登錄后頁面13</p><p> 6.3建立上班簽到表15</p><p> 6.4職工信息表17</p><p> 6.5出差信息系統(tǒng)20&l
8、t;/p><p> 6.6加班信息系統(tǒng)24</p><p> 6.7請假信息系統(tǒng)29</p><p> 七 心得體會32</p><p> 八 參考文獻32</p><p><b> 一 可行性研究</b></p><p><b> 1.1 問
9、題描述</b></p><p> 隨著企業(yè)人事管理的日趨復(fù)雜和企業(yè)人員的增多,企業(yè)的考勤管理變得越來越復(fù)雜。規(guī)范的考勤管理是現(xiàn)代企業(yè)提高管理效益的重要保證,而傳統(tǒng)的人工管理存在著效率低、不易統(tǒng)計、成本高和易出錯等弊端,已經(jīng)無法適應(yīng)現(xiàn)代企業(yè)的需求。隨著計算機技術(shù)和通信技術(shù)的迅速發(fā)展,將傳統(tǒng)的人工考勤管理計算機化,建立一個高效率的、無差錯的考勤管理系統(tǒng),能夠有效的幫助企業(yè)實現(xiàn)“公正考勤,高效薪資”,使企
10、業(yè)的管理水平登上一個新的臺階。 </p><p> 職工考勤管理經(jīng)過如下的業(yè)務(wù)流程:</p><p> ?。?)員工基本信息管理,添加,刪除,更改</p><p> ?。?)員工考勤管理,員工根據(jù)自己的班次在上下班時分別進行出勤操作,采用手動方式或者使用劃卡機。由人事部門專門的人員管理出勤和退勤信息。</p><p> (3)一般在每個月
11、月初進行考勤匯總,匯總信息包括工作日的出勤情況、請假天數(shù)、出差天數(shù)、休假天數(shù)和不同性質(zhì)的加班記錄等。</p><p><b> 1.2 研究目的</b></p><p> 待開發(fā)的系統(tǒng)的名稱為職工考勤管理信息系統(tǒng)。</p><p> 我們以中小型企業(yè)的考勤管理業(yè)務(wù)為依托,結(jié)合科學(xué)管理的理論,設(shè)計并開發(fā)一個企業(yè)考勤管理信息系統(tǒng),提供一個科學(xué)
12、合理的考勤管理解決方案,徹底實現(xiàn)無紙化作業(yè)。根據(jù)管理權(quán)限的不同,將界面分為一般職員、部門經(jīng)理、系統(tǒng)管理員和最高管理者四個層次。</p><p> ?。?)提供簡單、方便的操作。</p><p> ?。?)根據(jù)企業(yè)原來的考勤管理制度,為企業(yè)不同管理層次提供相應(yīng)的功能。</p><p> ?。?)通過考勤管理無紙化的實現(xiàn),使企業(yè)的考勤管理更加科學(xué)規(guī)范。</p>
13、;<p> ?。?)節(jié)省考勤管理的成本。</p><p> ?。?)提高企業(yè)考勤管理的透明度和效率,防止“虛假出勤“的現(xiàn)象。</p><p> (6)對系統(tǒng)提供必要的權(quán)限管理。</p><p> ?。?)為企業(yè)實現(xiàn)整體信息化的其他相關(guān)系統(tǒng)提供必要的數(shù)據(jù)支持。</p><p> 1.3 開發(fā)環(huán)境和運行環(huán)境</p>
14、<p> 公司考勤管理系統(tǒng)這運用了當(dāng)前最流行的SQL SERVER2012來建表還有前臺應(yīng)用程序采用VISUAL STUDIOI2015編寫運行和開發(fā)的。</p><p> 1.庫、基本表的建立和修改:在SQL-SERVER環(huán)境下用CREATE TABLE 建立庫以及庫中基本表。</p><p> 2.?dāng)?shù)據(jù)加載: 用手工錄入或?qū)氲确椒▽崿F(xiàn)基本表中的數(shù)據(jù)加載。</p
15、><p> 3.單表查詢以及多表查詢:在建立的基本表中使用select基本格式和聚集函數(shù);設(shè)計合適的視圖,實現(xiàn)多表間查詢。</p><p> 4.用SQL SERVER 2012等開發(fā)環(huán)境設(shè)計、實現(xiàn)系統(tǒng)主要功能。</p><p> 1.4 預(yù)期結(jié)果和意義</p><p> 考勤系統(tǒng)能實現(xiàn)職工日考勤記錄,記錄請假信息,記錄出差信息等功能,并
16、最終所有信息歸入月統(tǒng)計中去。</p><p> 本考勤系統(tǒng)建立了一個高效率的、無差錯的考勤管理系統(tǒng),能夠有效的幫助企業(yè)實現(xiàn)“公正考勤,高效薪資”,使企業(yè)的管理水平登上一個新的臺階。 </p><p><b> 二 需求分析</b></p><p><b> 2.1 功能需求</b></p><p
17、> 2.1.1 數(shù)據(jù)管理</p><p> 功能是設(shè)置和管理基礎(chǔ)數(shù)據(jù),包括加班、請假類別的定義和班次的定義,在全縣范圍內(nèi)可以進行基礎(chǔ)數(shù)據(jù)的添加、刪除和修改。</p><p><b> 2.1.2考勤管理</b></p><p> 包括出勤動作、出勤信息的查詢;上級對下級員工的出勤信息的確認;生成考勤統(tǒng)計信息并可以根據(jù)指定的條件進行
18、查詢。實現(xiàn)從每日出勤到統(tǒng)計全部考勤信息的無紙化操作。為方便數(shù)據(jù)傳遞和查閱,要根據(jù)需求提供不同時間短的考勤統(tǒng)計信息表。</p><p><b> 2.1.3加班管理</b></p><p> 對員工的加班時間進行統(tǒng)計,記錄開始時間和結(jié)束時間,對加班信息實現(xiàn)添加,刪除等操作。</p><p> 2.1.4 請假管理</p>&l
19、t;p> 可以提出請假申請,并完善請假信息,如請假開始時間,請假結(jié)束時間,請假的次數(shù)進行管理。</p><p> 2.1.5 出差管理</p><p> 管理者安排員工出差,對出差時間,次數(shù)的管理。</p><p> 2.2 功能模塊圖</p><p> 如圖2-1所示,圖為功能模塊圖</p><p>
20、;<b> 2-1 功能模塊圖</b></p><p> 2.3 系統(tǒng)數(shù)據(jù)流程圖</p><p> 如圖2.3所示,圖為數(shù)據(jù)流程圖</p><p><b> 2-2 數(shù)據(jù)流程圖</b></p><p><b> 2.4 數(shù)據(jù)字典</b></p>&l
21、t;p> 在物理結(jié)構(gòu)中,數(shù)據(jù)的基本存取單位是存儲記錄。有了邏輯結(jié)構(gòu)以后,就可以設(shè)計存儲記錄結(jié)構(gòu),一個存儲記錄可以與多個邏輯記錄相對應(yīng)。存儲記錄就包括記錄的組成,數(shù)據(jù)項的類型和長度等。</p><p><b> 三 概念結(jié)構(gòu)設(shè)計</b></p><p> 3.1 局部E-R圖</p><p> 3.1.1 員工信息E-R圖</
22、p><p><b> 圖3-1</b></p><p> 3.1.2 出勤記錄 E-R圖</p><p><b> 圖3-2</b></p><p> 3.1.3 出差記錄 E-R圖</p><p><b> 圖3-3</b></p>
23、<p> 3.1.4 加班記錄 E-R圖</p><p><b> 圖3-4</b></p><p> 3.1.5 請假記錄 E-R圖</p><p><b> 圖3-5</b></p><p> 3.2 總 E-R圖</p><p><b>
24、 圖3-6</b></p><p><b> 四 邏輯結(jié)構(gòu)設(shè)計</b></p><p><b> 4.1關(guān)系模式</b></p><p> 職工信息(職工編號,姓名,性別,年齡,職稱)</p><p> 出勤記錄(上班打卡時間,下班打卡時間,缺勤記錄)</p>&
25、lt;p> 出差記錄(出差開始時間,出差結(jié)束時間,統(tǒng)計出差時間)</p><p> 加班信息(加班開始時間,加班結(jié)束時間,加班時間統(tǒng)計)</p><p> 請假信息(請假開始時間,請假結(jié)束時間,請假時間統(tǒng)計)</p><p><b> 五 數(shù)據(jù)實施和維護</b></p><p><b> 5.1
26、數(shù)據(jù)表的創(chuàng)建</b></p><p><b> 圖5-1表的建立</b></p><p><b> 5.2數(shù)據(jù)表的屬性</b></p><p><b> 圖5-2表的屬性</b></p><p> 5.2.1出勤資料表</p><p>
27、;<b> 圖5-3出勤資料</b></p><p> 圖5-4員工出勤基本資料表屬性</p><p> 圖5-5員工出勤基本資料屬性</p><p> 5.2.2加班資料表</p><p> 圖5-6加班資料表屬性</p><p><b> 圖5-7加班資料表</b&
28、gt;</p><p> 5.2.3請假資料表</p><p> 圖5-8請假資料表屬性</p><p><b> 圖5-9請假資料表</b></p><p> 5.2.4出差資料表</p><p> 圖5-10出差資料表屬性</p><p> 圖5-11出差資
29、料表</p><p><b> 六 測試</b></p><p><b> 6.1登錄模板測試</b></p><p> 為了系統(tǒng)的安全,在進入系統(tǒng)之前首先會出現(xiàn)一個登錄模塊,用戶只有在輸入正確的用戶名和正確的密碼之后,才能進入系統(tǒng)。</p><p><b> 圖6-1登錄界面&l
30、t;/b></p><p> 登錄代碼的簡單說明:</p><p> private void button1_Click(object sender, EventArgs e)</p><p><b> {</b></p><p> if (textBox1.Text == "" ||
31、 textBox2.Text == "")</p><p><b> {</b></p><p> MessageBox.Show("請輸入用戶名或密碼");</p><p><b> }</b></p><p><b> else</
32、b></p><p><b> {</b></p><p> string sql = "select '" + textBox1.Text + "' from 登錄信息表 where 密碼='" + textBox2.Text + "'";</p>&
33、lt;p> SqlConnection con = new SqlConnection("Data Source=ZHANGHAO\\SQL2012;Initial Catalog=職工考勤系統(tǒng);User Id=sa;Password=147258");</p><p> con.Open();</p><p> SqlCommand com = new S
34、qlCommand(sql, con);</p><p> SqlDataReader sread = com.ExecuteReader();</p><p><b> try</b></p><p><b> {</b></p><p> if (sread.Read())</p&
35、gt;<p><b> {</b></p><p> Form3 frm2 = new Form3();</p><p> frm2.Show();</p><p> this.Hide();</p><p><b> }</b></p><p>&l
36、t;b> else</b></p><p><b> {</b></p><p> MessageBox.Show("登錄信息有誤");</p><p> textBox1.Text = textBox2.Text = "";</p><p><b&
37、gt; }</b></p><p><b> }</b></p><p><b> catch</b></p><p><b> {</b></p><p><b> }</b></p><p><b&g
38、t; finally</b></p><p><b> {</b></p><p> con.Close();//關(guān)閉連接</p><p> con.Dispose();//釋放連接</p><p> sread.Close();//釋放資源</p><p><b>
39、; }</b></p><p><b> }</b></p><p><b> }</b></p><p><b> 6.2登錄后頁面</b></p><p> 圖6-2 登錄后頁面</p><p> 登錄進入的主頁面主要代碼:&
40、lt;/p><p> private void button1_Click(object sender, EventArgs e)</p><p><b> {</b></p><p> panel1.Controls.Clear();</p><p> Form2 form2 = new Form2();</
41、p><p> form2.TopLevel = false;</p><p> panel1.Controls.Add(form2);</p><p> form2.Show();</p><p><b> }</b></p><p> private void button2_Click(
42、object sender, EventArgs e)</p><p><b> {</b></p><p> panel1.Controls.Clear();</p><p> Form4 form4 = new Form4();</p><p> form4.TopLevel = false;</p&g
43、t;<p> panel1.Controls.Add(form4);</p><p> form4.Show();</p><p><b> }</b></p><p> private void button3_Click(object sender, EventArgs e)</p><p>&
44、lt;b> {</b></p><p> panel1.Controls.Clear();</p><p> Form5 form4 = new Form5();</p><p> form4.TopLevel = false;</p><p> panel1.Controls.Add(form4);</p&
45、gt;<p> form4.Show();</p><p><b> }</b></p><p> private void button4_Click(object sender, EventArgs e)</p><p><b> {</b></p><p> panel
46、1.Controls.Clear();</p><p> Form7 form4 = new Form7();</p><p> form4.TopLevel = false;</p><p> panel1.Controls.Add(form4);</p><p> form4.Show();</p><p>
47、;<b> }</b></p><p> private void button5_Click(object sender, EventArgs e)</p><p><b> {</b></p><p> panel1.Controls.Clear();</p><p> Form6 f
48、orm4 = new Form6();</p><p> form4.TopLevel = false;</p><p> panel1.Controls.Add(form4);</p><p> form4.Show();}</p><p> 6.3建立上班簽到表</p><p> private void
49、 button1_Click(object sender, EventArgs e)</p><p> { </p><p><b> try {</b></p><p> SqlConnection conn = new SqlConnection("Data Source=ZHANGHAO\\SQL201
50、2;Initial Catalog=職工考勤系統(tǒng);User Id=sa;Password=147258");</p><p> conn.Open();</p><p> String sql = "select * from 職工信息表 where 職工編號='"+textBox1.Text+"'";</p>
51、;<p> SqlCommand cmd = new SqlCommand(sql, conn);</p><p> cmd.ExecuteNonQuery();</p><p> SqlDataReader dr = cmd.ExecuteReader();</p><p> if (dr.HasRows)</p><p&
52、gt; while (dr.Read())</p><p><b> {</b></p><p> tx.Text = dr["職工姓名"].ToString();</p><p><b> }</b></p><p><b> else</b>&
53、lt;/p><p><b> {</b></p><p> MessageBox.Show("查無此人");</p><p><b> }</b></p><p> conn.Close();</p><p><b> }</b>
54、;</p><p> catch (Exception ex) { MessageBox.Show(ex.Message); }</p><p><b> try</b></p><p><b> {</b></p><p> SqlConnection conn = new SqlConn
55、ection("Data Source=ZHANGHAO\\SQL2012;Initial Catalog=職工考勤系統(tǒng);User Id=sa;Password=147258");</p><p> conn.Open();</p><p> String sql = "insert into 出勤信息表(職工編號,職工姓名,上班時間)values(
56、9;" + textBox1.Text + "','"+tx.Text+"','" + DateTime.Now.ToShortTimeString() + "')";</p><p> SqlCommand cmd = new SqlCommand(sql, conn);
57、 </p><p> int n=cmd.ExecuteNonQuery();</p><p> if (n > 0)</p><p><b> {</b></p><p> MessageBox.Show("簽到成功,經(jīng)驗值+5");</p><p> th
58、is.出勤信息表TableAdapter.Fill(this.職工考勤系統(tǒng)DataSet1.出勤信息表);</p><p><b> }</b></p><p> conn.Close();</p><p><b> }</b></p><p> catch { MessageBox.Sho
59、w("禁止重復(fù)簽到"); }</p><p><b> 圖6-3 出勤界面</b></p><p><b> 6.4職工信息表</b></p><p> 職工信息表的插入添加還有查詢頁面 其相關(guān)代碼:</p><p> private void button3_Click
60、(object sender, EventArgs e)</p><p><b> {</b></p><p> SqlConnection conn = new SqlConnection("Data Source=ZHANGHAO\\SQL2012;Initial Catalog=職工考勤系統(tǒng);User Id=sa;Password=147258&q
61、uot;);</p><p> conn.Open();</p><p> String sql = "select * from 職工信息表 where 職工編號='" + textBox6.Text + "'";</p><p> SqlCommand cmd = new SqlCommand(sql
62、, conn);</p><p> SqlDataReader dre = cmd.ExecuteReader();</p><p> if (dre.HasRows)</p><p> while (dre.Read())</p><p><b> {</b></p><p> tex
63、tBox1.Text = dre["職工編號"].ToString();</p><p> textBox2.Text = dre["職工姓名"].ToString();</p><p> textBox3.Text = dre["性別"].ToString();</p><p> textBox4.
64、Text = dre["年齡"].ToString();</p><p> textBox5.Text = dre["職稱"].ToString();</p><p><b> }</b></p><p><b> else</b></p><p>&l
65、t;b> {</b></p><p> MessageBox.Show("查無此人");</p><p> textBox6.Text = "";</p><p><b> }</b></p><p> this.職工信息表TableAdapter.Fi
66、ll(this.職工考勤系統(tǒng)DataSet.職工信息表);</p><p> conn.Close();</p><p> conn.Dispose();</p><p><b> }</b></p><p> private void button4_Click(object sender, EventArgs
67、 e)</p><p><b> {</b></p><p><b> try {</b></p><p> SqlConnection conn = new SqlConnection("Data Source=ZHANGHAO\\SQL2012;Initial Catalog=職工考勤系統(tǒng);User I
68、d=sa;Password=147258");</p><p> conn.Open();</p><p> String sql = "update 職工信息表 set 職工姓名='" + textBox2.Text + "',性別='" + textBox3.Text + "',年齡=
69、9;" + textBox4.Text + "',職稱='" + textBox5.Text + "' where 職工編號='" + textBox1.Text + "'";</p><p> SqlCommand cmd = new SqlCommand(sql, conn);</p>
70、<p> cmd.ExecuteNonQuery();</p><p> MessageBox.Show("更新成功");</p><p> conn.Close();</p><p> conn.Dispose();</p><p> textBox1.Text = "";<
71、;/p><p> textBox2.Text = "";</p><p> textBox3.Text = "";</p><p> textBox4.Text = "";</p><p> textBox5.Text = "";</p><
72、;p> textBox6.Text = "";</p><p> this.職工信息表TableAdapter.Fill(this.職工考勤系統(tǒng)DataSet.職工信息表);</p><p><b> }</b></p><p> catch (Exception ex)</p><p>
73、;<b> {</b></p><p> MessageBox.Show(ex.Message);</p><p><b> }</b></p><p><b> }</b></p><p> 圖6-4 職工信息表</p><p><b&
74、gt; 6.5出差信息系統(tǒng)</b></p><p> 圖6-5 出差信息系統(tǒng)</p><p> 其中各按鈕代碼中總時長代碼:</p><p> private void button3_Click(object sender, EventArgs e)</p><p><b> {</b></
75、p><p><b> try</b></p><p><b> {</b></p><p> SqlConnection connn = new SqlConnection("Data Source=ZHANGHAO\\SQL2012;Initial Catalog=職工考勤系統(tǒng);User Id=sa;Pass
76、word=147258");</p><p> connn.Open();</p><p> String sqll = "select * from 出差信息表1 where 職工編號='" + textBox1.Text + "'";</p><p> SqlCommand cmdd = n
77、ew SqlCommand(sqll, connn);</p><p> SqlDataReader dr = cmdd.ExecuteReader();</p><p> if (dr.HasRows)</p><p> while (dr.Read())</p><p><b> {</b></p>
78、;<p> te.Text = dr["出差開始時間"].ToString();</p><p> tx.Text = dr["出差結(jié)束時間"].ToString();</p><p><b> }</b></p><p><b> }</b></p>
79、;<p> catch (Exception ex) { MessageBox.Show(ex.Message); }</p><p><b> try</b></p><p><b> {</b></p><p> string hour;</p><p> DateTim
80、e.TryParse(te.Text, out da1);</p><p> DateTime.TryParse(tx.Text, out da2);</p><p> tp = da2 - da1;</p><p> hour = tp.TotalMinutes.ToString();</p><p> SqlConnection
81、con = new SqlConnection("Data Source=ZHANGHAO\\SQL2012;Initial Catalog=職工考勤系統(tǒng);User Id=sa;Password=147258");</p><p> con.Open();</p><p> String sql = "update 出差信息表1 set 出差總時間=
82、39;" +hour.Substring(0,5) + "分鐘" + "' where 職工編號='" + textBox1.Text + "'";</p><p> SqlCommand com = new SqlCommand(sql, con);</p><p> int n = com
83、.ExecuteNonQuery();</p><p> if (n > 0)</p><p><b> {</b></p><p> this.出差信息表1TableAdapter.Fill(this.職工考勤系統(tǒng)DataSet3.出差信息表1);</p><p> MessageBox.Show(&qu
84、ot;記錄完成!");</p><p><b> }</b></p><p><b> }</b></p><p> catch (Exception ex)</p><p><b> {</b></p><p> MessageBo
85、x.Show(ex.Message);</p><p><b> }</b></p><p><b> }</b></p><p> private void button4_Click(object sender, EventArgs e)</p><p><b> {</
86、b></p><p><b> try</b></p><p><b> {</b></p><p><b> string s;</b></p><p> s = this.dataGridView1.Rows[dataGridView1.CurrentRow.
87、Index].Cells[0].Value.ToString();</p><p> long n = Convert.ToInt64(s);</p><p> SqlConnection conn = new SqlConnection("Data Source=ZHANGHAO\\SQL2012;Initial Catalog=職工考勤系統(tǒng);User Id=sa;Pass
88、word=147258");</p><p> conn.Open();</p><p> String sql = "delete from 出差信息表1 where 職工編號='" + n + "'";</p><p> SqlCommand cmd = new SqlCommand(sql
89、, conn);</p><p> cmd.ExecuteNonQuery();</p><p> MessageBox.Show("刪除成功!");</p><p> this.出差信息表1TableAdapter.Fill(this.職工考勤系統(tǒng)DataSet3.出差信息表1);</p><p> conn.C
90、lose();</p><p><b> }</b></p><p><b> catch</b></p><p><b> {</b></p><p> MessageBox.Show("請選擇要刪除的課程號");</p><p
91、><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p><b> 6.6加班信息系統(tǒng)</b></p>&l
92、t;p> 圖6-6 加班信息系統(tǒng)</p><p><b> 其中刪除記錄代碼:</b></p><p> private void button1_Click(object sender, EventArgs e)</p><p><b> {</b></p><p><b>
93、; try</b></p><p><b> {</b></p><p> SqlConnection conn = new SqlConnection("Data Source=ZHANGHAO\\SQL2012;Initial Catalog=職工考勤系統(tǒng);User Id=sa;Password=147258");</p
94、><p> conn.Open();</p><p> String sql = "select * from 職工信息表 where 職工編號='" + textBox1.Text + "'";</p><p> SqlCommand cmd = new SqlCommand(sql, conn);<
95、/p><p> cmd.ExecuteNonQuery();</p><p> SqlDataReader dr = cmd.ExecuteReader();</p><p> if (dr.HasRows)</p><p> while (dr.Read())</p><p><b> {</b
96、></p><p> tx.Text = dr["職工姓名"].ToString();</p><p><b> }</b></p><p><b> else</b></p><p><b> {</b></p><p&g
97、t; MessageBox.Show("查無此人");</p><p><b> }</b></p><p> conn.Close();</p><p><b> }</b></p><p> catch (Exception ex) { MessageBox.Sho
98、w(ex.Message); }</p><p><b> try</b></p><p><b> {</b></p><p> SqlConnection conn = new SqlConnection("Data Source=ZHANGHAO\\SQL2012;Initial Catalog=職工
99、考勤系統(tǒng);User Id=sa;Password=147258");</p><p> conn.Open();</p><p> String sql = "insert into 加班信息表(職工編號,職工姓名,加班開始時間)values('" + textBox1.Text + "','" + tx.Tex
100、t + "','" + DateTime.Now.ToString()+ "')";</p><p> SqlCommand cmd = new SqlCommand(sql, conn);</p><p> int n = cmd.ExecuteNonQuery();</p><p> if (
101、n > 0)</p><p><b> {</b></p><p> MessageBox.Show("簽到成功");</p><p> this.加班信息表TableAdapter.Fill(this.職工考勤系統(tǒng)DataSet5.加班信息表);</p><p><b> }
102、</b></p><p> conn.Close();</p><p><b> }</b></p><p> catch { MessageBox.Show("禁止重復(fù)簽到"); }</p><p><b> }</b></p><p&g
103、t; private void button2_Click(object sender, EventArgs e)</p><p><b> {</b></p><p><b> try</b></p><p><b> {</b></p><p> SqlConne
104、ction connn = new SqlConnection("Data Source=ZHANGHAO\\SQL2012;Initial Catalog=職工考勤系統(tǒng);User Id=sa;Password=147258");</p><p> connn.Open();</p><p> String sqll = "update 加班信息表 set
105、 加班結(jié)束時間='" + DateTime.Now.ToString() + "' where 職工編號='" + textBox1.Text + "'";</p><p> SqlCommand cmdd = new SqlCommand(sqll, connn);</p><p> int n = c
106、mdd.ExecuteNonQuery();</p><p> if (n > 0)</p><p><b> {</b></p><p> this.加班信息表TableAdapter.Fill(this.職工考勤系統(tǒng)DataSet5.加班信息表);</p><p> MessageBox.Show(&q
107、uot;記錄完成!");</p><p><b> }</b></p><p><b> else</b></p><p> MessageBox.Show("信息輸入有誤");</p><p> connn.Close();</p><p&
108、gt;<b> }</b></p><p> catch (Exception ex)</p><p><b> {</b></p><p> MessageBox.Show(ex.Message);</p><p><b> }</b></p><
109、;p><b> }</b></p><p> private void button3_Click(object sender, EventArgs e)</p><p><b> {</b></p><p><b> try</b></p><p><b&
110、gt; {</b></p><p> SqlConnection connn = new SqlConnection("Data Source=ZHANGHAO\\SQL2012;Initial Catalog=職工考勤系統(tǒng);User Id=sa;Password=147258");</p><p> connn.Open();</p>
111、<p> String sqll = "select * from 加班信息表 where 職工編號='" + textBox1.Text + "'";</p><p> SqlCommand cmdd = new SqlCommand(sqll, connn);</p><p> SqlDataReader dr =
112、 cmdd.ExecuteReader();</p><p> if (dr.HasRows)</p><p> while (dr.Read())</p><p><b> {</b></p><p> te.Text = dr["加班開始時間"].ToString();</p>
113、<p> tx.Text = dr["加班結(jié)束時間"].ToString();</p><p><b> }</b></p><p><b> }</b></p><p> catch (Exception ex) { MessageBox.Show(ex.Message); }&
114、lt;/p><p><b> try</b></p><p><b> {</b></p><p> string hour;</p><p> DateTime.TryParse(te.Text, out da1);</p><p> DateTime.TryPars
115、e(tx.Text, out da2);</p><p> tp = da2 - da1;</p><p> hour = tp.TotalMinutes.ToString();</p><p> SqlConnection con = new SqlConnection("Data Source=ZHANGHAO\\SQL2012;Initial
116、Catalog=職工考勤系統(tǒng);User Id=sa;Password=147258");</p><p> con.Open();</p><p> String sql = "update 加班信息表 set 加班總時間='" +hour.Substring(0,5)+ "分鐘" + "' where 職工
117、編號='" + textBox1.Text + "'";</p><p> SqlCommand com = new SqlCommand(sql, con);</p><p> int n = com.ExecuteNonQuery();</p><p> if (n > 0)</p><
118、;p><b> {</b></p><p> this.加班信息表TableAdapter.Fill(this.職工考勤系統(tǒng)DataSet5.加班信息表);</p><p> MessageBox.Show("記錄完成!");</p><p><b> }</b></p>&
119、lt;p><b> }</b></p><p> catch (Exception ex)</p><p><b> {</b></p><p> MessageBox.Show(ex.Message);</p><p><b> }</b></p>
120、<p><b> }</b></p><p><b> 6.7請假信息系統(tǒng)</b></p><p> 圖6-7 請假信息系統(tǒng) </p><p> 其中請假結(jié)束 時間的代碼: </p><p> private void button3_Click(object sender
121、, EventArgs e)</p><p><b> {</b></p><p><b> try</b></p><p><b> {</b></p><p> SqlConnection connn = new SqlConnection("Data S
122、ource=ZHANGHAO\\SQL2012;Initial Catalog=職工考勤系統(tǒng);User Id=sa;Password=147258");</p><p> connn.Open();</p><p> String sqll = "select * from 請假信息表3 where 職工編號='" + textBox1.Text
123、+ "'";</p><p> SqlCommand cmdd = new SqlCommand(sqll, connn);</p><p> SqlDataReader dr = cmdd.ExecuteReader();</p><p> if (dr.HasRows)</p><p> while (
124、dr.Read())</p><p><b> {</b></p><p> te.Text = dr["請假開始時間"].ToString();</p><p> tx.Text = dr["請假結(jié)束時間"].ToString();</p><p><b> }
125、</b></p><p><b> }</b></p><p> catch (Exception ex) { MessageBox.Show(ex.Message); }</p><p><b> try</b></p><p><b> {</b><
126、;/p><p> string hour;</p><p> DateTime.TryParse(te.Text, out da1);</p><p> DateTime.TryParse(tx.Text, out da2);</p><p> tp = da2 - da1;</p><p> hour = tp
127、.TotalMinutes.ToString();</p><p> SqlConnection con = new SqlConnection("Data Source=ZHANGHAO\\SQL2012;Initial Catalog=職工考勤系統(tǒng);User Id=sa;Password=147258");</p><p> con.Open();</p&
128、gt;<p> String sql = "update 請假信息表3 set 請假總時間='" + hour.Substring(0, 5) + "分鐘" + "' where 職工編號='" + textBox1.Text + "'";</p><p> SqlCommand c
129、om = new SqlCommand(sql, con);</p><p> int n = com.ExecuteNonQuery();</p><p> if (n > 0)</p><p><b> {</b></p><p> this.請假信息表3TableAdapter.Fill(this.職
130、工考勤系統(tǒng)DataSet9.請假信息表3);</p><p> MessageBox.Show("記錄完成!");</p><p><b> }</b></p><p><b> }</b></p><p><b> catch </b></p
131、><p><b> {</b></p><p> MessageBox.Show("時間太短,信息無效");</p><p> SqlConnection connn = new SqlConnection("Data Source=ZHANGHAO\\SQL2012;Initial Catalog=職工考勤系統(tǒng)
132、;User Id=sa;Password=147258");</p><p> connn.Open();</p><p> String sqll = "delete from 請假信息表3 where 職工編號='" + textBox1.Text + "'";</p><p> SqlCo
133、mmand cmdd = new SqlCommand(sqll, connn);</p><p> SqlDataReader dr = cmdd.ExecuteReader();</p><p> this.請假信息表3TableAdapter.Fill(this.職工考勤系統(tǒng)DataSet9.請假信息表3);</p><p><b> }<
134、;/b></p><p><b> }</b></p><p><b> 七 心得體會</b></p><p> 本系統(tǒng)在信息表述上還不完備,一些模塊的信息還不夠詳細,主要是提供的報表有限。系統(tǒng)雖然針對中小企業(yè)的考勤管理業(yè)務(wù)。對使用打卡機、指紋機進行出、退勤的企業(yè),還需要添加一個采集打卡機和指紋機的數(shù)據(jù)模塊。
135、下一步可以再熟悉系統(tǒng)設(shè)計風(fēng)格的基礎(chǔ)上,在各個界面上進一步添加多需要的字段和報表,或者添加采集數(shù)據(jù)的模塊,以擴充系統(tǒng)的功能。本系統(tǒng)的創(chuàng)新點在于觸發(fā)器的應(yīng)用,每增加一條記錄,都會重新統(tǒng)計一下記錄次數(shù),并存入月紀(jì)錄中,使得信息更加準(zhǔn)確。 在設(shè)計時由于對編程語言知識的匱乏,所以數(shù)據(jù)庫的界面化沒有做成,如若想更加完善數(shù)據(jù)庫,應(yīng)該結(jié)合一些編程語言,使得操作界面更加人性化,簡單化。</p><p> 通過本次設(shè)計,我們對數(shù)據(jù)
136、庫有了更深入的了解,見證了一個系統(tǒng)從無到有,從漏洞百出到逐漸完善的過稱,是我們所學(xué)的只是得以所用,加深了對數(shù)據(jù)庫的理解,在設(shè)計過程中有很多不會的問題,通過自己查閱資料逐漸解決,這本身就是一個學(xué)習(xí)的過程,不僅學(xué)到了只是,還掌握了學(xué)習(xí)方法。同時讓我們認識到自己所學(xué)知識的匱乏,所以要全面發(fā)展自己的專業(yè),一個人的能力總是有限的,所以團隊合作很重要,在做設(shè)計的過程中要學(xué)習(xí)他人之長,聽取他人的意見,虛心向別人請教。雖然我們做的設(shè)計還不是很完善,但我
137、們覺得很有意義,對我們今后的人生都很有幫助。</p><p><b> 八 參考文獻</b></p><p> [1] 胡師彥. 微軟SQL Server2000數(shù)據(jù)庫的特點及查詢優(yōu)化研究[J]. 蘭州工業(yè)高 等??茖W(xué)校學(xué)報</p><p> [2] 王西文,張廣智. 淺談SQL Server應(yīng)用方法和技巧[J]. 山東水利</p
138、><p> [3] 何思文. 基于SQL Server 2000的數(shù)據(jù)倉庫的實現(xiàn)[J]. 廣東科技 </p><p> [4] 白青海,張善勇,鄭瑛. ADO與SQL SERVER 2000數(shù)據(jù)庫應(yīng)用程序開發(fā)探討[J]. 內(nèi)蒙古民族大學(xué)學(xué)報(自然科學(xué)版) </p><p> [5]莫德舉.Visual Basic 程序設(shè)計.北京郵電大學(xué)出版</p>
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 數(shù)據(jù)庫課程設(shè)計-- 職工考勤管理信息系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計--職工考勤管理信息系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計--職工考勤管理信息系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計--職工考勤管理信息系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計--職工考勤管理信息系統(tǒng)-(1)
- 數(shù)據(jù)庫課程設(shè)計--考勤管理信息系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計--- 論壇管理信息系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計-酒店管理信息系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計--學(xué)生管理信息系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計---醫(yī)院管理信息系統(tǒng)
- 職工考勤管理信息系統(tǒng)-課程設(shè)計報告
- 職工考勤管理信息系統(tǒng)-課程設(shè)計報告
- 數(shù)據(jù)庫課程設(shè)計---學(xué)生管理信息系統(tǒng)
- 數(shù)據(jù)庫學(xué)生管理信息系統(tǒng)課程設(shè)計
- 數(shù)據(jù)庫課程設(shè)計---圖書管理信息系統(tǒng)
- 數(shù)據(jù)庫原理及應(yīng)用課程設(shè)計--職工考勤管理系統(tǒng)數(shù)據(jù)庫設(shè)計
- 數(shù)據(jù)庫課程設(shè)計--醫(yī)院門診管理信息系統(tǒng)數(shù)據(jù)庫設(shè)計
- 數(shù)據(jù)庫課程設(shè)計-圖書館管理信息系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計--- 企業(yè)人事管理信息系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計- 企業(yè)人事管理信息系統(tǒng)
評論
0/150
提交評論