润乾报表分析1-通过url将参数传达给报表

本文介绍如何在润乾报表4.0中实现参数表单与URL参数的有效整合,确保查询时能同时处理这两种来源的数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<%@ page contentType="text/html;charset=GBK" %>
<%@ taglib uri="/WEB-INF/runqianReport4.tld" prefix="report"%>
<%@ page import="java.util.*" %>
<%@ page import="java.io.*" %>
<%@ page import="com.runqian.report4.model.*"%>
<%@ page import="com.runqian.report4.usermodel.*"%>
<%@ page import="com.runqian.report4.util.*" %>
<html>        
<head>
<title>润乾报表4.0</title>
</head>
<%
    
//根据报表,生成参数与宏的字符串
    request.setCharacterEncoding("GBK");
    String report
=request.getParameter("report");
           
if(report.indexOf(".raq")<0) report+=".raq";

    
//第一步,读取报表模板
    InputStream fis=application.getResourceAsStream("/reportFiles/"+report);
    ReportDefine rd 
= (ReportDefine)ReportUtils.read( fis );
    
//第二步,生成报表所需要的宏或参数的字符串
    ParamMetaData pmd = rd.getParamMetaData();
    StringBuffer params 
= new StringBuffer();
    String temp 
= "";
    
if(pmd != null){
        
int pmdNum = pmd.getParamCount();    //取得报表中参数个数
        for(int i = 0;i <pmdNum; i ++){
            temp 
= pmd.getParam(i).getParamName();   //取得其中参数名
            params.append( temp );
            params.append(
"=");
            params.append(request.getParameter(temp));   
//根据参数名找到url传递过的参数值
            params.append(";");
        }

    }

    MacroMetaData mmd 
= rd.getMacroMetaData();       //同上,只是取得宏而已
    if(mmd != null){
        
int mmdNum = mmd.getMacroCount();
        
for(int i = 0; i < mmdNum; i ++){
            temp 
= mmd.getMacro(i).getMacroName();
            params.append( temp );
            params.append(
"=");
            params.append(request.getParameter(temp));
            params.append(
";");
        }

    }

%>
<body>

<report:html  name="report1" reportFileName="<%=report%>"
    funcBarLocation
="top"
    params
="<%=params.toString()%>"
/>
</body>
</html>
  有个问题是:如何将参数表单中的参数和url中参数联合起来,传递给报表???
也就是当点参数表单中的查询时顺便要将url中参数也传进报表?

<% String num=request.getParameter("num");
String num_param="num="+num; %>
<report:param name="report0" paramFileName="graph_itemNo_param.raq" needSubmit="" hiddenParams="<%=num_param %>" />
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值