Вы можете проверить наличие клавиши foo
в форме, используя оператор in
:
foo = form.getfirst('foo', '') if 'foo' in form else None
Проблема, конечно, состоит в том, что оператор IIF VB оценивает обе стороны независимо от результата. Таким образом, даже если Ваше поле является пустым, оно все еще оценивает "Значение. DateAdd" вызов.
Если я вспоминаю правильно, SSRS имеет свою собственную функцию "DateAdd", которую можно использовать вместо этого. Таким образом, можно сделать что-то вроде этого (проверьте документацию, потому что это из памяти):
=Iif(IsNothing(Fields!MyDate.Value), "", Format(DateAdd("d", 30, Fields!MyDate.Value), "MMMM dd, yyyy"))