考勤管理说明 6页

  • 300.84 KB
  • 2022-05-17 13:30:30 发布

考勤管理说明

  • 6页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
计算机综合实践说明书数据库部分设计总任务:这次设计的程序是考勤管理系统,主要用丁•企事业单位的考勤,便丁•统计员工的出勤情况。用户需求(程序功能)分析及程序流程图:(1)系统功能:•上班时间的设定。上下班时间相对固定,可保存在客户端的设置文件屮•员工出入单位的情况记录。出入情况主要由考勤机来记录,但是需要设置人工添加的功能,已备特殊情况的处理•请假、加班和出差情况的记录•每个月底进行整个月的出勤情况统计(2)系统功能模块设计:根据系统功能的要求,可以将系统分解成儿个功能模块来分别设计,功能模块如图所示考勤莒理系统手工补计出勤加裁录谙假记录(3)系统的数据流程图如图所示,出勤的原始记录主要來源于考勤机,并且以固定格式保存在数据库中。考勤管理系统的任务是如何处理这些数据。员工记录岀勒时间•出差出黠录值班.岀差各种统计值息请假、值班.出差记录经理审批-通过/考勤;yCt下班时间安排"/管二员/ (4)数据需求分析根据数据流程图,可以列出以下数据项和数据结构:•出勤记录:记录号、员工、出入情况和出入吋间•月度考勤统计:记录号、员工、年月、累计正常工作吋间、累计请假时间、累计加班时间、累计出弟时间、迟到次数、早退次数和旷工次数•请假记录记录号、员工、假期起始时间/结束时间和请假缘由加班记录:记录号、员工、加班时间氏度和日期•出差记录•人员信息记录号、员工、出差起始吋间/结束时间和具体描述员工号、密码、权限、姓名、部门和当前状态等部门设置:部门编号、名称等(5)数据库概念结构设计(E・R图)出rwm*起ftwmF出入如IJ出入at低年月JR计工作时《1计iWWJ间JR计加阳H伺JR计出差的间迟到E早1M33R犷工如1加礙记录Ctan姑束时目1由"(6)程序流程图 按下“设置”按钮按下“退出”按钮按下“出勤记录”按钮按下“统计”按钮按下“重新登录”按钮软件测试结果:在该考勤管理系统软件中经过测试可以达到预期的目标,即可以满足用户对该考勤软件的基本要求;用户可以通过我们程序员事先为他们准备好的SQL数据库语言在SQLServer中把自己所要建立的数据库建立好;并通过数据源(ODBC)建立想要建的数据源;之后用户便可以顺利的通过考勤管理软件对员工的出勤情况进行管理。打开考勤管理软件,首先出现的是考勤管理系统登录的对话框:它由数据源(ODBC)名称,用户名和密码三个输入框组成,用户只耍将先前建好的数据源的名称,用户名和密码正确的输入编辑框即可登录考勤管理的主界面,如果不匹配,会弹出对话框提示。登录成功后出现的主界面由“设置”,“出勤记录”,“统计”,“重新登录”,“退出”五个功能按钮组成。单击主对话框中的各个按钮即可显示相应的对话框。其中“重新登录”按钮用丁回到登录对话框,并且隐藏主对话框「"退出”按钮直接退出应用程序;“设置”按钮用来弹出上下班时间设置对话框;“出勤记录”按钮用来弹出考勤修改对话框。单击“统计”按钮会出现统计对话框。上下班时间対话框在系统中以摸态对话框形式弹出,因此在没有退出此对话框时,所有其他的窗口都无法使用。上下班的时间包括两对时间值,可根据需要设置。最后单击“修改”按钮,见时间设置保存到"work_pian.ini"文件中。单击“恢复默认设置”按钮,系统会从“work_plan.ini”文件中读取保存的时间设置。如果该配置文件不存在,则用程序中默认的时间來代替。 考勤修改窗口包括4项记录修改功能,分别对应出勤记录,加班记录,请假记录和出差记录。这4项记录的显示使用同一个检索条件。检索条件包括时间范围和员工,可根据需要设置。出勤记录的添加是为了防止考勤出故障吋,保证记录的完幣性,在批量输入吋,进度条会显示当前完成的进度。在出勤记录列表的上方有两个按钮。一个用來删除当前的记录,另一个用来激活检索条件。考勤修改对话框中其他三项记录的添加和修改基本与出勤记录类似。考勤统计对话框分别为月度统计,检索条件和记录列表3部分。月度统计需要设定统计的时间范围。最后统计结果保存到ATTENDANCE_STAT数据表中。同样,进度条将显示统计的进度。检索条件和“检索”按钮用于快速定位记录,便于查询和修改。代码简述:用到的类:CaboutDlg,CattDlg,CcounterRS,Ccrypt,CdepartRS,CerrandRS,CleaveRS,ClinkButton,CloginDlg,CovertimeRS,CPage1,CPage2,CPage3,CPage4,CpersonRS,CstatDlg,CstatRS,Ctest,CworkplanDlg,CXieyuyingDBApp,CXieyuyingDBDlg,CXieyuyingDBRS.成员函数:OnChangeEdtSeekpersonid(),Encrypt(CStringS,WORDKey),Decrypt(CStringS,WORDKey),DrawItem(LPDRAWITEMSTRUCTlpDrawItemStruct),OnSetCursor(CWnd*pWnd,UINTnHitTest,UINTmessage),OnTimer(UINTnIDEvent),OnCreate(LPCREATESTRUCTIpCreateStruct),OnLButtonUp(UINTnFlags,CPointpoint),OnLButtonDown(UINTnFlags,CPointpoint),OnOK(),OnCtlColor(CDC*pDC,CWnd*pWnd,UINTnCtlColor),WindowProc(UINTmessage,WPARAMwParam,LPARAMIParam),OnChangeEdtDepartid(),OnChangeEdtPersonid(),IO_Add(CStringstrPersonlD),OnBtnAddperson(),OnBtnAddall(),UpdateList(CXieyuyingDBRS&rs),OnBtnDeleteattend(),OnBtnSeekio(),UpdateList(CLeaveRS&rs),OnBtnLeaveAdd(),0nBtnLeaveDeleteattend(),OnBtnLeaveSeekio(),UpdateList(CEirandRS&rs),OnChangeEdtErrandPersonid(),OnBtnEiTandAdd(),OnBtnErrandDeleteattend(),OnBtnErrandSeekio(),OnChangeStatEdtSeekpersonid(),OnStatBtnSeek(),UpdateList(CStatRS&rs),OnStatBtnStat(),OnWorkplanReset(),OnWorkplanModify(),ExitInstance(),OnInitDialog(),OnBtnExit(),OnBtnRelogin(),OnBtnConfig(),OnBtnRecord(),OnBtnStatistics(),Ctime,Cstring,BOOL.相关的变量:m_StartTime,m_EndTime„m_strPersonID,m_strNamem_bSeekbyperson,m_bSeekbytime,m_COUNTER_VALUE,m_DESCRIPTION,m_ID,m.NAME,m_MANAGER,mJNTRO,m_PERSON,m_START_TIME,m_END_TIME,m_DESCRIPTION,m_START_TIME,m_END_TIME,m_REASON,m_strDSN,m_strUser,m_strPasswd,m_WORK_DATE,m_WORK_HOURS,m_cList,m_cProgress,m_strIOTime,m_strDepartID,m_strDepartName,m_strPersonID,m_strPersonName,m_nHour,m_Date,m_strSTime,m_strETime,m_strReason,m_BIRTHDAY,m_PASSWD,m_AUTHORITY,m_NAME,m_SEX,m_DEPARTMENT,m_JOB,m_EDU_LEVEL,m_SPECIALTY,m_ADDRESS,m_TEL,m_EMAIL,m_REMARK,m_bSeekbytime,m_bSeekbyperson,m_strSeektime,m_Stime,m_ETime,m_ERRAND_HDAY,m_ERRAND_HDAY,m_LATE_TlMES,m_EARLY_TIMES,m_ABSENT_TIMES,m_YEAR_MONTH,m_Timel,m_Time2,m_Time3,m_Time4,m_brush,m_pStatDlg,m_pAttDlg,m_nWidth,m_nHeight?m_nDx,m_nDy,m_IN_OUT,m_IO_TIME.编程感想:h"通过第二次的程序设计,使我能够进一步掌握用程序设计语言解决实际问题的方法,在操作当中把所学到的用于实际的编程里去。 2.通过第二次的程序设计,使我能够提高分析问题、查阅资料、吸收新知识的能力,在分析解决问题时比以前有了很大的进步,一些常用的知识和一些常规的错误都能够解决。3.通过第二次的程序设计和指导教师陆卫忠老师的指导使我能够进一步对VC++有了熟练的操作,并且在分析,编程方面比以前有了更大的提高。4.我认为实践周的程序设计是给我们学习的一个大好机会,使我们在这样的机会里学到了一定的知识,毕竟理论要通过实践来锻炼,也只有自己参与了这样的一个锻炼,才能更好的发现自己的不足并加以改进和完善!