目录

参数的传递

用户可在调用报表时传递更多参数,从而控制报表展现时的数据权限以及报表展现时的效果。

传递参数控制数据权限

产品中实现了用户读取表中数据的权限控制,同一张表,不同用户拥有不同权限,获取的数据不同。展现报表时通过传递参数username来获取用户权限。

如下展现示例:

示例代码:

<// 引入安全校验类
   <%@ page import="com.runqianapp.security.entry.sec.Security"%> 
   // 引入模块调用入口的js文件
   <script type="text/javascript" src="/reportmis/mis2/security/js/ModuleEntry.js"></script>
   <script type="text/javascript">
      function sr2(){
            // 要传递的参数,resID:报表的资源ID,username:用户名
            var params = "{resID : '11946',username:'<%=username%>'};
          <%
            Map paramMap = new TreehMap ();
            //将报表资源ID和用户名加入安全校验信息
            paramMap.put("resID","11946");
            paramMap.put("username",<%=username%>);
            // 生成安全校验信息
            String secInfo = Security.generate(request, paramMap);
            %>
            // 调用产品报表展现模块
            // "SR"为展示报表的模块ID,params为要传递的参数,secInfo是安全验证信息,"_blank"表示新窗口打开。
            new ModuleEntry('SR', params, "<%=secInfo%>", '_blank','').enter();
      }
   </script>
   <a href="#" onClick="javascript:sr2();">查看报表</a>
 注意:代码中,username是表明用户身份的用户名,一般存在session中,用户不可随意更改,本例中因为要通过ModuleEntry方式调用,有一个发到前台再回传的过程,为了防止用户篡改,在安全校验信息secInfo中对其进行保护。

在报表内根据接收到的参数控制显示的数据,请参见:复杂报表设计教程-普通参数

传递参数控制展现效果

通用报表展现页面能够进行丰富而灵活的展现控制,可以通过传入参数控制报表的展现效果,例如:

代码示例:

< %
    /** 安全机制验证信息返回值 */
    Map paramMap = new HashMap();
    String secInfo = Security.generate(request, paramMap);
%>
<script type="text/javascript" src="/reportmis/mis2/security/js/ModuleEntry.js"></script>
<script type="text/javascript">
    function sr2(){
        //这里引用后台计算出来的安全校验信息值
        var secInfo="<%=secInfo%>";
        //设置报表展现参数
        //reportAlign:'center'表示报表居中显示
        //scale:'0.8'表示报表缩放80%,resize:'yes'表示报表列宽可拖动
        var params="{resID:10056,reportAlign:'center',scale:'0.8',resize:'yes'}";
        new ModuleEntry('1001', params, secInfo, '_blank','').enter();
   }
</script>
<a href="#" onClick="javascript:sr2();">查看报表</a>

报表展现参数介绍

产品自带的SR展现页面封装了丰富的属性用于控制报表展现效果。这些属性均可以通过调用时传递相应参数来进行设定。

通用报表展现页面参数具有以下类别:

通过上述类别中的相关参数,可以在报表展现时进行各种灵活的控制,例如:

更多通用报表展现页面的参数说明,请参考:报表展现与输出 -> 参数说明