基于COracle的考勤管理系统的设计与开发

  • 格式:doc
  • 大小:1.33 MB
  • 文档页数:43

下载文档原格式

  / 43
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《基于C#+Oracle的考勤管理系统

的设计与开发》

年级: ***********

学号: ***********

姓名: ***********

院系: ***********

专业: ***********

基于C#+Oracle的考勤管理系统

的设计与开发

一、系统设计基本情况

1.系统设计目标

利用计算机管理考勤信息,在很大程度上减轻了统计的工作量,实现企业员工考勤管理的规化,考勤数据统计的自动化。

2.设计思想

除了能够手工录入员工的考勤记录外,还能与考勤机相配合,实现考勤信息录入自动化;

考勤类型灵活设定,以便用户随时调整

应具有报表功能,查询统计时能够直接生成相关员工的考勤报表,报表能导出

系统应采用模块程序设计,便于组合和修改

综合考虑,确定本系统采用C/S工作模式,以oracle作为后台数据库,C#为前台程序开发语言。

3.系统功能模块划分

3.1员工信息管理模块

3.2考勤类型的设定模块

3.3员工考勤信息手工录入模块

3.4员工考勤情况统计报表生成模块

二、数据库设计

1.数据库需求分析

与用户结合,调查用户需求操作的资料,弄清用户怎样处理各种数据资料,理清数据库中各数据之间的关系。通过分析,设计数据集和数据项如下:

1.1员工信息数据集,数据项为员工号,员工,员工性别,员工所属部门。

1.2考勤类型数据集:数据项为类型号,类型名称

1.3员工考勤情况数据集:数据项为考勤日期,员工号,考勤类型号,备注。

2.数据库结构设计

2.1员工信息实体E-R图

2.2考勤类型实体E-R图

2.3员工考勤实体E-R图

2.4实体与实体间的关系E-R图

3.各表格数据库设计代码(Oracle平台)

3.1考勤类型表格

CREATE TABLE KQLXB

(

BH VARCHAR(4) NOT NULL PRIMARY KEY,

LX VARCHAR(20) NULL

);

3.2员工信息表格

CREATE TABLE YGB

(

BH VARCHAR(8) NOT NULL PRIMARY KEY,

XM VARCHAR(12) NOT NULL,

XB VARCHAR(2) NOT NULL,

BM VARCHAR(20)

);

3.3考勤情况管理表格

CREATE TABLE KQGLB

(

KQRQ DATE NOT NULL,

YGBH VARCHAR(8) NOT NULL,

LXBH VARCHAR(4) NOT NULL,

BZ VARCHAR(60) ,

CONSTRAINT KQGLBPRI PRIMARY KEY(KQRQ,YGBH)

);

3.4外键设计

ALTER TABLE KQGLB ADD

(

CONSTRAINT KQGL_BH_FK FOREIGN KEY(LXBH) REFERENCES KQLXB(BH),

CONSTRAINT YG_BH_FK FOREIGN KEY(YGBH) REFERENCES YGB(BH) );

3.5触发器

CREATE or REPLACE TRIGGER delete_ygb

AFTER DELETE ON ygb FOR EACH ROW

BEGIN

DELETE FROM kqglb WHERE kqglb.ygbh=:old.bh;

END delete_ygb;

CREATE or REPLACE TRIGGER update_ygb

BEFORE UPDATE ON ygb FOR EACH ROW

BEGIN

UPDATE kqglb SET kqglb.ygbh=:new.bh where kqglb.ygbh=:old.bh;

END update_ygb;

CREATE or REPLACE TRIGGER delete_kqlxb

AFTER DELETE ON kqlxb FOR EACH ROW

BEGIN

DELETE FROM kqglb WHERE kqglb.lxbh=:old.bh;

END delete_kqlxb;

CREATE or REPLACE TRIGGER update_kqlxb

BEFORE UPDATE ON kqlxb FOR EACH ROW

BEGIN

UPDATE kqglb SET kqglb.lxbh=:new.bh where kqglb.lxbh=:old.bh;

END update_kqlxb;

三、系统设计页面

1.主界面:

2.员工信息管理界面:

3.考勤类型管理界面:

4.考勤信息录入界面:

5.考勤统计报表界面:

四、系统编程的实现

1.主界面模块

功能:打开各个操作界面。

// 自定义变量

public frm_ygxx ygxx = null; // 员工信息窗体变量

public frm_kqlx kqlx = null; // 考勤类型窗体变量

public frm_kqgl kqgl = null; // 考勤管理窗体变量

public frm_kqtj kqtj = null; // 考勤统计窗体变量

///

/// 窗体加载事件

///

private void frm_kqglxt_Load(object sender, EventArgs e) {

pBtn.Left = (Width - pBtn.Width) / 2;

}

///

/// 各子窗体状态处理事件

///

private void CloseFrm()