求一动态报表
java
sql server 数据库
要求
页面用checkbox选择
字段1,字段2,字段3
然后后台查询字段1,字段2,字段3的值
如果值选择字段1,则光查询字段1的值
大概报表的样式是这样的
部门 字段1 字段2 字段3 合计
人事 1 2 3 6
技术 3 3 3 9
合计 4 5 6 15
我sql语句得到的结果是这样的:
部门,字段1,字段2,字段3......
请教下如何用程序实现这种动态查询,而且算小计的?思路实在乱啊,
动态选择字段已经实现,就是不知道该如何动态填数据进去,
求前辈指点...
谢谢了!
------解决方案--------------------用柱图报表,就能处理,用jfreechart就能实现!
------解决方案--------------------一个dto对象 五个属性 部门名 字段1 字段2 字段3 合计
实现类 查到数据库里的数值, 给dto对象赋值,将dto 添加到list ,返回list
你是要生成表格 还是图形报表?
表格 直接用标签 迭代 取出list里的值就行。
图 就用jfreechart, 我博客有 jfreechart的文章。
------解决方案--------------------
------解决方案--------------------4楼正解!!!顶
------解决方案--------------------四楼正解,楼主估计是新手吧?
定义实体entity
entity中有属性 部门名 字段1 字段2 字段3 合计
然后将每次查询得到的对应属性的值, set进属性里边
然后entity对象填充之后
list.add(entity)
以上的循环完,之后就只list对象了
list返回页面,迭代显示控件,控件填充属性名称。。。。。。
------解决方案--------------------。。。合计的列 两种方式:
1 后台读取到字段123的值之后计算得到合计 set到合计属性里 返回到页面直接显示合计属性即可
2 页面得到属性值时候计算得到合计再显示到合计标签处、
3 用sql语句也是可以计算得到合计值的啊。。。。。 三个字段相加 得到的值作为合计的返回值
。。。。。。。
------解决方案--------------------用birt的交叉报表
------解决方案--------------------用FineReport的话
按照下面结构做模板
人事 数据列
技术 数据列
合计 求和
然后部门字段,可以用参数设置,部门字段肯定和人事,技术什么的数据相关联,直接搞定问题