Sintomas
Suponha que você use o Microsoft SQL Server 2014 ou 2016 Reporting Services (SSRS) para exportar um relatório para um arquivo .pdf. Se a altura da página estiver definida como 8,5 polegadas, poderá ocorrer uma exceção sem tratamento. Além disso, as mensagens de erro que se assemelham ao seguinte são registradas no log de erros do Serviço de Relatórios:
Reportrendering! ReportServer_0-485!f60! data-time:: e ERROR: Throwing Microsoft.ReportingServices.ReportProcessing.UnhandledReportRenderingException: , Microsoft.ReportingServices.ReportProcessing.UnhandledReportRenderingException: um erro ocorreu durante a renderização do relatório. ---> Microsoft.ReportingServices.OnDemandReportRendering.ReportRenderingException: ocorreu um erro durante a renderização do relatório. ---> System.IndexOutOfRangeException: o índice estava fora dos limites da matriz.
em Microsoft.ReportingServices.Rendering.ImageRenderer.Renderer.ProcessTablixContainer(RPLTablix tablix, posição RectangleF, Single[] rowStarts, Single[] columnStarts) em Microsoft.ReportingServices.Rendering.ImageRenderer.Renderer.ProcessReportItem(medida RPLItemMeasurement, limites rectangleF, renderBorders boolianos, estilo RectangleFBounds, boolean renderStylesOnBounds, boolean hasTablixCellParent) em Microsoft.ReportingServices.Rendering.ImageRenderer.Renderer.ProcessNonTablixContainerReportItems(contêiner RPLContainer, limites do RectangleF) em Microsoft.ReportingServices.Rendering.ImageRenderer.Renderer.ProcessReportItem(medida RPLItemMeasurement, limites rectangleF, renderBorders boolianos, estilo RectangleFBounds, boolean renderStylesOnBounds, boolean hasTablixCellParent) em Microsoft.ReportingServices.Rendering.ImageRenderer.Renderer.ProcessPage(RPLReport rplReport, Int32 pageNumber, FontCache sharedFontCache, List'1 glyphCache) em Microsoft.ReportingServices.Rendering.ImageRenderer.PDFRenderer.Render(Relatório, NameValueCollection deviceInfo, Hashtable renderProperties, CreateAndRegisterStream createAndRegisterStream) em Microsoft.ReportingServices.Rendering.ImageRenderer.RendererBase.Render(Relatório, NameValueCollection reportServerParameters, NameValueCollection deviceInfo, NameValueCollection clientCapabilities, Hashtable& renderProperties, CreateAndRegisterStream createAndRegisterStream) --- Fim do --- de rastreamento de pilha de exceção interna em Microsoft.ReportingServices.Rendering.ImageRenderer.RendererBase.Render(Relatório, NameValueCollection reportServerParameters, NameValueCollection deviceInfo, NameValueCollection clientCapabilities, Hashtable& renderProperties, CreateAndRegisterStream createAndRegisterStream) em Microsoft.ReportingServices.ReportProcessing.Execution.RenderReport.InvokeRenderer(renderizador IRenderingExtension, Relatório, Relatório NameValueCollection reportServerParameters, NameValueCollection deviceInfo, NameValueCollection clientCapabilities, Hashtable& renderProperties, CreateAndRegisterStream createAndRegisterStream) em Microsoft.ReportingServices.ReportProcessing.Execution.RenderReport.Execute(IRenderingExtension newRenderer) --- Fim do --- de rastreamento de pilha de exceção interna; Biblioteca! ReportServer_0-485!f60! date-time:: i INFO: Resultado do despejo: 0x20000001 de código de retorno do processo de despejo externo.Resolução
Esse problema é corrigido nas seguintes atualizações cumulativas para SQL Server:
Atualização cumulativa 8 para SQL Server RTM 2016
Cada nova atualização cumulativa para SQL Server contém todos os hotfixes e correções de segurança que foram incluídos na atualização cumulativa anterior. Confira as últimas atualizações cumulativas para SQL Server:
Status
A Microsoft confirmou que este é um problema nos produtos Microsoft listados na seção "Aplicável a".
Referências
Saiba mais sobre a terminologia que a Microsoft usa para descrever atualizações de software.