我希望有人可以帮助或指出正确的方向
我有一个包含Fields!District.Value的报告,如果该值=“ area 1”,那么我想向Field!Date.Value添加60天
强制性的“我还在学习中” SSRS,并且我尝试了以下操作,但均未成功;
= IIf(Fields!District.Value =“北拉纳克郡”,“ DateAdd(” d“,60,Fields!Date.Value)”
我假设它是或的放置位置
感谢您的帮助:)
这里有两个错误。让我们分解一下。
从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)