큐브에서 특정 금액을 원단위로 끊어서 조회하고자 할 때, 정석대로라면 팩트 테이블에 특정 원단위(만원, 억원 등)에 해당하는 금액을 나타내는 컬럼을 추가해야겠지만, 이런 작업을 계산 멤버를 사용해서 수행할 수도 있다 :
1. DSV에 테이블을 추가한다.
실제 물리적 테이블을 생성할 필요도 없다. 다음과 같은 명명된 쿼리를 사용해도 된다 :
SELECT '1원' AS UNIT
2. 차원을 추가한다.
1.에서 추가한 테이블을 가지고 차원을 만든다. 위의 경우라면 '1원'이라는 멤버 하나만 나타나도록 만들면 된다.
3. 큐브에 차원을 추가한다.
2.에서 생성된 차원을 큐브에 추가한다. 이 차원은 차원 용도를 설정할 필요가 없다. (측정값 그룹과 특정 키를 연결해 줄 필요가 없다는 뜻)
4. 계산 멤버를 추가한다.
큐브 편집기의 계산 탭에서 원하는 원단위 멤버(만원, 억원...)를 추가한다.
부모 계층을 3.에서 추가한 차원의 계층으로 설정한다.
그런 후 계산 멤버의 식('만원'이라고 가정하면)은 다음과 같이 작성한다 :
iif(([Measures].CurrentMember.name = "금액"),측정값이 "금액"인지 확인하는 것은, "건수"와 같은 다른 측정값 항목이 있을 경우
[원단위].[원단위].&[1원]/10000, [원단위].[원단위].&[1원])
10,000으로 나누지 않고 그대로 표시해주기 위해서이다.
5. 원하는 계산 멤버를 계속 추가한다 ...
큐브를 처리하고 나면 다음과 같은 데이터를 얻을 수 있을 것이다 :
* 주의사항 : 금액의 비율 등을 계산하는 다른 계산 멤버가 더 있을 경우, 이 계산 멤버들을 상위에 두어서 계산 순위를 높게 해주어야 의도한대로의 계산 결과를 얻을 수 있을 것이다.