Reporting services SSRS报告时间处理

Reporting services SSRS报告时间处理,reporting-services,ssrs-tablix,Reporting Services,Ssrs Tablix,我有一份报告要花很长时间才能完成。它带来了大约187k行,运行大约需要5分钟。当我检查Reportserver中的执行日志表时,我注意到与TimeDataRetrieval和time Rendering相比,时间处理花费的时间更多 我为提高绩效所做的事情: 我确保报告的keeptogether属性为False,以便允许分页 报告未进行任何分组、筛选或排序。一切都是在数据库级别处理的 缓存不是此报表的选项,因为报表具有参数,并且这些参数是动态值 我在报告中注意到的唯一一件事是,对于一些列,格式中有

我有一份报告要花很长时间才能完成。它带来了大约187k行,运行大约需要5分钟。当我检查Reportserver中的执行日志表时,我注意到与
TimeDataRetrieval
和time Rendering相比,时间处理花费的时间更多

我为提高绩效所做的事情:

  • 我确保报告的keeptogether属性为False,以便允许分页

  • 报告未进行任何分组、筛选或排序。一切都是在数据库级别处理的

  • 缓存不是此报表的选项,因为报表具有参数,并且这些参数是动态值

  • 我在报告中注意到的唯一一件事是,对于一些列,格式中有一些表达式,它们不能删除,因为它们是强制性的,并且是我的客户要求的。该报告几乎没有日期列,我使用了以下表达式:

    =IIF(Globals!RenderFormat.Name = "RPL","M/d/yyyy","M/d/yyyy hh:mm tt")
    
    我试图在不使用上述表达式的情况下运行报告,但我没有注意到性能上的任何重大变化


    我还注意到报告的
    TimeProcessing
    并不总是恒定的。它一直在变化。我怎样才能使它保持恒定?是否还有其他需要更改或检查以提高报告性能的内容?

    与报告相比,proc执行时间是多少?proc大约需要60到70秒。我想了解一下。如果“昨天发生了类似的情况,请尝试此操作。更改您的进程并在Alter语句下直接添加return语句,然后添加f5。然后删除return语句。修复了我昨天的错误”有时,在尝试根据报表参数或渲染格式创建不同的布局版本时,更好的方法是使用两个表或矩阵版本,并使其可见(需要一个),而不是为每个记录使用一个计算格式表达式。