欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

birt动态sql,真个做出来的进

更新时间: 2014-01-05 03:07:24 责任编辑: Author_N1

 

birt动态SQL,真正做出来的进
birt 的SQL 拼装。比如说 select id,name,age from aa

2个参数  id是必须输入的 name可选添 默认是全选

我在SQL中写  select id ,name,age from aa where id=? and name like replace(?,'全选','%%')
提示错误 NULL  传参传不进去。
网上查说可以动态SQL 但是说的都不是很清楚  在SCRIPT  或是 beforeopen 里写  或者是在data set中 property binding 中设置也不行 现在想问 到底要怎么拼装 能不能说的详细点  或是留下联系方式 发EMAIL 都可以
我的EMAIL   lin_0711@qq.com
--参考方法--
脚本写在beforeOpen里边,也就是在beforeOpen里边拼写你的SQL语句,类似于这样
// 这里用于接收你的报表参数
var p_id=params["id"].value;
var p_name=params["name"].value;
//这里用于拼写你的SQL语句
this.queryText =" select ";
this.queryText +=" id ,name,age from aa where 1=1";
this.queryText +=" id = '"+p_id+"'";

//依照你说的name是非必填项,所以判断非空时才取值
if(p_name!=""){
   this.queryText +=" name = '"+p_name+"'";
}

上面说的不知道楼主明白了没有,有问题可以继续提出来,其实Birt挺简单的,多看些资料基本都可以入门了。


--参考方法--
楼上已给出了答案,在beforeOpen事件中动态拼SQL即可,在这里帮顶一下。
上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 03:07:24
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/18588/
本文WWW.DOC100.NET DOC100.NET版权所有。