SSRS 2008 - кэширование данных, используемых несколькими отчетами - PullRequest
1 голос
/ 14 сентября 2009

Я использую SQL Server Reporting Services 2008. У меня есть один набор данных, который используется несколькими отчетами - каждый отчет группирует или форматирует данные по-своему. Можно ли настроить вещи так, чтобы данные извлекались из SQL Server при создании одного из этих отчетов, а затем кэшировались в SSRS в течение настраиваемого периода времени? Предположим, что я могу выбирать таблицы базы данных, но не могу создавать объекты.

Ответы [ 3 ]

0 голосов
/ 14 сентября 2009

Вот еще один вариант, который хотя и сложен, но может соответствовать вашим требованиям.

Пусть во всех отчетах используется источник данных XML . Затем создайте этот источник данных XML в виде веб-страницы ASP.Net или веб-службы. Сконфигурируйте и используйте Зависимость кэша SQL , чтобы контролировать повторный запрос к базе данных.

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

0 голосов
/ 19 августа 2010

Теперь вы можете в SSRS 2008 R2:

http://msdn.microsoft.com/en-us/library/ms170438.aspx - общие наборы данных

http://msdn.microsoft.com/en-us/library/ms155927.aspx - Кэширование отчетов в службах Reporting Services

Go SQL!

0 голосов
/ 14 сентября 2009

К сожалению, нет.

Ваш основной вариант - изучить «Снимки отчета» , чтобы явно кэшировать отчет (и косвенно данные)

В противном случае:

  • Вы можете изменить отчеты, чтобы они имели много условного форматирования и т. Д., Чтобы у вас был только один отчет. Некоторое кэширование будет происходить автоматически за пользовательский сеанс, но не очень

  • Использование элемента управления ReportViewer в режиме локальной обработки с использованием ASP.NET для кэширования данных

...