SSRS共享列表IIF字段值=“区域1”,然后将60天添加到日期值中

问题描述 投票:0回答:1

我希望有人可以帮助或指出正确的方向

我有一个包含Fields!District.Value的报告,如果该值=“ area 1”,那么我想向Field!Date.Value添加60天

强制性的“我还在学习中” SSRS,并且我尝试了以下操作,但均未成功;

= IIf(Fields!District.Value =“北拉纳克郡”,“ DateAdd(” d“,60,Fields!Date.Value)”

我假设它是或的放置位置

感谢您的帮助:)

reporting-services ssrs-2012
1个回答
0
投票

这里有两个错误。让我们分解一下。

从IIF函数语法开始,可以这样考虑。

IIF([Expression to evaluate to true or false], [expression to return if true], [expression to return if false])

所以您的第一个表达式Fields!District.Value="North Lanarkshire"很好,它将返回true或false。

下一个表达式,如果为true,则返回的内容接近但不正确。 "DateAdd("d", 60, Fields!Date.Value)"。不需要外引号,而应使用DateInterval.Day而不是“ d”,所以最终应为DateAdd(DateInterval.Day, 60, Fields!Date.Value)

最后,如果结果为假(即地区不是“北拉纳克郡”,我们需要返回一些信息)。我假设您只想在此处返回原始日期列的值,所以我们可以使用Fields!Date.Value

因此,最终表达式应如下所示。

=IIF(Fields!District.Value="North Lanarkshire", DateAdd(DateInterval.Day, 60, Fields!Date.Value), Fields!Date.Value)
© www.soinside.com 2019 - 2024. All rights reserved.