动态显示列
有很多客户会有这样的需求,在参数模板上有一个多选的选择框,选择框里是一个人员的所有信息,要求通过选择框选择相应信息,并动态的在报表中展示出来。
这个需求的解决方法是,先把这些选择到的信息作为列名动态传递给报表,报表先把所有的数据都展示出来,然后在通过参数里的值进行判断,将没有选中的列进行隐藏,这样就能实现动态控制不同列的显示了。下面用一个例子展示一下,
新建报表,如图
新建参数,参数类型为字符串组。并在每列都写上对应的隐藏列条件
在A列写隐藏列:if(“EMPID” in list(@arg1),false,true)
在B列写隐藏列:if(“EMPNAME” in list(@arg1),false,true)
在C列写隐藏列:if(“BIRTHDAY” in @arg1,false,true)
在D列写隐藏列:if(“SEX” in list(@arg1),false,true)
在E列写隐藏列:if(“DEGREE” in list(@arg1),false,true)
在F列写隐藏列:if(“BONUS” in list(@arg1),false,true)
然后复杂报表设计" target="_blank" class="quieeLink1">设计参数模板,
B1的填报属性为:编辑风格为下拉列表框,
相应的设置为
这样报表就设计好了,发布浏览为;
修改浏览项,
这样就实现了列的动态展现了,也可以多设置一些参数,添加其他条件,将筛选结果变得更细致。
发布日期:2011/04/14
本文分类:
设计基础