Я работаю над решением для генерации отчета SSRS в памяти для прикрепления после отправки по электронной почте. Я использую версию 2010 года.Сгенерировать отчет SSRS в памяти
Отчет содержит необходимые параметры, которые должны быть заполнены для правильного отображения отчета.
я нашел несколько решение, как это сделать:
Решение 1
Использование MS родной ReportViewer
класс. Мы можем создать экземпляр объекта в памяти, подключение к серверу и сделать отчет в требуемом формате с помощью API управления
report.ServerReport.ReportServerCredentials = new MyCredentials(...);
report.ServerReport.ReportServerUrl = new Uri("ssrs_url");
report.ServerReport.ReportPath = "path-to-report";
byte[] reportData = report.ServerReport.Render("excel");
Решения есть главный недостаток - он требует значительного набора зависимостей для использования контроля отчетности. Поэтому его трудно использовать в многоуровневой архитектуре, когда нижние слои имеют ограниченный и предопределенный набор зависимостей, которые должны быть свободными, и легко переносятся на широкие диапазоны ОС и облачных стеков.
Так что не может принять это решение в моем случае
Решение 2
Использование сервера отчетов публичный API для доступа к данным, уже в требуемом формате. Я узнал, что это может быть достигнуто, и MS подтверждает это. Вот ссылка https://msdn.microsoft.com/en-us/library/ms154040.aspx
Таким образом, мы можем просто использовать правую сконфигурированный ссылку для доступа к данным: http://myrshost/ReportServer?/myreport&rs:Format=PDF
Это решение лучше всего подходит для моих нужд, но я не знаю, как передать параметры отчета в этом отчете? Также как сначала выполнить аутентификацию с сервером отчетов SSRS?
Может кто-нибудь помочь мне с этим?
Является ли использование службы ReportingServices веб-сервисом? В зависимости от вашей версии SSRS (вы можете включить ее в свой пост), вы можете найти сервис asmx здесь: http: // myrshost: 80/ReportServer/ReportExecution2005.asmx. –
Да, у меня есть все данные. Как передать данные в определенные параметры отчета. У меня есть требуемые свойства, которые нужно заполнить до получения отчета – VadimB
После того, как вы назначили встречу, вы вернетесь к вам позже (если никто не станет быстрее;)) Посмотрите MSDN на услугу в среднем. https://msdn.microsoft.com/en-us/library/ms152787.aspx –