Проблема
Предположим, что вы используете Microsoft SQL Server 2014 или 2016 Reporting Services (SSRS) для экспорта отчета в файл .pdf. Если для высоты страницы задано значение 8,5 дюймов, может возникнуть необработанное исключение. Кроме того, в журнале ошибок службы отчетов регистрируются сообщения об ошибках, похожие на следующие:
Примечание
отчетность! ReportServer_0-485!F60! date-time:: e ОШИБКА: Throwing Microsoft.ReportingServices.ReportProcessing.UnhandledReportRenderingException: , Microsoft.ReportingServices.ReportProcessing.UnhandledReportRenderingException: во время подготовки отчета произошла ошибка.
>--- Microsoft.ReportingServices.OnDemandReportRendering.ReportRenderingException: во время подготовки отчета произошла ошибка.
>--- System.IndexOutOfRangeException: индекс находился за пределами массива.
в Microsoft.ReportingServices.Rendering.ImageRenderer.Renderer.ProcessTablixContainer(RPLTablix tablix, позиция RectangleF, Single[] rowStarts, Single[] columnStarts)
в Microsoft.ReportingServices.Rendering.ImageRenderer.Renderer.ProcessReportItem(RPLItemMeasurement measurement, RectangleF bounds, Boolean renderBorders, RectangleF styleBounds, Boolean renderStylesOnBounds, Boolean hasTablixCellParent)
в Microsoft.ReportingServices.Rendering.ImageRenderer.Renderer.ProcessNonTablixContainerReportItems(контейнер RPLContainer, границы RectangleF)
в Microsoft.ReportingServices.Rendering.ImageRenderer.Renderer.ProcessReportItem(RPLItemMeasurement measurement, RectangleF bounds, Boolean renderBorders, RectangleF styleBounds, Boolean renderStylesOnBounds, Boolean hasTablixCellParent)
в Microsoft.ReportingServices.Rendering.ImageRenderer.Renderer.ProcessPage(RPLReport rplReport, Int32 pageNumber, FontCache sharedFontCache, List'1 glyphCache)
в Microsoft.ReportingServices.Rendering.ImageRenderer.PDFRenderer.Render(отчет об отчете, NameValueCollection deviceInfo, Hashtable renderProperties, CreateAndRegisterStream, createAndRegisterStream)
в Microsoft.ReportingServices.Rendering.ImageRenderer.RendererBase.Render(отчет об отчете, NameValueCollection reportServerParameters, NameValueCollection deviceInfo, NameValueCollection clientCapabilities, Hashtable& renderProperties, CreateAndRegisterStream createAndRegisterStream)
--- Конец внутренней трассировки стека исключений ---
в Microsoft.ReportingServices.Rendering.ImageRenderer.RendererBase.Render(отчет об отчете, NameValueCollection reportServerParameters, NameValueCollection deviceInfo, NameValueCollection clientCapabilities, Hashtable& renderProperties, CreateAndRegisterStream createAndRegisterStream)
в Microsoft.ReportingServices.ReportProcessing.Execution.RenderReport.InvokeRenderer(IRenderingExtension renderer, отчет об отчете, NameValueCollection reportServerParameters, NameValueCollection deviceInfo, NameValueCollection clientCapabilities, Hashtable& renderProperties, CreateAndRegisterStream createAndRegisterStream)
в Microsoft.ReportingServices.ReportProcessing.Execution.RenderReport.Execute(IRenderingExtension newRenderer)
--- Конец внутренней трассировки стека исключений ---;
библиотека! ReportServer_0-485!F60! date-time:: i INFO: Результат дампа: Код возврата процесса внешнего дампа 0x20000001.
Решение
Эта проблема устранена в следующих накопительных обновлениях для SQL Server:
Накопительный пакет обновления 8 для SQL Server 2016 RTM
Накопительный пакет обновления 5 для SQL Server 2016 с пакетом обновления 1 (SP1)
Накопительный пакет обновления 6 для SQL Server 2014 с пакетом обновления 2 (SP2)
Сведения о накопительных обновлениях для SQL Server
Каждый новый накопительный пакет обновления для SQL Server содержит все исправления и исправления безопасности, которые были включены в предыдущий накопительный пакет обновления. Ознакомьтесь с последними накопительными пакетами обновления для SQL Server:
Последний накопительный пакет обновления для SQL Server 2016
Последний накопительный пакет обновления для SQL Server 2014
Состояние
Корпорация Майкрософт подтвердила, что это проблема продуктов Microsoft, перечисленных в разделе «Относится к».
Ссылки
Узнайте о терминологии, используемой корпорацией Майкрософт для описания обновлений программного обеспечения.