利用EasySQLMAIL实现自动填写Excel表格并发送邮件

转自:http://blog.sina.com.cn/s/blog_1549483b70102witg.html

前一篇博文中记录了“利用EasySQLMAIL实现自动数据提取和邮件发送功能”,里面的方法只能将SQL语句查询出来的数据一行一行地原样转换到Excel表格中。但我们有一些Excel表格的样式是设计好了的,比如这种表格:

 
 
表格中的单元格都是事前设计好的。每星期都需要执行几个SQL语句,并且把SQL语句的统计结果填写到表格中,发给其他部门。
 
仔细研究了EasySQLMAIL的手册和网站上的教程,发现其实可以用这个工具来实现自动填写和发送。
经过两天的配置和测试,终于成功。在这里把方法记录一下。
 
1、先设计好Excel模板表格。主要是把表格中要填数字的地方用数据单元格标识出来,这样EasySQLMAIL才能识别出哪些地方需要填写数据。修改后的模板变成这样:
2、为了让统计表能够扩展,需要在A5:F5的范围内创建一个“名称”。选中A5:F5这个范围,按Ctrl+F3,名称输入"销售统计表":
3、设置合计行公式。也是要在B3,C3,D3,E3,F3上分别创建“名称”,创建后的名称像下面这样:
 
4、设置合计行的公司为SUM(销售量)、SUM(销售金额)、SUM(购物卡支付) 、SUM(现金支付)、SUM(POS机支付)。就是将SUM公式中的单元格编号换成“名称”。
 
5、在EasySQLMAIL中创建一个任务,把做好的附件模板上传到系统中。
 
6、设置取数的SQL语句。取数SQL一共有两个,一个是取分公司名称和统计时间的SQL,还有一个是取统计表内容的SQL。
先设置取分公司名称和统计时间的SQL:

 
然后设置取统计表数据的SQL。注意,“命名区域”要选择刚才新建的名称“销售统计表”。

 
附件模板设置好后,再简单设置一下邮件正文和收件人等内容,最后再设置一下执行计划:

执行计划的起始时间要选成星期一的日期,凌晨3点运行一次。

 
下面是执行后的效果:
 

这样设置后,任务每个星期一早上3点执行,并且把表格填好后发给指定的人。例子中的查询条件stat_date = to_date('2015-10-12','yyyy-mm-dd')在实际使用的时候需要改成stat_date = trunc(sysdate),就是取当天的日期。

 
这几天比较忙,等空下来再研究一下在邮件里面显示统计图表的问题。
 
更详细的配置方法可以参考EasySQLMAIL的官方网站上的手册和文档。
 
http://www.easysqlmail.com 官方网站
 
http://www.easysqlmail.com/manual/index.html 操作手册
 
http://www.easysqlmail.com/docreader.php?id=346 EasySQLMAIL使用教程-使用自定义Excel文件模板
 
http://www.easysqlmail.com/docreader.php?id=348 在Excel表格中使用命名区域

利用EasySQLMAIL实现自动填写Excel表格并发送邮件(2)的更多相关文章

  1. 利用EasySQLMAIL实现自动数据提取和邮件发送功能 (1)

    转自:http://blog.sina.com.cn/s/blog_1549483b70102wioy.html 最近几个月每天都在发通报.过程很繁琐,动作很机械,整个人就是一部机器,执行SQL,填E ...

  2. Java利用POI实现导入导出Excel表格示例代码

    转自:https://www.jb51.net/article/95526.htm 介绍 Jakarta POI 是一套用于访问微软格式文档的Java API.Jakarta POI有很多组件组成,其 ...

  3. Python 利用Python操作excel表格之openyxl介绍Part2

    利用Python操作excel表格之openyxl介绍 by:授客 QQ:1033553122 欢迎加入全国软件测试交流qq群(群号:7156436) ## 绘图 c = LineChart()    ...

  4. EXCEL表格单元格中包含数字英文和汉字,如何自动去掉汉字,保留英文和数字

    EXCEL表格单元格中包含数字英文和汉字,如何自动去掉汉字,保留英文和数字 Function 求数字和字母(对象 As String) '在文本与数字混杂中提取数字和字母   Dim myReg    ...

  5. 利用Apache POI 实现简单的Excel表格导出

    1.利用POI API实现简单的Excel表格导出 首先假设一个学生实体类: package com.sun.poi.domain; import java.io.Serializable; impo ...

  6. 利用java反射机制实现读取excel表格中的数据

    如果直接把excel表格中的数据导入数据库,首先应该将excel中的数据读取出来. 为了实现代码重用,所以使用了Object,而最终的结果是要获取一个list如List<User>.Lis ...

  7. Python 利用Python操作excel表格之openyxl介绍Part1

    利用Python操作excel表格之openyxl介绍 by:授客 QQ:1033553122 欢迎加入全国软件测试交流qq群(群号:7156436),免费获取以下性能监控工具(类似Nmon精简版) ...

  8. Python 利用Python操作excel表格之xlwt介绍

    利用Python操作excel表格之xlwt介绍   by:授客 QQ:1033553122 直接上代码   案例1 #!/usr/bin/env python # -*- coding:utf-8 ...

  9. 详解如何利用FarPoint Spread表格控件来构造Winform的Excel表格界面输入

    我们先来简单了解一下WinForm和FarPoint,WinForm是·Net开发平台中对Windows Form的一种称谓.而FarPoint是一款模拟EXCEL的控件.它可以根据用户的要求实现很大 ...

随机推荐

  1. oracle数据库访问order by不起作用分析

    `SELECT * FROM student ROWNUM <= 1 ORDER BY id ASC`执行结果,返回结果没有排序.使用驱动"System.Data.OracleClie ...

  2. lnmp集成开发环境安装pdo_dblib扩展

    php连接mssql,获取的结果中文乱码,pdo_dblib扩展使用的是apt-get install php5-sybase方法安装的,尝试了修改freetds.conf php.ini 文件编码 ...

  3. dva学习---effects异步中通过select获取当前的state

    根据 在组件中dispatch一个action的例子中,如果要在effects中对于param数据和当前的state数据进行再出处理,这里怎么获取state呢?采用select,如下:       e ...

  4. nginx 403 forbidden 二种原因

    nginx 403 forbidden 二种原因 引起nginx 403 forbidden有二种原因,一是缺少索引文件,二权限问题.今天又遇到 了,顺便总结一下. 1,缺少index.html或者i ...

  5. String类的常用成员方法

    1.  构造方法: String(byte[] byte,int offset,int length);这个在上面已经用到. 2.  equalsIgnoreCase:忽略大小写的比较,上例中如果您输 ...

  6. 关于pom.xml中的MAVEN出错处理

    原因:maven与pom的版本不一致 解决方法: 1.升级maven 插件: help--install..... 2.根据出错的信息,找到没有下载成功的本地仓库目录 ,将目录下的文件删除,再在项目上 ...

  7. c# 将html添加进剪贴板(带格式)

    调用: ClipboardHelper.CopyToClipboard("<h1>hello world</h1>", ""); /// ...

  8. 【python】pyqt练习

    import sys from PyQt4.QtCore import * from PyQt4.QtGui import * import ui_price class PriceDlg(QDial ...

  9. grid++report中篇

    QQ:1187362408 欢迎技术交流和学习 grid++report中篇(grid++report): TODO: 1.grid++report:简单介绍( Grid++Report 是一款高性能 ...

  10. FOJ 1402(dp推规律)

    推规律吧 /** 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 ...