2012-06-08 128 views
2

我在互联网上搜索了很多小时,但在这一点上有点绝望。如何更改SSRS 2008区域设置

我们必须具有定义为

Date_Difference = Round((DateDiff("d", Fields!StartDate.Value, Fields!EndDate.Value))* Fields!ProjectStatusPct.Value) 

status_date = CDate(DateAdd("d", Fields!Date_Difference.Value, Fields!StartDate.Value)) 

两个SSRS和BIDS 2名DataSet中的字段安装在同一服务器(VM,在Windows Server 2008 R2)上的报告。地区,语言,格式,我可以在机器上想到的所有东西都配置为en_US。

报告属性中的语言是en-US,我也在报告代码中定义了这个en-US。

<Language>en-US</Language> 

而且在reportViewer.aspx,我改变

<%@ Page Language="C#" AutoEventWireup="true" Inherits="Microsoft.ReportingServices.WebServer.ReportViewerPage"%> 

<%@ Page Language="C#" AutoEventWireup="true" Inherits="Microsoft.ReportingServices.WebServer.ReportViewerPage" Culture="en-US"%> 

一些岗位的建议。

数据源服务器(MSSQL 2008,在同一台机器上)语言也是en-US。

该报告在BIDS设计师看起来不错。但是,当我将它部署到服务器时,日期格式会变得混乱。报告服务器将MM/dd/yyyy(美国格式)作为dd/MM/yyyy(加拿大格式)。其结果是,在status_date场总是产生,如果当我看SSRS日志文件涉及到像2012年3月31日

日期错误的日期,或NULL,头总是显示为

<Header><Product>Microsoft SQL Server Reporting Services Version 2007.0100.5500.00 ((Katmai_PCU_Main).110922-0336)</Product><Locale>English (Canada)</Locale><TimeZone>Pacific Daylight Time</TimeZone><Path>C:\Program Files\Microsoft SQL Server\MSRS10.MSSQLSERVER\Reporting Services\Logfiles\ReportServerService__06_07_2012_16_30_41.log</Path><SystemName>KAM1ODDBS06</SystemName><OSName>Microsoft Windows NT 6.1.7601 Service Pack 1</OSName><OSVersion>6.1.7601</OSVersion><ProcessID>1160</ProcessID></Header>rshost!rshost!ec0!06/07/2012-16:30:41:: i INFO: CLR runtime is initialized. 

所以我认为BIDS需要本地机器的语言设置,然后正确处理日期。

的更多信息:

  • 的布劳尔(IE)的语言是en_US
  • 当我部署到其他报告服务器具有en_US区域的报告,它的工作原理。

我的问题是,如何将此报告服务器的语言环境更改为en_US?

+0

只是想补充一点,此用户在MSDN论坛组发布问题后找到自己的答案。该答案的最后文本是,“事实证明,SSRS的服务账户必须位于美国地区。”因此,如果您遇到类似问题,请注销并以用户设置为执行帐户的身份重新登录,并检查该用户的区域语言设置。 – idclaar

回答

相关问题