2016-11-02 2 views
0

VirtualCube을 만들었습니다. 내 스키마에 다른 두 개의 큐브를 결합했습니다. 그러나 이것에 대해 만들어진 쿼리의 슬라이서 축은 무시되고있는 것으로 보입니다.몬드리안 : VirtualCube에 대한 쿼리에서 슬라이서 축이 무시되었습니다

SELECT 
    NON EMPTY { 
    [Measures].[FOB], 
    [Measures].[CIF] 
    } ON 0, 
    NON EMPTY [Date].[Year].members ON 1 
FROM [exports_and_imports] 
WHERE (
     [Geography].[Washington] 
    ) 

그러나, 슬라이서가 Date 차원 에 적용 :

SELECT 
    NON EMPTY { 
    [Measures].[FOB], 
    [Measures].[CIF] 
    } ON 0, 
    NON EMPTY [Date].[Year].Members ON 1 
FROM [exports_and_imports] 

이 하나가 잘못된 이전과 동일한 결과를 반환 :

이 쿼리는 예상 된 결과를 반환 일 :

SELECT 
    NON EMPTY { 
    [Measures].[FOB], 
    [Measures].[CIF] 
    } ON 0 
FROM [exports_and_imports] 
WHERE ( 
     [Date].[Year].&[2005]:date.year.&[2014] 
    ) 
내 스키마의210

편집 버전 :

<Schema name="datachile"> 
    <Dimension name="Date" type="TimeDimension">...</Dimension> 

    <Dimension name="Geography">...</Dimension> 

    <Dimension name="Country">...</Dimension> 

    <Dimension name=“HS”>...</Dimension> 

    <Cube name="exports"> 
    <DimensionUsage name="Date" source="Date" foreignKey="date_id" /> 
    <DimensionUsage name="Destination Country" source="Country" foreignKey="country_dest_id" /> 
    <DimensionUsage name="Export Geography" source="Geography" foreignKey="exporter_comuna_id" /> 
    <DimensionUsage name="Export HS" source="HS" foreignKey="hs_level3" /> 

    <Measure name="FOB US" column="fob_us" aggregator="sum" /> 
    </Cube> 

    <Cube name="imports"> 
    <DimensionUsage name="Date" source="Date" foreignKey="date_id" /> 
    <DimensionUsage name="Origin Country" source="Country" foreignKey="country_origin_id" /> 
    <DimensionUsage name="Import Geography" source="Geography" foreignKey="importer_comuna_id" /> 
    <DimensionUsage name="Import HS" source="HS" foreignKey="hs_6digits" /> 

    <Measure name="CIF US" column="cif_us" aggregator="sum" /> 
    </Cube> 


    <VirtualCube name="exports_and_imports"> 
    <CubeUsages> 
     <CubeUsage cubeName="exports" ignoreUnrelatedDimensions="true" /> 
     <CubeUsage cubeName="imports" ignoreUnrelatedDimensions="true" /> 
    </CubeUsages> 

    <VirtualCubeDimension name="Date" /> 
    <VirtualCubeDimension name="Geography" /> 
    <VirtualCubeDimension name="HS" /> 

    <VirtualCubeMeasure cubeName="exports" name="[Measures].[FOB US]" /> 
    <VirtualCubeMeasure cubeName="imports" name="[Measures].[CIF US]" /> 

    <CalculatedMember name="FOB" dimension="Measures"> 
     <Formula>ValidMeasure([Measures].[FOB US])</Formula> 
    </CalculatedMember> 

    <CalculatedMember name="CIF" dimension="Measures"> 
     <Formula>ValidMeasure([Measures].[CIF US])</Formula> 
    </CalculatedMember> 
    </VirtualCube> 
</Schema> 

답변

1

큐브의에서 "지리"라는 차원 같은 것은 없습니다. "지리 정보 가져 오기"와 "수출 지리"라는 또 다른 방법이 있습니다. 가상 큐브가 큐브에없는 Geography 차원을 사용하려하지만 계층 구조가 hasAll="true"으로 정의 될 때 차원의 기본값은 두 큐브의 allMember입니다. 당신이 뒤에있어하는 것은 같은 경우

Union([Import Geography].[Washington] * [Export Geography].[All], [Import Geography].[All] * [Export Geography].[Washington]) 

("나에게의 또는 중 총 값을 표시

당신은 가상 큐브에서 수출과 수입 모두 지리 차원을 정의해야하고 슬라이서가되어야한다 워싱턴).

관련 문제