请上传宽度大于 1200px,高度大于 164px 的封面图片
    调整图片尺寸与位置
    滚轮可以放大缩小图片尺寸,按住图片拖动可调整位置,多余的会自动被裁剪掉
取消
shinger@126.com(uid:133825)
职业资格认证:FCA-FineReport
我们的报表为什么会慢
1.为图方便写代码,写SQL的时候,直接在有索引的列上直接用函数 举个例子:销售单上销售日期这个列上键有所有,要根据年和月2个参数来查询某个月的销售单数据,很多就是这样写的:以MS-SQL为例 select * from 销售单 where year(销售日期)=${年份} and month(销售日期)=${月份} 其实这样会导致索引失效,如果销售单这个表上的数据比较多,那么执行就会非常慢 正确的写法:改变思路,在参数上执行计算,比方说查询2017年10月份的,转换成销售日期>='2017-10-01' and 销售日期<'2017-11-01'这种形式 select * from 销售单 where 销售日期 >= DATEADD(MONTH,${月份}-1,DATEADD(YEAR,${年份}-1900,'1900-01-01')) and 销售日期= '2017-10-01' and 销售日期 < '2017-11-01' --返回50万条记录 正确的做法: select 地区,sum(销售金额) as 销售金额 from 销售单 where 销售日期 >= '2017-10-01' and 销售日期 < '2017-11-01' group by 地区--有多少个门店返回多少条记录 这样能减少数据从数据库返回到报表服务器的I/O开销 5.在报表数据多的时候,做SQL注入查询。仍然以销售单为例,比方说销售单上有客户ID,没有客户地址,客户地址存在客户信息表上,我们需要做一个销售单明细报表,上面要有客户地址,有的人会这样写来获取客户地址: 在单元格中设置公式 =sql("销售数据","select 客户地址 from 客户信息 where 客户ID = '"+B3+"'",1,1) 这样的做法会导致B3单元格扩展多少次,这个SQL脚本就会执行多少次,之前我有个报表用类似的方法来写,导致一个返回几千条数据的报表,执行了10几分钟还没执行完。 正确的做法是:尽量在SQL中进行关联,而不是在FR设计器中用条件过滤或者公式去关联取数
动态拖曳行列来对相同的数据做不同的行列统计
公式检查合法性AVG合法,预览报错
104326104327
FR根据登陆用户连接各自的数据库服务器动态查询
背景:公司有很多客户,每个客户有不同的系统数据库服务器,数据库名也可能不一样,只有数据库结构是一样的,现在要做一个决策系统供所有客户的用户登陆,然后根据各自的用户指向各自公司的服务器和数据库返回数据 数据库版本:SQLSERVER2014以上
个人成就
内容被浏览26,349
加入社区6年249天
返回顶部