我正在尝试为SSRS中的文本框分配值,但遇到了一些麻烦。
我的数据集" dsStepInfo"根据" ID",在下面查询,对多个行进行分组和汇总。
SELECT ID, SUM(Target) AS Target, SUM(Actual) AS Actual
FROM tblStepComplete
WHERE (CompleteID = @ParamID)
GROUP BY ID
并返回:
ID Target Actual
-------------------------------
| 10 | 44418 | 44418 |
-------------------------------
| 12 | 13193 | 13123 |
-------------------------------
| 22 | 1411 | 1411 |
-------------------------------
| 50 | 160 | 80 |
-------------------------------
| 52 | 68 | 34 |
-------------------------------
| 101 | 12120 | 12119 |
-------------------------------
| 105 | 875 | 868 |
-------------------------------
| 140 | 40 | 40 |
-------------------------------
| 560 | 2985 | 3418 |
-------------------------------
我想将图片中网格中的单元格分配给某个ID。罐110的单元总是ID = 50的目标和例如ID = 50的实际。返回的许多ID都不会填充在表中,只显示在此表中显示的10个。有没有办法在文本框中执行SELECT或等效项作为表达式从数据集中获取这些特定值?
答案 0 :(得分:1)
答案 1 :(得分:0)
我想如果是我,我只会使用Case语句,比如
SELECT
Case [ID]
WHEN 10 Then 'Tank 50'
WHEN 12 Then 'Tank 120'
When 22 Then 'Tank 130'
WHEN 50 Then 'Tank 140'
When 52 Then 'Tank 150'
End As TankNo
,SUM([Target]) As Target
,SUM([Actual]) As Actual
FROM tblStepComplete
WHERE (CompleteID = @ParamID)
Group By [ID]
然后使用显示的值构建报告。更好的是一个额外的表,其中Tank名称链接到您正在提取的ID,但如果您没有,那么Case语句相当容易维护。