网络数据库以及ERP在中小型企业中日益风行,虽然ERP功能强大,但有的ERP报表系统中规范的报表较少,主要提供二次开发接口或通过如CRYSTALREPORT等其他报表工具进行管理,其实我们可以使用Excel实现部分报表查询功能。在下面我将通过一个实例,向大家介绍如何通过ODBC,用Excel建立方便的报表查询系统。
  实现原理:通过ODBC将Excel与ERP后台数据库连接起来,将数据库中的数据有选择地导入到Excel中,然后通过Excel强大的计算、汇总、筛选等功能,来弥补部分ERP系统报表较少的不足,以满足用户日常使用的需要。
  [建立ODBC连接]
  在电脑上建立一个ODBC连接,使Excel通过ODBC连接到ERP数据库(如SQLSERVER数据库)。打开“开始→设置→控制面板→管理工具→ODBC”,点击“添加”按钮。这里以SQLSERVER为例,选择“SQLSERVER”,点击“完成”。接下来对话框的服务器一项应填写公司ERP数据库所在机器的机器名或IP地址,点击“下一步”按钮。
  身份验证分为两种方式:一种是与操作系统相结合的身份验证,另一种是使用单独的SQL身份验证。在这里选取单独的SQL身份验证,登录名及密码请咨询公司的数据库管理员,然后点击“下一步”。
  在接下来的对话框中,勾选“更改默认的数据库为”,在下面填入数据库名,点击“下一步”按钮。然后点击“测试数据源”按钮以测试本机与ERP数据库的连接情况,如果见到测试成功提示说明ODBC设置成功。
  小贴士:ODBC(开放式数据库连接)是一种数据库接口技术,它能使应用程序访问以结构化查询语言(SQL)作为数据访问标准的数据库管理系统的数据。
  [将数据导入Excel]
  打开Excel的“数据”菜单,点击“导入外部数据→新建数据库查询”,在选择数据源对话框中选择刚刚建立的ODBC连接,点击“确定”按钮。
  进入查询向导界面,选择你需要的表及字段,双击即可。表和字段的定义请查询相关ERP的文档或咨询数据库管理员。
  将选择的字段按你所需要的顺序排列(多张表之间的连接将在以后提及),点击“下一步”。如果需要筛选数据,请在筛选数据对话框中输入过滤条件,点击“下一步”。
  如果需要查询的数据全部在一张表中,可以在完成对话框中选择直接将数据返回到Excel,如果数据存在于多张表中,需要进行表与表之间的连接或进行更复杂的筛选、汇总操作,选择“在MicrosoftQuery中查看数据或编辑查询”,点击“完成”。
  在Query中,可以进行表与表之间的连接,条件的过滤、格式的定义、排序、汇总等等,如果对SQL语言比较了解的人可以直接修改SQL语句。
  然后选择“将数据返回Excel”,将源数据库中的数据导入到Excel。这时将出现“外部数据”工具栏。如果需要将Excel中的数据与数据库同步,点击“刷新数据”即可。如果需要编辑刚刚建立的查询,点击“编辑查询”进行编辑。
  为了方便每次自动刷新,点击“区域属性”,在弹出的对话框中勾选“打开工作簿时自动刷新”,这样在每次打开Excel文件时得到的就是与源数据库同步的数据了。
  小贴士MicrosoftQuery是用于将数据从外部数据源(包括Access、SQLServer、Excel、文本文件)检索到Excel中的一种程序,在每次更新数据库时,自动通过源数据库中的数据来更新Excel报表和汇总数据。形象地说就是向外部数据库提出的一个问题。
  [建立属于自己的查询]
  通过以上两个步骤,你已经得到了与源数据库同步的数据,下一步就是根据自己的需要,在Excel中建立自己的查询。一般的方法是在数据源工作簿之外新建一个工作簿,通过连接的方式,将数据按自己的格式建立自己的查询。
  下面将介绍一下数据透视表。数据透视表是一种交互式报表,可快速合并和比较大量数据。在你得到大量源数据后,用数据透视表可以进行自动汇总、自动刷新。
  点击“数据→数据透视表”,选取“数据列表和数据库”和“数据透视表”,点击“下一步”。
  为数据透视表新建一个工作表,点击步骤3对话框的“布局”按钮。将汇总的项目(如部件号)放置在“行”,将要求和的字段放置在“数据”中,点击“确定”然后点击“完成”,即可得到汇总数据。同样地将该数据透视表设置为打开时自动刷新。这样每次打开Excel时就得到了最新的汇总数据。
  [总结]
  先建立ODBC,然后通过导入外部数据将源数据库的数据导入,最后通过函数或数据透视表等方法对数据进行组织,以达到自己查询的目的。以上介绍的方法不光可以用在ERP后台数据库的前台查询中,也可以从桌面数据库ACCESS或其它的数据源中导入数据到Excel,建立属于自己的查询。

注明:内容转载自http://www.233.com/cy/zhidao/diansuanhua/20090604/081403318.html

用excel打造报表查询系统的更多相关文章

  1. 基于Impala平台打造交互查询系统

    本文来自网易云社区 原创: 蒋鸿翔 DataFunTalk 本文根据网易大数据蒋鸿翔老师DataFun Talk--"大数据从底层处理到数据驱动业务"中分享的<基于Impal ...

  2. SNF开发平台WinForm-EasyQuery统计分析-效果-非常牛逼的报表查询工具

    无论是单轴曲线 .双轴曲线 .柱形图 .饼图 .雷达图 .仪表图.图表引擎全能为您轻松实现.您只需要 3 步操作(数据源准备,设计图表,挂接到您想要展示的位置)便可完成 BI 的设计. 无论是普通报表 ...

  3. 【云图】如何制作全国KTV查询系统?

    原文:[云图]如何制作全国KTV查询系统? 摘要:本文以[唱吧]531麦霸音乐节为案例,详细解读了如何导入自有数据到高德云图,并进行检索和展示.最后,调起高德mobile地图来进行路线规划和周边查询. ...

  4. TableStore最佳实践:GEO索引打造店铺搜索系统

    摘要: 如何使用TableStore打造店铺搜索系统 一.方案背景 对于一套GEO管理系统,其核心点与瓶颈在于数据库的存储性能与查询能力:一方面,存储服务需要应对海量数据的低延迟存.读,另一方面,存储 ...

  5. 使用C#和Excel进行报表开发(三)-生成统计图(Chart)

    有的Web项目选用Excel作为报表方案,在服务器端生成Excel文件,然后传送到客户端,由客户端进行打印.在国内的环境下,相对PDF方式,Excel的安装率应该比pdf阅读器的安装率要高,同时,微软 ...

  6. Android查询系统的音频(音乐播放器的核心)

    //查询系统的音频库 public static List<MusicBean> getMusicInfo(Context context){ List<MusicBean> ...

  7. [原创]java WEB学习笔记90:Hibernate学习之路-- -HQL检索方式,分页查询,命名查询语句,投影查询,报表查询

    本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...

  8. C#操作Excel开发报表系列整理(转)

    C#操作Excel进行报表开发系列共写了七篇,也已经有很久没有新东西了,现在整理一下,方便以后查阅,如果有写新的,会同时更新.需要注意的是因为Office的版本不同,实际的代码可能会有所不同,但是都是 ...

  9. atitit.导出excel的设计----查询结果 导出为excel的实现java .net php 总结

    atitit.导出excel的设计----查询结果 导出为excel的实现java .net php 总结 1. 基本的流程 查询获得list 读取jsp的table获得标题and 字段的map to ...

随机推荐

  1. 鸟哥笔记:linux系统日志文件介绍

    简单的说日志文件就是记录系统活动信息的几个文件,例如:何时.何地(来源ip).何人(什么服务名称).做了什么操作.换句话说就是:记录系统在什么时候由哪个进程做了什么样的行为时,发生了什么事件等. 日志 ...

  2. asp.net发送E-mail

    发送电子邮件也是项目开发当中经常用到的功能,这里我整理了一个发送电子邮件(带附件,支持多用户发送,主送.抄送)的类库,供大家参考. 先上两个实体类,用于封装成Mail对象. /// <summa ...

  3. sed线上经典案例之-同时替换多个字符串

    回答网友请教的一个问题:配置文件如下:[aaa]cfg1=aaaxxxx=bbbcfg2=ccccfg3=ddd[bbb]cfg1=eeeyyyy=fffcfg2=gggcfg3=hhhcfg4=ii ...

  4. 2014年度辛星css教程夏季版第二节

    第一节我们简介了一下CSS的工作流程,我相信读者会有一个大体的认识,那么接下来我们将会深入的研究一下CSS的细节问题,这些问题的涉及将会使我们的工作更加完善. *************注释***** ...

  5. 关于Mysql数据库longblob格式数据的插入com.mysql.jdbc.PreparedStatement.setBinaryStream(ILjava/io/InputStream;J)V问题分析

    当数据库字段为blob类型时 ,我们如果使用PreparedStatement中的setBinaryStream(int,InputStream,int)方法需要注意 在向blob字段类型中插入数据时 ...

  6. ios阻止锁屏 --老代码,供参考

    // Disable the idle timer [[UIApplication sharedApplication] setIdleTimerDisabled: YES];    // Or fo ...

  7. mysql的错误:The server quit without updating PID file /usr/local/mysql/data/door.pid).

    mysql错误解决: 先 参考:http://www.jb51.net/article/48625.htm 参考第四条: mysql在启动时没有指定配置文件时会使用/etc/my.cnf配置文件,请打 ...

  8. H5动画优化之路

    H5动画60fps之路 在移动端,和Native相比,H5一直都被人吐槽性能差,尤其是在动画方面. 谈到整个Web app的生命周期,一般分为四个部分: 加载 等待用户 响应用户 动画 一般情况下,首 ...

  9. 自适应单本小说网站源码,基于bootstrap+dedecms。

    具体效果:http://www.ishengxu.cc/ 基于bootstrap+dedecms,PC端与手机端自适应,广告位也都设计好了,很简单.

  10. [转载]Winform等待窗口的实现(附源代码)

    在开发Winform程序的时候,经常会用到等待窗口(如网络通讯.数据库连接等需要一定时间来执行的操作),这样可以给用户提供更好的体验. 等待窗口的主要功能是一边执行需要等待的操作,一边显示一个等待界面 ...