2012-06-08 360 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

回答

相關問題