Příznaky
Předpokládejme, že k exportu sestavy do souboru .pdf používáte službu Microsoft SQL Server 2014 nebo 2016 Reporting Services (SSRS). Pokud je výška stránky nastavená na 8,5 palců, může dojít k neošetřené výjimce. Do protokolu chyb služby Reporting Services se navíc zaznamenávají chybové zprávy připomínající následující:
Poznámka
reportrendering! ReportServer_0-485!F60! datum-čas:: e CHYBA: Vyvolání Microsoft.ReportingServices.ReportProcessing.UnhandledReportRenderingException: , Microsoft.ReportingServices.ReportProcessing.UnhandledReportRenderingException: Při vykreslování sestavy došlo k chybě.
>--- Microsoft.ReportingServices.OnDemandReportRendering.ReportRenderingException: Při vykreslování sestavy došlo k chybě.
>--- System.IndexOutOfRangeException: Index byl mimo hranice pole.
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(kontejner RPLContainer, hranice RectangleF)
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(Report report, NameValueCollection deviceInfo, Hashtable renderProperties, CreateAndRegisterStream createAndRegisterStream)
at Microsoft.ReportingServices.Rendering.ImageRenderer.RendererBase.RendererBase(Report report, NameValueCollection reportServerParameters, NameValueCollection deviceInfo, NameValueCollection clientCapabilities, Hashtable& renderProperties, CreateAndRegisterStream createAndRegisterStream)
--- Konec trasování vnitřního zásobníku výjimek ---
at Microsoft.ReportingServices.Rendering.ImageRenderer.RendererBase.RendererBase(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)
--- Konec trasování vnitřního zásobníku výjimek ---;
knihovna! ReportServer_0-485!F60! datum-čas:: i INFO: Výsledek výpisu: Návratový kód procesu externího výpisu 0x20000001.
Řešení
Tento problém je opravený v následujících kumulativních aktualizacích pro SQL Server:
Kumulativní aktualizace 8 pro SQL Server 2016 RTM
Kumulativní aktualizace 5 pro SQL Server 2016 SP1
Kumulativní aktualizace 6 pro SQL Server 2014 Service Pack 2
Informace o kumulativních aktualizacích pro SQL Server
Každá nová kumulativní aktualizace pro SQL Server obsahuje všechny opravy hotfix a opravy zabezpečení, které byly součástí předchozí kumulativní aktualizace. Podívejte se na nejnovější kumulativní aktualizace pro SQL Server:
Nejnovější kumulativní aktualizace pro SQL Server 2016
Nejnovější kumulativní aktualizace pro SQL Server 2014
Stav
Společnost Microsoft potvrdila, že se jedná o problém produktů Microsoft, které jsou uvedeny v sekci Platí pro.
Reference
Podívejte se na informace o terminologii, kterou společnost Microsoft používá k popisování aktualizací softwaru.