Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Cập nhật thông số báo cáo dựa trên lựa chọn thông số? (SSRS)

Điều này hoạt động tự động nếu bạn sắp xếp các thông số và tập dữ liệu của mình một cách chính xác

  • Đầu tiên, thiết lập tập dữ liệu chính (báo cáo), sau đó thiết lập tập dữ liệu cho từng danh sách thả xuống thông số. Mã WHERE mệnh đề trong tập dữ liệu để làm cho các phụ thuộc chính xác trên các biến tham số
  • Thứ hai, sắp xếp các thông số của bạn trong Báo cáo | Trình đơn tham số để đầu tiên biến / tham số bạn muốn người dùng điền vào ở trên cùng và làm cho tập dữ liệu thứ hai phụ thuộc vào tham số đó. Thực hiện theo thứ tự này thông qua các thông số; (các) tham số cuối cùng phải là (các) tập dữ liệu báo cáo thực tế phụ thuộc vào.
  • Lặp lại các thông số tiếp theo

Điều này sẽ hoạt động nếu WHERE của bạn mệnh đề trong tập dữ liệu thứ hai và tiếp theo có các biến mà SSRS biết được điền từ các tham số trước đó.

Ví dụ, tôi có ba tập dữ liệu từ pubs đáng kính cơ sở dữ liệu (mẫu năm 2000).

pubslist được sử dụng để điền tham số @p và trông giống như sau:

 select pub_id, pub_name from publishers

titleslist điền thông số @t và trông giống như sau:

 select title_id, title from titles where pub_id = @p

Cuối cùng, reportdataset trông như thế này:

 select title, price, ytd_sales from titles where title_id = @t

Thứ tự của các tham số trong Report | Report Parameters thực đơn là rất quan trọng; bởi vì tập dữ liệu phải được thực thi theo thứ tự được hiển thị ở trên và tham số @t nằm trong tập dữ liệu dựa vào tham số @p được đặt trước, chúng tôi di chuyển @p lên đầu danh sách.

Bây giờ, SSRS đánh giá tập dữ liệu cần thiết để điền vào danh sách thả xuống cho tham số đầu tiên với các nhãn. Nó dựa trên một tập dữ liệu không cần tham số, vì vậy có thể được tạo ngay lập tức.

Sau đó, khi có giá trị tham số đó, nó có thể điền vào danh sách thả xuống của tham số thứ hai. Điều đó dẫn đến việc tạo ra báo cáo.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL Server 2008:CHÈN nếu không thoát, duy trì cột duy nhất

  2. Chuyển đổi hàng thành cột bằng cách sử dụng 'Pivot' trong SQL Server

  3. Biết khi nào cần thử lại hoặc không thành công khi gọi SQL Server từ C #?

  4. Một câu lệnh SQL Server duy nhất có phải là nguyên tử và nhất quán không?

  5. Tính toán thời gian chênh lệch giữa hai hàng