SSRS Поиск значения ячейки из наборов данных с использованием условия параметра

У меня есть набор данных («пользователи»), сгенерированный из запроса, который приводит к следующим данным, которые отображаются в табликсе в моем отчете:

name salary
xyz 100
abc 200
pqr 150

Теперь у меня также есть параметр для выбора имени пользователя. Итак, я просто хочу повторно использовать этот набор данных для фильтрации и отображения зарплаты в другом текстовом поле на основе выбранного параметра. например Если я выберу xyz из параметра, то значение текстового поля должно быть 100

Я пробовал с этим выражением в своем текстовом поле

=Sum(Lookup(Fields!Name.Value,Parameters!Name.Value,Fields!Salary.Value,"Users"))

Но я получаю сообщение об ошибке: «Выражение значения для текстового поля2 использует агрегированное выражение без области действия».


person OmGanesh    schedule 18.07.2016    source источник
comment
Вы не можете Sum то, что возвращается из Lookup. Удалите Sum, и ваш поиск будет работать, предполагая, что то, что находится в наборе данных пользователя, уже агрегировано.   -  person R. Richards    schedule 19.07.2016


Ответы (1)


Я думаю, что вы передаете аргументы функции поиска в неправильном порядке. Функция поиска получает аргументы в следующем порядке:

=Lookup(
  the value to search,
  the field in which you are going to look for a match,
  the field you want to get,
  the scope
)

Ваше выражение должно выглядеть так:

=Lookup(Parameters!Name.Value,Fields!Name.Value,Fields!Salary.Value,"Users")

ССЫЛКА

Вы можете использовать SUM, если возвращаемое значение является числовым, но оно может вернуть неверную сумму, если вы не обрабатываете нулевые значения, возвращаемые при отсутствии совпадений.

=SUM(
  Lookup(Parameters!Name.Value,Fields!Name.Value,Fields!Salary.Value,"Users"),
  "Users"
)

Позвольте мне знать, если это помогает.

person alejandro zuleta    schedule 19.07.2016