各位大侠,今日碰到一个难题,需要显示公司各个部门的一个所有费用的统计表;显示效果如下(没法画表格线了):
普通费用报销单 办公用品 合计
交通费 餐费 文具 打印纸
部门 总额 人均 总额 人均 总额 人均 总额 人均 总额 人均 总额 人均
技术部 100 110 120 14 7680 768 76 67
部门2 200 210 2020 2450 2678 860 678 678
部门3 300 310 33 45 3760 6780 6780 8768
部门4 400 410 404 43 54 8678 867 867
合计: 1000 ** 2000 ***
统计表格说明:
1.普通费用报销单,办公用品 ---属于费用大类,目前是固定的
2.交通费,餐费 ,文具, 打印纸 --是大类下面的小类,是可变的。
3.总额就是求和,人均=总额/(对应部门的人数) 4.点击部门名称,还要弹出一个页面,就是显示这个部门的所有人员的统计表,表格样式和这个差不多,就是不需要人均那列。
涉及的表有5个, 1.人员表:User
字段: ID ,userName,DeptID(部门ID)
1,张三 , 1
2部门表:Dept
字段: ID ,DeptName
1,技术部 3.费用小类名称表:ExpenseType
字段:ID, bigType(所属大类名称),SmallType
1 ,办公用品 ,文具
2 ,办公用品 ,打印纸 4.用户费用表UserExpense
字段: ID,UserName ,bigType(费用大类)
1, 张三 , 办公用品
5.费用明细表Detail
字段: ID,Money,smallType,ExpenseID(用户费用表UserExpense的ID)
1, 200 , 文具 ,1
2, 100 , 打印纸 ,1
请高人指点?
普通费用报销单 办公用品 合计
交通费 餐费 文具 打印纸
部门 总额 人均 总额 人均 总额 人均 总额 人均 总额 人均 总额 人均
技术部 100 110 120 14 7680 768 76 67
部门2 200 210 2020 2450 2678 860 678 678
部门3 300 310 33 45 3760 6780 6780 8768
部门4 400 410 404 43 54 8678 867 867
合计: 1000 ** 2000 ***
统计表格说明:
1.普通费用报销单,办公用品 ---属于费用大类,目前是固定的
2.交通费,餐费 ,文具, 打印纸 --是大类下面的小类,是可变的。
3.总额就是求和,人均=总额/(对应部门的人数) 4.点击部门名称,还要弹出一个页面,就是显示这个部门的所有人员的统计表,表格样式和这个差不多,就是不需要人均那列。
涉及的表有5个, 1.人员表:User
字段: ID ,userName,DeptID(部门ID)
1,张三 , 1
2部门表:Dept
字段: ID ,DeptName
1,技术部 3.费用小类名称表:ExpenseType
字段:ID, bigType(所属大类名称),SmallType
1 ,办公用品 ,文具
2 ,办公用品 ,打印纸 4.用户费用表UserExpense
字段: ID,UserName ,bigType(费用大类)
1, 张三 , 办公用品
5.费用明细表Detail
字段: ID,Money,smallType,ExpenseID(用户费用表UserExpense的ID)
1, 200 , 文具 ,1
2, 100 , 打印纸 ,1
请高人指点?
如果是在系统内就需要用到报表系统的交叉表,一般像PB,水晶报表都支持交叉表的
领导不喜欢导出到excel.导出的话也要先生成数据源,这个感觉很头疼,涉及的表太多。
SQL写好,就是普通的SQL
然后DATAWINDOW里先交叉表就能生成
我贴图的这个也是不固定的行列转换