当前位置:文档之家› C++课程设计报告-人事管理系统

C++课程设计报告-人事管理系统

C++builder课程设计(人事信息管理系统)目录一、设计任务与要求 (3)1.设计内容 (3)2.课程设计的要求 (3)二、系统分析(需求分析) (3)1.需求分析 (3)2.系统性能要求 (3)3.系统的功能分析 (3)4.系统功能模块 (3)5.功能的实现 (3)6.模块框架图 (4)7.系统数据分析 (4)三、系统设计 (5)1.界面设计 (5)2.功能设计 (6)四、总结 (7)五、参考资料 (7)附录:源程序 (7)一、设计任务与要求1、设计内容:制作人事信息管理系统,实现数据录入、数据删除、数据刷新和数据浏览以及数据查询等一些功能。

2、课程设计的要求:A.创建人事管理数据表,该表反映职工的基本信息,其中包含职工编号、职工姓名、职工性别、所在部门、职工年龄、工作日期、基本工资、职称、职务和简历等字段。

B.根据自己的喜好设计系统封面,系统封面设计成由计时器控制,在设定的时间间隔内,系统封面显示达到或超过设定的显示时间,系统封面会自动释放。

C.应用系统主控界面应包括记录编辑和记录查询等功能模块。

记录编辑功能完成职工记录编辑的记录增加、记录删除、记录刷新和记录查询等功能。

记录查询功能可以对数据集中的记录进行查询,要求按职工编号进行查询二、系统分析(需求分析)1.需求分析:①能够输入职工的综合情况的输入、修改以及删除;②能够实现对职工信息的浏览;③能够实现对职工进行查询;④设计系统封面并由计时器控制;2.系统性能要求:①系统安全、可靠;②功能齐全;③操作方便、界面友好;④易于维护和扩充。

3.系统的功能分析:资料维护:系统维护包括对各种表记录的修改、删除、添加等操作。

资料维护:对数据表中的信息进行浏览。

系统查询:可以按职工编号、姓名等相关信息进行详细或模糊查询。

报表统计:包括统计职工编号、职工姓名、职工性别、所在部门、职工年龄、工作日期、基本工资、职称、职务和简历等字段。

其它操作:系统封面、计时器控制与人性化提示信息。

4.系统功能模块人事管理系统有:数据查找与浏览、数据修改、报表显示和系统封面构成。

5.功能的实现:1.“数据查找与浏览”模块:(1)数据查找:对职工的编号、职工姓名、职工性别、所在部门、职工年龄、工作日期、基本工资、职称、职务和简历等字段进行精确或模糊查找。

(2)数据浏览:可以对数据表中的数据实现,上一项、下一项、首相、尾项等操作。

(3)其他信息:设置字体、颜色属性和一些提示信息。

2.“数据修改”模块:(1)添加数据:增加一个新的记录(2)修改数据:修改原有记录。

3.“报表显示”模块:显示当前查找到的数据内容,以报表形式打印。

4.“系统封面构成”模块:(1)系统时钟:在在设定的时间间隔内,系统封面显示达到或超过设定的显示时间,系统封面会自动释放(2)功能实现:进入主界面与退出系统。

6. 模块框架图图模块框架图7.系统数据分析所有数据存放到access数据库文件下,由ado连接,通过程序按照要求显示给用户。

找到用户需要的数据。

数据图三、系统设计1、界面设计欢迎界面主界面数据修改报表打印2、程序设计通过主窗体调用其他窗体,具体实现可以参照系统分析相关内容。

应用系统主控界面包括记录编辑和记录查询等功能模块。

记录编辑功能完成职工记录编辑的记录增加、记录删除、记录刷新和记录查询等功能。

记录查询功能可以对数据集中的记录进行查询。

四、总结此次c++builder课程设计,在指导教师的精心教导下,我们学会了如何工程化地编写一个系统软件。

首先要对软件的需求有一个比较明确的认识,然后系统分析与系统设计,最后是代码设计与调试。

软件实现上,设计了人性化的系统封面,将各个功能独立出来采用功能模块的设计思想。

我们编写程序的过程是辛苦与快乐的,软件设计思想很重要,只要我们在编程,就必须学习新的先进设计思想。

五、参考资料C++buider实例入门陈雪飞中国青年出版社C++builder彻底研究陈灿煌中国铁路出版社附录:源程序//-------------------主窗体查询与浏览--------------------------------------- #include <vcl.h>#pragma hdrstop#include "Unit1.h"#include "Unit2.h"#include "Unit3.h"#include "Unit4.h"#include "Unit5.h"#include "Unit6.h"#pragma package(smart_init)#pragma resource "*.dfm"TFmain *Fmain;bool onshow=false;__fastcall TFmain::TFmain(TComponent* Owner): TForm(Owner){}void __fastcall TFmain::N5Click(TObject *Sender){Close();//退出程序}void __fastcall TFmain::SpeedButton3Click(TObject *Sender){DataModule3->ADOQuery1->First() ;StatusBar1->Panels->Items[0]->Text="数据指向第一个";}void __fastcall TFmain::SpeedButton1Click(TObject *Sender){DataModule3->ADOQuery1->Prior() ;StatusBar1->Panels->Items[0]->Text="数据指向上一个";}void __fastcall TFmain::SpeedButton2Click(TObject *Sender){DataModule3->ADOQuery1->Next() ;StatusBar1->Panels->Items[0]->Text="数据指向下一个";}void __fastcall TFmain::SpeedButton4Click(TObject *Sender){DataModule3->ADOQuery1->Last() ;StatusBar1->Panels->Items[0]->Text="数据指向最后";}void __fastcall TFmain::Button2Click(TObject *Sender){//添加新的数据Fadd->Caption="添加数据";DataModule3->ADOQuery1->Append() ;Fadd->ShowModal() ;}void __fastcall TFmain::FormClose(TObject *Sender, TCloseAction &Action){//对退出程序做确认处理if(MessageBox(this->Handle,"确定要退出吗?","提示",MB_YESNO+MB_ICONQUESTION) == IDNO) Action=caNone;}void __fastcall TFmain::N10Click(TObject *Sender){AboutBox->ShowModal() ; //显示关于对话框}void __fastcall TFmain::Button4Click(TObject *Sender){//以下为查找语句AnsiString sql;if(Edit1->Text=="")return;if( ComboBox1->Text =="精确")sql=" ='"+Edit1->Text+"';";else sql=" like '%"+Edit1->Text+"%';";sql="select * from renshi where "+ComboBox2->Text+sql;StatusBar1->Panels->Items[0]->Text=sql;DataModule3->ADOQuery1->Active =false;DataModule3->ADOQuery1->SQL->Clear();DataModule3->ADOQuery1->SQL->Add(sql);DataModule3->ADOQuery1->Active =true;if(DataModule3->ADOQuery1->RecordCount==0)StatusBar1->Panels->Items[1]->Text="无符合条件数据";else StatusBar1->Panels->Items[1]->Text="符合条件数据个数为:"+IntToStr(DataModule3->ADOQuery1->RecordCount);}void __fastcall TFmain::Button6Click(TObject *Sender){//以下为显示所有数据AnsiString sql;sql="select * from renshi;";StatusBar1->Panels->Items[0]->Text="显示全部数据";DataModule3->ADOQuery1->Active =false;DataModule3->ADOQuery1->SQL->Clear();DataModule3->ADOQuery1->SQL->Add(sql);DataModule3->ADOQuery1->Active =true;if(DataModule3->ADOQuery1->RecordCount==0)StatusBar1->Panels->Items[1]->Text="无符合条件数据";else StatusBar1->Panels->Items[1]->Text="数据总量为:"+IntToStr(DataModule3->ADOQuery1->RecordCount);}void __fastcall TFmain::Button1Click(TObject *Sender){//刷新显示DataModule3->ADOQuery1->Active =false;DataModule3->ADOQuery1->Active =true;}void __fastcall TFmain::N9Click(TObject *Sender){//帮助内容ShowMessage("\大家好,虽然只是一个简单的程序但是也要写帮助。

相关主题