FineReport简明教程

软件安装及帮助

  1. 软件下载地址:http://www.finereport.com/products/trial
  2. 注册及获取激活码:http://www.finereport.com/products/login需要手机接收验证码或者致电获取。注册成功后收到邮件包含用户名密码及激活码。
  3. 帮助系统:http://www.finereporthelp.com/或者安装后帮助->学习教程
  4. 第一次安装后打开软件需要填入获取的验证码。试用版本禁用了一些功能,限制了最大连接数。
  5. 系统演示。帮助->演示

可以配置的管理员用户名和密码,这些信息保存在:

%安装目录%\WebReport\WEB-INF\resources\privilege.xml

定义数据连接 打开模版设计器软件 服务器->定义数据连接

支持JDBC和JNDI,JDBC包括Oracle、Mysql、DB2、SQLServer、Sybase、Access等只需填写URL和用户名密码即可。数据连接保存在:

%安装目录%\WebReport\WEB-INF\resources\datasource.xml

设计报表 打开模版设计器软件 新建工作簿,在数据集面板新建数据库查询,将查询到的字段拖拽到工作簿中,添加表头等即可。我们设计了报表GoodsList.cpt。默认设计好的报表保存目录是:

%安装目录%\WebReport\WEB-INF\reportlets。

部署 可以选择独立部署或者嵌入式部署。由于是集成到已有项目中,因此选择嵌入式部署。

  1. 将%FineReport_HOME%\WebReport\WEB-INF目录下面的classes,lib,reportlets,resources四个目录复制到%项目目录%\WEB-INF下。
  2. 整合web.xml文件

tomcat集成只需要在已有工程的web.xml中添加相应的servlet与servlet-mapping子元素。

将%FineReport_HOME%/WebReport/WEB-INF下的web.xml中如下的部分复制到 %项目目录%/WEB-INF下的web.xml中,在最后一个servlet之后插入:

<servlet>
    <servlet-name>ReportServer</servlet-name>
    <servlet-class>com.fr.web.ReportServlet</servlet-class>
    <load-on-startup>0</load-on-startup>
</servlet>
<servlet-mapping>
    <servlet-name>ReportServer</servlet-name>
    <url-pattern>/ReportServer</url-pattern>
</servlet-mapping>
  1. 检测是否部署成功

重新启动Tomcat, 启动浏览器,在地址栏输入

http:/ip:服务器端口号/项目所在目录/ReportServer,能成功进入管理平台,则表明FineReport应用部署Tomcat服务器成功。

ReportServer?op=fs是数据决策系统

ReportServer?op=fr_platform是FR管理平台,这里可以设置管理员账号以及自定义身份验证。

Web页面集成 FineRepor报表可以通过Frame框架直接集成到Web页面中,Web页面可以有很多种脚本语言写的,比如Jsp、Asp、PHP、VB、JavaScript、Html 等,可以将报表嵌入在Frame框架内从而显示在Web页面中。

若您希望自己系统页面中的按钮调用FineReport内部现成的js方法如(打印方法),需要加载FineReport的js文件,实际情况下,一个页面中可能不仅有报表部分,还会加载您自己的js文件,为避免引起不必要的js冲突,我们建议将报表内容显示在Frame中,而不要显示在div中。这样调用FineReport内部的js方法时,可以不用引入FineReport的js文件,直接通过Frame获取报表再调用方法,具体可参考分页文档中自定义工具栏节点。

时间: 2024-11-03 23:27:38

FineReport简明教程的相关文章

F#简明教程二:F#类型系统和类型推断机制

在上一篇教程<F#与函数式编程概述>中我们了解到F#和函数式编程的一些特点,更多关于F#语言和函数式编程的介绍可以参考51CTO之前对微软MVP赵颉老师的专访<TechED 09视频专访:F#与函数式编程语言>.本节教程我们将学习到F#的一些基础原理,在开始之前,让我们先温习一下我们的Hello World代码: #light System.Console.WriteLine("This is one hello") printfn "This is

XML简明教程目录

XML简明教程第1课: 处理XML元素 XML简明教程第2课: 处理XML文档 XML简明教程第3课 处理XML数据岛 XML简明教程第4课: 使用XML对象模型 XML简明教程第5课:使用XML名域 XML简明教程第6课 使用XML Schema XML简明教程第7课:在XML文档中使用数据类型 XML简明教程第8课:访问经过类型定义的XML值 XML简明教程第9课:使用C++ XML DSO XML简明教程第10课 :C++ XML DSO中使用主/细节特征 XML简易教程之一 XML简易教

XSL简明教程目录

XSL简明教程(1)XSL入门 XSL简明教程(2)XSL转换 XSL简明教程(3)在客户端的实现 XSL简明教程(4)在服务器端的实现 XSL简明教程(5)XSL的索引 XSL简明教程(6)XSL过滤和查询 了解WEB页面工具语言XML(一)背景 了解WEB页面工具语言XML(二)定义 了解WEB页面工具语言XML(三)支持工具 了解WEB页面工具语言XML(四)应用分类 了解WEB页面工具语言XML(五)好处 了解WEB页面工具语言XML(六)展望

Linux防火墙iptables简明教程

  前几天微魔部落再次遭受到个别别有用心的攻击者的攻击,顺便给自己充个电,复习了一下linux下常见的防火墙iptables的一些内容,但是无奈网上的很多教程都较为繁琐,本着简明化学习的目的,微魔为大家剔除了许多冗余的内容,提取出尽量多的精华部分成文,和大家共同学习,本文涉及的内容包括如下 Linux防火墙iptables简明教程 1.安装iptables 2.查看现有的iptables规则 3.删除某iptables规则 4.清除现有iptables规则 5.创建规则 6.设置开机启动 7.保

Python类的定义、继承及类对象使用方法简明教程

  这篇文章主要介绍了Python类的定义.继承及类对象使用方法简明教程,本文用浅显易懂的语言讲解了类的定义.继承及类对象的使用,非常实用易懂,需要的朋友可以参考下 Python编程中类的概念可以比作是某种类型集合的描述,如"人类"可以被看作一个类,然后用人类这个类定义出每个具体的人--你.我.他等作为其对象.类还拥有属性和功能,属性即类本身的一些特性,如人类有名字.身高和体重等属性,而具体值则会根据每个人的不同;功能则是类所能实现的行为,如人类拥有吃饭.走路和睡觉等功能.具体的形式如

Jquery插件编写简明教程

 这篇文章主要介绍了Jquery插件编写简明教程,jquery插件开发实例,需要的朋友可以参考下  代码如下: /*  1.jQuery插件文件名推荐命名为 jquery.[插件名].js 以免和其他javascript库插件混淆.例如命名为jquery.color.js  2.所有的对象方法名都应当附加到jQuery.fn对象上而所有的全局函数都应当附加到jQuery对象本身上.  3.在插件内部,this指向的是当前通过选择器获取的jquery对象,而不像一般方法哪样,例如chick()方法

Java 8简明教程

原文地址 本文由 ImportNew - 黄小非 翻译自 winterbe.欢迎加入翻译小组.转载请见文末要求. ImportNew注:有兴趣第一时间学习Java 8的Java开发者,欢迎围观<征集参与Java 8原创系列文章作者>. 以下是<Java 8简明教程>的正文. "Java并没有没落,人们很快就会发现这一点" 欢迎阅读我编写的Java 8介绍.本教程将带领你一步一步地认识这门语言的新特性.通过简单明了的代码示例,你将会学习到如何使用默认接口方法,La

C++多任务编程简明教程 (1) - C++的多任务其实很简单

C++多任务编程简明教程 (1) - C++的多任务其实很简单 用库的方式无法实现彻底的线程安全!我们需要C++11 与很多同学交流的时候发现,一想到用C++写多线程,还是想到pthread这样的库的方法实现. 但是,十几年前的研究就证明了,线程安全是无法用库的形式来提供的,有兴趣的同学可以参见原文:http://www.hpl.hp.com/techreports/2004/HPL-2004-209.pdf 解释需要大量的篇幅,作为快餐式的教程,我们只讲结论. 十几年过去了,CPU的乱序执行,

Android编程Widget创建与使用方法简明教程_Android

本文实例讲述了Android编程Widget创建与使用方法.分享给大家供大家参考,具体如下: Android reference中有关于如何建立一个Widget的详细方法,这里简要说明一下,详情可以查看Android SDK中自带的reference. 要建立一个Widget,分为如下几个步骤: (1) 创建一个类,让其继承类AppWidgetProvider,在AppWidgetProvider中有许多方法,例如onDelete(Context,int[]),onEnable(Context)