Симптоми
Да предположим, че използвате Microsoft SQL Server 2014 или 2016 reporting Services (SSRS) за експортиране на отчет в .pdf файл. Ако височината на страницата е зададена на 8,5 инча, може да възникне необработено изключение. Освен това в регистрационния файл за грешки на услугата за отчети се записват съобщения за грешка, които приличат на следното:
докладването! ReportServer_0 485!f60! date-time:: e ERROR: Throwing Microsoft.ReportingServices.ReportProcessing.UnhandledReportRenderingException: , Microsoft.ReportingServices.ReportProcessing.UnhandledReportRenderingException: Възникна грешка по време на рендирането на отчета. ---> Microsoft.ReportingServices.OnDemandReportRendering.ReportRenderingException: Възникна грешка по време на рендирането на отчета. ---> System.IndexOutOfRangeException: Индексът е извън границите на масива.
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(Report report, 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)
--- край на проследяването на стека на вътрешното изключение ---
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)
в Microsoft.ReportingServices.ReportProcessing.Execution.RenderReport.Execute(IRenderingExtension newRenderer)
--- край на вътрешно изключение стека проследяване ---;
Библиотека! ReportServer_0 485!f60! date-time:: i INFO: Dump result: External dump process return code 0x20000001.
Решение
Този проблем е коригиран в следните кумулативни актуализации за SQL Server:
Кумулативна актуализация 8 за SQL Server 2016 RTM
Кумулативна актуализация 5 за SQL Server 2016 SP1
Кумулативна актуализация 6 за SQL Server 2014 Service Pack 2
Всяка нова кумулативна актуализация за SQL Server съдържа всички горещи поправки и корекции на защитата, които са включени в предишната кумулативна актуализация. Прегледайте най-новите кумулативни актуализации за SQL Server:
Статут
Microsoft потвърди, че това е проблем в продуктите на Microsoft, които са изброени в раздела "Отнася се за".
Препратки
Научете повече за терминологията , която Microsoft използва за описване на актуализациите на софтуера.