查询表单标签

原理和用途

在有些报表中,需要向报表传递一些参数或变量,传统的方式是要用户定义查询表单,如:

  <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><input type=submit value="提交"></td>
      </tr>
    </table>
  </form>

这样做起来会很麻烦,因为所建参数要与报表中的参数或变量个数一致,名称及大小写一致,然后从requeset中获取参数拼成字符串,通过url或tag标签传递到报表中。为了节省用户的开发时间,可以使用Tag标签生成查询表单,用户根据需要,在设计器中将参数及变量设计成查询表单形式,为每个参数或变量设定显示名称、控件类型及所占列数等属性,在WEB服务端通过<prefix:query>标签对本参数模板解析生成对应的查询表单。

报表在JSP文件中用<prefix:query>标签来发布,prefix是用户在JSP文件头中引用tag标签时指定的前缀名。该定义语句如下所示:

<%@ taglib prefix="bios"  uri="http://www.bijetsoft.com/BiosReportTags" %> 

此定义语句必须写在JSP的开头,其中prefix的值可以自己指定,但tag标签中的前缀必须与其保持一致。 然后在要发布报表的地方用上面介绍的tag标签来发布,如:

<bios:query rpt="<%=rpt%>" …/>

此标签的属性说明见下表: (属性名都是大小写相关,属性值必须放在双引号中)

参数名

是否必填

参数说明

参数值

缺省值

rpt

指定报表模板

报表模板的路径

action

指定表单提交路径

表单提交到的servlet或jsp路径字符串

 

frmwidth

查询表单页面显示宽度

整数、百分比、脚本表达式

 

params

查询界面中的默认参数值

param1=value1;param2=value2 见注1

 

vars

查询界面中的默认变量值

param1=value1;param2=value2 见注1

 

enableevent

是否执行查询表单监听

true或false

true

rptskin

报表在web上的显示的皮肤颜色

见注2

 

rfscache

是否刷新缓存

true或false

false

注意

  1. 如果参数为复选框等类型,可使用 param1=bios_select_all 进行默认全选
  2. 该参数对应于报表服务器的report_res目录下对应的skin文件的后缀名称。例如:“&rptskin=red”,对应于【skin-red】文件夹。
    如果你想要增加样式主题,具体步骤:①、可以复制【skin-red】文件夹 ②、把red修改为你设置的名称,例如“green” ③修改复制后的文件夹下的css样式表中的属性。再调用参数值的时候只需要调用【-】后的名称,例如:“&rptskin=green”。