基于.NET技术与Excel文件的工资条邮件系统的设计与实现

点赞:7019 浏览:20481 近期更新时间:2024-02-11 作者:网友分享原创网站原创

由于Excel的方便灵活,不少单位的财务部门仍以其作为工资核算的载体,该文介绍通过.NET开发技术,直接读取Excel文件,对数据格式无需二次转换,通过电子邮件的方式,实现目前比较流行的电子工资条,并给出了系统的关键代码和使用建议.

关 键 词 :.NET;TP;Excel

中图分类号:TP317 文献标识码:A 文章编号:1009-3044(2013)33-7436-02

Excel拥有方便快捷且功能强大的数据处理能力,目前,大部分中小型企事业单位的工资核算都是以Excel文件作为其常见载体,我校也是如此.大部分单位都是由银行怎么发表工资,工资条仍由单位自己制作,制作工资条是财务部门每月的一项基本工作,其非常繁琐,一般步骤都是先打印,再裁剪,最后利用信封分发给员工,显然费时、费力、效率低,还容易丢失,导致泄密.受财务部门委托,为其开发一款类似银行信用卡对账单功能的小软件,解决其工作中的困扰,提高工作效率.

1.平台与技术的选择

1.1 .NET

.NET平台是微软公司近几年推出的一个全新的开发平台,它融合了多种开发语言和开发技术,具备较高的集成度和高效开发的特点,受到了广大开发爱好者的欢迎.其为配合.NET平台而全新打造的C#开发语言也是易用且强大,该平台的内置组件非常丰富,包含了文件、通信、邮件等内置类,非常适合基于网络技术的编程项目.结合自身所学,综合考虑,笔者选择了.NET作为其开发平台,C#作为其开发语言.

1.2 TP

TP(Simple Mail Traner Protocol),即简单邮件传输协议.它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式,其默认端口号为25.使用TP发送邮件一般有两种方式,一种是匿名,即无需认证直接发送邮件.另外一种是必须提供用户名和的发送方式.在本例中,笔者通过注册腾讯的免费邮件怎么写作,利用其TP怎么写作器进行工资条邮件的发送,此类邮件怎么写作提供商为防止垃圾邮件,都是采用经过身份认证的TP工作方式.

在.NET平台中,提供了System.Net.Mail的命名空间,该命令空间包含用于将电子邮件发送到简单邮件传输协议 (TP) 怎么写作器进行传送的类.通过其中的MailMessage类即可轻易完成基于TP的邮件发送,使用起来非常方便.

2.设计思路及功能介绍

设计本工资条发送系统的初衷是为了减轻工作量,提高效率,尽量做到灵活多变,适应我校不同的工资模式,在对需求进行分析后,确定了几个需要解决的问题.

2.1 数据格式的选取

目前比较流行的工资软件系统都是基于特定的数据库,但结合我校的校情,笔者确定使用Excel文件作为原始数据直接使用,如图1所示.

首先,考虑到适合我校不同的发工资模式,列表项的变化比较大,而数据库的数据表格式确定,还需将Excel读取导入数据库,因此不适合使用数据库;其次,Excel功能强大,使用灵活,是财务部门直接使用的文件形式,只需在工资表的最后一列加上字段作为标识,程序将本行所有数据读取,发送到最后一列的指定即可,而前面所有字段可以任意增减,使用起来非常灵活.

2.2 基本工作流程

经过实际开发与使用,工资条发送系统的基本工作流程可以用上图表示.首先是通过数据适配器将Excel文件中的数据循环读入DataSet的数据表;其次是通过System.Net.Mail下SmtpClient类的Send方法发送至邮件怎么写作提供商;最后由邮件怎么写作提供商进行存储和转发至用户.

2.3 工资条的呈现形式

图3为笔者收到的工资条邮件截图.

根据设计目标,本系统采用与信用卡对账单类似的网页形式,利用Html代码将Excel电子表格的工资文件通过表格形式进行呈现,阅读起来清晰明朗,一目了然.

3.系统实现的关键问题

3.1 Excel文件的读取

与Excel文件链接采用OleDbConnection对象,该类位于System.Data.Oledb命名空间下,其代码如下:

OleDbConnection con 等于 new OleDbConnection();

con.ConnectionString 等于"Provider等于Microsoft.Jet.OLEDB.4.0;Data Source等于" + sourcefile + ";Extended Properties等于excel 8.0;";

con.Open();

在SQL查询语句中,数据表的名称使用Excel的默认表名,格式为:

select * from [Sheet1$]

3.2 邮件发送怎么写作

数据读取后,邮件发送是本系统的关键部分.

首先是创建邮件的内容对象,即MailMessage对象.格式为:


System.Net.Mail.MailMessage obj 等于 new MailMessage();

然后设置邮件来源(From),目的地(To),主题(Subject),内容(Body)等四个必选项目后,一个基本的邮件内容就完成了.如果需要,还可以添加附件(Attachment).

其次是创建邮件的发送对象,即SmtpClient对象.格式为:System.Net.Mail.SmtpClient clt 等于 new SmtpClient();

然后通过设置发件人的身份凭据(Credentials)和发件怎么写作器的主机名称(Host)即可发送该工资条邮件.

4.使用建议

经过笔者实际使用经验来看,如果注意以下两个文件的话,会取得更好的使用效果.

4.1 因邮件的发送需要一定的传输及相应时间,代码设计中需要使用定时器

建议每隔3-4秒执行一个循环,切不可一次执行完或间隔时间太短,否则会出现个别邮件没有发送完成,又发送下一个,造成个别邮件发送失败.

4.2 由于使用免费的邮件怎么写作提供商,出于安全和怎么写作器负荷的限制,怎么写作商一般针对免费用户会检测IP地址

如果一天发件过多,会造成失败,因此不适合大型企业使用,如果使用可以注册付费邮件账户,同样灵活方便.

5.结束语

本小软件的设计来源于工作需要,使用起来也十分好用,这主要得益于用Excel直接作为数据源,相比专门数据库而言显得灵活、方便、快捷.相对于一些工资查询系统的被动查询而言,本系统可谓是目前比较流行的主动推送,采用电子邮件发送工资条也顺应了信息社会无纸化办公的时代潮流,建议一些中小型企事业单位使用.

基于.NET技术与Excel文件的工资条邮件系统的设计与实现参考属性评定
有关论文范文主题研究: 数据库相关论文范文 大学生适用: 在职研究生论文、本科毕业论文
相关参考文献下载数量: 66 写作解决问题: 写作参考
毕业论文开题报告: 论文任务书、论文选题 职称论文适用: 期刊发表、职称评初级
所属大学生专业类别: 写作参考 论文题目推荐度: 经典题目