在一些项目进行实施的时候,应用的数据库用户名和密码往往都是临时的,而在项目上线后应用的数据库才是正式的。这样,在设计填报表的更新属性时,就需要在更新属性中动态的设置模式名。
润乾报表中对于填报式报表,系统为程序员提供数据保存前后的监听器接口,即用tag标签中inputListener属性指定一个java类名,此java类必须从com.runqian.report4.usermodel.input. AbstractInputListener类继承,并实现beforeSave()、afterSave()方法,保存数据前后的处理代码分别写在这两个方法中。
根据填报监听类的特性,将动态设置报表模版中更新属性的模式名的代码写到beforeSave()方法中,这样就可以实现在填报前设置模式名,从而保证更新顺利进行了。
第一步:先打开一张普通填报表,查看更新属性中的模式名:
先不设置模式名,在后面的填报监听类中设置。
第二步:编写填报监听类:
package com.runqian.input;
import com.runqian.report4.usermodel.*;
import com.runqian.report4.usermodel.input.*;
import java.io.*;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
public class MyInputListener extends AbstractInputListener
{
//构造方法
public MyInputListener()
{
}
//保存前的处理方法
public void beforeSave()
throws Exception
{
//取得第二行第一个单元格的更新属性
INormalCell iCell = report.getCell(2, (short)1);
InputProperty ip = iCell.getInputProperty();
if (ip != null)
{
ArrayList list = ip.getUpdateList();
int listSize = list.size();
//获取更新属性集合
for (int i = 0; i < listSize; i++)
{
UpdateProperty up = (UpdateProperty)list.get(i);
//up.setMode(UpdateProperty.MODE_CUSTOM);
//up.setMode((byte)3);
TableRelations trs = (TableRelations)up.getRelation();
//设置模式名
trs.setSchema(”public”);//这里根据具体的模式名可以做到动态设置
}
}
}
//保存后的处理方法
public void afterSave(){
}
}
第三步:在展现报表的标签中增加inpuListener的属性:
<report:html name=”report1″ reportFileName=”<%=report%>”
funcBarLocation=”top”
needPageMark=”yes”
generateParamForm=”no”
params=”<%=param.toString()%>”
exceptionPage=”/reportJsp/myError2.jsp”
inpuListener=”com.runqian.input.MyInputListener ”
/>
这样,在更新的时候就会首先进入到填报监听类里面,设置模式名后再进行更新。
在监听器类中可以使用session对象、request对象、response对象、报表运行环境对象、获得前端提交的数据、修改前端提交的数据,因此利用填报监听类可以检查用户登录信息、操作权限、数据有效性或其他信息,而不用额外改动报表模版,实现了批量处理的效果。
分享到:
相关推荐
全国核技术利用辐射安全申报系统 填报指南.docx
万家企业能源利用状况报告填报系统操作培训.pptx
kjbg2013国家科技重大专项科技报告填报软件 2013 11 14更新 专项有时不好下载 上传鲎用
资源内包含帆软cpt模板文件,有需要的小伙伴可以自行下载
企业能源利用状况报告填报ppt-PowerPointP.pptx
离线填报快速指南,离线填报快速指南
全省份艺考生艺考志愿填报系统源码,根据综合分推荐院校,推荐专业,开通会员查看冲刺及稳妥院校等,投档线,往年录取查询,院校查询等,适合二次开发,志愿系统开发的可以参考修改或者拿来二次发开,谢谢
本文设计基于WEB技术搭建企业用能信息在线填报系统,在ASP.NET动态WEB应用程序开发平台上使用C#语言进行设计,方便任何用户在任何能接入企业内部网络的计算机上,使用浏览器就能完成相应查阅、填报和管理操作
企业能源利用状况报告填报pptPowerPointP.pptx
Excel填报模板的基本环境设置.pdf
1104系统针对银行业金融机构设计,用于统计辖区内机构存续业务的不良资产情况。
本文设计设置三种级别的员工用户,分别是游客用户、普通用户和管理员用户,分别可以对用能信息进行查阅、查阅填报和查阅整理发布的相应操作。 本文设计基于WEB技术搭建企业用能信息在线填报系统,在ASP.NET动态WEB...
信息系统设计完整。有管理者manager和用户user
Excel模板多人填报设置.docx
在高考后的志愿填报过程中,无数考生和家长面临着选择难题,高考志愿填报是一个重要的决策过程,需要考虑很多因素。 在这个关键时刻,除了请老师、亲朋好友帮忙,ChatGPT也可以为志愿填报提供有效的指导。 ChatGPT...
Java高考志愿填报参考系统源码.zip
万家企业能源利用状况报告填报系统操作培训.ppt
万家企业能源利用状况报告填报系统培训讲义.pptx