天翎MyApps技术社区 - 低代码平台 | 流程管理系统 | BPM软件

 找回密码
 注册成为天翎用户
查看: 1281|回复: 2

润乾报表中的参数

[复制链接]
rick_pei 发表于 2012-4-6 04:13:29 | 显示全部楼层 |阅读模式
本帖最后由 irene 于 2012-4-9 11:31 编辑

管理员好,我在润乾设计器中作了一张报表,基本结构如图:

该报表中的订购单位字段对应的是平台中的部门id,我现在想通过session中传递的用户信息来过滤这个报表的显示数据,因此,我在这张报表的jsp文件中用了下面的语句:
<%        //获取当前用户
        WebUser webUser = ((WebUser) request.getSession().getAttribute("FRONT_USER"));
        String department = webUser.getDefaultDepartment();       
%>
现在已经成功取得了当前用户的默认部门id,我参考帮助文件中在这个报表的jsp文件中将获取的部门id作为参数传入报表,jsp文件代码如下:
<%@ page contentType="text/html; charset=GBK" %>
<%@ taglib uri="runqianReport4" prefix="report"%>
<%@page import="cn.myapps.core.user.action.WebUser"%>
<%@ page import="java.io.*"%>
<%@ page import="java.util.*"%>
<%@ page import="com.runqian.report4.usermodel.Context"%>
<%        //获取当前用户
        WebUser webUser = ((WebUser) request.getSession().getAttribute("FRONT_USER"));
        String department = webUser.getDefaultDepartment();
%>
<html>
<body>
<%
        request.setCharacterEncoding( "GBK" );
        StringBuffer param=new StringBuffer();
        Enumeration paramNames = request.getParameterNames();
        if(paramNames!=null){
                while(paramNames.hasMoreElements()){
                        String paramName = (String) paramNames.nextElement();
                        String paramValue=request.getParameter(paramName);
                        out.println("取得的参数是:"+paramName);
                        out.println("取得的参数值是:"+paramValue);
                        if(paramValue!=null){
                                //把参数拼成name=value;name2=value2;.....的形式
                                param.append(paramName).append("=").append(paramValue).append(";");
                        }
                }
        }
%>
  <table style="width:120%; height:100%;overflow:hidden;table-layout:fixed">
  <tr><td valign=top>
                        <report:html name="采购报表"
                        srcType="file"
                        reportFileName="cgnew.raq"
                        params="<%=param.toString()%>"
                        needScroll="yes"
                        scrollWidth="80%"
                        scrollHeight="100%"
                        funcBarLocation="top"
                        generateParamForm="no"
                        />
                        </td></tr></table>
</body>
</html>
相对应的,我在设计器中进行了参数的设置,分别是两处,如下图:


同时,报表数据集里的检索条件设置如下:

但在前端点击报表的jsp页面链接后确什么数据都显示不出来了,如下图:

我感觉脚本获取到得值没能赋值给参数,所以参数值为空,因此报表是空的,可我不知道该再如何设置才能把值传到报表里的参数中,从而实现sql语句过滤,请指教,谢谢

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册成为天翎用户

x
irene 发表于 2012-4-6 09:11:26 | 显示全部楼层
您好,您的报表应该没拿到参数。您将订购单位的变量名设为department试试,如下图:

如果还不行,麻烦将您的数据、raq文件、reportconfig.xml、您自己写的jsp文件发给我,我这边测试一下,我的QQ:2676466983

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册成为天翎用户

x
irene 发表于 2012-4-8 14:55:24 | 显示全部楼层
您好,您可以先参考这个帖子,关于润乾报表显示的是参数过滤后的数据,帖子链接:http://www.teemlink.com/bbs/view ... mp;extra=#pid190034
您先试试,有问题我们再沟通

本版积分规则

QQ|手机版|天翎MyApps技术社区 ( 粤ICP备11093750号 )

GMT+8, 2026-8-12 23:11

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表