2016-08-28 20 views
8

Tôi đang sử dụng máy chủ báo cáo SQL Server 2014 (phiên bản máy chủ báo cáo hiển thị trên http://localhost/Reportserver12.0.4100.1) và cũng đang sử dụng Visual Studio 2013 để phát triển.Báo cáo SSRS 2014 triển khai vấn đề

Gần đây tôi bắt đầu làm việc trên PC mới và chỉ Visual Studio 2015 Enterprise Edition được cài đặt trên này. Hiện tại các báo cáo của tôi được phát triển với trí tuệ kinh doanh đi kèm với Visual Studio 2013 và tôi không thể mở dự án báo cáo của mình trên PC mới. Vì vậy, tôi đã cài đặt các công cụ thông minh nghiệp vụ để phù hợp với Visual Studio 2015 và đã thực hiện các thay đổi nhỏ trên 2 báo cáo. Dù sao thì tôi nhận thấy rằng mã thiết kế của các báo cáo đã có những thay đổi lớn.

Vấn đề là, khi tôi cố gắng để tải lên các báo cáo thay đổi báo cáo máy chủ trên giao diện máy chủ báo cáo, tôi nhận được một thông báo lỗi:

Định nghĩa của báo cáo này là không hợp lệ hoặc được hỗ trợ bởi phiên bản này Dịch vụ báo cáo. Định nghĩa báo cáo có thể đã được tạo bằng phiên bản Dịch vụ báo cáo mới hơn hoặc chứa nội dung không được định dạng đúng hoặc không hợp lệ dựa trên Báo cáo dịch vụ lược đồ. Chi tiết: Định nghĩa báo cáo có mục tiêu không hợp lệ không gian tên 'http://schemas.microsoft.com/sqlserver/reporting/2016/01/reportdefinition' không thể nâng cấp. (rsInvalidReportDefinition) Nhận trợ giúp trực tuyến

Tôi vẫn có thể tải cùng một báo cáo từ Visual Studio 2015 lên cùng một máy chủ bằng cách chọn tùy chọn triển khai trên giải pháp.

Ai đó có thể giúp tôi tải lên báo cáo được thiết kế từ năm 2015 đến SSRS.

+0

Nếu bạn cần tự động triển khai, bạn có thể tìm thấy https://github.com/timabell/ssrs-powershell-deploy hữu ích, bây giờ nó sử dụng các báo cáo được sửa đổi trong 'bin /' nhờ đóng góp. –

Trả lời

11

Tôi đang sử dụng điện thoại ngay bây giờ để không thể kiểm tra kỹ cú pháp chính xác Được chuyển đến gần đây. Bạn có thể được sử dụng để triển khai .rdls ngay từ thư mục nguồn của bạn. Với phiên bản mới so với năm 2015 đang chạy với phiên bản máy chủ cũ hơn, bạn sẽ cần thực hiện một vài bước đơn giản.

  1. Đảm bảo môi trường đích của bạn được đặt chính xác trong thuộc tính dự án. Nó có lẽ là kể từ khi nâng cấp nên nhận ra nó.
  2. Xây dựng dự án của bạn. Các tệp nguồn sẽ vẫn ở định dạng mới nhưng .rdls (và các tệp khác) sẽ được tạo trong phiên bản đích trong thư mục con bin của bạn. Đây có thể được triển khai mà không có vấn đề gì.

Dường như bắt đầu với Máy chủ báo cáo 2016 có cấu trúc tệp mới và xmlns trong tệp rdl thay đổi. Vs 2015 với SSDT-BI được cập nhật sẽ nâng cấp mọi báo cáo bạn tự động mở sang định dạng mới và sử dụng nó làm tệp nguồn mới. Nhưng việc xây dựng môi trường đích sẽ tạo ra các rdls bằng cách sử dụng định dạng tệp xmlns cũ và tệp.

EDIT Chỉ cần thêm một số thông tin bổ sung tôi đặt trong một khác nhau answer.

Theo tính chất dự án bạn có thể có đến 3 lựa chọn cho TargetServerVersion tùy thuộc vào VS phiên bản và phiên bản SSDT-BI cài đặt:

  • SQL 2008
  • SQL 2008 R2, SQL 2012, SQL 2014
  • SQL 2016+ (mới trong VS 2015 với SSDT-BI mới nhất)

Mỗi loại trong số này sử dụng một xmlns khác nhau trong mã XML báo cáo. Khi bạn mở mỗi báo cáo báo cáo nguồn của bạn .rdl tập tin sẽ được nâng cấp lên xmlns mới nhất - như nó hay không.

Tuy nhiên khi bạn triển khai hoặc xây dựng, các tệp .rdl trong thư mục bin của bạn sẽ được biên dịch để khớp với mục tiêu. Miễn là bạn sử dụng các phiên bản thư mục bin (tự động với VS triển khai), bạn có thể triển khai thành công chúng vào máy chủ của bạn.

+1

Cảm ơn SMM. Những công việc này. –

+0

Bạn được hoan nghênh! Đừng quên đánh dấu câu trả lời là được chấp nhận để người khác biết nó sẽ hoạt động. – SMM

+0

Cảm ơn SMM. Tôi chỉ mất 3 giờ cố gắng để tìm ra điều này và sau đó đi qua câu trả lời này mà dường như rất rõ ràng (một khi ai đó chỉ ra nó :). Toàn bộ mục tiêu của tôi là nâng cấp báo cáo từ máy chủ 2005 lên năm 2012. – Mifo

Các vấn đề liên quan