Службы Reporting Services - установка значения поля динамически на основе параметра - PullRequest
6 голосов
/ 15 декабря 2009

Мне нужно создать отчет, который показывает данные на четырех сгруппированных уровнях. Сложность заключается в следующем: фактические поля, отображаемые на этих четырех уровнях, должны быть переданы в отчет в качестве параметров.

Моя главная проблема сейчас заключается в следующем: как я могу указать текстовое поле в отчете, чтобы оно отображало не значение параметра @X, а значение поля с именем, указанным в параметре @X?

Так что, если я введу @X = 'Agent', я не хочу показывать 'Agent' в отчете, но на самом деле

=Fields!Agent

но как я могу это сделать? Мне кажется, что все эти выражения значений в значительной степени жестко запрограммированы - есть ли способ определить

=Fields!(@X) 

или что-то в этом роде - показать поле, соответствующее имени, переданному в отчет в параметре @X?

Это, наверное, абсолютно глупо - но я сейчас бью кирпичную стену и никак не могу найти способ обойти это ...

Ответы [ 2 ]

4 голосов
/ 15 декабря 2009

Это

=Fields(Parameters!X.Value).Value

как указано здесь

Отредактировано, чтобы быть правильным: я забыл, что когда вы используете = (выражение), вы должны обращаться к параметру по-разному.

0 голосов
/ 15 декабря 2009

Исходные данные для отчета расположены таким образом, что вы можете определить второй источник данных, который просматривает значения полей для параметров 1-4 и возвращает их в виде одной строки, к которой вы затем можете обратиться в отчете используя синтаксис first?

=First(Fields!Param1.Value, "Param_Lookups")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...