SSRS - 将'decimal'列中的空值替换为'string'消息?



我有下表:

item_ID  |  item_Name  |  Amount
---------|-------------|-------
12    |    apple    |  $1
13    |    orange   | <null>
14    |    grapes   |  $2.5

对于"橙色"项的"null"值,我想用字符串"N/A"替换它,即使数据来自的列是小数。 可能吗?

我尝试输入该列的表达式,如下所示:

=IIF(IsNothing(Fields!Amount.Value), Sum(Fields!Amount.Value), 'N/A')

但是我收到一个错误,报告失败了。

如果在 SSRS 中的报表层处理此问题,您将获得一些优势:例如,数据的导出仍将导出为数字。

设置正在使用的文本框的值,使其类似于

=IIF( IsNothing(Fields!Cost.Value ), "N/A",Fields!Cost.Value)

以下是将coalescecast一起使用的一个选项:

select item_ID, item_Name, coalesce(cast(cost as varchar(100)), 'N/A') as cost
from yourtable;

您也可以使用 ISNULL 函数

SELECT cost = ISNULL( TRY_CAST( cost as varchar(50), 'N/A' )

最新更新