毕业设计(论文)-考勤管理系统.doc

上传人:西安人 文档编号:3286352 上传时间:2019-08-08 格式:DOC 页数:41 大小:3.81MB
返回 下载 相关 举报
毕业设计(论文)-考勤管理系统.doc_第1页
第1页 / 共41页
毕业设计(论文)-考勤管理系统.doc_第2页
第2页 / 共41页
毕业设计(论文)-考勤管理系统.doc_第3页
第3页 / 共41页
毕业设计(论文)-考勤管理系统.doc_第4页
第4页 / 共41页
毕业设计(论文)-考勤管理系统.doc_第5页
第5页 / 共41页
点击查看更多>>
资源描述

《毕业设计(论文)-考勤管理系统.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)-考勤管理系统.doc(41页珍藏版)》请在三一文库上搜索。

1、摘摘 要要 考勤管理系统是将信息技术引入人力资源管理之中,利用计算机对人力资 源进行管理的一种信息管理系统,它是企业信息化中的一个重要组成部分。本篇 论文将重点放在考勤管理系统上,通过对实际工作中遇到的一个项目情况的描述, 从一个侧面反映出了企业信息化对企业发展所起的重要的作用。 本文对项目的一些相应的技术背景和软硬件环境都做了简要的描述,重点在 于考勤接口软件的设计及其实现。不同于一般软件项目的设计说明,本文在软件 设计的说明部分着重描述了几个在本项目中具有代表性的解决方案:临时数据库的 设计、INI 配置文件的使用以及 ActiveX 控件的使用等。此外对于软件的界面设 计和一些相应的代码

2、实现也做了必要的说明。 本文还介绍了人力资源管理系统中考勤系统的工作流程。考勤接口软件和人 力资源管理系统的结合使用,最终使得从读取员工的考勤信息、当日考勤结果整 理直到当月考勤结果统计的一系列操作能够顺利的完成。对比老式的考勤统计方 法,可以看到它对提高企业工作效率有着重要的贡献。 关键词:考勤管理 企业信息化 人力资源管理系统 临时数据库 ABSTRACTABSTRACT The human resources management system is an information management system,which uses computers to apply inform

3、ation technology to manage human resources.This system is one of the most important parts of enterprise informatization. Thedissertation is to focus on the attendance management subsystem. From the discussionof one project rnet in work, it can be seen that informatization is very important forthe de

4、velopment of a corporation. Firstly, the dissertation describes some related technology background and thecondition of software and hardware of the project in brief and then emphasize on twoaspects, which one is the software design in the attendance management subsystem,and the other is how make it

5、come true. The explanation of this software design isdifferent from that of common software project. It introduces several representativemethods in detail, which are the design of temporary database, the use of INIconfiguration files and ActiveX control. Moreover, it gives some necessaryexplanations

6、 on the designs of the softwares interface and the achievements of somecorresponding codes. Furthermore, the paper also introduces theprocesshowthe attendancemanagement subsystem works. The integration of the attendance interface softwareand the human resources management system can make a series of

7、 operationsachieved successfully, for example, selecting and reading the attendance informationof staff, the filed results of attendance daily and the statistical results of attendancemonthly and so on. Compared with some conventional tools of attendancemanagement, the new attendance management subs

8、ystem in human resourcesmanagement system makes a contribution to the improvement of a corporations workefficiency. KEYWORDS:KEYWORDS:Attendance management,enterprise informatization, human resources management system, temporary database 目录目录 第一章第一章 绪论绪论 1 1 1.1 问题的提出 1 1.2 问题的解决 1 1.3 本论文的主要内容 1 第二

9、章第二章 软硬件环境概述软硬件环境概述 2 2 2.1 软件环境说明 2 2.1.1ASP 的简介 .2 2.1.2ASP 的特点和原理 .2 2.2 考勤机硬件设备说明 3 2.1.1 产品简述 3 2.2.2 两种接口规格说明 3 2.2.3 与电脑联机方式 4 2.3 考勤机软件接口说明 6 2.4 软件开发环境简述 8 2.4.1 后台数据库说明 8 2.4.2 前端软件开发工具介绍 9 第三章第三章 考勤接口软件设计考勤接口软件设计 1111 3.1 设计准备 .11 3.1.1 考勤接口软件与数据库系统的通信方法 .11 3.1.2 OCX 在 ASP 中的使用 .12 3.1.3

10、 主要数据结构设计 .13 3.2 界面设计 .16 3.2.1 OA 数据采集界面 16 3.2.2 考勤机数据采集界面 .17 3.2.3 注册注销卡片界面 .18 3.2.4 考勤机设置界面 .29 3.3 主要代码实现 .20 3.3.1 与数据库操作相关的一些代码实现 .20 3.3.2 与考勤机操作相关的一些代码实现 .22 3.3.3 与界面显示相关的一些代码实现 .25 第四章第四章 考勤系统工作流程考勤系统工作流程 2727 4.1 利用考勤接口软件进行数据读取 .27 4.2 在 HRMS 中进行考勤结果统计 30 第五章第五章 结束语结束语 3434 参考文献参考文献 3

11、535 致谢致谢 3636 0 第一章第一章 绪论绪论 1.1 问题的提出 对于基于 Web 平台的网上考勤系统,存在着一个前台应用和后台管理的问题。 而无论前台还是后台,都要对数据库进行调用和操作。因此如何创建网络数据库, 以及客户端如何调用服务器端的数据库成为实现网上考勤的一个关键性问题。 1.2 问题的解决 在这里,我采用 B/S 模式来实现客户端对服务器端的调用,所谓 B/S 模式即 浏览器/服务器模式,是一种从传统的二层 C/S 模式发展起来的新的网络结构模式。 在 B/S 模式中,客户端运行浏览器软件。浏览器以超文本形式向 Web 服务器提出 访问数据库的要求,Web 服务器接受客

12、户端请求后,将这个请求转化为 SQL 语 法,并交给数据库服务器,数据库服务器得到请求后,验证其合法性,并进行数 据处理,然后将处理后的结果返回给 Web 服务器,Web 服务器再一次将得到的 所有结果进行转化,变成 HTML 文档形式,转发给客户端浏览器以友好的 Web 页面形式显示出来。 而对于网络数据库的创建,则是利用 ASP 技术来解决。ASP(Active Server Pages 动态网页)是微软公司推出的一种用以取代 CGI(Common Gateway Interface 通用网关接口)的技术。目前,Internet 上的许多基于 Windows 平台的 Web 站点已开始应用

13、 ASP 来替换 CGI。 简单地讲,ASP 是一个位于服务器端的 脚本运行环境,通过这种环境,用户可以创建和运行动态的交互式 Web 服务器应 用程序,如交互式动态网页,包括使用 HTML 表单收集和处理信息,上传与下载 等等。 在网络考勤中,对用户而言,进行网上信息查询的目的是寻找自己需要的产 品或服务,而对于商品或服务提供者来说,其目的则是向用户推销自己的产品或 服务。因此,让用户通过浏览器查询服务器的后端数据库是许多 Web 服务提供者 必需有的服务,ASP 通过内置的 ADODB 组件来实现这一功能。可以使用 ADO 去编写紧凑简明的脚本以便连接到 ODBC 兼容的数据库和 OLED

14、B 兼容的数据 源。至于实现的细节,在后续部分的网络数据库章节中有详细介绍。 1.3 本论文的主要内容 本文写作的主要内容是考勤接口软件的设计及其实现过程。为了便于读者的 理解,本文会对一些基本的知识背景作简单的描述,介绍一些相关的概念和项目 的软硬件环境情况。在软件的设计说明中,本文对于软件的功能的叙述不会太多, 主要着眼点放在软件开发过程中遇到的一些技术难点和解决方法上。同时为了更 好的说明 HRMS 的作用,加深读者对企业信息化作用的理解,本文还将对在 NFCP 实施的 HRMS 中的考勤系统的工作流程进行完整的介绍。最终完成的软件 产品得到了用户的使用和肯定,项目也得以顺利完成。 2

15、第二章第二章 软硬件环境概述软硬件环境概述 2.1 软件环境说明 2.1.1ASP 的简介 ASP(Active server pages)是一种类似 HTML(Hypertext Markup Language 超文本标识语言)、Script 与 CGI(Common GAteway Interface 通用网关接口)的结 合体,但是其运行效率却比 CGI 更高、程序编制也比 HTML 更方便且更有灵活 性,程序安全及保密性也比 Script 好。HTML(Hypertext Markup Language)是一种 超文本标识语言,文件通过这种格式可以在互连网上载送浏览,用户只要使用网 页浏

16、览器工具就可以浏览这些文件,目前比较常用的工具包括 Microsoft Internet Explorer,Netscape Communicator 等,由于 HTML 文件都是由标签(tag)所组成,因 此它比较适合制作静态网页,再者,由于先天上的限制 HTML 是无法直接存取数 据库的,所以存取数据库的工作大多是依靠 CGI 来处理。ASP 不但可以包含 HTML 标签,也可以直接存取数据库及使用无限扩充的 ActiveX 控件,因此在程 序编制上要比 HTML 方便而且更富有灵活性。ASP 以 HTML 为基础,主体还是 HTML 代码,只是在需要 ASP 动态产生的地方加入 ASP

17、代码。ASP 的最终显示 结果也是 HTML 代码,可准确控制 ASP 的输出结果。 Script(脚本)是由一组可以在 WEB 服务器或客户端浏览器运行的命令组合而 成,目前在网页编制上比较流行的脚本语言包括 VBScript,JavaScript。这些脚本 大都是在客户端运行,因此,客户端可以很清楚的取得脚本的内容。所以,就安 全性而言,这些客户端的脚本语言的确有危险。ASP 虽然具有脚本语言的方便性, 但由于他是在 WEB 服务器端运行,运行后再将运行结果以 HTML 格式传送至客 户端的浏览器。因此 ASP 与一般的脚本语言相比,要安全的多。 2.1.2ASP 的特点和原理 ASP 可

18、以和 HTML 或其它脚本语言(VBScript,JavaScript)相互嵌套 ASP 是一种在 WEB 服务器端运行的脚本语言,程序代码安全保密 ASP 以对象为基础,因此可以使用 ActiveX 控件继续扩充其功能 如果浏览器向 IIS/PWS 请求的是.HTML 文件,那么 IIS/PWS 会直接把文件 的内容传给浏览器.但如果浏览器向 IIS/PWS 请求的是.ASP 文件,则 IIS/PWS 会首 先解释文件.IIS/PWS 解释.ASP 文件的过程中,遇到 HTML 标记或一般文字时会直 接把读区的内容传给浏览器.但如果遇到的标记,则会把其中的内容视为程 序,然后解释执行,但程序

19、经过 IIS/PWS 解释执行后,其源程序代码不会传给浏览 器,而只是把可显示的运行结果传给了浏览器 Active Server Page 技术为应用开发 商提供了基于脚本的直观、快速、高效的应用开发手段,极大地提高了开发的效 果。ASP 脚本是采用明文(plain text)方式来编写的。 ASP 脚本是一系列按特定 语法(目前支持 vbscript 和 jscript 两种脚本语言)编写的,与标准 HTML 页面混 合在一起的脚本所构成的文本格式的文件。当客户端的最终用户用 WEB 浏览器 通过 INTERNET 来访问基于 ASP 脚本的应用时,WEB 浏览器将向 WEB 服务器 发出

20、HTTP 请求。WEB 服务器分析、判断出该请求是 ASP 脚本的应用后,自动 通过 ISAPI 接口调用 ASP 脚本的解释运行引擎(ASP.DLL) 。ASP.DLL 将从文件 2 系统或内部缓 冲区获取指定的 ASP 脚本文件,接着就进行语法分析并解释执行。最终的处理结 果将形成 HTML 格式的内容,通过 WEB 服务器“原路“返回给 WEB 浏览器,由 WEB 浏览器在客户端形成最终的结果呈现。这样就完成了一次完整的 ASP 脚本 调用。若干个有机的 ASP 脚本调用就组成了一个完整的 ASP 脚本应用。 2.2 考勤机硬件设备说明 NFCP 采用的是深圳市俊思电子有限公司生产的 J

21、S2000 智能考勤机,采用的 打卡形式是非接触感应 IC 卡打卡。 2.1.1 产品简述 JS2000 智能考勤机的外形如图 2-I 所示。 图 2-1 JS2000 智能考勤机的正面和背面 其产品的主要功能特点有: .非接触 IC 卡打卡。 .大容量、高可靠信息存储。 .具有在线提示。 .语音提示。 .背光照明。 .内置后备电源。 .大屏幕液晶。 .提供系统信息、打卡信息和卡片信息查询。 .密码保护。 .闹钟功能。 .可单机/多机工作(自带 RS232 和 RS422 接口)。 .可发布短消息到液晶显示器上滚动显示。.提供门禁接口信号和电铃接口信号。 2.2.2 两种接口规格说明 (1)

22、RS232 接口 3 接口物理规格:DB9/Female,接口的各引脚信号如表 2-1 所示 表 2-1 JS2000 RS232 接口信号 (2) RS422/RS485 接口 接口物理规格:双 RJ45,如图 2-2 所示。其各引脚的节点信号如表 2-2 中所列。 图 2-2 JS2000 RJ45 接口 表 2-2 JS2000 RJ45 接口信号 2.2.3 与电脑联机方式 JS2000 同时提供两种联机方式:RS232 和 RS422o RS232 通讯距离 15m仅限 于单机通讯,简单易行,不需要附加设备;RS422 通讯距离 1200M,可用于单机、 4 多机通讯,长距离需要布线

23、,需要 RS232/RS422 转换器。 (1)通过 RS23 将随机配置的 RS232 通讯线一端插入 JS2000 背面的 9 芯 RS232 插座,另一端 与管理电脑串行口(COM1 或 COM2)相连。如图 2-3 所示。 图 2-3 通过 RS232 的联机方式 (2)通过 RS422 连接如图 2-4 所示,通过 JS2000 考勤机的 RS422 口 JP1 或 JP2 连接时,需要 RS232/RS422 转换器。由于长距离引起较大的信号损耗,应设置 120 的终端电阻。 图 2-4 通过 RS4222 的联机方式 如果需要多于一台的考勤机进行多机连接,可以采用 RS422 接

24、口进行多机连 接,多机互连的连接方式如图 2-5 所示,连接示意图如图 2-6 所示,多机联网是 通过 JPI 和 JP2 的一进一出连接(JPI 和 JP2 可以互换),最末端请连接 120。的终 端电阻。其总距离限制为 1200 米。 由于 NFCP 的员工较多,因此使用了两台 JS2000 考勤机,员工可以在任意 一台考勤机上打卡。它的联机采用的正式如图 2-6 所示的连接的方式,它使用了 0 号和 I 号两台考勤机互连,再将其接到考勤专员的电脑的 COM 串口上。图 2 一 5 通过 RS4222 的多机连接方式 5 图 2-6 RS4222 多机联机示意图 2.3 考勤机软件接口说明

25、 为了给使用者提供二次开发的机会,JS2000 智能考勤机提供了接口 ActiveX 控件 JS2KComm.OCX,用户通过调用它的属性、方法和事件,可以实现对 JS2000 考勤机的控制。其中 JS2KComm.OCX 调用了控件 MSComm.OCX 通讯控 件和 title.dll 动态库。 ActiveX 是 Microsoft 提出的一组使用 COM ( Component Object Model,部件 对象模型)使得软件部件在网络环境中进行交互的技术集。它与具体的编程语言无 关。作为针对 Internet 应用开发的技术,ActiveX 被广泛应用于 WEB 服务器以及 客户端

26、的各个方面。同时,ActiveX 技术也被用于方便地创建普通的桌面应用程 序。 串行通信控件 MSCOmm32.OCX 正是这样的一种 ActiveX 控件,它提供了使 用 RS-232 来进行数据通信的所有的协议,使用事件驱动方式来处理和解决各类 通讯软件的开发设计问题。它通过串行端口传输和接收数据,为应用程序提供串 行通讯功能。JS2KComm.OCX 则是利用 MSComm.OCX 作为基础,针对 JS2000 考勤机开发的一个 ActiveX 控件,从而能实现对考勤机的通讯和控制。利用 JS2KComm.OCX 进行二次开发的示意图如图 2-7 所示。 6 JS2KComm.OCX 接

27、口中的属性、方法及事件的说明分别见表 2-3、表 2-4 以及表 2-5。 7 其中一些主要的方法介绍如下: .设置公司名 调用方法:Public Function SetCompanyName(ByVal InString As String) As Boolean 参数 InString:设置公司名 .发布短信息 调用方法:Public Function SetShortMessage(ByVal InString As String, ByVal OptionString As String) As Boolean 参数 InString:短消息内容; OptionString 的格式为

28、:模式+开始时间+结束时间 模式固定为 00 开始时间和结束时间格式为:年月日时分如:“0001020a00”表示 2000-01-02 10:00 .读取考勤机时钟 读取属性:ReadTime 时间格式:年、月、日、星期、时、分,秒,各 2 数字(十六进制表示)如:“01 0B 1 C04091 E04,表示 2001 年 11 月 28 日星期三 09:30:04 .设置考勤机时钟 设置属性:ReadTime 时间格式:同上 .注册卡片 调用方法:Public Function WriteList (ByVal list As String) As Boolean 参数 list 设置格式

29、:标志+卡号十打卡密码+卡片类型+工号+姓名+保留 typedef struct_ LIST uchar Flag; ulong CardNum; uint Password; uchar CardType; uchar No13; /标记 /卡号 /打卡密码 /卡片类型 /工号 uchar Name(9; uchar Dump1; uchar Checksum; LIST; /姓名 /保留 /和效验 .注销卡片 调用方法:Public Function DelList(sContent As String) As Boolean 参数 sContent 设置格式:类型+数据 类型数据 8 0

30、1 位置(hex) 02 卡号(hex) 如:“010003”表示删除存储位置为 0x0003 的记录;“020f1278a5”表示删 除卡号为 0x0f1278a5 的记录 .数据采集 调用方法:Public Function ReadAllRecord(ByVal DataTypeID As Byte) As Boolean 参数 DataTypeID 为数据类型: DataTypeID=1 时,采集打卡记录 DataTypeID=2 时,采集登录 List 记录 2.4 软件开发环境简述 2.4.1 后台数据库说明 9 对于一个管理信息系统来说,后台的数据库是其存在的根本,几乎所有的相

31、关数据都是存在数据库中的,即其所管理的信息都是存在数据库中的,对于管理 者来说,相对的管理工作内容实际就是对数据库中的数据进行一系列不同的操作 而己。 Sophia HRMS 所采用的是 Microsoft SQL Server 2000 作为其后台数据库,而 需要导入的 OA 中的数据则是采用的 Oracle 8 数据库。 下面对数据库中一些常用的数据对象作个简单的介绍。 .表(TABLE) 表是包含数据库中所有数据的数据库对象。表定义为列的集合。与电子表格 相似,数据在表中是按行和列的格式组织排列的。每行代表唯一的一条记录,而 每列代表记录中的一个域。 .视图(VIEW ) 视图是一个虚拟

32、表,其内容由查询定义。同真实的表一样,视图包含一系列 带有名称的列和行数据。但是,视图并不在数据库中以存储的数据值集形式存在。 行和列数据来自由定义视图的查询所引用的表,并且在引用视图时动态生成。 对其中所引用的基础表来说,视图的作用类似于筛选。定义视图的筛选可以 来自当前或其它数据库的一个或多个表,或者其它视图。 .存储过程(PROCEDURE) 存储过程可以使得对数据库的管理、以及显示关于数据库及其用户信息的工 作容易得多。存储过程是 SQL 语句和可选控制流语句的预编译集合,以一个名称 存储并作为一个单元处理。存储过程存储在数据库内,可由应用程序通过一个调 用执行,而且允许用户声明变量、

33、有条件执行以及其它强大的编程功能。 存储过程可包含程序流、逻辑以及对数据库的查询。它们可以接受参数、输 出参数、返回单个或多个结果集以及返回值。 而对于数据库中的数据对象,可以执行的主要操作有查询(SELECT)、更新 (UPDATE )、插入(INSERT )、删除(DELETE)等。 SQL ( Structured Query Language,结构化查询语言)是关系型数据库的标准语 言。SQL 语言集数据查询(Data Query )、数据操作(Data Manipulation )、数据定义 (Data Definition)和数据控制(Data Control )功能于一体,是用于

34、对存放在计算机数 据库中的数据进行组织、管理和检索的工具。 2.4.2 前端软件开发工具介绍 Sophia HRMS 采用的是传统的三层结构构建的 C/S 结构的体系,即客户端/服 务端的模式,其连接方式采用的是 Soket 连接。在一台电脑上安装服务端程序, 将此台电脑作为服务器,设置好后台数据库的连接后,其他安装了客户端程序的 联网电脑就可以运行 HRMS 了。 Sophia HRMS 的客户端软件程序采用.NET 作为开发工具。.NET 是著名的 Microsoft 公司开发的可视化软件开发工具。.NET 被称为第四代编程语言,它具 有简单、高效、功能强大的特点。和 VC 相比,Delp

35、hi 更简单、更易于掌握,而 在功能上却丝毫不逊色;和 VB 相比,.NET 则功能更强大、更实用。 .NET 具有以下的特性:基于窗体和面向对象的方法,高速的编译器,强大的数 据库支持,与 Windows 编程紧密结合,强大而成熟的组件技术。但最重要的还是 Object Pascal 语言,它才是一切的根本。Object Pascal 语言是在 Pascal 语言的基 础上发展起来的,简单易学。 10 .NET 提供了各种开发工具,包括集成环境、图像编辑(Image Editor,以及各 种开发数据库的应用程序,如 DesktopDataBase Expert 等。除此之外,还允许用 户挂接

36、其它的应用程序开发工具 在.NET 众多的优势当中,它在数据库方面的特长显得尤为突出:适应于多种 数据库结构,从客户机/服务机模式到多层数据结构模式;高效率的数据库管理系 统和新一代更先进的数据库引擎;最新的数据分析手段和提供大量的企业组件。 第三章第三章 考勤接口软件设计考勤接口软件设计 3.1 设计准备 所设计的考勤接口软件要完成使 OA 系统和考勤机能和 HRMS 进行数据交换, 同时能对考勤机进行操作等功能。在进行具体的设计之前需要解决的几个主要技 术问题就是:考勤接口软件分别和 OA 系统、考勤机以及 HRMS 的通信方法, OCX 的调用,还有就是一些主要的数据结构的设计。 3.1

37、.1 考勤接口软件与数据库系统的通信方法 .NET 对数据库系统提供了良好的控件支持,能方便快捷的对数据库的数据 进行操作。数据库控件都具备一定的属性,程序设计人员可以在设计过程中设置 控件的多种属性,也可以在程序运行过程中通过程序来设置不见的各种属性。 这里选择 ADO 控件作为主要的数据库访问控件。ADO (ActiveX Data Objects)就 是指 ActiveX 数据对象,ADO 是 Microsoft 提出的应用程序接口( API)用以实现访 问关系或非关系数据库中的数据。像 Microsoft 的其它系统接口一样,ADO 是面 向对象的,它是 Microsoft 全局数据访

38、问(UDA)的一部分。 .NET 中的 ADO 控件包括有连接(Connection )、命令(Command)和数据集 (RecordSet)等对象。为了使用简单和方便,可采用 TADOQuery 控件。 TADOQuery 控件用来在底层的 ADO 数据源中应用 SQL 语言,使用该控件可 以访问多个表。使用 SELECT 语句从 ADO 数据源的数据表中读取数据。在 ADO 数据源的数据表或其他源数据对象中执行 INSERT, DELETE, UPDATE,ALTER TABLE 以及 CREATE TABLE 等操作。TADOQuery 控件的类层次结构如图 3 一 1 所示。 TAD

39、OQuery 控件对应的主要属性和方法的说明见表 3-1、表 3-2 11 当采用 TADOQuery 控件时,对 HRMS 的数据库支持在原有的系统中就已经 配置好,因此主要就是要对 OA 的数据库系统进行配置,参考表 3 一 1 中所说明 的 ConnectionString 属性,对于在程序运行过程中进行数据库连接时所需要配置 的就是此属性的值,其内容包括所连接的数据库的地址,数据库的名称以及登录 的用户名和密码等值,由于 OA 系统是另一家公司实施的,其系统的变更不属于 我们所掌控的范围,因此如果在程序中对此属性进行固化,将来 OA 系统做出某 些变更就可能会使得程序与 OA 数据库的

40、连接失败。为了灵活起见,同时也为了 运用简单,可采取设置配置文件的方法,这里采用 INI 文件格式。 INI 文件允许有许多个小节,每个小节又允许有多个关键字, “=”后面是该 关键字的值。值的类型有三种:字符串、整型数值和布尔值。其中字符串存储在 INI 文件中时没有引号:布尔真值用 1 表示。布尔假值用 0 表示;注释以分号“;” 开头。 在.NET 中能很方便的对 INI 文件进行操作,包括打开 INI 文件,读取关键 字的值,写入 INI 文件,删除关键字、小节操作等等,具体的操作方法这里就不 再一一描述。采用这种方法的话,就可以在运用程序所在目录里建立一个 INI 文 件“RegIn

41、fo. ini “,在其中设置的 OA 数据库的内容如下: Server Name=OA User=hrms Password=hrms 12 其中“Server”表示该小节名称为“Server“,即该小节说明的是 OA 数据库的服 务器信息。“Name=OA”表示 OA 数据库的名称为“OA“, “User=hrms“和 “Password=hrms”分别表示登录数据库的用户名和密码分别为“hrms”和+ mss-,这里都采用明码表示是为了维护和操作方便,当然也存在一定的风险。在 如此设置以后,如果 OA 数据库的配置发生了任何改变,只要修改“RegInfo. ini “文件中某些对应的值就

42、可以了。 3.1.2 OCX 在 ASP 中的使用 要对考勤机进行通信和控制,就得使用 JS2000 考勤机提供的接口 ActiveX 控 件 JS2KComm.OCXo ActiveX 控件可以在任何系统(包括运行应用程序的用户或客 户)中运行。在运行之前,必须在系统注册表中注册。通常,可以用 RegSvr32.exe 程序来进行注册,这个程序可以在各种版本的 Windows 系统中找到。也可以使用 bin 目录下的 TRegSvr32.exe 来注册,这是一个命令行的工具程序。 要在.NET 应用程序中使用 ActiveX 控件,首先要把 ActiveX 控件加到.NET 中的组件面板上。

43、这样,组件面板上将出现该 ActiveX 控件的图标。把 ActiveX 控件加到组件面板上后,就可以像其他.NET 组件一样把它拖放到窗体上使用。 INI 文件允许有许多个小节,每个小节又允许有多个关键字, “=”后面是该关键 字的值。值的类型有三种:字符串、整型数值和布尔值。其中字符串存储在 INI 文 件中时没有引号:布尔真值用 1 表示。布尔假值用 0 表示;注释以分号“;”开头。 在.NET 中能很方便的对 INI 文件进行操作,包括打开 INI 文件,读取关键字 的值,写入 INI 文件,删除关键字、小节操作等等,具体的操作方法这里就不再 一一描述。采用这方法的话,就可以在运用程序

44、所在目录里建立一个 INI 文件 “RegInfo. ini “,在其中设置的 OA 数据库的内容如下: Server Name=OA User=hrms Password=hrms 其中“Server”表示该小节名称为“Server“,即该小节说明的是 OA 数据库 的服务器信息。“Name=OA”表示 OA 数据库的名称为“OA“, “User=hrms“和 “Password=hrms”分别表示登录数据库的用户名和密码分别为“hrms”和 mss,这里都采用明码表示是为了维护和操作方便,当然也存在一定的风险。在 如此设置以后,如果 OA 数据库的配置发生了任何改变,只要修改“RegInf

45、o. ini “文件中某些对应的值就可以了。 要安装使用 JS2KComm.OCX,可进行如下操作: 从主菜单中选取 ComponentImport ActiveX 命令,这将打开 Import ActiveX 对话框。然后点击 Add 按钮,在目标文件夹中选择 JS2KComm.OCX,选中后再 点击 Install 按钮即可。操作的对话框如图 3-2 所示。 13 在安装的过程中,ASP 的编译系统会提示一些出错信息,这是由于原有的 ActiveX 控件是采用其他语言设计的,因此需要对他提示的错误地方进行部分修 改,以使得控件可以正确使用,具体的修改就不再叙述。 此外,JS2000 考勤机

46、每个都有一个序列号,当采用多机连接时,考勤机不同 的序列号就代表着不同的机器,因此考勤机序列号是考勤机的唯一标识。由于其 序列号的可选范围由 0 至 255,为了能满足扩展性能,不能将所连接的考勤机的 序列号写到程序中,而应在程序载入前就需要知道有哪几台考勤机实现了联机, 所以仍然可以采取设置配置文件的方法,即建立一个考勤机号的配置文件,将所 有联机的考勤机的序列号都写进此文件。使用已有的 INI 文件“RegInfo.ini “,在其 中加入如下的内容: Device 0=0000 1=0001 这就表示现在有两台考勤机联机,其序号分别为 0000 和 0001,如果还有更 多的考勤机联机,

47、可以按这样的一个格式在文件里自由的添加。 3.1.3 主要数据结构设计 在与数据库系统的连接和与考勤机的连接都己完成的情况下,程序中最重要 的部分就是考勤数据以及 OA 数据的结构设计了。在此,可以先定义一下考勤数 据和 OA 数据的单条记录形式如下: 14 .考勤数据记录 pInData=八 TInData;/日考勤数据 TInData=Record ErnpId:integer;/员工 ID WorkCardatring; /员工考勤卡号 Date:String;/打卡日期 Time: String;/打卡时间 end; .OA 数据记录 pOAData=TOAData; / OA 数据

48、TOAData=Record EmpId:integer;/员 I ID BDate: string; /开始日期 EDate: String;/结束日期 BTime:String; /开始时间 ETime: string; /结束时间 Sum: string;/时间总和 Style:integer; /具体类型 AType:integer;/类型:0 加班,1 假事 SalSumatring;/转换后的加班时间 end; 以上可以看到每条记录都是一系列数据的组合,要在程序中使用以上数据记 录,根据传统的方法,可以定义一个链表或者数组,每当从考勤机或者从 OA 系 统中读取一条记录时,就要向链

49、表或者数组中插入一条记录。这样做有明显的缺 陷:由于数据量比较大,比如从考勤机中读取的考勤记录一次可能有上千条,如果 采用数组的话就得占用比较大的系统存储资源;同时,对数据的操作非常的不便, 即使是要浏览一次所有的数据,也得对整个数组进行一次遍历,如果需要在中间 插入一条数据或者删除一条数据则更为麻烦;再者,不便于数据的排序,比如要使 读取的数据按打卡的日期或者打卡的时间排序,则所要采用的算法又是一个很复 杂的问题了。 由于以上三个主要缺点:耗费系统资源、操作不便、排序困难, 可以考虑将数据存储的形式改由程序外部存储,而这又有两种方式可以考虑:简单 文本文件存储和复杂的数据库文件存储。如果采用简单的文本文件形式,则可解 决上述三个缺点中的第一个,即可以减少耗费的系统资源,但对于后两个缺点操 作不便和排序困难则没有太大的改善。如果采用数据库文件的形式则可以克服以 上三个缺点,但是却对系统提出了更高的要求,即要求系统中能支持该种数据库。 为此,可采取一种两者结合的方案,即同时采用文本文件和数据库文件的形式, 文本文件作为数据的备份形式存在,而数据库文件则作为程序运行中的中间文件 形式存在。具体来说,就是在程序

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 研究报告 > 信息产业


经营许可证编号:宁ICP备18001539号-1