KB3157016 - KHẮC PHỤC: Báo cáo RDL được tạo theo chương trình không chạy được trong SSRS

Áp dụng cho
SQL Server 2016 Developer - duplicate (do not use) SQL Server 2016 Enterprise - duplicate (do not use) SQL Server 2016 Enterprise Core - duplicate (do not use) SQL Server 2016 Standard - duplicate (do not use) SQL Server 2016 Service Pack 1

Triệu chứng

Hãy cân nhắc các trường hợp sau:

  • Bạn sử dụng Dịch vụ Báo cáo SQL Server 2012, 2014 hoặc 2016.
  • Bạn cài đặt Microsoft SQL Server 2014 Gói dịch vụ 1, bản cập nhật tích lũy mới hơn của SQL Server 2012 SP3 hoặc bản cập nhật tích lũy của SQL Server 2016.
  • Bạn chạy báo cáo RDL được tạo theo chương trình.

Trong trường hợp này, bạn có thể nhận được thông báo lỗi tương tự như sau:

Lưu ý

Đang xử lý! ReportServer_0-1!1328!14/01/2016-10:58:06:: e LỖI: Throwing Microsoft.ReportingServices.ReportProcessing.ReportProcessingException: , Microsoft.ReportingServices.ReportProcessing.ReportProcessingException: Đã xảy ra lỗi không mong muốn khi Xử lý Báo cáo. ---> System.IO.IOException: Quy trình không thể truy nhập tệp 'C:\Users\ReportServer\AppData\Local\Temp\kpw4qafn.out' do tệp này đang được một quy trình khác sử dụng.
tại System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.File.InternalDelete(String path, Boolean checkHost)
tại Microsoft.ReportingServices.RdlExpressions.VBExpressionCodeProvider.CompileAssemblyFromDomWithRetry(CompilerParameters options, CodeCompileUnit compilationUnit)
tại Microsoft.ReportingServices.RdlExpressions.ExprHostCompiler.InternalCompile(AppDomain compilationTempAppDomain, Boolean refusePermissions)
tại Microsoft.ReportingServices.RdlExpressions.ExprHostCompiler.<>c__DisplayClass2.<Biên dịch>b__0()
tại Microsoft.ReportingServices.Diagnostics.RevertImpersonationContext.<>c__DisplayClass1.<Chạy>b__0(Trạng thái đối tượng)
at System.Security.SecurityContext.runTryCode(Object userData)
at System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(TryCode code, CleanupCode backoutCode, Object userData)
at System.Security.SecurityContext.Run(SecurityContext securityContext, ContextCallback callback, Object state)
tại Microsoft.ReportingServices.Diagnostics.RevertImpersonationContext.Run(ContextBody callback)
at Microsoft.ReportingServices.RdlExpressions.ExprHostCompiler.Compile(IExpressionHostAssemblyHolder expressionHostAssemblyHolder, AppDomain compilationTempAppDomain, Boolean refusePermissions, PublishingVersioning versioning)
tại Microsoft.ReportingServices.ReportPublishing.ReportPublishing.Phase3(ParameterInfoCollection& parameters, Dictionary'2& groupingExprCountAtScope)
tại Microsoft.ReportingServices.ReportPublishing.ReportPublishing.InternalCreateIntermediateFormat(Stream definitionStream, String& description, String& language, ParameterInfoCollection& tham số, DataSourceInfoCollection& dataSources, DataSetInfoCollection& sharedDataSetReferences, UserLocationFlags& userReferenceLocation, ArrayList& dataSetsName, Boolean& hasExternalImages, Boolean& hasHyperlinks, Byte[]& dataSetsHash)
tại Microsoft.ReportingServices.ReportProcessing.ReportProcessing.CompileOdpReport(PublishingContext reportPublishingContext, PublishingErrorContext errorContext, String& reportDescription, String& reportLanguage, ParameterInfoCollection& tham số, DataSourceInfoCollection& dataSources, DataSetInfoCollection& sharedDataSetReferences, UserLocationFlags& userReferenceLocation, ArrayList& dataSetsName, Boolean& hasExternalImages, Boolean& hasHyperlinks, Byte[]& dataSetsHash)
tại Microsoft.ReportingServices.ReportProcessing.ReportProcessing.CreateIntermediateFormat(PublishingContext reportPublishingContext)
--- Kết thúc --- theo dõi ngăn xếp ngoại lệ bên trong

Lưu ý: Lỗi này cũng được ghi nhật ký trong nhật ký Dịch vụ Báo cáo. 

Giải pháp

Sự cố này đã được khắc phục trong bản cập nhật tích lũy sau đây dành cho SQL Server:

     Bản cập nhật tích lũy 5 cho SQL Server 2016 RTM
    
     Bản cập nhật tích lũy 2 cho SQL Server 2016 SP1

     Bản cập nhật tích lũy 9 cho SQL Server 2014 Gói Dịch vụ 1

Bản cập nhật tích lũy 1 cho SQL Server 2014 SP2

Bản cập nhật tích lũy 8 cho SQL Server 2012 SP3

Cập nhật tích lũy 16 cho SQL Server 2012 Gói Dịch vụ 2 (SP2)

Cập nhật tích lũy 2 cho SQL Server 2016

Giới thiệu về các bản cập nhật tích lũy cho SQL Server

Mỗi bản cập nhật tích lũy mới dành cho SQL Server chứa tất cả các bản sửa lỗi nóng và bản sửa lỗi bảo mật được tích hợp trong bản cập nhật tích lũy trước đó. Xem các bản cập nhật tích lũy mới nhất cho SQL Server:

Bản cập nhật tích lũy mới nhất cho SQL Server 2014

Bản cập nhật tích lũy mới nhất cho SQL Server 2016

Bản cập nhật tích lũy mới nhất cho SQL Server 2012 SP3

Bản cập nhật tích lũy mới nhất cho SQL Server 2012 SP2

Trạng thái

Microsoft đã xác nhận rằng đây là sự cố trong các sản phẩm của Microsoft được liệt kê trong mục "áp dụng cho".

Tham khảo

Tìm hiểu về thuật ngữ mà Microsoft dùng để mô tả các bản cập nhật phần mềm.