修正︰ 在 SSRS 中執行的以程式設計方式產生的 RDL 報告失敗

請注意--重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,且可能由 Microsoft Community 利用 Community Translation Framework技術或人工進行事後編修。翻譯過程並無專業譯者參與。Microsoft 同時提供使用者人為翻譯、機器翻譯及社群編修後的機器翻譯三種版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,所有翻譯文章都可能不盡完美,內容都可能出現詞彙、語意或文法上的錯誤。就翻譯內容之不正確或錯誤,或客戶因使用翻譯內容所產生的任何損害,微軟不負擔任何責任。Microsoft將依合理的商業努力不斷地更新機器翻譯軟體和工具,以期能為使用者提供更好的服務。

按一下這裡查看此文章的英文版本:3157016
徵狀
請考慮下列情況:
  • 您使用 SQL Server 2012年、 2014 或 2016年報告服務。
  • 您可以安裝 Microsoft SQL Server 2014 Service Pack 1、 稍後累積更新的 SQL Server 2012 SP3 或 SQL Server 2016年的 acumulative 更新。
  • 您執行一份 RDL 報告,以程式設計方式產生。

在這個案例中,您可能會收到類似下列的錯誤訊息︰
處理 !ReportServer_0-1 ! 1328年 ! 01/14/2016年-10: 58:06:: e 錯誤︰ 擲回 Microsoft.ReportingServices.ReportProcessing.ReportProcessingException:,Microsoft.ReportingServices.ReportProcessing.ReportProcessingException︰ 在報表處理時發生意外的錯誤。---> System.IO.IOException︰ 處理程序無法存取檔案 'C:\Users\ReportServer\AppData\Local\Temp\kpw4qafn.out',因為它正由其他處理程序。
在 System.IO.__Error.WinIOError (Int32 錯誤碼,字串 maybeFullPath)
在 System.IO.File.InternalDelete (字串路徑,則為 True 的 checkHost)
在 Microsoft.ReportingServices.RdlExpressions.VBExpressionCodeProvider.CompileAssemblyFromDomWithRetry (CompilerParameters 選項,CodeCompileUnit compilationUnit)
在 Microsoft.ReportingServices.RdlExpressions.ExprHostCompiler.InternalCompile (AppDomain compilationTempAppDomain,則為 True 的 refusePermissions)
在 Microsoft.ReportingServices.RdlExpressions.ExprHostCompiler。<> </>c__DisplayClass2。<Compile>b__0()
在 Microsoft.ReportingServices.Diagnostics.RevertImpersonationContext。<> </>c__DisplayClass1。<Run>b__0(Object state)
在 System.Security.SecurityContext.runTryCode (物件保留使用者資料)
在 System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup (TryCode 程式碼、 CleanupCode backoutCode、 物件保留使用者資料)
在 System.Security.SecurityContext.Run (SecurityContext securityContext、 ContextCallback 回呼物件狀態)
在 Microsoft.ReportingServices.Diagnostics.RevertImpersonationContext.Run (ContextBody 回呼)
在 Microsoft.ReportingServices.RdlExpressions.ExprHostCompiler.Compile (IExpressionHostAssemblyHolder expressionHostAssemblyHolder、 AppDomain compilationTempAppDomain、 布林 refusePermissions、 PublishingVersioning 版本控制)
在 Microsoft.ReportingServices.ReportPublishing.ReportPublishing.Phase3 (ParameterInfoCollection & 參數、 字典 ' 2 & groupingExprCountAtScope)
在 Microsoft.ReportingServices.ReportPublishing.ReportPublishing.InternalCreateIntermediateFormat (資料流 definitionStream、 字串 & 描述、 字串 & 語言、 ParameterInfoCollection & 參數、 DataSourceInfoCollection & 資料來源、 DataSetInfoCollection & sharedDataSetReferences、 UserLocationFlags & userReferenceLocation、 ArrayList & dataSetsName、 布林值 & hasExternalImages、 布林值 & hasHyperlinks、 Byte [] & dataSetsHash)
在 Microsoft.ReportingServices.ReportProcessing.ReportProcessing.CompileOdpReport (PublishingContext reportPublishingContext、 PublishingErrorContext errorContext、 字串 & reportDescription、 字串 & reportLanguage、 ParameterInfoCollection & 參數、 DataSourceInfoCollection & 資料來源、 DataSetInfoCollection & sharedDataSetReferences、 UserLocationFlags & userReferenceLocation、 ArrayList & dataSetsName、 布林值 & hasExternalImages、 布林值 & hasHyperlinks、 Byte [] & dataSetsHash)
在 Microsoft.ReportingServices.ReportProcessing.ReportProcessing.CreateIntermediateFormat (PublishingContext reportPublishingContext)
---結尾的內部例外狀況堆疊追蹤---</Run></Compile>

附註這個錯誤也會記錄在報告的服務記錄檔中。
解決方案
下列的累積更新的 SQL Server 是第一次解決此問題︰


關於 SQL Server 的累積更新
每個新的累積更新的 SQL Server 包含的所有 hotfix 與安全性修正,全都包含在先前的累積更新。取出 SQL Server 的最新的累積更新︰

狀況說明
Microsoft 已確認這是<套用>一節所列出的 Microsoft 產品的問題。
参考
深入了解 術語,Microsoft 會用其來描述軟體更新。

警告:本文為自動翻譯

內容

文章識別碼:3157016 - 最後檢閱時間:10/18/2016 03:02:00 - 修訂: 6.0

SQL Server 2014 Reporting Services, SQL Server 2012 Reporting Services, Microsoft SQL Server 2016 Developer, Microsoft SQL Server 2016 Enterprise, Microsoft SQL Server 2016 Enterprise Core

  • kbqfe kbsurveynew kbfix kbexpertiseinter kbmt KB3157016 KbMtzh
意見反應