Вы используете IIF неправильно.IIF просто смотрит на сравнение и возвращает первое значение, если ИСТИНА, и второе значение, если ЛОЖЬ.
=IIF(1 = 2, True, False)
, который читается как
Если 1 = 2, то возвращает ИСТИНА, иначе возвращаетсяFalse
Вы также используете LookUpSet неправильно.Первый аргумент LookUpSet - это ваше текущее поле набора данных, которое вы хотите сравнить, второй аргумент - это поле из первого, с которым вы хотите сравнить - поскольку вы используете один и тот же набор данных, они могут быть одинаковыми.Третий аргумент LookUpSet - это поле, которое вы хотите вернуть (вы знаете поле ONGRADE, какое значение вы хотите вернуть?).
Ваше выражение читает, если Grade = ONGRADE> LookupSet (бла-бла) ...
Какое поле значений вы хотите сравнить?Предполагая, что это поля! GRADE_VALUE.Value, ваш IIF может быть как
=IIF(Fields!Grade.Value = "ONGRADE",
IIF(Fields!GRADE_VALUE.Value >
LookupSet(Fields!Grade.Value, Fields!grade.Value, Fields!GRADE_VALUE.Value", "Previous3Week"),
"UP" ,
"DOWN"),
"Not ONGRADE")
Если вы хотите сравнить все типы GRADE (не только ONGRADE), это будет проще:
=IIF(GRADE_VALUE > LookupSet(Fields!Grade.Value,
Fields!grade.Value,
Fields!GRADE_VALUE.Value,
"Previous3Week")
, "UP"
,"DOWN")