润乾报表提供宏工作机制,因此利用宏可以可以动态组织sql语句,得到实时报表了。
<%@ page contentType="text/html;charset=GBK" %>
<%@ taglib uri="/WEB-INF/runqianReport4.tld" prefix="report" %>
<%@ page import="java.io.*"%>
<%@ page import="java.util.*"%>
<%@ page import="com.runqian.report4.usermodel.Context"%>
<%@ page import="com.runqian.report4.model.ReportDefine"%>
<%@ page import="com.runqian.report4.util.ReportUtils"%>
<%@ page import="com.runqian.report4.usermodel.MacroMetaData"%>
<%@ page import="com.runqian.report4.usermodel.Macro"%>
<html>
<body topmargin=0 leftmargin=0 rightmargin=0 bottomMargin=0>
<%
request.setCharacterEncoding( "GBK" );
String realPath = request.getRealPath("/");
%>
<jsp:include page="toolbar.jsp" flush="false" />
<%
StringBuffer macBuffer = new StringBuffer();//sql 拼串
String reportName ="dsworkinfo.raq"; //模板名称
//---- 接受参数
String sdate ="",edate="",viewcode ="",status="",isLiuId="";
if(request.getParameter("sdate")!=null){
sdate = request.getParameter("sdate");
if(!sdate.equals(""))
macBuffer.append(" and a.writetime >= to_date('"+sdate+"','yyyy-mm-dd') ");
}
if(request.getParameter("edate")!=null){
edate = request.getParameter("edate");
if(!edate.equals(""))
macBuffer.append(" and a.writetime < to_date('"+edate+"','yyyy-mm-dd')+1 ");
}
if(request.getParameter("viewcode")!=null){
viewcode = request.getParameter("viewcode");
if(!viewcode.equals(""))
macBuffer.append(" and b.vc0 like '"+viewcode+"%' ");
}
if(request.getParameter("status")!=null){
status = request.getParameter("status");
if(!status.equals("") && Integer.parseInt(status)>-1)
macBuffer.append(" and a.status = '"+status+"' ");
}
if(request.getParameter("isLiuId")!=null){
isLiuId = request.getParameter("isLiuId");
if(!isLiuId.equals("") && Integer.parseInt(isLiuId)>-1)
{ int liu = Integer.parseInt(isLiuId);
if( liu==0 ){
macBuffer.append(" and b.simply_code like '%LDZCZ' ");
}
else if(liu==1){
macBuffer.append(" and b.simply_code not like '%LDZCZ' ");
}
}
}
//----设置宏替换
Context cxt = new Context(); //构建报表引擎计算环境
ReportDefine rd = (ReportDefine)ReportUtils.read(realPath+"reportFiles"+File.separator+reportName);
MacroMetaData mmd=rd.getMacroMetaData(); //构造宏的元数据
if(mmd.getMacroCount()>0)
{
cxt.setMacroValue(mmd.getMacro(0).getMacroName(),macBuffer.toString());//此模板只设计一个宏
}
String cxtName = "CXT_"+Double.toString(Math.random());
request.setAttribute(cxtName, cxt );
%>
<table align=center>
<tr><td>
<report:html name="report1"
reportFileName="<%=reportName %>"
width="-1"
height="-1"
contextName ="<%=cxtName %>"
/>
</td></tr>
</table>
<script language="javascript">
document.getElementById( "t_page_span" ).innerHTML=report1_getTotalPage();
document.getElementById( "c_page_span" ).innerHTML=report1_getCurrPage();
</script>
</body>
</html>
分享到:
相关推荐
竞价数据每日报表-竞价常用数据报表-竞价统计分析报表.docx竞价数据每日报表-竞价常用数据报表-竞价统计分析报表.docx竞价数据每日报表-竞价常用数据报表-竞价统计分析报表.docx竞价数据每日报表-竞价常用数据报表-...
实现将图片动态加载到水晶报表中,解决水晶报表添加图片的问题。
电信报表电信报表电信报表电信报表----------------------------------
自由报表(展示界面)-动态建模平台-自由报表-自由报表-集团 功能注册(功能注册-生成模板编码)-动态建模平台-开发配置-功能管理-注册 (多区域联动、链接、联查等需用友技术支持) 查询部分: 查询模板初始化(对...
WebI报表-万能报表-sap屠夫博克 非常好的资料
免费漂亮的Flash图形报表-FusionCharts Free V2.1
JS报表--ReportControlDemo
报表-图片生成 报表-图片生成 报表-图片生成 报表-图片生成
新准则报表-ok,用友报表公式,新准则报表-ok,用友报表公式
参考资料-2M.05.05 ×× U9 ERP项目-报表查询.zip
EXCEL报表-4 动态可视化瀑布图(财务分析)1.xlsx
BIRT_报表-整个报表的安装使用及精讲
Excel模板财务报表-收支日记账表(查询汇总.zip
报表-帆软-MES-生产-人员工时-维修记录等报表
商务智能-企业报表-绩效管理解决方案-水晶报表卓越方达公司BO实施简介 很多案例图表
润乾报表--插件.rar
报表技术-图形报表-Echarts(含代码、文档)
财务报表--财务报表的审计目标和审计过程.pptx
财务报表-财务报表.pptx
EXCEL报表饼状图-2-动态复合型饼图.xlsx