【问题标题】:SSRS result different from SSMS result with the same querySSRS 结果与具有相同查询的 SSMS 结果不同
【发布时间】:2016-04-25 15:04:49
【问题描述】:

我正在将我的 SQL 查询结果与我的 SSRS 报告进行比较,并在其数据集上使用相同的查询,但我注意到 SSRS 中的结果与 SQL 相比要小。

我对其进行了多次测试,并确保我在报告中选择了相同的参数,并且在我的 SQL 查询中输入了相同的值,但我仍然没有得到相同的结果。谁能帮我这个?我真的看不出问题。我还检查了我的 SSRS 报告中的所有过滤器,但我没有过滤任何对象。

SELECT ZR.CURRENT_PROD_SKU AS PRODUCT_SKU
  ,LGEO.LEVEL6 AS CUSTOMER_COUNTRY
  ,LGEO.LEVEL1 AS CUSTOMER_REGION
  ,ZR.BILLTO_IBR_CSR_ENTITY_NAME AS CUSTOMER_NAME
  ,ZR.CURRENTPRODATT_DIV_NAME AS PROD_DIV
  ,LDATE.PER_NAME_MONTH
  ,SUM(ZR.RPTDPOSRECORDUNITSSOLD) AS QUANTITY
  ,SUM(ZR.PRICEC_EUR) AS PRICEC_EUR
    FROM View_ZR_Birst_Raw ZR
    LEFT JOIN LOOKUP_DATE LDATE ON ZR.POS_INVOICE_DATE = LDATE.DAY_DT
    LEFT JOIN LOOKUP_GEO_MASTER LGEO ON LGEO.COUNTRY = ZR.BILLTO_IBR_CSR_COUNTRY
    WHERE ZR.POS_INVOICE_DATE BETWEEN @StartDate AND @EndDate
    AND LGEO.LEVEL6 IN (SELECT VALUE FROM DBO.[FnSplit](@Country,','))
    AND ZR.CURRENTPRODATT_DIV_NAME IN (SELECT VALUE FROM DBO.[FnSplit](@ProductDivision,','))
    AND ZR.CURRENT_PROD_SKU IN (SELECT VALUE FROM DBO.[FnSplit](@SKU,','))
    GROUP BY ZR.CURRENT_PROD_SKU 
  ,LDATE.PER_NAME_MONTH
  ,LGEO.LEVEL6 
  ,LGEO.LEVEL1
  ,ZR.BILLTO_IBR_CSR_ENTITY_NAME
  ,ZR.CURRENTPRODATT_DIV_NAME
    ORDER BY CUSTOMER_REGION,CUSTOMER_COUNTRY,BILLTO_IBR_CSR_ENTITY_NAME,PROD_DIV,PRODUCT_SKU
    OPTION (MAXDOP 4)

我在 WHERE 子句中使用了 [FnSplit] 函数。这个函数基本上只是用于从多选参数中拆分逗号分隔的值,因为我的脚本最初是在 SP 中,所以这就是我使用它的原因。

【问题讨论】:

    标签: sql-server reporting-services ssrs-2012


    【解决方案1】:

    SSRS 可以使用缓存数据集 - 将其关闭。

    另外 - 如果在设计器中使用它,则删除 reportname.data 以删除本地 chached 版本。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-04-20
      • 2013-07-15
      • 1970-01-01
      • 2021-10-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多