Как обнуляемому значению DateTime присваивается значение по умолчанию при нулевом значении в отчете Visual Studio 2012 (.sdlc)

Я работаю над отчетом Visual Studio 2012 (.sdlc), используя источник данных объекта. Источник данных объекта имеет обнуляемый DateTime? имущество. Я хотел бы отобразить "-", когда null, а затем отформатировать дату как "dd-MMM-yy", когда не ноль.

Я пробовал следующие выражения, но всегда получал "#Error" в TextBox в отчете.

Примечание. В этих двух попытках свойство 'Format' в TextBox установлено на 'dd-MMM-yy'.

=IIf(IsNothing(Fields!OpenInDRMADate.Value), "-", Fields!OpenInDRMADate.Value)

=IIf(IsDate(Fields!OpenInDRMADate.Value), "-", Fields!OpenInDRMADate.Value)

Я думал, что свойство 'Format' полагается на тип DateTime, поэтому я попытался преобразовать значение в строку в выражении, но все же получил '#Error'

=IIf(IsNothing(Fields!OpenInDRMADate.Value), "-", FormatDateTime(Fields!OpenInDRMADate.Value, DateFormat.ShortDate))

=IIf(IsDate(Fields!OpenInDRMADate.Value), "-", FormatDateTime(Fields!OpenInDRMADate.Value, DateFormat.ShortDate))

Как я могу показать "-" для нулевых значений DateTime?

2 ответа

У меня была такая же проблема с датой в текстовом поле заголовка.

= IIF (ISDATE (Fields! LICENCEDDATE.value) = False, "", formatdatetime(IIF(IsDate(Fields!LICENCEDDATE.value) ="1", поля!LICENCEDDATE.Value,"01/01/1900"),dateformat.ShortDate))

Это работает

Я просто не понимаю

formatdatetime(IIF(IsDate(Fields!LICENCEDDATE.value) ="1" <- что означает "1"???

Я думаю, у тебя может быть что-то еще, потому что я пытался

=IIf(IsNothing(Fields!OpenInDRMADate.Value), "-", Fields!OpenInDRMADate.Value)

со свойством Format, установленным в dd-MMM-yy и получил тире на нулевые даты.

Я тоже пробовал

=IIf(IsNothing(Fields!OpenInDRMADate.Value), "-", FormatDateTime(Fields!OpenInDRMADate.Value, DateFormat.ShortDate))

без свойства Format и снова получил тире для нулей.

Это было в VS2008.

Может быть, у вас есть другое выражение (например, для цвета) для этого объекта, который вызывает проблему?

Другие вопросы по тегам