SSRS:字段在查询中显示正确但在报表预览中显示错误
SSRS: field shows correct in query but wrong in report preview
我有以下查询:
SELECT TOP ( 10 )
EMPLOYEE ,
NAME ,
SUM(QTYFINISHED) AS QTY ,
SUM(HOURS) AS REALTIME ,
SUM(PROCESSTIME * QTYFINISHED / PROCESSQTY / 60) AS CALCTIME ,
SUM(PROCESSTIME * QTYFINISHED / PROCESSQTY / 60) / SUM(HOURS) AS EFFI
FROM EMPLOYEE
GROUP BY EMPLOYEE ,
NAME
ORDER BY Eficience DESC
当我在 'Query Design' 中执行它时,我有正确的值:
Employee Name QTY REALTIME CALCTIME EFFI
2 Peter 10 10 5 0,5
3 John 10 10 10 1
4 Thomas 10 12 9 0,75
...
但是当我在报告的 table 中添加字段时,预览会在字段之间造成一些混乱:
Employee Name QTY REALTIME CALCTIME EFFI
2 10 10 5 0,5 #Error
3 10 10 10 1 #Error
4 10 12 9 0,75 #Error
...
如果我从查询(当然还有报表)中删除字段 'Name',我会在查询设计和报表预览中得到正确的值。
注意:真正的查询包括一个 JOIN 并且字段被 table 命名空间引用,但出于可读性原因我将其放出因为我认为没有任何区别。
您必须删除项目文件夹中的 filename.rdl.data。这是 SSDT 的一个特性。删除 rdl.data 文件后,它将在下一次查看预览时使用正确的查询创建一个新文件,并将删除 #ERROR。
另一种可能的方法是创建一个外部工具,就像描述的那样 here:
转到“工具”>“外部工具”...
添加具有以下设置的新工具:
- 标题:清除报告数据缓存
- 命令:“%WinDir%\System32\cmd.exe”
- 参数: /C DEL /S /Q "$(SolutionDir)*.rdl.data"
- 检查选项:
- 使用输出window
- 退出时关闭
现在,只要您想删除报表数据缓存,只需转至“工具”>“清除报表数据缓存”即可。
我有以下查询:
SELECT TOP ( 10 )
EMPLOYEE ,
NAME ,
SUM(QTYFINISHED) AS QTY ,
SUM(HOURS) AS REALTIME ,
SUM(PROCESSTIME * QTYFINISHED / PROCESSQTY / 60) AS CALCTIME ,
SUM(PROCESSTIME * QTYFINISHED / PROCESSQTY / 60) / SUM(HOURS) AS EFFI
FROM EMPLOYEE
GROUP BY EMPLOYEE ,
NAME
ORDER BY Eficience DESC
当我在 'Query Design' 中执行它时,我有正确的值:
Employee Name QTY REALTIME CALCTIME EFFI
2 Peter 10 10 5 0,5
3 John 10 10 10 1
4 Thomas 10 12 9 0,75
...
但是当我在报告的 table 中添加字段时,预览会在字段之间造成一些混乱:
Employee Name QTY REALTIME CALCTIME EFFI
2 10 10 5 0,5 #Error
3 10 10 10 1 #Error
4 10 12 9 0,75 #Error
...
如果我从查询(当然还有报表)中删除字段 'Name',我会在查询设计和报表预览中得到正确的值。
注意:真正的查询包括一个 JOIN 并且字段被 table 命名空间引用,但出于可读性原因我将其放出因为我认为没有任何区别。
您必须删除项目文件夹中的 filename.rdl.data。这是 SSDT 的一个特性。删除 rdl.data 文件后,它将在下一次查看预览时使用正确的查询创建一个新文件,并将删除 #ERROR。
另一种可能的方法是创建一个外部工具,就像描述的那样 here:
转到“工具”>“外部工具”...
添加具有以下设置的新工具:
- 标题:清除报告数据缓存
- 命令:“%WinDir%\System32\cmd.exe”
- 参数: /C DEL /S /Q "$(SolutionDir)*.rdl.data"
- 检查选项:
- 使用输出window
- 退出时关闭
现在,只要您想删除报表数据缓存,只需转至“工具”>“清除报表数据缓存”即可。