2014-02-27 2 views
0

다음은 제가 작업하고있는 유스 케이스입니다. 하위 보고서가 여러 개인 보고서가 있습니다. 이러한 하위 보고서 중 세 개는 여러 개의 서로 다른 행 그룹화가 필요한 테이블 릭스로 구성됩니다.Tablix에서 여러 개의 서로 다른 행 그룹을 어떻게 작동 시키나요?

이 채우기 쿼리의 구조는 조금 다음과 같습니다

SELECT  c.Foo 
,   c.Bar 
,   c.Zap 
,   d.Foo1 
,   d.Bar1 
,   e.Foo2 
,   e.Zap2 
FROM  c 
LEFT JOIN (SELECT  d.Foo1 
      ,   d.Foo2 
      -- other fields and joins which justify the subquery structure) 
      FROM  d) AS d 
ON   c.PrimaryKey = d.ForeignKey 
LEFT JOIN (SELECT  e.Foo2 
      ,   e.Zap2 
      -- Again, etc 
      FROM  e) AS e 
ON   c.PrimaryKey = e.ForeignKey 

이 세 개의 하위 보고서의 각 플레이에서 이러한 하위 쿼리의 여섯이 있습니다. 각 하위 쿼리별로 그룹화해야합니다.

테이블 릭스 그룹화 구조는 다음

  • (RowGroup) - c.PrimaryKey
    • (FOO1) - D 서브 테이블 (D의 PK)
    • (FOO2) - E 서브 (전자의 PK)

가 (예, 아이들이 서로 형제 자매입니다.)

d 그룹화의 경우 예상대로 각 값에 대해 반복 행이 표시됩니다. 그러나 전자 메일 그룹의 경우 첫 번째 행, 특히 데이터의 단일 행만 가져옵니다.

저는 SSRS에 매우 익숙하지 않아서이 퍼즐을 꽤 오랫동안 싸워 왔기 때문에 이러한 종류의 구조가 작동하도록 올바른 접근법은 무엇입니까?

c.Field Name  Value 
c.Field Name  Value 
d.Field Name  Value -- repeat for all ds 
c.Field Name  Value 
e.Field Name  Value -- repeat for all es 
... etc 

이 테이블 릭스 실제로 필드에 의해 대신 수평 수직 방향 것이 중요하다

원하는 출력은 다음과 같이 보입니다. 각 테이블 릭스 구조는 각각 c에 대해 반복됩니다. 이 사업은 보고서가 그런 식으로 지향되기를 원합니다.

d, e 등의 그룹화가 c의 데이터 내에서 혼합 될 수 있도록하는 것이 중요합니다. 즉, c의 필드 몇 개, d 개의 그룹, c의 필드 몇 개, e 그룹의 필드 등이 있습니다.

SSRS에서 이러한 방식으로 보고서를 포맷하는 방법은 무엇입니까?

+0

복제본을 찾을 수 없지만 항상 그렇듯이 이것이 속임수인 경우 닫고 다른 문제의 해결책을 얻습니다. 나는 희망. :) –

답변

1

저는 예제에서 모든 c로 인해 혼란 스럽지만 SQL의 파생 테이블을 하위 보고서의 데이터 세트 (예 : c1 테이블을보고있는 것)로 분리하려고합니다.

하위 보고서에 전달하는 매개 변수는 현재 조인 대신 사용되며 런타임에 하위 보고서의 각 인스턴스를 필터링합니다.

+0

혼란스러운 CS에 대한 피드백에 감사드립니다. 나는 c1을 d와 c2를 e로 수정했습니다. 추가적인 서브 리포트가 응답일지도 모른다고 두려웠습니다. –

+0

서브 리포트는 실제로 저를 데려오고 있습니다, 감사합니다. –

관련 문제