2009-05-22 5 views
0

나는, 부모 - 자녀가 분석 서비스 차원에서 관계를 속성이 [Dim].[Child][Dim].[Parent]의 아이라고 내가 쿼리를 가지고, 그 집합을 반환보고 서비스 집계는 부모 - 자식 관계를 작동하지

UNION( [Dim].[Parent].Members * [Dim].[Child].Members, [Dim].[Parent].[ALL] * [Dim].[Child].Members )

축 1에

, 축 0에 일부 출력. 관리 스튜디오에서 실행할 때 쿼리가 제대로 작동합니다.

이제 Reporting Services에서 x 축에 [Dim].[Child], Y 축에 Aggregate(some_output)으로 차트를 만들려고합니다. x 축에있는 자식 멤버가 모든 부모 (이 경우 하나 뿐인)에 대해 집계 된 값, 즉 라인 { [Dim].[Parent].[ALL], [Dim].[Child].&[TheChildID] }에서 가져온 데이터를 볼 것으로 예상합니다. 위에서 설명한 것처럼 쿼리는 실제로 올바른 데이터가있는이 줄을 반환합니다.

그러나이 경우 Aggregate 함수는 NULL을 반환합니다. 이 동작은 부모 - 자식 특성을 사용하고 자식을 X 축에 배치 할 때 항상 존재합니다. 자식을 테이블 릭스 행에 넣고 집계 된 출력을 열에 추가 할 때도 마찬가지입니다. 보고 서버가 집계가 한 회원에게만 발생하고이를 수행하기를 거부한다는 사실을 알고있는 것으로 보입니다.

다른 동일한 검색어를 사용하는 경우 다른 속성 (예 : [Time].[Month][Time].[DayOfMonth] 인 경우 집계가 정상적으로 작동합니다. 이번에는 같은 날이 여러 달에 속할 수 있으며 데이터를 집계해야하기 때문입니다.

이제 왜 이러한 일이 발생하는지 전혀 알 수 없습니다.보고 서버가 OLAP 데이터 원본을 쿼리하여 관계를 파악할 수 있습니까? 아니면 내가 모르는 ALL 행을 반환하는 쿼리에 일부 마법이 있습니까? 관계가있는 것으로 보이지 않는 경우에 대한 유일한 상관 관계.

편집 : 난 단지 [Parent].ALL * [Child].&[ID] 행을 검색하도록 강제 쿼리에서 선 [Parent].Members * [Child].Members을 제거하면 보고서가 작동합니다 주위에 더 재생 후 일부 관찰. 이제 차트에 데이터가 집계되었지만 개인 회원이 없어졌습니다.

답변

0

내가 희망하는 몇 가지 관찰이 도움이 될 것입니다.

  1. 보고 서비스의 집계 함수는 예를 집계을 위해 (필드! Child.value, "ParentGroup")
  2. 데이터 공급자가이 기능을 지원해야합니다 ...는 "범위"매개 변수가 필요합니다. 그렇지 않으면 "Nothing"이 리턴됩니다. 아래 링크를 참조하십시오 ...

자세한 내용은 Aggregate 기능 설명서를 참조하십시오.

+0

범위 매개 변수는 선택적이며 Analysis Services는 집계 함수를 지원합니다. –

+0

범위를 지정하지 않으면 범위가 현재 범위를 사용합니다. 현재 범위가 확실하고 원하는 값입니까? – Mozy

+0

차트의 ChildID에서만 그루핑을 수행 중이므로 scope 매개 변수에 다른 것을 지정할 수 없습니다. –

관련 문제