저는 인터넷에서 많은 시간을 검색했지만이 시점에서 절망적이었습니다.SSRS 2008 로캘을 변경하는 방법
우리는 동일한 서버 (VM, 윈도우 서버 2008 R2)에 설치되어
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와 입찰가를 모두 정의 두 데이터 집합 필드를 갖는 보고서가 있습니다. 지역, 언어, 형식, 내가 기계에서 생각할 수있는 모든 것은 en_US로 구성됩니다.
보고서 속성의 언어가 en-US이며,이 en-US가 보고서 코드에 정의되어 있어야합니다. 일부 사후 의해 제안
<Language>en-US</Language>
또한 reportViewer.aspx, 난
<%@ Page Language="C#" AutoEventWireup="true" Inherits="Microsoft.ReportingServices.WebServer.ReportViewerPage" Culture="en-US"%>
에
<%@ Page Language="C#" AutoEventWireup="true" Inherits="Microsoft.ReportingServices.WebServer.ReportViewerPage"%>
변경.
데이터 원본 서버 (동일한 컴퓨터에있는 MSSQL 2008) 언어도 en-US입니다.
BIDS 디자이너에서 보고서가 정상적으로 보입니다. 그러나, 내가 서버에 배포 할 때 날짜 형식 엉망이 된. 보고 서버는 MM/dd/yyyy (미국 형식)를 dd/MM/yyyy (캐나다 형식)로 사용합니다. SSRS를 로그 파일에 내가 볼 때이 2012년 3월 31일
같은 날짜에 오면 그 결과, status_date 필드는 항상 잘못된 날짜, 또는 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 로케일을 가진 다른보고 서버에 보고서를 배포 ko 페이지 , 그것은 작동합니다.
제 질문은이보고 서버의 로캘을 en_US로 변경하는 방법입니다.
MSDN 포럼 그룹에 질문을 게시 한 후이 사용자가 스스로 답변을 찾았다 고 추가하고 싶습니다. 그 대답의 마지막 문장은 "SSRS의 서비스 계정이 en-US 지역에 있어야한다는 것이 밝혀졌습니다."라고했습니다. 따라서 비슷한 문제가 발생하면 로그 아웃 한 다음 사용자가 실행 계정으로 설정하고 다시 로그인하여 사용자의 지역 언어 설정을 확인하십시오. – idclaar