Можно ли сослаться на «выбранную» ячейку в матрице для создания вложенного отчета в службах SSRS 2012?

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

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

Я рассмотрел концепции Me.Value и ReportItems![ItemName].Value, но они относятся к статической позиции, а не к активной ячейке, выбранной мышью. Кто-нибудь знает, является ли это ограничением языка RDL или это возможно? В простейшем примере я мог бы сказать, что у меня есть набор данных только с одним полем «Имя» и двумя значениями «Бретт» и «Шон». Я создаю таблицу и задаю только один столбец с заголовком. Я создаю текстовое поле с выражением за пределами этой таблицы в качестве собственного элемента в теле отчета (чтобы воссоздать то, что я хотел бы передать в подотчет). Я надеюсь получить ссылку на то, что было в выбранном элементе таблицы.

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


person djangojazz    schedule 08.02.2013    source источник


Ответы (2)


Таким образом, краткий ответ на самом деле не таков, потому что отчет и сгенерированные базовые данные являются статическими, и нет среды событий для создания дополнительных данных - просто изменение отображения существующих данных (развернуть/свернуть, сортировать и т. д.) (Итак, Теоретически вы могли бы сделать видимость ваших текстовых полей интерактивной, основываясь на щелчке текстовых полей, а затем установить видимость различных строк данных в некотором «основном отчете», чтобы она была равна видимости текстовых полей, поэтому они «скрывают» и «показывают ", когда пользователь щелкает разные текстовые поля. Но тогда вам понадобится кнопка "Сбросить всю видимость", основной отчет и много кода программной части, чтобы выяснить строки видимости вашего подотчета... звучит как Кошмар обслуживания!)

Очевидно, что лучшим вариантом будет создание веб-приложения ASP.NET с элементом управления средством просмотра отчетов. Затем вы получаете все преимущества jQuery и запросов на стороне сервера для обработки передаваемых параметров от клиента к серверу, создания подотчета, возврата его (предпочтительно в виде потока данных ATOM), анализа и последующего внедрения в DOM. как вы хотите, чтобы пользователи это видели.

Некоторым людям удалось jQuery в заголовки диспетчера отчетов SSRS, поэтому, если вы действительно предприимчивы, вы можете попытаться воссоздать тот же опыт, что и выше, в диспетчере отчетов, но это звучит как хлопотно.

person Kyle Hale    schedule 11.02.2013
comment
Итак, из того, что я читал и искал в Интернете, я не могу ни подтвердить, ни опровергнуть, что это так. Я награждаю вас ответом, но, поскольку он действительно мне не помогает, я не могу отдать вам голоса. Надеюсь, в следующей версии будет больше функций. 2012 Я еще не увидел реальной разницы по сравнению с 2008 R2. - person djangojazz; 13.02.2013
comment
Это нормально :) Если вы ищете какой-то динамический UX, вам в любом случае лучше использовать веб-приложение, а не что-то статичное, например, SSRS. Может PowerView? Не сильно возился с этим. - person Kyle Hale; 13.02.2013
comment
На самом деле я просматривал HighCharts, highcharts.com/demo/dynamic-master-detail, так как они, кажется, могут делать гораздо больше динамичных вещей. Это будет основано на java-скрипте, и я еще не уверен, что хочу для внешнего интерфейса. Я смотрел на все виды вещей. Мне очень нравится SSRS, но я также знаю, что у него много ограничений. Из того, что я видел, действительно не хватает наведения курсора на функции и события, которые являются многоуровневыми. Я все еще буду продолжать использовать его, поскольку он может быть очень мощным для того, что он может сделать. - person djangojazz; 13.02.2013

Я предполагаю, что вы ищете функцию в SSRS, которая представляет собой действия. Вы можете определить действие при нажатии на ячейку, что дает вам различные варианты действий.

Для этого щелкните ячейку, перейдите к свойствам TextBox, выберите действие в качестве отчета о переходе и добавьте параметры, которые вы хотите передать.

В этом примере у меня есть Report1 , для которого, когда я нажимаю на ячейку JobCandidate, я перехожу к Report2, наряду с этим я передаю параметр, который является идентификатором JobCandidate, используемым параметром Param1 отчета 2 в Report2. Значение, передаваемое в Param1, по сути является значением ячейки, в данном случае Fields!JobCandidateId.Value введите здесь описание изображения

введите здесь описание изображения

person Igoy    schedule 09.02.2013
comment
Не то, что я искал, поскольку я уже понимаю свойство действий. Я ищу объект, подобный таблице, которая обновляется при нажатии ссылки в другой таблице объектов. В моем примере, если бы я щелкнул столбец «Бретт», он заполнил бы поле этим значением, иначе, если бы я щелкнул «Шон», это изменило бы значение на Шона. Это довольно динамично, поэтому я не был уверен, что это возможно. Ограничение «Перейти к отчету» заключается в том, что вы выходите за рамки и выходите за пределы текущего объекта отчета, в котором вы находитесь. Я не хочу этого. - person djangojazz; 09.02.2013