zoukankan      html  css  js  c++  java
  • Dynamics AX 2012 R2 如何处理运行时间较长的报表

        当处理的数据量较多,逻辑比较复杂时,报表可能会超时。为了解决这个问题,Reinhard一直使用SrsReportDataProviderPreProcess来做预处理报表。它会在调用SSRS前,在AX会话中处理数据。预处理过的数据存储在常规表中,该表是所有用户会话共享的,通过会话id标识。这样的方法在多用户并发时,会有瓶颈。

        在Dynamics AX 2012 R2中,其实还有一个类,SrsReportDataProviderPreProcessTempDB,他可以使用临时表,来持有跨会话(从数据处理会话到SSRS数据获取会话)的报表数据。

       其他部分的开发方式与之前SrsReportDataProviderPreProcess报表的开发方式一样,但需要注意以下两点:

    1. 使用临时表,而不是常规表。
    2. 在返回临时表前,加上这样一句:

              tmpTable.setConnection(this.parmUserConnection());

  • 相关阅读:
    P3368 【模板】树状数组 2
    P3374 【模板】树状数组 1
    BZOJ 2654
    BZOJ 1016
    BZOJ 4870
    BZOJ 4868
    BZOJ 1503
    P3379 【模板】最近公共祖先(LCA)
    雅礼2017国庆1-1
    使用 CefSharp 网页显示问题
  • 原文地址:https://www.cnblogs.com/msdynax/p/4707523.html
Copyright © 2011-2022 走看看