Службы Reporting Services - переполнение: автоматическое создание нежелательных полос прокрутки при рендеринге HTML - PullRequest
1 голос
/ 21 сентября 2011

Я использую API-интерфейс SSRS 2008 R2 для программной загрузки [ LoadReport () ] и отображения [ Render () ] отчетов с сервера отчетов.

Формат отчета - HTML4.0.

Выходные данные в порядке, если отчет представляет собой одну страницу. Однако когда отчет содержит более одной страницы, страницы после первой страницы имеют дополнительную полосу прокрутки.

Глядя на сгенерированный html, это вызвано переполнением: auto для сгенерированных элементов div.

Это сгенерированный html для одностраничного отчета ...

<div id="oReportDiv" style="width: 100%; direction: ltr; height: 100%; overflow: auto;" dir="ltr" onscroll="CreateFixedHeaders()" onresize="CreateFixedHeaders()">

Хотя это сгенерированный html для двухстраничного отчета ...

<div id="oReportDiv" style="direction: ltr;" dir="ltr">
<div style="page-break-after: always;">
<div style="width: 100%; direction: ltr; height: 100%; overflow: auto;" dir="ltr">

Похоже, что Microsoft это признает ошибкой:

Переполнение «oReportDiv»: авто - полосы прокрутки с использованием SOAP API для визуализации отчета HTML 4

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

Во-первых, я был бы благодарен за любую дополнительную информацию относительно этого "исправления".

Кроме того, если бы это не было исправлено, какой бы лучший обходной путь?

1 Ответ

1 голос
/ 24 февраля 2012

Это был мой обходной путь ...

        $(document).ready(function ()
        {
            $('#report_frame').load(function ()
            {
                $(this).contents().find('body > div').each(function ()
                {
                    $(this).css('overflow', 'visible');
                });
            });
        });
...