2013-04-16 2 views
1

Я сталкиваюсь со следующей проблемой с моим докладом на поле Datetime:Ошибки в моем поле данных DateTime в отчете RDLC

#Error 

enter image description here

проверить на нуль или пуст, но я всегда получаю эта ошибка

Я стараюсь это:

=IIf(CDate(Fields!recommendationDate.Value)=CDate("1/1/0001"),Nothing, 
CDate(Fields!recommendationDate.Value).ToShortDateString()) 

=IIf(FormatDateTime(Fields!recommendationDate.Value,2)=CDate("1/1/0001"),"",FormatDateTime(Fields!recommendationDate.Value.Value,2)) 

=IIF(Fields!recommendationDate.Value is nothing, nothing,Format(CDate(Fields!recommendationDate.Value),"dd/MM/yyyy")) 
+0

вы пробовали формат без 'CDate'? Здесь я проведу несколько тестов. – eestein

ответ

2
=IIF(CDATE(IIF(TRIM(Fields!recommendationDate.Value).ToString().Length = 0, 
"1/1/0001", 
Fields!recommendationDate.Value)).ToString() = CDATE("01/01/0001"), 
"", 
Format(CDATE(IIF(TRIM(Fields!recommendationDate.Value).ToString().Length = 0, 
"1/1/0001", 
Fields!recommendationDate.Value)), "dd-MMM-yyyy")) 
0

Я не знаю, если IIf здесь сходна или же, как IIf в Ms Access, но все части выражения выполняются (условие, истинная часть и ложь часть) независимо от результата. Вы можете попробовать тестирования поле NULL первое используя что-то вроде IsNull():

IIf(IsNull(Fields!recommendationDate.Value), CDate('01/01/0001'), Fields!recommendationDate.Value) 
6

Правильный код будет выглядеть так:

IIf(IsNothing(Fields!recommendationDate.Value), "", 
       format(Fields!recommendationDate.Value, "dd/MM/yyyy")) 
Смежные вопросы