0

我在使用 SSRS-Reports 2005 时遇到了一些问题。

第一个是我正在尝试使用该datediff函数根据两个日期在 30 天内更改单元格的背景颜色。

=iif(
DateDiff("d",DateString,Fields!Insurance_Certificate.Value)<= 30, "Tan", "White"
)

我通过初始查询格式化了我的字段,因此它们看起来像mm/dd/yyyy. 我想我的第一个问题是我如何查看正在评估的值,因为无论返回什么都不正确。

4

2 回答 2

1

我的 [...] 问题是我如何查看正在评估的价值

没有像在 WinForms C# 应用程序中那样可用的真正“调试器”。相反,您有几个“原始”“调试”选项:

  • Fields!Insureance_Certificate.Value在单独的单元格中呈现为文本
  • DateDiff("d",DateString,Fields!Insurance_Certificate.Value)在单独的单元格中呈现为文本
  • 右键单击您的数据集,选择“查询...”,然后手动执行查询。检查您的字段的值。确保它们是您所期望的。
  • DateString在单独的单元格中渲染你的,有和没有演员表的日期。

除此之外,@MarkBannister 有一个很好的建议,使用实际日期而不是字符串作为字段和变量。关于这一点需要注意的另一件事是,日期解析可能是特定于文化的。确保您了解并知道您DateString正在被解析的文化。上面的“调试”选项可能会帮助您找出答案。

于 2013-06-08T08:19:43.333 回答
0

我建议将您的日期字段查询为日期(而不是字符串),使用问题中的 DateDiff 函数对它们进行比较,并使用FormatSSRS 中相应文本框的属性格式化日期输出。

于 2013-06-07T20:32:25.187 回答