皕杰报表开发指南--v3.5

  • 格式:pdf
  • 大小:317.99 KB
  • 文档页数:15

皕杰商务智能平台报表产品v3.5(开发指南)北京皕杰汇智科技有限公司目录一、皕杰报表参数说明 (2)1.1S ERVLET方式 (2)1.2T AG L IB标签应用 (4)1.2.1 HTML发布报表 (4)1.2.1.1 原理和用途 (4)1.2.1.2 详细说明 (4)1.2.2 参数表单 (5)1.2.2.1 原理和用途 (5)1.2.2.2 详细说明 (6)1.2.3 多表Tab标签 (7)二、JA V A自定义扩展 (7)2.1自定义数据集 (7)2.1.1用途 (7)2.1.2类介绍 (8)2.1.3构造方法 (8)2.1.4 方法说明 (8)2.1.5. 实用示例 (9)2.2自定义事件处理类 (9)2.2.1用途 (9)2.2.2接口介绍 (9)2.2.3方法说明 (9)2.2.4实用示例 (10)2.3自定义用户工厂 (10)2.3.1用途 (10)2.3.2接口介绍 (10)2.3.3方法说明 (10)三、API编程 (12)3.1读入报表模板 (12)3.2计算报表 (12)3.3输出报表 (13)3.4分页设置 (14)3.5编辑报表模板 (14)一、 皕杰报表参数说明在web 报表的实际应用过程中,有一些数据及页面显示效果是要根据用户的实际需要皕进行调整的,为了满足用户的这一需求,杰报表设计了一些内置参数。

皕杰报表中,将参数传递给报表引擎的方式有两种:一是Servlet 方式,二是Taglib 标签方式。

1.1 Servlet 方式采用Get 或Post 方式的url 请求ReportEmitter ,并在后面拼接请求的内置参数名称和值,参数之间用“&”符号连接。

例如:http://IP 地址:服务器端口/web 路径/ReportEmitter?rpt=Demo/参数报表/时间参数.brt&params=year=1997;area=华南区。

其中,“rpt ”和“params ”就是内置参数名称;“Demo/参数报表/时间参数.brt ”和“year=1997;area=华南”为内置参数的值。

注意:要把内置参数和用户参数区分开,内置参数是报表系统内部定义好的参数,指定了参参数说明见下表:数名称和参数值的类型;用户参数是用户在设计报表时的自定义参数,例子中的“year ”和“area ”就是用户自定义参数。

本章所提到的“参数”一词,均皕指杰报表的内置参数。

是否参数名参数说明 参数值 缺省值必填rpt 是 指定报表模板报表模板的路径无brf 否 报表模板是否为brf 文件 true 或false false rptobj否指定Object 类型的报表模板Object 对象 无emitter 否 报表的输出方式 为html 文件xls 另存为Excel 文件topdf 另存为PDF 文件txt 另存为TXT 文件rint 输出到打印tohtmltohtml 另存totop params 否报表模板中的用户自定义参数参数名1=参数值1;参数同报表模,格式为“params=自定义参数名称1=参数值1;自定义参数名称2=参数值2;……” 名2=参数值2;…… 板中的参数名和默认值参数名是否必填参数说明 参数值 缺省值vars 否报表模板中的用户自定义变量,格式为“vars=变量名1=变量值1;变量名2=变量值2;……”变量名1=变量值1;变量名2=变量值2;……同报表模板中的参数名和默认值page 否指定显示页的序号,即要显示第几页,当序号不存在时,默认设为缺省值正整数 1rfscache 否是否刷新缓存 true或false falsepagecap 否html页面上每页显示的行数正整数同设计器中报表模板的设置rptwidth 否报表在web上的输出宽度整数或百分比 750 rptheight 否报表在web上的输出高度整数或百分比 500 fitwidth 否报表宽度是否自适应拉伸 true或false falsetoolbardisplay 否工具条在页面上的显示位置top-在表格上方显示bottom-在表格下方显示none-不显示工具条bottomxlsbtn 否工具条中是否显示整页导出Excel按钮true或false truexlsbtn1 否工具条中是否显示分页导出Excel按钮true或false truepdfbtn 否工具条中是否显示导出PDF按钮true或false truedocbtn 否工具条中是否显示导出DOC按钮true或false trueprintbtn 否工具条中是否显示打印按钮true或false TrueReportConfigReload 否配置文件热加载接口无无注:1、当“brf=true”时,rpt参数的参数值所指向的报表模板应为brf文件。

2、“rpt”和“rptobj”两个参数必须设置一个,并且只能这只一个。

1.2 TagLib标签应用1.2.1 HTML发布报表1.2.1.1 原理和用途通过定义Tag 皕标签的属性及其值,在不需用户调用杰API 情况下,用tag标签完成报表的解析及运算,并按用户配置的属性要求将HTML 文件流输出到客户端。

1.2.1.2 详细说明报表在JSP文件中用<prefix:report>标签来发布,prefix是用户在JSP文件头中引用tag 标签时指定的前缀名。

该定义语句如下所示:<%@ taglib prefix="bios" uri="/BiosReportTags" %> 此定义语句必须写在JSP的开头,其中prefix的值可以自己指定,但tag标签中的前缀必须与其保持一致。

然后在要发布报表的地方用上面介绍的tag标签来发布,如:<bios:report rpt="<%=rpt%>" params="<%=params%>" ……/>此标签的属性说明见下表:(属性名都是大小写相关,属性值必须放在双引号中)参数名是否必填参数说明参数值缺省值rpt 是指定报表模板报表模板的路径无brf 否报表模板是否为brf文件 true或false rptobj 否指定Object类型的报表模板Object对象无params 否报表模板中的用户自定义参数参数名1=参数值1;参数名2=参数值2;……同报表模板中的参数名和默认值vars 否报表模板中的用户自定义变量变量名1=变量值1;变量名2=变量值2;……同报表模板中的参数名和默认值rfscache 否是否刷新缓存 true或false falsepagecap 否 html页面上每页显示的行数正整数同设计器中报表模板的设置rptwidth 否报表在web上的输出宽度整数、百分比、脚本表达式750是否参数名 参数说明 参数值缺省值必填 rptheight 否 报表在web 上的输出高度 整数、百分比、脚本表达式 500fitwidth否报表宽度是否自适应拉伸 true 或false falsetoolbardisplay 否 是否显示工具条top-在表格上方显示 bottom-在表格下方显示 none-不显示工具条truexlsbtn 否 工具条中是否显示整页导出Excel 按钮true 或false truexlsbtn1 否 工具条中是否显示分页导出Excel 按钮true 或false truepdfbtn 否 工具条中是否显示导出PDF 按钮true 或false truedocbtn 否 工具条中是否显示导出DOC 按钮true 或false trueprintbtn 否 工具条中是否显示打印按钮true 或false true name否reportSet 标签中,report 元素需设置该属性,做为tab 标签页的标题字符串无1.2.2 参数表单1.2.2.1 原理和用途在有些报表中,需要向报表传递一些参数或变量,传统的方式是要用户定义参数表单,如:<form method="post" action="<%=request.getContextPath()%>/report.jsp"> <table><tr style ="FONT-SIZE: 12px; FONT-FAMILY: 宋体"> <td>性别</td> <td><select name ="sex"> <option value =0>男</option> <option value =1>女</option> </select> </td><td>&nbsp;<input type =submit value ="提交"></td> </tr> </table> </form>这样做起来会很麻烦,因为所建参数要与报表中的参数或变量个数一致,名称及大小写一致,然后从requeset 中获取参数拼成字符串,通过url 或tag 标签传递到报表中。

为了节省用户的开发时间,可以使用Tag 标签生成参数表单,用户根据需要,在设计器中将参数及变量设计成参数表单形式,为每个参数或变量设定显示名称、控件类型及所占列数等属性,在WEB 服务端通过<prefix:param>标签对本参数模板解析生成对应的参数表单。

设计参数报表 WEB 端显示效果1.2.2.2 详细说明报表在JSP 文件中用<prefix:param>标签来发布,prefix 是用户在JSP 文件头中引用tag 标签时指定的前缀名。

该定义语句如下所示:<%@ taglib prefix="bios" uri="/BiosReportTags" %>此定义语句必须写在JSP 的开头,其中prefix 的值可以自己指定,但tag 标签中的前缀必须与其保持一致。

然后在要发布报表的地方用上面介绍的tag 标签来发布,如: <bios:param rpt ="<%=rpt%>" target="reportFrame"……/> 此标签的属性说明见下表:(属性名都是大小写相关,属性值必须放在双引号中)参数名 是否必填 参数说明 参数值 缺省值rpt 是 指定报表模板报表模板的路径 无target 否 连接页面在浏览器中的打开形式 _blank/_self/_parent/指定frame 的name 属性值 formId 否 为生成的表单指定id 属性值 字符串action 否 指定表单提交路径 表单提交到的servlet 或jsp 路径字符串width 否 参数表单页面显示宽度 整数、百分比、脚本表达式 height 否 参数表单页面显示高度 整数、百分比、脚本表达式 hiddenParams否隐藏的参数参数名1=参数值1;参数名2=参数值2;……hiddenVars 否 隐藏的变量 变量名1=变量值1;变量名2=变量值2;……1.2.3 多表Tab 标签报表在JSP 文件中用<prefix:reportSet>标签来发布,prefix 是用户在JSP 文件头中引用tag 标签时指定的前缀名。