birt排序(终级方案) 本文关键词:排序,方案,birt
birt排序(终级方案) 本文简介:1.建立数据集Customer,sql:selectCustomerNumber,customername,cityfromcustomers2.添加两个报表参数sortCol和sortDir,name(根据实际查询需要如没有查询条件可不加)。3.在outline视图点击数据集,点击脚本,在befo
birt排序(终级方案) 本文内容:
1.
建立数据集Customer,sql:select
CustomerNumber,customername,city
from
customers
2.
添加两个报表参数sortCol和sortDir,name(根据实际查询需要如没有查询条件可不加)。
3.在outline视图点击数据集,点击脚本,在beforeopen中加入:
var
sql
=““;
var
name
=
reportContext.getParameterValue(“name“);
if(name
!=
null
var
sortDir
=
reportContext.getParameterValue(“sortDir“);
if
(sortDir
!=
null)
{
if
(sortDir.indexOf(“ASC“)
!=
-1)
sortDir
=
“DESC“;
else
sortDir
=
“ASC“;
}
else
sortDir
=
“ASC“;
var
sortCol=
reportContext.getParameterValue(“sortCol“);
if
(sortCol!=null)
sql
=sql+“order
by
“+
sortCol+““+sortDir
;
this.queryText+=sql;
4、选择列标题,属性,超链接,选择追朔,然后选择到自己的报表,填写参数:
说明:
1、sortDir的值为:
var
sortDir
=
reportContext.getHttpServletRequest().getParameter(“sortDir“);
if
(sortDir
!=
null)
{
if
(sortDir.indexOf(“ASC“)
!=
-1)
sortDir
=
“DESC“;
else
sortDir
=
“ASC“;
}
else
sortDir
=
“ASC“;
2、sortCol的值为要排序的数据库字段名称。如“name”
3、查询条件name的值为reportContext.getParameterValue(“name“);
否则每次排序查询的是全部的数据。