基于RFID技术的课堂考勤系统设计样本_第1页
基于RFID技术的课堂考勤系统设计样本_第2页
基于RFID技术的课堂考勤系统设计样本_第3页
基于RFID技术的课堂考勤系统设计样本_第4页
基于RFID技术的课堂考勤系统设计样本_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

RFID课程设计论文题目:基于RFID技术课堂考勤系统设计学院:计算机与通信学院班级:物联网(1)班姓名:李嘉诚学号:11280110指引教师:薛建彬日期:.1.16目录摘要3引言3RFID系统31.1RFID技术特点31.2RFID系统构成和工作原理31.3RFID系统应用现状4二.系统案例描述52.1RFID学生考勤管理系统应用优势52.2高频RFID应用特性及应用领域5三.需求分析63.1实验箱各模块简介73.2系统整体构造设计7四.系统开发环境与运营环境84.1开发环境84.2运营环境84.3有关技术8五.课堂考勤系统设计95.1考勤系统总设计流程95.2系统构造总图95.3学生身份验证流程图10六.阅读器116.1MC9S08AW60116.2RFID芯片126.3液晶显示与按键136.4外部通讯136.5学生卡14七.软件某些157.1RFID通讯合同15八.总结18参照文献19摘要:本文研究和设计了一种基于射频辨认(RFID)技术课堂考勤系统。此系统是运用RFID技术,实现对到课堂上课人员简朴迅速地自动签到和离开课堂记录,保存有关数据信息供教职人员检阅,从而免除平时点名占用课堂时间。下面简朴简介了课堂考勤系统基本功能和构成,然后对系统各重要构成某些进行了详细分析。核心词:射频辨认,自动点到,电子标签,课堂考勤引言如今大学校园里,学生翘课、迟到、早退现象已经屡见不鲜。考虑到每天每位教师都要进行对学生考勤管理,特别在大学课堂上,上课人数众多,点名考勤要占用诸多时间,学生人数众多单靠少数人员监督很难做到对学生实时管理,管理难度比较大。为理解决学校课堂考勤管理难问题而设计了一种智能课堂考勤系统。本系统采用了RFID技术,旨在于对学生进行考勤,不但提高了管理效率,更增长了学生出勤率。一.RFID系统1.1RFID技术特点RFID是RadioFrequencyIdentification缩写,即射频辨认,俗称电子标签。它是用无线射频方式进行非接触双向通信,以达到辨认目并互换数据一项新技术。它重要与当今数字化商务相适应,可以实现自动辨认和远程监控及管理。其通信距离范畴可从几厘米到几十米,并且根据读写方式不同,可以输入几千字节数字信息,具备极高保密性]。FRID技术环境适应性强,可全天候、无接触地完毕自动辨认、跟踪和管理功能,且穿透能力和抗干扰能力强。RFID技术可辨认高速运动物体,并可同步辨认各种标签,操作快捷以便。因而,RFID技术已在世界各地得到广泛应用,如工业自动化、商业自动化、交通运送控制管理等众多领域。1.2RFID系统构成和工作原理一种典型RFID系统由阅读器、应答器(RFID卡)和中央管理控制软件构成。阅读器是产生射频信号及高频能量来激活RFID卡片工作,并与卡片进行数据互换设备。应答器(RFID卡)核心是具有一定存储容量芯片,用于存储被辨认物体信息,它在接受并调制反射高频信号时达到与阅读器互相辨认和通信目。中央管理控制软件重要是收集阅读器信息,依照详细应用进行有关数据解决。RFID系统分为有源和无源两类。有源RFID卡由电池提供能量,而无源RFID卡不用电池,由接受到阅读器发射高频信号转换成直流来提供工作能量。无源RFID卡工作原理如下:当处在“工作”状态,即进入阅读器辐射能量场,卡片上天线接受到射频信号,然后由能量解决电路中有关整流器件将射频检波、整流转化为直流电压,为RFID卡上芯片提供工作能量。芯片内部调制器以一定调制方式(幅移键控),将芯片内部信息进行调制,然后通过天线发射出去。阅读器接受天线接受并辨认出调制信息后,按商定解调方式进行解调,然后把解调信息通过有关接口(RS2232)传送到主机中央管理软件进行数据解决。1.3RFID系统应用现状RFID作为一种自动无线辨认和数据获取技术,已经使用了近年,应用领域越来越多。按照工作频率不同,RFID标签可以分为低频(LF)、高频(HF)、超高频(UHF)和微波等不同种类。工作频率范畴为30kHz~300kHz低频段射频标签,其阅读距离普通不大于1米。其典型应用有:动物辨认、工具辨认、电子闭锁防盗等。中高频段射频标签工作频率普通为3MHz~30MHz。典型工作频率为13.56MHz。其阅读距离普通状况下也不大于1米。由于可以便地做成卡状,中频标签广泛应用于电子车票、电子身份证、电子闭锁防盗、社区物业管理、大厦门禁系统等。微波射频标签,其典型工作频率有433.92MHz、862(902)MHz~928MHz、2.45GHz、5.8GHz。相应射频辨认系统阅读距离普通为4m~6m,最大可达10m以上。超高频标签重要用于铁路车辆自动辨认、集装箱辨认,还可用于公路车辆辨认与自动收费系统中。在实际应用中,比较惯用是13.56MHz、860MHz~960MHz、2.45GHz等频段。国内在125KHz、13.56MHz等LF和HF频段RFID标签芯片设计方面技术比较成熟,HF频段方面设计技术接近国际先进水平,已经自主开发出符合ISO14443TypeA、TypeB和ISO15693原则RFID芯片,并成功地应用于交通一卡通和第二代身份证等项目中。二.系统案例描述2.1RFID学生考勤管理系统应用优势电子标签(RFID)具备一种双重角色作用:一方面是身份辨认,用来对物品进行跟踪和清点;另一方面用于物品安全保护。也就是说,RFID同步具备了身份辨认和防盗功能。RFID这种特点大大地提高了资料解决能力,通过一种简朴单一操作就可迅速、精确地完毕资料流通过程。(1)简化考勤流程,提高考勤效率

既有考勤系统仍需要学生把自己随身携带卡接近阅读器来记录学生考勤信息,这样操作流程较为繁琐,考勤效率不高。同步,卡内芯片易收到破坏,使考勤效率可以说是大大减少。基于RFID智能学生考勤系统可以避免这种问题发生,学生只要通过一种特定地方就可以收到考勤信息,无需接近阅读器,大大提高了考勤速度和效率,使考勤工作变得轻松而简朴。(2)提高考勤对的率老式考勤往往显得拥挤或者忙碌,也许一下赢来大批学生进行考勤,有时候几张卡放到一起进行读操作,也许浮现漏读现象,这就导致有人考勤信息不被记录,从而使考勤工作变得不精确。而RFID浮现正好解决了这一问题,她基于无线射频辨认技术,可以远距离进行读卡操作,再也不会浮现误读或漏读操作,使考勤对的率提高,轻松实现学生考勤工作。2.2高频RFID应用特性及应用领域(1)高频RFID应用特性工作频率为13.56MHz,该频率波长大概为22米。除了金属材料外,该频率波长可以穿过大多数材料,但是往往会减少读取距离。辨认卡(感应器)需要离开金属一段距离。该频段在全球都得到承认并没有特殊限制。该系统具备防冲撞特性,可以同步读取各种辨认卡。可以把某些数据信息写入辨认卡中。数据传播速率比低频要快且价格不是很贵。(2)高频RFID应用领域◎瓦斯钢瓶管理应用◎预收费系统◎酒店门锁管理和应用◎大型会议人员通道系统◎固定资产管理系统◎医药物流系统管理和应用◎智能货架管理三.需求分析(1)信息源分析依照学生考勤管理系统需求,此系统信息来源重要有学生信息、RFID射频卡信息和考勤记录信息,其中RFID射频卡信息涉及射频卡分派信息、射频卡挂失信息、射频卡激活信息。考勤记录信息又涉及射频卡考勤信息和人工考勤信息。(2)系统顾客分析本系统顾客可分为三个方面:管理员、领导和学生。其中管理员可使用操作是信息管理、考勤时间设立、查询管理和数据库管理中操作,固然管理员最重要操作是顾客管理,即添加系统顾客。领导完毕学生出勤考察,她们有权利对学生进行人工考勤登记和射频卡考勤登记,固然也有查询信息权利、修改顾客密码等。学生使用此系统仅仅只有查询和修改密码功能,学生不能对考勤管理和信息管理进行操作。每一种权限系统顾客其操作都受一定限制,这样可以保护信息安全性。(3)信息完整性及安全性分析对于此系统信息安全性考虑,为了防止系统权利外泄和信息被非法篡改,每一种顾客都以自己顾客名和密码加对的权限才干登录系统使用。为防止系统顾客在查询是更改系统信息,为此我在查询模块以视图方式为顾客提供可查询信息。领导与管理员之间信息是双向互动.管理员不但是信息系统顾客,同步也是领导信息维护人员,也是某些系统维护者,但是管理员没有考勤管理使用权限。领导有考勤管理使用权限,但是她不能将自己等同权利传播,她仅仅只可以添加学生顾客,对某些系统进行维护。对系统安全重要采用如下两方面办法:1.对各系统顾客规定相应权限,仅能操作其权限内信息;2.在管理员层设立独立转存机制,设立冗余数据库,以备核对.该冗余数据库可同步作为系统恢复基本数据库使用。关于信息完整性,一方面要满足关系实体完整性和参照完整性规定,同步依照实际需要定义某些特殊约束条件,即顾客定义完整性。这些规定共同保证了设备信息完整性。3.1实验箱各模块简介3.2系统整体构造设计四.系统开发环境与运营环境4.1开发环境Intel(R)Pentium(R)DualCPU,0.99GB内存,120G硬盘Microsoft®Windows™XPProfessionalMicrosoft®VisualStudio(C#)Microsoft®DeveloperNetworkforVisualStudio.NETMicrosoftSQLServer4.2运营环境Intel®Pentium®2及以上解决器,32M以上内存,4G以上硬盘Microsoft®Windows™9X/NT操作系统1280*800屏幕辨别率保证机器上安装有Microsoft.NETFrameworkSDKv2.0或者以上版本4.3有关技术#SQLServer数据库SQLServer是一种大型关系型数据库管理系统,她最初是由MicrosoftSybase和Ashton-Tate三家公司共同开发,SQLServer共有4个版本,分别是个人版,原则版,公司版和开发版,支持关系数据库构造化查询语言SQL,它提供了丰富图形化管理工具,简化了系统管理与操作,具备动态自动管理和优化功能。它支持大型Web站点和公司数据吃力系统数据存储规定,具备Web出版工具,支持XML、HTTP,并具备数据挖掘和分析服务应用功能,可伸缩性和可用性强。它支持公司级数据库,容许大量顾客同步访问,容许顾客同步引用多处数据源,支持分布式查询,支持数据仓库。它具备丰富编程接口,便于开发,支持ODBC、ADO数据库对象、OLE数据源,支持N层客户机/服务器系统,在客户机/服务器构造中SQLServer扮演着后端数据库角色。SQLServer数据库特点(1)Internet集成(2)可伸缩性和可用性(3)公司级数据库功能(4)易于安装、布置和使用五.课堂考勤系统设计5.1考勤系统总设计流程本系统重要是可以做到让佩戴具有RFID芯片学生卡学生在通过教室大门时无需接触打卡机即可自动感应考勤,并能在有多人同步通过教学楼大门时做到实现考勤而不需排队,同步控制阅读器把接受到这些信息上传到电脑终端进行解决,会精确记录学生来往时间记录等信息。系统总框图如图所示。课堂考勤系统框图5.2系统构造总图基于RFID学生基于RFID学生考勤系统登录界面系统主界面信息管理模块考勤管理模块顾客管理模块射频卡管理模块查询管理模块数据库管理模块退出系统管理模块5.3学生身份验证流程图否否否是开始登录界面系统主界面退出学生信息与否对的与否继续登录六.阅读器阅读器重要功能是接受学生卡信息并上传给服务器,使服务器收到信息以便在设备终端系统进行记录。阅读器框架图如图所示:3.1阅读器阅读器重要功能是接受学生卡信息并上传给服务器,使服务器收到信息以便在设备终端系统进行记录阅读器框架图如下图所示。阅读器框图6.1MC9S08AW60阅读器硬件系统以MCU为核心,采用MC9S08AW60芯片,该芯片是低成本、高性能8位微解决器单元(MCU)HCS08家族中成员,使用增强型HCS08核。它具备64/48/44引脚四方扁平封装(QFP)。MC9S08AW60应用特点非常丰富。它采用8位HCS08中央解决单元(CPU)。CPU主频40MHz,内部总线频率20MHZ,具备HC08指令子集,增长了BGND指令,接口采用单线后台调试模式,容许单一断点设立在线调试,具备片内实时功能,支持多达32个中断/复位源。该芯片还具备高达60KB片内在线可编程FLASH存储器,带有块保护和安全选项,并有高达2KB片内RAM。时钟源选项涉及晶体,谐振器,外部时钟,或内部产生时钟与精密NVM切边。系统保护模式可以采用可选计算机正常操作(COP)复位、低电压检测与复位或中断、非法操作码检测与复位及非法地址检测与复位(某些设备不具备非法地址)等。外部设备有多达16个通道ADC模块,具备10位AD转换器与自动比较功能;两个串行通信接口模块与可选13位中断;串行外设接口模块;运作高达100kbps最高总线负载集成电路互连总线模块;1个2通道和1个6通道16位定期器/脉冲宽度调制器(TPM)模块;高达8引脚键盘中断模块。输入输出有高达54个通用I/O管脚,尚有主复位引脚和上电复位及内部上拉复位管脚等。采用Wait另加两个STOPS省电模式。6.2RFID芯片RFID芯片采用CY-14443A系列射频读写模块制作,该模块是采用基于ISO14443原则非接触卡读卡机专用芯片,采用0.6微米CMOSEEPROM工艺,支持ISO14443typeA合同,支持MIFARE原则加密算法。芯片内部高度集成了模仿调制解调电路,只需至少量外围电路就可以工作,支持UART接口(-C),I2C接口(-U),或者SPI接口(-P),数字电路具备TTL、CMOS两种电压工作模式。特别合用于ISO14443原则下水电表、自动售货机、门禁、电话机等计费系统或身份辨认系统读卡器应用。CY-14443A系列支持mifareOneS50,S70,UltraLight&mifarePro,FM11RF08等兼容卡片。可以设定自动寻卡,默认状况下为自动寻卡。CY-14443A系列所有有板载内置天线,可以再接外接天线。其中内置天线长处是提高集成度,可读取达到6cm以内卡,基本不需再外接大天线就可以满足大某些设计需要,并且不需要更换电路就可以再连接外部天线,提高了系统可重用性,大大减少成本,此外,内置天线读头可以作为有源天线使用。该模块还增长了4kBitsEEPROM,EEPROM字节地址从0x00到0x1FF,可以读取PCDPN,SN。其功能框图如图所示。CY-14443A系列射频读写模块功能框图单片机与该射频模块使用SC2接口进行通讯,通讯接口简便,如下图所示:CY-14443A系列射频读写模块串口连接模式6.3液晶显示与按键液晶显示屏与按键都与单片机I/O相连,作为数据读取之后显示模块和按键操作模块。该某些连接简朴。6.4外部通讯外部通讯采用MAX485接口芯片。MAX485接口芯片是Maxim公司一种RS-485芯片,采用单一电源+5V工作,额定电流为300uA,采用半双工通讯方式。它完毕将TTL电平转换为RS-485电平功能。其引脚构造图如图7所示。从图中可以看出,MAX485芯片引脚非常简朴,内部具有一种驱动器和接受器。RO和DI端分别为接受器输出和驱动器输入端,与单片机连接时只需分别与单片机RXD和TXD相连即可;/RE和DE端分别为接受和发送使能端,当/RE为逻辑0时,器件处在接受状态;当DE为逻辑1时,器件处在发送状态,由于MAX485工作在半双工状态,因此只需用单片机一种管脚控制这两个引脚即可;A端和B端分别为接受和发送差分信号端,当A引脚电平高于B时,代表发送数据为1;反之为0。在与单片机连接时接线非常简朴。只需要一种信号控制MAX485接受和发送即可。同步将A和B端之间加匹配电阻,普通可选100Ω电阻。单片机与外部主机通过RS485接口芯片连接图如图所示。单片机与外部通讯连接图6.5学生卡学生卡采用无源RFID标签,由一种电子数据解决、存储设备(普通是单个微小芯片)和实现天线功能大面积环绕线圈构成。学生卡重要是在进入阅读器有效区域内发送信息给阅读器,使得阅读器可以读取到通过人员卡里信息。每张学生卡里都存储着每位学生学号、专业、班级本学期课程等信息。其构造图如图所示。学生卡示意图七.软件某些 系统中央管理控制软件是课堂考勤系统中心,以控制阅读器和RFID卡工作状态,以及进行学生出入教室数据记录解决等。重要特点是:易于操作控制;通过串口通信合同,实现对阅读器控制与数据传送;学生信息录入简朴以便,维护性和保密性好;迅速记录解决数据;有完善资料查询功能等。系统软件功能模块重要涉及:顾客登录模块、实时报到和退堂显示模块、阅读器控制模块、数据库管理模块、数据记录解决模块。如下图所示:软件系统显示模块图7.1RFID通讯合同通讯波特率出厂默以为19200,1位起始位,8位数据位,1位停止位。UART工作在半双工方式,即模块接受指令后才会做出应答。其命令格式为:前导头+通讯长度+命令字+数据域+校验码。其中,前导头为0xAA0xBB两个字节,若数据域中也包括0xAA那么紧随其后为数据0,但是长度字不增长。通讯长度是指明去掉前导头之外通讯帧所有字节数(含通讯长度字节自身)。命令字是各种顾客可用命令。校验码为去掉前导头和校验码字节之外,所有通讯帧所含字节异或值。CPU发送命令帧之后,需要等待读取返回值,该返回值格式如下:前导头+通讯长度+上次所发送命令字+数据域+校验码。下面是基于mega12816AU485通信中断接受程序,调试通过,晶振为外部16MHZ,MAX485DE和RE短接连PC0口,程序如下:#defineSEND_485PORTC|=0x01#defineREAD_485PORTC&=0xfevoidUsart1_init(void)//16MHZ频率,设立波特率9.6K,8位数据位,无校验,接受发送使能,1位停止位。{UBRR1H=0;UBRR1L=103;UCSR1B=(1<<RXCIE1)|(1<<RXEN1)|(1<<TXEN1);//发送接受使能,使用中断方式,UCSR1C=(1<<UCSZ10)|(1<<UCSZ11);//0x068位数据,1位停止位,无校验}voidUsart1_transmit(unsignedcharc)//查询方式发送接受字符函数。{SEND_485;DelayBus();DelayBus();DelayBus();while(!(UCSR1A&(1<<UDRE1)));//等待发送缓冲区为空。UDR1=c;while(!(UCSR1A&(1<<TXC1)));//UDCR0=c;UCSR1A|=_BV(TXC1);//将发送结束标志位清零。//SET_BIT(UCSR1A,);READ_485;direction++;}SIGNAL(SIG_UART1_RECV)//serialport1{if(UCSR1A&(1<<RXC1)){rec1buff=UDR1;rec1_flag=1;}}八.总结课堂考勤系统是应用RFID技术特点实现学员课堂报到和离开记录自动化和智能化管理,当前已在大学校园里得到应用。本文对整个系统进行了概述,并对功能强大、构造复杂、技术规定高阅读器进行了较为详细理论分析与设计。本系统还可在校园内进行多处安装,教师和辅导员只要登录电脑终端系统就可以实现对学生在校园内分布状况实时监测,大大提高校方对学生管理效率。此外,该系统也可以作为一种智能教师会议报到系统,同步提高会议管理工作效率。相信随着RFID技术迅速发展,该套系统也会得到不断完善和广泛应用。最后衷心感谢薛建彬教师认真指引,让我对RFID技术在实际生活中应用更加熟悉和明了,同步也感谢同窗们协助,让我对RFID技术理解更加深刻与透彻。参照文献[1]周晓光,王晓华.射频辨认(RFID)技术原理与应用实例[M].北京:人民邮电出版社,.12[2]沈宇超,沈树群.射频辨认技术及其发呈现状.电子技术应用,1999,25[3]程晓丽,等.基于RFID会议报到系统设计[J].计算机与自动化.第7期第31卷[4]刘篙岩,毛志刚.智能卡研究与发展.徽解决机,.2:1—5.[5]陈子侠.RFID技术应用与当代物流.商业研究,(6)[6]游站清,李苏剑.无线射频辨认技术(RFID)理论与应用.北京:电子工业出版社,致谢本文完毕特别要感谢薛教师,马教师,从论文构造到写作细节,无不渗入着教师们心血。老们师严谨、细致治学态度,坦诚、热情处世风格,给我留下了深刻印象,我为能成为她学生而感到幸运。另一方面,我还要感谢实验室其她教师,她们在学习环境上严格规定让我有了一次学习上升华过程,理解到诸多计算机和RFID方面最新观点、原理和实践。此外,我还要感谢各位与我一起参加设计同窗,人们都认认真真做自己设计,互相协助,遇到不懂问题人们都积极讨论,每个人都提出自己最抱负方案。在本文写作过程中,我借鉴了大量著作文献,并引用了某些作者某些资料,在此向所有文献作者道谢!附录附录(1)//AdoMdb.h:interfacefortheAccessDBMgrclass.////////////////////////////////////////////////////////////////////////#if!defined(AFX_ADOMDB_H__F64E7E9D_4790_467F_8315_B030DD0E615B__INCLUDED_)#defineAFX_ADOMDB_H__F64E7E9D_4790_467F_8315_B030DD0E615B__INCLUDED_#if_MSC_VER>1000#pragmaonce#endif//_MSC_VER>1000//ADO#pragmawarning(disable:4146)#import"c:\ProgramFiles\CommonFiles\system\ado\msadox.dll"#import"c:\programfiles\commonfiles\system\ado\msado15.dll"no_namespacerename("EOF","adoEOF")#pragmawarning(default:4146)//数据提供者类型枚举enumenmProvideType{ ACCESS_97=1, //ACCESS97 ACCESS_, //ACCESS SQLSERVER, //SQLServer};//认证方式枚举enumenmAUTH_TYPE{ AUTH_SQLSERVER=1, //SQL认证 AUTH_WINDOWS, //WINDOWS认证};//字段类型enumenumFIELD_TYPE{ //整数 FT_BIGINT, //从-2^63(-4775808)到2^63-1(4775807)整型数据(所有数字) FT_INT, //从-2^31(-2,147,483,648)到2^31-1(2,147,483,647)整型数据(所有数字) FT_SMALLINT, //从-2^15(-32,768)到2^15-1(32,767)整数数据 FT_TINYINT, //从0到255整数数据 //bit FT_BIT, //1或0整数数据 //decimal和numeric FT_DECIMAL, //从-10^38+1到10^38–固定精度和小数位数字数据 FT_NUMERIC, //功能上等同于decimal //money和smallmoney FT_MONEY, //货币数据值介于-2^63(-922,337,203,685,477.5808)与2^63-1(+922,337,203,685,477.5807)之间,精准到货币单位千分之十 FT_SMALLMONEY, //货币数据值介于-214,748.3648与+214,748.3647之间,精准到货币单位千分之十 //近似数字 FT_FLOAT, //从-1.79E+308到1.79E+308浮点精度数字 FT_REAL, //从-3.40E+38到3.40E+38浮点精度数字 //datetime和smalldatetime FT_DATATIME, //从1753年1月1日到9999年12月3 FT_SMALLDATATIME, //从1900年1月1日到 //字符串 FT_CHAR, //固定长度非Unicode字符数据,最大长度为8,000个字符 FT_VARCHAR, //可变长度非Unicode数据,最长为8,000个字符 FT_TEXT, //可变长度非Unicode数据,最大长度为2^31-1(2,147,483,647)个字符 //Unicode字符串 FT_NCHAR, //固定长度Unicode数据,最大长度为4,000个字符 FT_NVARCHAR, //可变长度Unicode数据,其最大长度为4,000字符。 FT_NTEXT, //可变长度Unicode数据,其最大长度为2^30-1(1,073,741,823)个字符 //sysname是系统提供顾客定义数据类型,在功能上等同于nvarchar(128),用于引用数据库对象名 //二进制字符串 FT_BINARY, //固定长度二进制数据,其最大长度为8,000个字节 FT_VARBINARY, //可变长度二进制数据,其最大长度为8,000个字节 FT_IMAGE, //可变长度二进制数据,其最大长度为2^31-1(2,147,483,647)个字节};//字段信息typedefstructtagFIELD_INFO{ LPCTSTRpszName; //字段名 intiFieldType; //字段类型 intiFieldSize; //字段大小 intiDefault; // BOOLbNull; // BOOLbKey; //}FIELD_INFO,*PFIELD_INFO;classAccessDBMgr{public: staticBOOLbAfxOleInit; //防止初始化次private: char _szProvider[100]; _ConnectionPtr _pConnection; _RecordsetPtr_pRecordset; HANDLE _hrecordsetunlock;public: AccessDBMgr(); virtual~AccessDBMgr(); //初始化COM库 BOOLInit(intnProviderType); //创立数据库 BOOLCreateMdb(constchar*pszMdbName); //打开数据库 BOOLOpenMdb(constchar*pszMdbName,constchar*pszPwd=NULL); //打开SQLServer数据库 BOOLOpenSQLServerDB(intnAuthType, //认证方式 LPCTSTRpstrServer, //SQL服务器名 LPCTSTRpstrDBName, //数据库名 LPCTSTRpstrUser, //顾客 LPCTSTRpstrPwd); //密码 //创立新表 intCreateTable(constchar*pszMdbName, constchar*pszTableName, PFIELD_INFOpaFieldsInfo, intnCount); //打开记录集,返回查询记录数,返回-1执行失败 intOpenRecordset(LPCTSTRsSQL); //执行SQL语句,返回影响记录数,返回-1执行失败 intExecuteSQL(LPCTSTRsSQL); //与否到记录集首 BOOLIsBOF(); //与否到记录集末尾 BOOLIsEOF(); //获得字段值 BOOLGetFieldValue(intnIndex,_variant_t&varValue); //nIndex0-based BOOLGetFieldValue(LPCTSTRlpszName,_variant_t&varValue); BOOLSetFieldValue(LPCTSTRlpszName,const_variant_t&varValue); //移动到第一条记录 voidMoveFirst(); //移动到下一条记录 voidMoveNext(); voidUpdate(); voidUpdateBatch(); voidAddNew(); voidDelete(); //关闭记录集 voidCloseRecordset(); //关闭数据库 voidCloseMdb(); };#endif//!defined(AFX_ADOMDB_H__F64E7E9D_4790_467F_8315_B030DD0E615B__INCLUDED_)(2)#pragmaonce#include"afxcmn.h"//CAttendance对话框classCAttendance:publicCPropertyPage{ DECLARE_DYNAMIC(CAttendance)public: CAttendance(); virtual~CAttendance();//对话框数据 enum{IDD=IDD_DLG_ATTENDANCE};protected: virtualvoidDoDataExchange(CDataExchange*pDX);//DDX/DDV支持 DECLARE_MESSAGE_MAP() DepartmentInfoArray _departmentinfoarray; EmployeeInfoArray _employinfoarray; EmployeeStatisticsInfoArray_employstatinfoarray;//单个员工记录信息 QueryResultArray _queryresultarray; //需进行记录员工列表 QueryResultArray _latearray; //迟到员工 QueryResultArray _leaveearlyarray; //早退员工 QueryResultArray _absentarray; //缺勤员工 QueryResultArray _workextraarray; //加班员工 AttendancdInfoArray m_attendanceinfoarray; //数据库中查得记录 COleDateTimeSpanm_startworktime,m_endworktime; void GetRequestList(CStringdate,CStringtime,CStringdate2,CStringtime2); void GetRequestListByName(CStringdate,CStringtime,CStringdate2,CStringtime2,CStringname); void GetRequestListByDepartment(CStringdate,CStringtime,CStringdate2,CStringtime2,CStringdepartment); void GetRequestListByNameAndDepartment(CStringdate,CStringtime,CStringdate2,CStringtime2,CStringname,CStringdepartment); void ShowInListCtrl(); void ShowInListCtrl2(); void GetQueryResult(); void Addrecord(constint); void SetQueryResultDate(COleDateTime); void ShowQueryResult2(); //在列表框中显示成果,及其她某些记录:加班缺勤 void ReSetQueryResultTime();public: CListCtrl_lists; virtualBOOLOnInitDialog(); afx_msgvoidOnBnClickedBtnQuery(); afx_msgvoidOnBnClickedCheckDepartment(); afx_msgvoidOnBnClickedCheckName(); afx_msgvoidOnBnClickedBtnExportexcel();};(3)#pragmaonceclassCAttendanceInfo{private: CString_cardno,_name,_department,_date,_time,_datetime; COleDateTime _datetime2;public: CAttendanceInfo(void); ~CAttendanceInfo(void); void SetCardNo(LPCTSTR); CString GetCardNo()const; void SetName(LPCTSTR); CString GetName()const; void SetDepartment(LPCTSTR); CString GetDepartment()const; void SetDate(LPCTSTR); CString GetDate()const; void SetTime(LPCTSTR); CString GetTime()const; void SetDateTime(LPCTSTR); CString GetDateTime()const; void SetDateTime2(COleDateTime); COleDateTime GetDateTime2()const;};typedefCArray<C

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论