SQL Server Analysis Servises 2008 R2를 사용하고 있습니다.([일부 치수]. [전체], [일부 조치])의 값을 올바르게 대체하는 방법은 무엇입니까? (MDX, SCOPE())
[Some Measure]
에 대해 계산할 때 [Some Dimension].[All]
값을 바꾸려면 이 필요합니다. 여기에 내가 시도 내용은 다음과 같습니다
[Some Dimension]
에 대해 쿼리 할 때 예상대로이 작동
SCOPE([Some Dimension].[All]);
[Measures].[Some Measure] = 123; // for simplicity sake
END SCOPE;
- [All]
회원이 123
반환하고 다른 회원이 실제 관련 [Some Measure]
값을 보여 그대로입니다.
그러나 이상한 이유로 다른 모든 차원의 모든 구성원은 이제 [Some Measure]
에 대해 123
을 반환합니다. 나는 정말로 길을 잃었다. 제발 조언을 내게이 문제를 해결하고 왜 이런 일이 일어나고있다. 호기심이있는 사람을위한
1: [Some Dimension]
및 [Some Measure]
은 다 대다으로 관련되어 있기 때문에 내가 [All]
의 값을 교체하려는 이유입니다. 이 때문에 튜플 ([Some Dimension].[All], [Some Measure])
은 항상 큐브에 [Some Measure]
의 총 개수를 반환합니다. 내가 무엇 반환을 원하는 [Some Dimension]
의 적어도 하나의 회원과 실제로 연결되어 [Some Measure]
의 개수입니다. 나머지 치수 'currentmember
큐브에서이 "모든"멤버 해당하는 경우
[일부 차원]. [모두]가 차원의 기본 멤버이며 쿼리에서 암시 적으로 선택 될 수 있습니까? 즉, ([Measures]. [Some Measure], [Some Dimension], [Another Member], [Another Dimension], [[Another Member]])를 질의 할 때 123 또는 적절한 [Measures]를 얻습니다. 일부 측정 값? –
@SantiagoCepas 나는 그것이 실제로 이유라고 생각한다. 귀하의 예에서는 적절한 값을 얻었지만, [Measures]. [Some Measure]. [All]로 변경하면 다시 123입니다. 하지만 어떻게 해결할 수 있습니까? –
정확하게 이해하면 [일부 측정 값]. [모두]가 선택되었을 때 [일부 측정] 만 덮어 쓰고 나머지 큐브의 현재 멤버는 해당하는 "모두"멤버 일 때도 덮어 씁니다. 그렇다면 SCOPE (Root())로 스코프 할당을 변경하는 것이 트릭을 수행해야합니다. –