SSRS 报告日期格式在 Visual Studio 2012 年切换为美国

SSRS Report Date Format Switching to US in Visual Studio 2012

我们正在使用 SSRS 2014 并通过 SQL Data Tools - BI 在 Visual Studio Ultimate 2012 on Windows 7 中开发报告。在过去的四天里,我们遇到了一个相当烦人的问题尝试开发任何具有日期提示的报告时出现问题。

当我们在 VS 中进行报表预览时,select 弹出日历控件中参数的日期,它以 MM/DD/YYYY 格式保存日期。这包括多年来在 VS 中运行良好的现有报告,以及我们尝试添加的新报告。例如:

我们尝试了以下方法:

如果我将报告部署到我们的测试服务器并且 运行 在浏览器中,则不会出现此问题。 我们现在有点想法,欢迎任何帮助!

如果不查看所有详细信息很难确定,但根据您的描述,听起来您可能在查询中的某处对字符串数据类型进行了中间转换。 SQL 服务器以内部数字格式存储没有格式的日期。它会抛出您所描述的错误的唯一方法是,如果某处发生了字符串转换并且 regional/language 设置在此过程中不匹配。

您提到报告正在使用日期选择器,因此报告参数已正确配置为日期。在将日期参数传递给 sql 查询之前,您是否有任何以某种方式对其进行操作的表达式?

与 Microsoft 多次讨论后,解决方案是升级到 Visual Studio 2015 的数据工具。此版本不受此问题的影响。工作理论与使用的 .Net 2012 版本有关,但老实说,我们没有进一步了解!