Одним из возможных решений является создание своего собственного элемента управления ReportViewer.
Шаг 1
Используйте SOAP Reporting Services для запроса ваших каталогов, поиска ваших отчетов, их параметров и допустимых значений, значений по умолчанию и т. Д.
Некоторые отправные точки:
Документация (для последней версии)
Другой вопрос SO
Шаг 2
Затем предложите своим пользователям базовый интерфейс для выбора параметров. Возможно, вам придется создать это самостоятельно, но с небольшими навыками, это делается за пару часов, может быть, вы сможете найти образцы.
Шаг 3
Создайте URL-адрес ReportServer, необходимый для запроса отчета с выбранными значениями параметров, и получите отчет в формате MHTML из служб отчетов Url Access. Это позволяет получить весь отчет в виде одного куска без необходимости извлекать, например, диаграммы или любые другие изображения впоследствии с сервера.
Результат может быть легко добавлен в элемент управления веб-браузера, и вы можете выбрать контент.
Пример:
var partialPath = System.Web.HttpUtility.UrlEncode(RelativeReportPath);
//RelativeReportPath is sth. like /YourFolder/YourReportName
var fullPath = string.Format("http://YourReportSereverDNS/ReportServer?{0}&rs:Command=Render&rc:Toolbar=false&rs:Format=MHTML", partialPath);
var client = new RestClient(fullPath);
client.Authenticator = new HttpBasicAuthenticator(@"domain\user", "SuperSecretPassword");
var request = new RestRequest(Method.GET);
var response = client.Execute(request);
//then throw response.Content into a Webbrowser Control in your winforms
Удачи (если вам или кому-то еще это интересно): -)