2012-11-20 33 views
8

Tôi có một bảng có một cột, Tổng thời gian là một giá trị Integer tính bằng giây.Hiển thị giây Đếm theo định dạng HH: MM: SS trong SSRS 2008

Trong Visual Studio/SSRS 2008 tôi muốn hiển thị nó ở định dạng HH: MM: SS.

Cảm ơn!

+0

Vấn đề duy nhất của tôi với câu trả lời do Chris cung cấp là nó dường như không tính đến làm tròn (tức là 5,5 giây trở thành 5 giây thay vì được làm tròn thành 6). Mặc dù tôi không thể nhận tín dụng cho giải pháp, tôi đã có thể triển khai mã khuyến mại bằng cách sử dụng mã tùy chỉnh được đề xuất [ở đây] (https://social.technet.microsoft.com/Forums/en-US/b80ed2e5-0206-42e1- a9b4-9dace4f95406/chuyển đổi-giây-to-ngày-giờ-phút-giây-trong-báo cáo-dịch vụ? forum = sqlreportingservices). – DrewCranmer

Trả lời

24

Chỉ cần sử dụng một biểu thức cho biết thêm rằng số giây đến một giá trị không thời gian

=Format(DateAdd("s", Fields!TotalTime.Value, "00:00:00"), "HH:mm:ss") 

Nếu nó lớn hơn 24 tiếng đồng hồ, sau đó bạn có thể sử dụng công thức sau đó cho biết thêm những ngày phần:

=IIF(Fields!TotalTime.Value < 86400, 
    Format(DateAdd("s", Fields!TotalTime.Value, "00:00:00"), "HH:mm:ss"), 
    Floor(Fields!TotalTime.Value/86400) & " days, " & Format(DateAdd("s", Fields!TotalTime.Value, "00:00:00"), "HH:mm:ss") 
+0

Tuyệt đối tuyệt vời! Cảm ơn! – Amarundo

+0

Xin chào Chris, trong trường hợp bạn quan tâm, tôi chỉ hỏi một câu hỏi mới giống như việc tiếp tục câu hỏi này: http://stackoverflow.com/questions/13534686/how-to-display-beyond-24-hrs-in -ssrs-2008-in-hhmmss-format Cảm ơn !!! – Amarundo

+0

Câu trả lời này thực sự không hoạt động nếu nó diễn ra trong nhiều ngày. –

6

đối với HH: mm: ss định dạng bạn có thể sử dụng này:

=Floor(Fields!TotalTime.Value/3600) &":"& Format(DateAdd("s", Fields!TotalTime.Value, "00:00"), "mm:ss") 

Trong trường hợp này, ví dụ 90000se c sẽ được hiển thị như: 25:00:00

Đối với DD: HH: mm: ss định dạng sử dụng này:

Floor(Fields!TotalTime.Value/86400) &":"& Format(DateAdd("s", Fields!TotalTime.Value, "00:00:00"), "HH:mm:ss") 

90000sec sẽ được hiển thị như: 1: 01: 00: 00

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