KB4024563 — poprawka: nieobsługiwany wyjątek podczas eksportowania raportu usług SSRS do pliku .pdf, jeśli wysokość strony została ustawiona na 8,5 cala w SQL Server 2014 lub 2016

Dotyczy
SQL Server 2016 Enterprise - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use)

Objawy

Załóżmy, że używasz usług Microsoft SQL Server 2014 lub 2016 Reporting Services (SSRS) do wyeksportowania raportu do pliku .pdf. Jeśli ustawiono wysokość strony na 8,5 cala, może wystąpić nieobsługiwany wyjątek. Ponadto w dzienniku błędów usługi Reporting Service są rejestrowane komunikaty o błędach podobne do poniższych:

Uwaga

Renderowanie raportów! ReportServer_0-485!F60! data-godzina:: e BŁĄD: Zgłaszanie Microsoft.ReportingServices.ReportProcessing.UnhandledReportRenderingException: , Microsoft.ReportingServices.ReportProcessing.UnhandledReportRenderingException: Wystąpił błąd podczas renderowania raportu. >--- Microsoft.ReportingServices.OnDemandReportRendering.ReportRenderingException: Wystąpił błąd podczas renderowania raportu. >--- System.IndexOutOfRangeException: indeks znajdował się poza granicami tablicy.
   at Microsoft.ReportingServices.Rendering.ImageRenderer.Renderer.ProcessTablixContainer(RPLTablix tablix, RectangleF position, Single[] rowStarts, Single[] columnStarts)
   at Microsoft.ReportingServices.Rendering.ImageRenderer.Renderer.ProcessReportItem(RPLItemMeasurement measurement, RectangleF bounds, Boolean renderBorders, RectangleF styleBounds, Boolean renderStylesOnBounds, Boolean hasTablixCellParent)
   at Microsoft.ReportingServices.Rendering.ImageRenderer.Renderer.ProcessNonTablixContainerReportItems(RPLContainer container, RectangleF bounds)
   at Microsoft.ReportingServices.Rendering.ImageRenderer.Renderer.ProcessReportItem(RPLItemMeasurement measurement, RectangleF bounds, Boolean renderBorders, RectangleF styleBounds, Boolean renderStylesOnBounds, Boolean hasTablixCellParent)
   at Microsoft.ReportingServices.Rendering.ImageRenderer.Renderer.ProcessPage(RPLReport rplReport, Int32 pageNumber, FontCache sharedFontCache, List'1 glyphCache)
   at Microsoft.ReportingServices.Rendering.ImageRenderer.PDFRenderer.Render(Raport raportu, NameValueCollection deviceInfo, Hashtable renderProperties, CreateAndRegisterStream createAndRegisterStream)
   at Microsoft.ReportingServices.Rendering.ImageRenderer.RendererBase.Render(Report report, NameValueCollection reportServerParameters, NameValueCollection deviceInfo, NameValueCollection clientCapabilities, Hashtable& renderProperties, CreateAndRegisterStream createAndRegisterStream)
   --- Koniec śledzenia stosu wyjątków wewnętrznych ---
   at Microsoft.ReportingServices.Rendering.ImageRenderer.RendererBase.Render(Report report, NameValueCollection reportServerParameters, NameValueCollection deviceInfo, NameValueCollection clientCapabilities, Hashtable& renderProperties, CreateAndRegisterStream createAndRegisterStream)
   at Microsoft.ReportingServices.ReportProcessing.Execution.RenderReport.InvokeRenderer(IRenderingExtension renderer, Report report, NameValueCollection reportServerParameters, NameValueCollection deviceInfo, NameValueCollection clientCapabilities, Hashtable& renderProperties, CreateAndRegisterStream createAndRegisterStream)
   at Microsoft.ReportingServices.ReportProcessing.Execution.RenderReport.Execute(IRenderingExtension newRenderer)
   --- Koniec śledzenia stosu wyjątków wewnętrznych ---;
biblioteka! ReportServer_0-485!F60! data-godzina:: i INFO: Wynik zrzutu: Zewnętrzny kod powrotny procesu zrzutu 0x20000001.

Rozwiązanie

Ten problem został rozwiązany w następujących aktualizacjach zbiorczych programu SQL Server:

Aktualizacja zbiorcza 8 dla programu SQL Server 2016 RTM

Aktualizacja skumulowana 5 dla programu SQL Server 2016 z dodatkiem SP1

Aktualizacja zbiorcza 6 dla programu SQL Server 2014 z dodatkiem Service Pack 2

Informacje o aktualizacjach zbiorczych dla programu SQL Server

Każda nowa aktualizacja zbiorcza programu SQL Server zawiera wszystkie poprawki i poprawki zabezpieczeń zawarte w poprzedniej aktualizacji skumulowanej. Sprawdź najnowsze aktualizacje zbiorcze dla programu SQL Server:

Najnowsza aktualizacja zbiorcza dla programu SQL Server 2016

Najnowsza aktualizacja zbiorcza dla programu SQL Server 2014

Stan

Firma Microsoft potwierdziła, że jest to problem dotyczący produktów firmy Microsoft wymienionych w sekcji „Dotyczy”.

Źródła informacji

Dowiedz się więcej o terminologii używanej przez firmę Microsoft do opisywania aktualizacji oprogramowania.