Simptome
Luați în considerare următorul scenariu:
-
Utilizați SQL Server 2012, 2014 sau 2016 Reporting Services.
-
Instalați Microsoft SQL Server 2014 Service Pack 1, o actualizare cumulativă mai recentă a SQL Server 2012 SP3 sau o actualizare cumulativă de SQL Server 2016.
-
Rulați un raport RDL care este generat prin programare.
În acest scenariu, este posibil să primiți un mesaj de eroare care seamănă cu următorul:
Prelucrare! ReportServer_0-1!1328!01/14/2016-10:58:06:: e EROARE: Generare Microsoft.ReportingServices.ReportProcessing.ReportProcessingException: , Microsoft.ReportingServices.ReportProcessing.ReportProcessingException: Eroare neașteptată în Procesare raport. ---> System.IO.IOException: Procesul nu poate accesa fișierul 'C:\Users\ReportServer\AppData\Local\Temp\kpw4qafn.out', deoarece este utilizat de alt proces.
at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
la System.IO.File.InternalDelete(Cale șir, Boolean checkHost)
la Microsoft.ReportingServices.RdlExpressions.VBExpressionCodeProvider.CompileAssemblyFromDomWithRetry(CompilerParameters options, CodeCompileUnit compilationUnit)
la Microsoft.ReportingServices.RdlExpressions.ExprHostCompiler.InternalCompile(AppDomain compilationTempAppDomain, Boolean refusePermissions)
la Microsoft.ReportingServices.RdlExpressions.ExprHostCompiler.<>c__DisplayClass2.<Compile>b__0()
la Microsoft.ReportingServices.Diagnostics.RevertImpersonationContext.<>c__DisplayClass1.<Run>b__0(Object state)
la System.Security.SecurityContext.runTryCode(Object userData)
la System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(cod TryCode, CleanupCode backoutCode, Object userData)
la System.Security.SecurityContext.Run(SecurityContext securityContext, ContextCallback callback, Object state)
la Microsoft.ReportingServices.Diagnostics.RevertImpersonationContext.Run(ContextBody callback)
la Microsoft.ReportingServices.RdlExpressions.ExprHostCompiler.Compile(IExpressionHostAssemblyHolder expressionHostAssemblyHolder, AppDomain compilationTempAppDomain, Boolean refusePermissions, PublishingVersioning versioning)
la Microsoft.ReportingServices.ReportPublishing.ReportPublishing.Phase3(ParameterInfoCollection& parameters, Dictionary'2& groupingExprCountAtScope)
la Microsoft.ReportingServices.ReportPublishing.ReportPublishing.InternalCreateIntermediateFormat(Stream definitionStream, Descriere șir&, Limbă& șir, ParameterInfoCollection& parametri, DataSourceInfoCollection& dataSources, DataSetInfoCollection& sharedDataSetReferences, UserLocationFlags& userReferenceLocation, ArrayList& dataSetsName, Boolean& hasExternalImages, Boolean& hasHyperlinks, Byte[]& dataSetsHash)
la Microsoft.ReportingServices.ReportProcessing.ReportProcessing.CompileOdpReport(PublishingContext reportPublishingContext, PublishingErrorContext errorContext, String& reportDescription, String& reportLanguage, ParameterInfoCollection& parameters, DataSourceInfoCollection& dataSources, DataSetInfoCollection& sharedDataSetReferences, UserLocationFlags& userReferenceLocation, ArrayList& dataSetsName, Boolean& hasExternalImages, Boolean& hasHyperlinks, Byte[]& dataSetsHash)
la Microsoft.ReportingServices.ReportProcessing.ReportProcessing.CreateIntermediateFormat(PublishingContext reportPublishingContext)
--- Sfârșitul --- de urmărire a stivei interioare de excepții
Notă Această eroare este înregistrată și în jurnalele Reporting Services.
Rezolvare
Această problemă a fost remediată în următoarea actualizare cumulativă pentru SQL Server:
Actualizarea cumulativă 5 pentru SQL Server 2016 RTM
actualizarea cumulativă 2 pentru SQL Server 2016 SP1
actualizarea cumulativă 9 pentru SQL Server 2014 Service Pack 1
Actualizarea cumulativă 1 pentru SQL Server 2014 SP2
Actualizarea cumulativă 8 pentru SQL Server 2012 SP3
Actualizarea cumulativă 16 pentru SQL Server 2012 Service Pack 2 (SP2)
Fiecare actualizare cumulativă nouă pentru SQL Server conține toate remedierile rapide și toate remedierile de securitate care au fost incluse în actualizarea cumulativă anterioară. Consultați cele mai recente actualizări cumulative pentru SQL Server:
Cea mai recentă actualizare cumulativă pentru SQL Server 2014
Cea mai recentă actualizare cumulativă pentru SQL Server 2016
Cea mai recentă actualizare cumulativă pentru SQL Server 2012 SP3
Cea mai recentă actualizare cumulativă pentru SQL Server 2012 SP2
Stare
Microsoft a confirmat că aceasta este o problemă în produsele Microsoft enumerate în secțiunea „Se aplică la”.
Referințe
Aflați despre terminologia pe care o utilizează Microsoft pentru a descrie actualizările de software.