利用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. jquerymobile动态添加元素之后

      jquerymobile动态添加元素之后有些不能被正确渲染的解决方法:listview: 添加 jq(".detail").listview("refresh&quo ...

  2. Qt之模式、非模式对话框

    关于“模式”和“非模式”对话框,相信大家都比较熟悉,但其中有一个可能很多人都比较陌生,介于两者之间的状态,我们称之为“半模式“. 模式对话框 描述 阻塞同一应用程序中其它可视窗口输入的对话框.模式对话 ...

  3. Unable to parse request org.apache.commons.fileupload.FileUploadBase$IOFileUploadException: Processing of multipart/form-data request failed. null

    最近做一个web项目中有上传文件的功能,已经写出并在本地和部署到服务器上测试了好几个文件上传都没问题(我用的是tomcat).部署上服务器,上传图片时有的图片大就回在tomcat日志报如下错误: Un ...

  4. [Win10应用开发] 使用 Windows 推送服务

    前言 Windows 推送服务(WNS)也是 Win10 通知机制中的一种,今天与大家一起学习一下有关WNS的相关知识.使用 Windows 推送服务的前提是你需要有一个微软开发者账号,这样才能得到一 ...

  5. Istio官方文档中文版

    Istio官方文档中文版 http://istio.doczh.cn/ https://istio.io/docs/concepts/what-is-istio/goals.html 为什么要使用Is ...

  6. JS动态增加删除UL节点LI及相关内容示例

    <ul id="ul"> <li id=1>11111111111111111<a href="javascript:del(1);&quo ...

  7. css3 一个简单的静态立方体

    <meta charset="utf8"> <style> .cube { position: absolute; left: 50%; top: 250p ...

  8. (转)Java NIO框架

    java nio系列文章,转自:http://ifeve.com/overview/ java nio selector深度解析1:http://blog.csdn.net/haoel/article ...

  9. 尼康D90多点对焦

    11点对焦 上市时间 2008 类型 单反数码相机 对焦方式 单区域AF:在选择区域内只对焦于目标可以从11个AF点传感器中的任意一个中选择 动态区域AF:对焦于选择区域的目标上,如果目标离开原来位置 ...

  10. 一次Tomcat6.0.33版本号与6.0.44版本号差异所引发的问题

    前序(公司应用为Web应用, 部署serverLinux + Nginx + Tomcat ) 一天收到公司报警邮件,显示个别机器方法调用严重超时,寻常都是在100ms以内响应的方法,突然某段时间响应 ...