2014-05-21 1 views
0

누구나 Excel에서 CUBE * 함수를 작성한 경험이 있습니까?CUBEFUNCTIONS - 하나가 실패하면 모두 실패합니까?

나는이 기능을 통해 OLAP db에 대해 이러한 함수를 작성하고 db에서 MDX 문자열을 실행합니다.

특정 상황에서 함수 중 하나가 실패하고 #NA를 반환하면 모든 함수가 실패한 것으로 보입니다.

이러한 Excel 함수 내에서 사용해서는 안되는 특정 MDX 함수가 있습니까?

1. MDX 문자열 :

PARALLELPERIOD([Date].[Date - Calendar Month].[Calendar Year],1,TAIL([Date].[Date - Calendar Month].[Calendar Day].MEMBERS,1).item(0)) 

큐브 기능 :

=CUBESET("connectionToCube","PARALLELPERIOD([Date].[Date - Calendar Month].[Calendar Year],1,TAIL([Date].[Date - Calendar Month].[Calendar Day].MEMBERS,1).item(0))") 

2. MDX 문자열 :

TAIL([Date].[Date - Calendar Month].[Calendar Day].MEMBERS,1).item(0) 
,691 여기

은 몇 가지 예입니다

큐브 기능 :

=CUBEMEMBER("connectionToCube","TAIL([Date].[Date - Calendar Month].[Calendar Day].MEMBERS,1).item(0)") 

편집

이 통합 문서는 또한 사용자 정의 세트를 포함하는 여러 피벗 테이블이 포함되어 있습니다. 이 세트는 다음과 같은 설정으로 저장됩니다

enter image description here

이 될 수 있을까요 갈등 일종의 원인?


편집

또 다른 약간 더 복잡한 MDX 문자열은 내가 이전에 지난 7 일에 7 일의 기간을 캡처하는 데 사용하고 무엇을 :

MDX :

Tail([Date].[Date - Calendar Month].[Calendar Day].MEMBERS,1).item(0).lag(7):Tail([Date].[Date - Calendar Month].[Calendar Day].MEMBERS,1).item(0).lag(13) 

큐브 * 기능 :

=CUBESET("LiveDealer_LiveDealer2",("Tail([Date].[Date - Calendar Month].[Calendar Day].MEMBERS,1).item(0).lag(7):Tail([Date].[Date - Calendar Month].[Calendar Day].MEMBERS,1).item(0).lag(13)")) 

답변

1

Excel 큐브 함수에서 사용할 수없는 MDX 함수를 찾지 못했습니다. AdventureWorks 테이블 형식 모델에 대해 큐브 함수의 변형을 시도해 보았지만 제대로 작동했습니다. 첫 번째 예에서, 당신은 : 날짜 계층 구조가 일정이라고하고, 레벨 년, 학기, 분기, 월, 일을 가지고있는 AW 테이블 형식 모델에서

=CUBESET("connectionToCube","PARALLELPERIOD([Date].[Date - Calendar Month].[Calendar Year],1, 
TAIL([Date].[Date - Calendar Month].[Calendar Day].MEMBERS,1).item(0))") 

. 내 큐브 기능은 다음과 같습니다.

=CUBEMEMBER("AWCube","PARALLELPERIOD([Date].[Calendar].[Year],1, 
TAIL([Date].[Calendar].[Day].MEMBERS,1).item(0))") 

왜 거기에 큐브 셋을 사용할지 모르겠습니다. 항상 하나의 항목 만 반환하므로 큐브 멤버로 만들었으므로 캡션을 사용하지 않고 직접 멤버를 반환 할 수 있습니다.여기에 큐브 셋을 사용하고 캡션을 사용하지 않으면 Excel에서 빈 셀이 반환되지만 작동합니다. 해당 큐브 셋을 사용하여 excel에 cuberankedmember 함수를 작성하여이를 확인할 수 있습니다. 두 번째 예에서

, 당신은 있었다 :

=CUBEMEMBER("connectionToCube", 
"TAIL([Date].[Date - Calendar Month].[Calendar Day].MEMBERS,1).item(0)") 

내 공식은 다음과 같습니다

=CUBEMEMBER("AWCube", 
"TAIL([Date].[Calendar].[Day].MEMBERS,1).item(0)") 

나는이 어떤 큰 차이를 참조하므로, 어떠한에 대한 귀하의 회원 이름과 괄호를 확인하지 않습니다 작은 불일치.

+0

marie -이 통합 문서에는 피벗 테이블 (사용자 지정 집합 포함)과 큐브 함수가 혼합되어 있다고 생각했습니다. 피벗의 사용자 지정 집합을 다시 계산하면 CUBESET 함수가 업데이트되지 않을까? 내가 CUBESET에서 CUBEMEMBER로 간소화하여 아마도 도움이 될 것 같은 것을 발견하게 될 것이다. – whytheq

+0

내가 OP에 다른 기능을 추가하자. 작동하는 것처럼 보이지만 어쩌면 문제가 발생하여 문제가 발생했다. – whytheq

+0

여기에 도움이 될 수있는 또 다른 CubeFunction 질문이있다. http://stackoverflow.com/questions/25014900/using-a-tuple-as-the-sort-by-excel-cubeset 함수 – whytheq

관련 문제