首页 > 解决方案 > SSRS:显示文本而不是数字

问题描述

我现在有一个问题。我无法在 Reporting Service 中做我想做的事。

在我的报告服务中,我得到一个产品的 3 个状态:

所以,实际上,我的专栏正在显示这样的信息:

1
2
1
1
3
2
1

我想通过文字更改号码。所以,在这种情况下,我想得到这个结果:

ORDERED
CUSTOMIZED
ORDERED
ORDERED
FINISHED
CUSTOMIZED
ORDERED

你能帮我吗 ?

非常感谢 !

标签: reporting-services

解决方案


您可以通过几种不同的方式执行此操作。一种是在报告中使用带有 if 条件的数据字段中的表达式,如下所示

IIF(Fields!State.Value=1, "ORDERED", IIF(Fields!State.Value=2, "CUSTOMIZED", "FINISHED"))

另一种方法是使用 SQL case 语句在您通过数据源调用的查询中执行此操作。

SELECT
     CASE
          WHEN StateId = 1 THen 'ORDERED'
          WHEN StateId = 2 Then 'CUSTOMIZED'
          ELSE 'FINISHED'
     END AS State
FROM SomeTable

推荐阅读