2013-04-10 4 views
0

SSRS 2008을 사용하고 있습니다. 보고서에 날짜/시간 열 (DOB)로 구성된 테이블이 있습니다. 나는 날짜/시간 매개 변수 (MyDate)도 가지고있다. 내 데이터 세트의 필터를 설정하려고합니다.SSRS 2008의 날짜 필터

FormatDateTime(Fields!DOB.Value,2)<=FormatDateTime(Parameters!MyDate.Value,2) 

테이블을 올바르게 필터링하지 못합니다. 그러나 FormatDateTime 함수를 제거하면 제대로 작동합니다. 나는 여기서 문제가 무엇인지 이해하고 싶다.

+0

정말 시간 만 아닌 날짜를 비교하고 싶습니까? – eestein

답변

2

FormatDateTime은 문자열을 반환하므로 날짜를 더 이상 비교하지 않고 문자열 표현을 사용합니다.

02-Feb-201210-Oct-2012을 비교하면 문자열 2/2/201210/10/2012을 비교하는 것과 다른 결과가 나타납니다.

주석에서 언급했듯이 날짜에서 시간 부분을 제거하려고하는 것 같습니다.

다음과 같이 문자열을 날짜로 다시 변환해야합니다.

CDate(FormatDateTime(Fields!DOB.Value,2)) <= CDate(FormatDateTime(Parameters!MyDate.Value,2)) 

그러나 이것은 단지 하나의 제안 일 뿐이며, 여러 가지 방법이 있습니다.

+1

이 SSRS 질문이 림보 (limbo)처럼 보일 때 흥미 롭습니다. OP조차도 대답을 고르지 않습니다. : D 좋은 대답, 그게 내가 한 일이야. – eestein

+0

@Ian Preston : 제안한 것과 같은 방식으로 작동하게했습니다. –