2011-12-04 3 views
0

내 SSRS에 날짜 형식 문제가 있습니다. 데이터베이스에 DateTimePicker의 날짜를 저장하고 있습니다. 거기에서 나는 사용하여 내 DataGridView에에서 디스플레이를 복용하고이 올바르게 (04-Nov-2011)을 표시합니다하지만 난 내 SSRS에 동일한 데이터베이스에서 일을 할 때SSRS의 날짜 형식 문제

="Dated: " &Format(cdate(Fields!InvDate.Value),"dd-MMM-yyyy") 

그것은 11-Apr-2011.

처럼 표시를 사용하여

dgv.items(0,2).value=Format(Cdate(dsSaver.tblInv.rows(0).items(0)),"dd-MMM-yyyy") 

다음

나는 그것을 표시하는 모든 winforms 요금을 테스트했지만 모든 SSRS가 잘못 표시하고 있습니다. 알려주십시오.

+0

맞아요, 형식은 동일하지만 문제는 같은 날짜가 2011 년 4 월 11 일이고 똑같은 것이 2011 년 11 월 4 일입니다. 그게 뭐가 잘못 보이지 않니? 같은 날짜가 어떻게 다른 두 달을 가질 수 있습니까? –

답변

4

몇 가지 일이 여기에서 진행되고 있습니다. 날짜가 적절하게 저장되지만 서식 옵션 때문에 잘못 표시됩니다. 이 라인은 매우 문제가있다 :

="Dated: " & Format(cdate(Fields!InvDate.Value), "dd-MMM-yyyy") 

에서는 CDate는 값, 일반적으로 문자열을 사용하고 다음 복용하고 다시 문자열로 포맷되는 날짜로 변환합니다. 이제는 기본적으로 언어 속성이 English (United States)으로 설정되어 있으므로 CDate 함수는 04-Nov-2011의 문자열 표현을 04/11/2011으로 변환하여 미국 형식 인 MM-dd-yyyy (파키스탄이 아닌)을 변환합니다. 그 달이 먼저 올 것이라고 생각하기 때문에 날짜는 11-Apr-2011입니다.

보고서의 언어 설정을 =User!Language으로 변경하여 사용자 언어가 무엇이든 지원하며 사물을 적절하게 형식화해야합니다. 이것은 당신의 표현 작업을하기에 충분할 수 있습니다.

에 관계없이 Fields!InvDate.Value가 날짜 필드로 공급되고 있는지 (그것이 있어야로)의에서는 CDate 함수에 대한 필요가 없습니다이 작동합니다 :

="Dated: " & Format(Fields!InvDate.Value, "dd-MMM-yyyy") 

이 또한 FormatDateTime 기능입니다하지만 불행히도 그것을 사용할 형식을 지원하지 않습니다.