Bất cứ ai có thể cho tôi biết cách hiển thị tất cả giá trị đã chọn của tham số đa giá trị của tôi trong báo cáo SSRS. Khi đưa ra parameter.value
tùy chọn, nó sẽ báo lỗi.
Bất cứ ai có thể cho tôi biết cách hiển thị tất cả giá trị đã chọn của tham số đa giá trị của tôi trong báo cáo SSRS. Khi đưa ra parameter.value
tùy chọn, nó sẽ báo lỗi.
Câu trả lời:
Bạn có thể sử dụng chức năng "Tham gia" để tạo một chuỗi đơn từ mảng nhãn, như sau:
=Join(Parameters!Product.Label, ",")
=Join(Parameters!Product.Value, ",")
Tôi không biết về chức năng tham gia - Tốt! Tôi đã viết một hàm mà tôi đã đặt trong phần mã (báo cáo thuộc tính-> tab mã:
Public Function ShowParmValues(ByVal parm as Parameter) as string
Dim s as String
For i as integer = 0 to parm.Count-1
s &= CStr(parm.value(i)) & IIF( i < parm.Count-1, ", ","")
Next
Return s
End Function
Hy vọng rằng ai đó khác thấy điều này hữu ích:
Sử dụng Tham số là cách tốt nhất để sử dụng tham số nhiều giá trị. Nhưng nếu bạn muốn có một 'Chọn Tất cả' hiệu quả? Nếu có 100s + thì truy vấn sẽ rất kém hiệu quả.
Để giải quyết vấn đề này thay vì sử dụng Truy vấn SQL như hiện tại, hãy thay đổi nó thành sử dụng biểu thức (nhấp vào nút Fx trên cùng bên phải) sau đó tạo truy vấn của bạn giống như sau (cần có dấu giọng nói):
= "Select * from tProducts Where 1 = 1 "
IIF(Parameters!ProductID.Value(0)=-1,Nothing," And ProductID In (" & Join(Parameters!ProductID.Value,"','") & ")")
Trong Tham số của bạn, hãy làm như sau:
SELECT -1 As ProductID, 'All' as ProductName Union All
Select
tProducts.ProductID,tProducts.ProductName
FROM
tProducts
Bằng cách xây dựng truy vấn dưới dạng biểu thức có nghĩa là bạn có thể làm cho Câu lệnh SQL hiệu quả hơn nhưng cũng xử lý được khó khăn mà SQL Server gặp phải khi xử lý các giá trị trong câu lệnh 'Trong'.