Select SSRS 文本框内的语句
Select statement inside SSRS textbox
我正在尝试为 SSRS 中的文本框赋值,但 运行 遇到了一些麻烦。
我的数据集 "dsStepInfo" 根据 "ID" 对多行进行分组和求和,查询如下。
SELECT ID, SUM(Target) AS Target, SUM(Actual) AS Actual
FROM tblStepComplete
WHERE (CompleteID = @ParamID)
GROUP BY ID
和returns:
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 不会填充到 table 中,只是显示在此 table 中的 10 个。有什么方法可以在文本框中执行 SELECT 或等效表达式作为从数据集中获取这些特定值的表达式?
您可以使用Lookup功能。
这应该获得 ID #50 并输出其目标:
=Lookup(50, Fields!ID.Value, Fields!Target.Value, "DSStepInfo")
我想如果是我,我会使用 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]
然后使用提供的值构建您的报告。更好的做法是添加一个 table,将 Tank 名称链接到您提取的 ID,但如果您没有,则 Case 语句很容易维护。
我正在尝试为 SSRS 中的文本框赋值,但 运行 遇到了一些麻烦。
我的数据集 "dsStepInfo" 根据 "ID" 对多行进行分组和求和,查询如下。
SELECT ID, SUM(Target) AS Target, SUM(Actual) AS Actual
FROM tblStepComplete
WHERE (CompleteID = @ParamID)
GROUP BY ID
和returns:
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 不会填充到 table 中,只是显示在此 table 中的 10 个。有什么方法可以在文本框中执行 SELECT 或等效表达式作为从数据集中获取这些特定值的表达式?
您可以使用Lookup功能。
这应该获得 ID #50 并输出其目标:
=Lookup(50, Fields!ID.Value, Fields!Target.Value, "DSStepInfo")
我想如果是我,我会使用 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]
然后使用提供的值构建您的报告。更好的做法是添加一个 table,将 Tank 名称链接到您提取的 ID,但如果您没有,则 Case 语句很容易维护。