Обновление страницы после выбора параметра в отчете SSRS

У меня есть пара параметров в моем отчете SSRS. некоторые из них многозначные, а некоторые - обычные с выпадающим списком. каждый раз при выборе другого значения параметра страница обновляется. Есть ли способ избежать обновления этой страницы при выборе каждого параметра.

Заранее спасибо. Мария


person Community    schedule 20.01.2009    source источник
comment
они связаны параметрами? т.е. - значение одного гонит выпадающий список для второго?   -  person keithwarren7    schedule 20.01.2009


Ответы (7)


Я столкнулся с этой проблемой сегодня, и следующий пост определенно помог мне.

http://blog.summitcloud.com/2009/12/fix-refresh-of-parameters-in-ssrs/

цитата из сообщения:

Согласно Microsoft, если значение по умолчанию или список допустимых значений «слишком сложен» (может быть таким же простым, как выражение =Year()) для механизма RS для понимания во время выполнения, он определит, что он является зависимым и, следовательно, кандидатом на обновление.

Сообщение по ссылке показывает простой пример обходного пути:

Если можете, возьмите эти выражения VB и превратите их в наборы данных, которые возвращают значения на основе оператора SQL. Таким образом, =Year() в выражении станет чем-то вроде Select Year(getdate()) as CurYear

Надеюсь, поможет.

person s1lntz    schedule 30.08.2012

Это непросто, если вы не захотите использовать собственный элемент управления для просмотра отчетов. Это сделано потому, что SSRS имеет параметры, которые можно использовать для определения значений других параметров. Например, представьте, что вы смотрите на пользователей веб-сайта, и ваш первый вариант - ОС, возможно, у нее Vista, XP и Mac.

Когда вы выбираете Vista, страница обновляется, чтобы получить список всех различных версий Vista.

Если вы используете такую ​​вещь, то вы не сможете предотвратить обновление.

person JoshBerke    schedule 20.01.2009

В этом примере я попытался использовать обратную передачу параметра DateTime

Надеюсь, это сработает и для вас

Для поля DateTime в параметрах сначала создайте параметр как фиктивное значение даты, а затем назначьте это значение DateTime фактическим DateTime параметрам отчета.

Предположим, у нас есть хранимая процедура, в которой мы должны указать From Date и To Date

  1. В параметрах отчета добавьте фиктивный DateTime параметр Datetime_Dummy в качестве Name и DateTime в качестве DataType
  2. Сделайте это скрытым
  3. В разделе Значения по умолчанию выберите Указать значения.
  4. Установите выражение на =Today()
  5. Убедитесь, что это первый DateTime параметр в параметре datetimes.
  6. Установите DataType параметра FromDate на DateTime
  7. В разделе Значения по умолчанию выберите Указать значения.
  8. Установите выражение на =Parameters!Datetime_Dummy.Value

Это предотвращает отправку страницы обратно при выборе новой From даты.

person Community    schedule 17.07.2009
comment
Спасибо, это был единственный, который у меня рабочий. Даже если это взлом. - person M0CH1R0N; 09.06.2016

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

В моем сценарии у меня был логический параметр, для которого я предоставил подписи Да и Нет и соответствующие значения true и false напрямую (не через запрос). У меня также было 2 параметра даты и времени. Ни одно из них не было связано друг с другом.

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

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

person SainathDK    schedule 24.08.2012

Это довольно долго решать, однако я смог понять это. Страница постоянно обновляется, потому что у вас есть зависимости между параметрами (последний созданный вами параметр зависит от всех тех, которые вы создали до него)

Чтобы решить эту проблему, вам необходимо выполнить следующие действия, чтобы удалить зависимости:

1) Щелкните правой кнопкой мыши папку «Наборы данных» на панели «Данные отчета» -> «Показать скрытые наборы данных» (SSRS 2008 автоматически создает набор данных для каждого добавляемого параметра).

2) Дважды щелкните каждый появившийся скрытый набор данных (а именно наборы данных параметров) -> Запрос -> Конструктор запросов, вверху справа есть синий треугольник поверх линейки (режим разработки), а в конце запрос, где указано From [Database Name], вам нужно будет стереть все до этого, пока (не включая) ON ROWS (первый ON ROWS снизу) ТАКЖЕ УДАЛИТЕ ВСЕ ЗАКРЫВАЮЩИЕ КРОНШТЕЙНЫ ')' В КОНЦЕ ЗАПРОСА

3) нажмите «ОК», чтобы применить изменения, затем нажмите «Параметры» и удалите все в этом списке, затем нажмите «ОК», чтобы применить.

4) Разверните папку «Параметры» в «Данные отчета», дважды щелкните каждый параметр -> «Дополнительно» -> «Никогда не обновлять».

Это должно позаботиться об освежении :) Спасибо, Крис

person KrizD    schedule 05.07.2011
comment
I Щелкните правой кнопкой мыши панель данных отчета, но в меню нет пункта для отображения скрытых наборов данных. Я получаю только Добавить набор данных. Любая идея, пожалуйста? - person pili; 31.07.2012

Для меня это было решено отключением настраиваемого заголовка X-Content-Type-Options: nosniff в web.config.

<customHeaders>
   <add name="X-Frame-Options" value="SAMEORIGIN" />
   <!-- 
   <add name="X-Content-Type-Options" value="nosniff" />
	THIS BREAKS SSRS REPORTS, causes clickable controls to immediately reload page
	-->
    <add name="X-XSS-Protection" value="1; mode=block" />
</customHeaders>

person user9062866    schedule 06.12.2017

Я делал это много раз назад, это было просто удаление зависимости параметров с различными перестановками и комбинациями в соответствии с потребностями проектов.

Просто делайте следующее.

  1. Удалите все зависимости параметров из раскрывающегося списка данных.
  2. Передайте значения по умолчанию для каждого параметра отчета.

Надеюсь, это поможет.

Спасибо.

person Kali Charan Tripathi    schedule 21.01.2010