2014-10-16 2 views
0

아마도 이것은 쉽지 만 나 빠졌지 만, 일련의 레코드가있는 SSRS 보고서를 만든 다음 각 레코드에 여러 레코드가있을 수 있습니다. 내가 원하는 것은 보고서가 부모 레코드의 번호 매기기와 자식 레코드의 번호 매기기를 동적으로 생성하는 것입니다. 예를 들어SSRS 자동 번호 매기기 (글자 포함)

  1. 부모 항목 하나
    a) 제 아이
    b) 제 아이

  2. 상위 항목 두
    a) 제 아이
    b) 제 아이
    c) 제 아이

    SSRS 플러그인과 함께 Visual Studio 2012를 사용하고 있지만 BIDS 2008도 있습니다.이 함수를 사용하여 상위 번호 매기기를 생성 할 수있었습니다. = RunningValue (Fields! ParentItem.Value, CountDistinct, "ParentGroup"). 나는 도구 모음에서 번호 매기기 도구를 사용하여 시도했지만 항목 번호가 무엇이든 관계없이 모든 레코드 앞에 "1"을 삽입합니다. 실제 문제는 숫자 대신 문자를 생성하는 함수를 얻는 것입니다. 이 작업을 수행하는 쉬운 방법이 있습니까?

답변

0

알아 냈다. 숨겨진 텍스트 상자의 값에 대해 자식의 부모 번호 매기기에서 사용한 것과 같은 방법을 사용했습니다. 그런 다음 문자 번호 매기기를 표시 할 다른 텍스트 상자를 만들고 숨겨진 텍스트 상자의 값을 기반으로 값을 설정하기 위해 스위치 식을 사용했습니다. 아마도이 작업을 수행하는 가장 좋은 방법은 아니지만 작동합니다.

0

부모 행 번호와 자식 행 번호의 두 가지 기능 (예 : b ..)을 작성했습니다.이 기능은 보고서 속성 -> 코드에 있습니다. 자식 행 번호는

Dim private count as integer = 0 
Dim private iniRow as integer = 0 
Public function ParentRowNum(Byval rowNum as integer) as integer 
    if iniRow = 0 then 
     iniRow = rowNum 
    end if 

    if rowNum = iniRow then 
     count = 0 
    end if 
    count = count + 1 
    Return count 
End function 

: - : - :

=Code.ParentRowNum(RowNumber(Nothing)) 
=Code.ChildRowNum(RowNumber(Nothing)) 

희망이 - 다음과 같이

Dim private count_ascii as integer = 96 
Dim private iniRow_sub as integer = 0 
Public function ChildRowNum(Byval rowNum_sub as integer) as string 
    if iniRow_sub= 0 then 
     iniRow_sub= rowNum_sub 
    end if 

    if rowNum_sub= iniRow_sub then   
     count_ascii =96 
    end if 

    count_ascii =count_ascii +1 
    Return Chr(count_ascii) 
End function 

표현은 부모 행 번호에 대한

을 다음과 같이 기능은 코드 도움이 ..