2012-02-08 1 views
0

시간을 나타내는 시간을 나타내는 데이터베이스에서 int를 반환합니다.VS2010 보고서 디자이너 : RDLC에서 (x) d, (y) h, (z) m으로 int 형식 지정

즉, 열 값이 10이면 10 분을 의미합니다. 199 인 경우 3 시간 19 분을 의미합니다.

그런 다음 내 결과를 그룹화하고 SUM (Fields! TotalTime.Value)을 계산합니다. (X) (D), (Y), H (z) m,

d = days 
h = hours 
m = minutes 

내장 함수를 사용 :

방법 I는 다음과 같은 형식이 INT를 포맷 할 수 있는가? 또는, 어떻게 든 WPF Converter처럼 내 자신의 함수를 작성할 수 있습니까? 보고서에서 그룹화 중이므로 데이터베이스에서 이미 형식이 지정된 값을 반환 할 수 없습니다.

답변

0

실제로 사용자 지정 변환기를 수행 할 수 있습니다.

보고서 디자이너에서 보고서를 마우스 오른쪽 단추로 클릭하고 보고서 속성을 클릭합니다. 코드 탭에서 보고서에 특별히 사용되는 코드를 지정할 수 있습니다. 거기에 변환기 기능을 만듭니다. 내 경우 :

=Code.GenerateTimeString(Sum(Fields!TotalTime.Value)) 
: 다음

Public Function GenerateTimeString(ByVal minutes As Integer) As String 

    Dim returnString As String = "" 

    If minutes = 0 Then 
     returnString = "0m" 
    Else 
     Dim ts As TimeSpan = TimeSpan.FromMinutes(minutes) 

     If ts.Days <> 0 Then 
      returnString = returnString & ts.Days & "d," 
     End If 

     returnString = returnString & ts.Hours & "d," & ts.Minutes & "m" 
    End If 

    Return returnString 

End Function 

, 당신의 열의를 호출

관련 문제