Tôi có một Phiên bản gốc tiêu chuẩn của Dịch vụ báo cáo SQL 2016 (13.0.5103.6) không cho phép tôi chỉnh sửa Báo cáo (RDL) bằng Trình tạo báo cáo 15.0.19611.0 hoặc tải chúng lên qua cổng Báo cáo, nó đưa ra một ngoại lệ và tạo kết xuất bộ nhớ. Tôi vẫn có thể thực thi/tạo báo cáo trong phiên bản này.
Khi mở báo cáo trong Trình tạo báo cáo, tôi gặp lỗi phía máy khách là:
Đã xảy ra lỗi không mong muốn trong Xử lý báo cáo. --->
Microsoft.ReportingServices.ReportProcessing.ReportProcessingException: Đã xảy ra lỗi không mong muốn trong Xử lý báo cáo. --->
System.Exception: Để biết thêm thông tin về lỗi này, hãy điều hướng đến máy chủ báo cáo trên máy chủ cục bộ hoặc bật lỗi từ xa
Trên Nhật ký dịch vụ báo cáo của máy chủ, mục nhật ký lỗi tương ứng là:
process!ReportServer_0-1!1ac8!23/12/2021-14:11:29:: e LỖI: Ném Microsoft.ReportingServices.ReportProcessing.ReportProcessingException: , Microsoft.ReportingServices.ReportProcessing.ReportProcessingException: Đã xảy ra lỗi không mong muốn trong Xử lý báo cáo. ---> System.ComponentModel.Win32Exception: Hệ thống không thể tìm thấy đường dẫn được chỉ định
tại Microsoft.Win32.NativeMethods.CreateDirectory(Đường dẫn chuỗi, SafeLocalMemHandle acl)
tại System.CodeDom.Compiler.TempFileCollection.CreateTempDirectoryWithAce(Thư mục chuỗi, danh tính chuỗi)
tại System.CodeDom.Compiler.TempFileCollection.GetTempFileName(Chuỗi tempDir)
tại System.CodeDom.Compiler.TempFileCollection.EnsureTempNameCreated()
tại System.CodeDom.Compiler.TempFileCollection.AddExtension(String fileExtension, Boolean keepFile)
tại System.CodeDom.Compiler.CodeCompiler.FromDomBatch(Tùy chọn CompilerParameters, CodeCompileUnit[] ea)
tại System.CodeDom.Compiler.CodeCompiler.System.CodeDom.Compiler.ICodeCompiler.CompileAssemblyFromDomBatch(tùy chọn CompilerParameters, CodeCompileUnit[] ea)
tại Microsoft.ReportingServices.RdlExpressions.VBExpressionCodeProvider.CompileAssemblyFromDomWithRetry(Tùy chọn CompilerParameter, CodeCompileUnit biên dịchUnit)
tại Microsoft.ReportingServices.RdlExpressions.ExprHostCompiler.InternalCompile(AppDomain biên dịchTempAppDomain, Boolean rejectPermissions)
tại Microsoft.ReportingServices.RdlExpressions.ExprHostCompiler.<>c__DisplayClass2.<Compile>b__0()
tại Microsoft.ReportingServices.Diagnostics.RevertImpersonationContext.<>c__DisplayClass1.<Run>b__0(Trạng thái đối tượng)
tại System.Security.SecurityContext.runTryCode(Object userData)
tại System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(Mã TryCode, CleanupCode backoutCode, Object userData)
tại System.Security.SecurityContext.Run(SecurityContext securityContext, gọi lại ContextCallback, trạng thái đối tượng)
tại Microsoft.ReportingServices.Diagnostics.RevertImpersonationContext.Run(gọi lại ContextBody)
tại Microsoft.ReportingServices.RdlExpressions.ExprHostCompiler.Compile(IExpressionHostAssemblyHolder biểu thứcHostAssemblyHolder, biên dịch AppDomainTempAppDomain, Boolean rejectPermissions, lập phiên bản PublishingVersioning)
tại Microsoft.ReportingServices.ReportPublishing.ReportPublishing.Phase3(ParameterInfoCollection& tham số, Dictionary`2& groupingExprCountAtScope)
tại Microsoft.ReportingServices.ReportPublishing.ReportPublishing.InternalCreateIntermediateFormat(Luồng định nghĩaStream, Chuỗi& mô tả, Chuỗi& ngôn ngữ, Tham sốInfoCollection& 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& report
thư viện!ReportServer_0-1!1ac8!23/12/2021-14:11:29:: i THÔNG TIN: Đã bỏ qua việc tạo tệp kết xuất cho lỗi ReportProcessingException, bởi vì một kết xuất có cùng dấu vết ngăn xếp (có chữ ký 2668486527) đã được tạo .
Giả sử 'svcssrs' là ADUser, phiên bản SSRS đang chạy bên dưới, sử dụng Procmon (Sysiternals) đối với ReportingServicesService.exe, tôi đã nhận thấy Thao tác CreateFile không thành công với PATH NOT FOUND với các đường dẫn như C:\Users\svcssrs\AppData\Local\Temp\abcdefgh
C:\Users\svcssrs\AppData\Local\Temp\
tồn tại và nằm dưới sự kiểm soát hoàn toàn của người dùng 'svcssrs'.
RDL mà tôi đang làm việc là một tệp RDL rất chuẩn với Tablix, một số bộ dữ liệu MSSQL sử dụng Nguồn dữ liệu được chia sẻ, một số biểu thức SSRS cơ bản, hình ảnh nhúng (không được liên kết) và không có mã VB được nhúng hoặc các tập hợp được liên kết.
Tôi đã khôi phục Khóa mã hóa SNK từ bản sao lưu và tôi cũng đã thay đổi nó sau đó mà không có thay đổi nào về hành vi.
Làm thế nào tôi có thể giải quyết vấn đề này?