Я всегда рекомендую приводить ваши типы данных в выражениях.
Итак, у вас должно получиться что-то вроде этого:
=LOOKUP(Fields!BranchCode.Value, Fields!BranchCode.Value, Fields!BranchCost.Value, "DataSet2")
Вы бы использовали функции VB. NET для приведения ваших значений к одинаковым. Типичными примерами являются CSTR () - string, CINT () - int и CDE C () -decimal
=LOOKUP(CSTR(Fields!BranchCode.Value), CSTR(Fields!BranchCode.Value), Fields!BranchCost.Value, "DataSet2")
Если это строка, вы также можете заключить ее в функцию RTRIM (), чтобы сделать уверен, что нет пробелов.
Если у вас все еще есть проблемы, я рекомендую вывести данные из обоих наборов данных в таблицы в отчете. Запустите отчет и проверьте данные, чтобы убедиться, что наборы данных содержат ожидаемые данные. Мне также нравится добавлять специальные символы вокруг строк в таблице, например #, чтобы вы могли легко идентифицировать любые начальные или конечные пробелы.