1:关于杭州的一张多表的多表保存,在官方的所给方案是如下:
一张报表里面定义多个数据源关联字段,然后调用 save 方法。原理是多数据源对应多表(一个数据源的sql里面有2张或者多张表关联查询。那定义的字段也是和多表有关联的。保存的时候肯定是对应表去保存的。实际上就是多表操作了)
按照上述方法,实际使用中发现如下问题:
- 页面查询时,一张报表由于关联了多数据源,查询多次,效率低下。(正常情况应该关联视图显示)
- 多数据源时,在某些情况下,如:不同表只要定义在同一行。生成的用于保存的xml就会存在格式错位的问题,我试着尝试修复了一下,发现除非重写用于保存的xml文件,否则用官方的方法保存根本没有用。而且,还需要考虑以下两个方向:
- 动态的多表保存,行列增加后的xml生成。
- 样式固定的多表保存。
2:为了解决上述麻烦(报表版本:4.0.0.0),使用如下解决方案
- 页面查询显示时,使用视图显示,这样查询仅仅一次。
- 保存时,读取当前报表的统计脚本。生成用于保存的xml,再调用save方法存储自己定义的xml文件。解决官方bug。