Я получаю #Error
на некоторых клетках после использования следующего выражения, есть идеи, что с ним не так?
=iif (Fields!PercentageCompleted.Value >= (ReportItems!ExpectedComplPercentage.Value) * 100, "Yes", "")
PercentageCompleted - 50, а ExpectedComplPercentage - 0.
Какое значение имеет ReportItems! ExpectedComplPercentage при появлении ошибки?
Код #Error - это ошибка компилятора, обычно приводящая к несоответствию типов. Если у вас есть значение в одном из этих полей, которое VB.NET интерпретирует как строку, он не может выполнить математическое сравнение, и вы получите сообщение об ошибке.
Чтобы исправить это, используйте функции CINT (целое число) или CDEC (десятичное число), чтобы привести значения к нужному типу данных. Для справки: CSTR преобразуется в строку, а CDATE - в дату, если вы пытаетесь сравнить их позже.
=iif (CDEC(Fields!PercentageCompleted.Value) >= CDEC(ReportItems!ExpectedComplPercentage.Value) * 100, "Yes", "")
Примечание: я рекомендую вам практически все время приводить типы данных в ваши выражения, чтобы избежать проблем.
Какие значения
PercentageCompleted
выдают ошибку?