2012-03-20 2 views
0

У меня есть веб-приложение, которое извлекает отчеты с нашего сервера SSRS динамически - мы нажимаем URL-адрес и выкладываем какой-то HTML4.0, который я использую в div для пользователя для просмотра. Недавно я попробовал добавить отчет с встроенным изображением (в самом RDL), и изображение не проходит. Что происходит, это ссылка IMG SRC на блок SSRS, но мы не разрешаем конечным пользователям напрямую удалять окно SSRS ... пользователи запрашивают веб-приложение, а веб-приложение взаимодействует с сервисом SSRS. Существует опция для рендеринга в MHTML (обратите внимание, что мы обычно используем команду rs: command = RenderHTML с rs: format = HTML4.0) - возвращенный blob кажется допустимым MIME, но не кажется дружественным для наложения в DIV ... я пропущу что-то очевидное? Мой следующий шаг - проанализировать MIME, подбросить ссылки и переместить все это на страницу, но я чувствую, что это трудный путь. Каков простой способ получить отсканированные отчеты HTML из SSRS со встроенными изображениями?Как использовать SSRS для извлечения фрагментов HTML со встроенными изображениями простой способ

ответ

2

Я столкнулся с той же проблемой. В зависимости от того, как вы внедряете службы Reporting Services, вы можете обойти это без необходимости писать дополнительный код, но вам нужно будет настроить аутентификацию Kerberos для SSRS. Если вы этого не сделаете, вам нужно будет захватить поток изображений из SSRS Webservice. Это делается с помощью метода RenderStream веб-службы. Когда вы создаете HTML-отчет, он возвращает массив строк streamId. Они передаются в метод RenderStream, который дает вам байт [] взамен. Вам нужно будет поменять исходники в HTML с новыми путями к локальным файлам. Затем вам нужно будет управлять файловой системой. Когда вы это сделаете, количество сохраненных изображений может выйти из-под контроля, в зависимости от количества пользователей. Таким образом, вам, возможно, придется управлять очисткой изображений.

Смежные вопросы