2010-04-09 17 views
6

Tôi đang gặp sự cố hiển thị với thành phần ReportViewer thuộc SSRS. Tôi đang làm việc trên một ứng dụng WinForms và có một vài báo cáo địa phương hiển thị các giá trị DateTime từ cơ sở dữ liệu ở các vị trí khác nhau. Bất kể định dạng được thực hiện như thế nào (không có định dạng nào, sử dụng "d" trong thuộc tính Format hoặc sử dụng FormatDateTime với bất kỳ giá trị đếm DateFormat nào), nó luôn xuất hiện định dạng DateTime với văn hóa en-US thay vì ngày hệ thống và định dạng văn bản số.Định dạng ngày giờ trong SSRS ReportViewer luôn sử dụng en-US?

Tôi đã xác thực rằng CurrentCulture như mong đợi. Ngôn ngữ báo cáo được đặt thành "Mặc định". Thẻ Language thậm chí không có trong tệp .rdlc. Nếu tôi thay đổi ngôn ngữ báo cáo thì nó xuất hiện để phản ánh định dạng cho văn hóa đó bất kể văn hóa hệ thống.

Có cách nào để hiển thị báo cáo với văn hóa hệ thống hiện tại hay sửa đổi ngôn ngữ của báo cáo dựa trên văn hóa không?

Trả lời

6

Nó chỉ ra rằng "Mặc định" như một cài đặt ngôn ngữ không làm được gì nhiều. Để nhận được văn hóa hiện tại của người dùng, Ngôn ngữ phải được chỉ định là biểu thức "= User.Language" (điều này cũng cần phải được đặt trên tất cả các subreports, vì giá trị không truyền hoặc kế thừa).

Ghi có cho Chris May trong số blog article on the subject của mình.

+0

Tuyệt vời Cảm ơn vì điều đó !! – Luis

+0

Điều đó thực sự đã đào tôi ra khỏi một cái lỗ. Cảm ơn. – James

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