[Mondrian] duplicate dimensions error

lists at dankeeley.co.uk lists at dankeeley.co.uk
Wed May 2 11:22:14 EDT 2007


Here's the entire schema!

<?xml version="1.0"?>
<Schema name="Issues">

  <Dimension name="Time Changed" type="TimeDimension">
    <Hierarchy hasAll="true" allMemberName="All Time"
primaryKey="DIM_TIME_ID">
      <Table name="dim_time"/>
      <Level name="Year" column="YEAR_NUM" uniqueMembers="true"
levelType="TimeYears" type="Numeric"/>
      <Level name="Month" column="MONTH_NUM" nameColumn="MONTH_NAME"
uniqueMembers="false" levelType="TimeMonths"/>
      <Level name="Day" column="DAY_DAY_OF_MONTH" uniqueMembers="false"
levelType="TimeDays" type="Numeric" formatString="##"/>
    </Hierarchy>
  </Dimension>

  <Dimension name="Time Created" type="TimeDimension">
    <Hierarchy hasAll="true" allMemberName="All Time"
primaryKey="DIM_TIME_ID">
      <Table name="dim_time"/>
      <Level name="Year" column="YEAR_NUM" uniqueMembers="true"
levelType="TimeYears" type="Numeric"/>
      <Level name="Month" column="MONTH_NUM" nameColumn="MONTH_NAME"
uniqueMembers="false" levelType="TimeMonths"/>
      <Level name="Day" column="DAY_DAY_OF_MONTH" uniqueMembers="false"
levelType="TimeDays" type="Numeric" formatString="##"/>
    </Hierarchy>
  </Dimension>

  <Dimension name="Time Released" type="TimeDimension">
    <Hierarchy hasAll="true" allMemberName="All Time"
primaryKey="DIM_TIME_ID">
      <Table name="dim_time"/>
      <Level name="Year" column="YEAR_NUM" uniqueMembers="true"
levelType="TimeYears" type="Numeric"/>
      <Level name="Month" column="MONTH_NUM" nameColumn="MONTH_NAME"
uniqueMembers="false" levelType="TimeMonths"/>
      <Level name="Day" column="DAY_DAY_OF_MONTH" uniqueMembers="false"
levelType="TimeDays" type="Numeric" formatString="##"/>
    </Hierarchy>
  </Dimension>

  <Dimension name="Person Assignee">
    <Hierarchy hasAll="true" allMemberName="All Assignees"
primaryKey="DIM_PERSON_ID">
      <Level name="Person" column="PERSON_NAME" uniqueMembers="true"/>
    </Hierarchy>
  </Dimension>

  <Dimension name="Person Reporter">
    <Hierarchy hasAll="true" allMemberName="All Reporters"
primaryKey="DIM_PERSON_ID">
      <Level name="Person" column="PERSON_NAME" uniqueMembers="true"/>
    </Hierarchy>
  </Dimension>

  <Dimension name="Status">
    <Hierarchy hasAll="true" allMemberName="All Statuses"
primaryKey="DIM_STATUS_ID">
      <Table name="dim_status"/>
      <Level name="Should Count Netopen" column="NETOPEN_SHOULD_COUNT"/>
      <Level name="Status" column="STATUS_NAME" uniqueMembers="true">
	<Property name="Description" column="STATUS_DESCRIPTION"/>
      </Level>
    </Hierarchy>
  </Dimension>

  <Dimension name="Previous Status">
    <Hierarchy hasAll="true" allMemberName="All Statuses"
primaryKey="DIM_STATUS_ID">
      <Table name="dim_status"/>
      <Level name="Should Count Netopen" column="NETOPEN_SHOULD_COUNT"/>
      <Level name="Status" column="STATUS_NAME" uniqueMembers="true">
	<Property name="Description" column="STATUS_DESCRIPTION"/>
      </Level>
    </Hierarchy>
  </Dimension>

  <Dimension name="Priority">
    <Hierarchy hasAll="true" allMemberName="All Priorities"
primaryKey="DIM_PRIORITY_ID">
      <Table name="dim_priority"/>
      <Level name="Priority" column="PRIORITY_NAME" uniqueMembers="true">
	<Property name="Description" column="PRIORITY_DESCRIPTION"/>
      </Level>
    </Hierarchy>
  </Dimension>

  <Dimension name="Previous Priority">
    <Hierarchy hasAll="true" allMemberName="All Priorities"
primaryKey="DIM_PRIORITY_ID">
      <Table name="dim_priority"/>
      <Level name="Priority" column="PRIORITY_NAME" uniqueMembers="true">
	<Property name="Description" column="PRIORITY_DESCRIPTION"/>
      </Level>
    </Hierarchy>
  </Dimension>

  <Dimension name="Issue Type">
    <Hierarchy hasAll="true" allMemberName="All Issue Types"
primaryKey="DIM_ISSUE_TYPE_ID">
      <Table name="dim_issue_type"/>
      <Level name="Issue Type" column="ISSUE_TYPE_NAME" uniqueMembers="true">
	<Property name="Description" column="ISSUE_TYPE_DESCRIPTION"/>
      </Level>
    </Hierarchy>
  </Dimension>

  <Dimension name="Version">
    <Hierarchy name="Version Release" hasAll="true" allMemberName="All
Versions" primaryKey="DIM_VERSION_ID">
      <Table name="dim_version"/>
      <Level name="Released" column="RELEASED_ISRELEASED"
uniqueMembers="false"/>
      <Level name="Version" column="VERSION_NAME" uniqueMembers="true">
	     <Property name="Description" column="VERSION_DESCRIPTION"/>
      </Level>
    </Hierarchy>
    <Hierarchy name="Version Typed" hasAll="true" allMemberName="All
Versions" primaryKey="DIM_VERSION_ID">
      <Table name="dim_version"/>
      <Level name="Type" column="VERSION_TYPE_NAME" uniqueMembers="false"/>
      <Level name="Version" column="VERSION_NAME" uniqueMembers="true">
	     <Property name="Description" column="VERSION_DESCRIPTION"/>
      </Level>
    </Hierarchy>
    <Hierarchy name="Version Grouped" hasAll="true" allMemberName="All
Versions" primaryKey="DIM_VERSION_ID">
      <Table name="dim_version"/>
      <Level name="Group" column="VERSION_GROUP_NAME" uniqueMembers="false"/>
      <Level name="Version" column="VERSION_NAME" uniqueMembers="true">
	     <Property name="Description" column="VERSION_DESCRIPTION"/>
      </Level>
    </Hierarchy>
  </Dimension>

  <Dimension name="Product">
    <Hierarchy hasAll="true" allMemberName="All Products"
primaryKey="DIM_PRODUCT_ID">
      <Table name="dim_product"/>
      <Level name="Product" column="PRODUCT_NAME" uniqueMembers="false"/>
    </Hierarchy>
  </Dimension>

  <Cube name="Issues">
    <Table name="v_fact_issue"/>
    <DimensionUsage name="Person Assignee" source="Person Assignee"
foreignKey="DIM_PERSON_ASSIGNEE_ID"/>
    <DimensionUsage name="Person Reporter" source="Person Reporter"
foreignKey="DIM_PERSON_REPORTER_ID"/>
    <DimensionUsage name="Time Created" source="Time Created"
foreignKey="DIM_TIME_CREATED_ID"/>
    <DimensionUsage name="Time Released" source="Time Released"
foreignKey="DIM_TIME_RELEASED_ID"/>
    <DimensionUsage name="Status" source="Status"
foreignKey="DIM_STATUS_ID"/>
    <DimensionUsage name="Priority" source="Priority"
foreignKey="DIM_PRIORITY_ID"/>
    <DimensionUsage name="Version" source="Version"
foreignKey="DIM_VERSION_ID"/>
    <DimensionUsage name="Product" source="Product"
foreignKey="DIM_PRODUCT_ID"/>
    <DimensionUsage name="Issue Type" source="Issue Type"
foreignKey="DIM_ISSUE_TYPE_ID"/>
    <Measure name="Issues" column="FACT_ISSUE_CHANGE_ID"
aggregator="count" formatString="#,###"/>
    <Measure name="Days Since Creation" column="M_DAYS_SINCE_CREATED"
aggregator="avg" formatString="#,###"/>
  </Cube>

  <Cube name="Issue Changes">
    <Table name="fact_issue_change"/>
    <Dimension name="Issue Current">
        <Hierarchy hasAll="true" allMemberName="All Issues">
                <Table name="fact_issue_change"/>
                <Level name="Is Current" column="DIM_INLINE_IS_CURRENT"
type="Numeric" uniqueMembers="false"/>
        </Hierarchy>
    </Dimension>
    <DimensionUsage name="Person Assignee" source="Person Assignee"
foreignKey="DIM_PERSON_ASSIGNEE_ID"/>
    <DimensionUsage name="Person Reporter" source="Person Reporter"
foreignKey="DIM_PERSON_REPORTER_ID"/>
    <DimensionUsage name="Time Changed" source="Time Changed"
foreignKey="DIM_TIME_CHANGED_ID"/>
    <DimensionUsage name="Time Created" source="Time Created"
foreignKey="DIM_TIME_CREATED_ID"/>
    <DimensionUsage name="Time Released" source="Time Released"
foreignKey="DIM_TIME_RELEASED_ID"/>
    <DimensionUsage name="Status" source="Status"
foreignKey="DIM_STATUS_ID"/>
    <DimensionUsage name="Previous Status" source="Status"
foreignKey="DIM_STATUS_PREV_ID"/>
    <DimensionUsage name="Priority" source="Priority"
foreignKey="DIM_PRIORITY_ID"/>
    <DimensionUsage name="Previous Priority" source="Previous Priority"
foreignKey="DIM_PRIORITY_PREV_ID"/>
    <DimensionUsage name="Version" source="Version"
foreignKey="DIM_VERSION_ID"/>
    <DimensionUsage name="Product" source="Product"
foreignKey="DIM_PRODUCT_ID"/>
    <DimensionUsage name="Issue Type" source="Issue Type"
foreignKey="DIM_ISSUE_TYPE_ID"/>
    <Measure name="Opened" column="M_OPENED" aggregator="sum"
type="Numeric" formatString="#,###"/>
    <Measure name="Resolved" column="M_CLOSED" aggregator="sum"
type="Numeric" formatString="#,###"/>
    <Measure name="Changes" column="FACT_ISSUE_CHANGE_ID"
aggregator="count" formatString="#,###"/>
    <Measure name="Actual Issues" column="DEG_ISSUE_NAT_ID"
aggregator="distinct count" formatString="#,###"/>
    <Measure name="Net Open" column="M_NETOPEN" aggregator="sum"
type="Numeric" formatString="#,###"/>
    <Measure name="Days Since Creation" column="M_DAYS_SINCE_CREATED"
aggregator="avg" formatString="#,###"/>
    <Measure name="Elapsed Days" column="M_DAYS_SINCE_LAST_CHANGE"
aggregator="sum" formatString="#,###"/>
    <CalculatedMember name="Ending Net Open" dimension="Measures"
formula="Sum(PeriodsToDate([Time Changed].[(All)], [Time
Changed].CurrentMember),[Measures].[Net Open])" formatString="#,###"/>
    <CalculatedMember name="Starting Net Open" dimension="Measures"
formula="([Measures].[Ending Net Open], [Time
Changed].CurrentMember.PrevMember)" formatString="#,###"/>
    <CalculatedMember name="Net Open TREND" dimension="Measures"
formula="LinRegPoint(Rank([Time Changed].CurrentMember, [Time
Changed].CurrentMember.Level.Members), {[Time
Changed].CurrentMember.Level.Members}, [Measures].[Net Open],
Rank([Time Changed].CurrentMember, [Time
Changed].CurrentMember.Level.Members))" formatString="#,###"/>

<!--
	Not sure these are working properly for information needs... removed
until requested for reports.

	<CalculatedMember name="Ending Actual Issues" dimension="Measures"
formula="Aggregate(PeriodsToDate([Time Changed].[(All)], [Time
Changed].CurrentMember), [Measures].[Actual Issues])"
formatString="#,###"/>
    <CalculatedMember name="Starting Actual Issues" dimension="Measures"
formula="([Measures].[Ending Actual Issues], [Time
Changed].CurrentMember.PrevMember)" formatString="#,###"/>
	<CalculatedMember name="Ending Accumulated Resolved" dimension="Measures"
formula="[Measures].[Ending Actual Issues] - [Measures].[Ending Net
Open]" formatString="#,###"/>
    <CalculatedMember name="Starting Accumulated Resolved"
dimension="Measures" formula="([Measures].[Ending Accumulated
Resolved], [Time Changed].CurrentMember.PrevMember)"
formatString="#,###"/>

    -->
  </Cube>


</Schema>


> Interesting, AFAIKT that looks the same!
>
> Here's my DimensionUsage:
>
>     <DimensionUsage name="Priority" source="Priority"
> foreignKey="DIM_PRIORITY_ID"/>
>     <DimensionUsage name="Previous Priority" source="Previous Priority"
> foreignKey="DIM_PRIORITY_PREV_ID"/>
>
> What version of mondrian are you using?
>
>> I put an example to you of which I do in those cases. All the dimensions
>> come from the same table.
>>
>>  <Dimension name="1_Conoce e-learning?">
>>   <Hierarchy hasAll="true" allMemberName="1_Todos" primaryKey="id_sp">
>>    <Table name="pregunta_simple_texto"/>
>>    <Level name="elearning" column="id_sp" nameColumn="simtext"
>> type="String" hideMemberIf="IfBlankName" uniqueMembers="true"/>
>>   </Hierarchy>
>>  </Dimension>
>>
>>  <Dimension name="2_Aprendizaje por internet?">
>>   <Hierarchy hasAll="true" allMemberName="2_Todos" primaryKey="id_sp">
>>    <Table name="pregunta_simple_texto"/>
>>    <Level name="aprendizaje" column="id_sp" nameColumn="simtext"
>> type="String" hideMemberIf="IfBlankName" uniqueMembers="true"/>
>>   </Hierarchy>
>>  </Dimension>
>>
>>  <Dimension name="6_Tiene PC/Laptop?">
>>   <Hierarchy hasAll="true" allMemberName="6_Todos" primaryKey="id_sp">
>>    <Table name="pregunta_simple_texto"/>
>>    <Level name="tienepc" column="id_sp" nameColumn="simtext"
>> type="String" hideMemberIf="IfBlankName" uniqueMembers="true"/>
>>   </Hierarchy>
>>  </Dimension>
>>
>> It observes as I relate them within the cube. Single the one column
>> id_sp of my dimensions with a different column within the cube.
>>
>>  <Cube name="Encuesta_1">
>>   <Table name="encuesta_1"/>
>>    <DimensionUsage name="1_Conoce e-learning?" source="1_Conoce
>> e-learning?" foreignKey="id_1_1"/>
>>    <DimensionUsage name="2_Aprendizaje por internet?"
>> source="2_Aprendizaje por internet?" foreignKey="id_1_2"/>
>>    <DimensionUsage name="6_Tiene PC/Laptop?" source="6_Tiene PC/Laptop?"
>> foreignKey="id_2_6"/>
>>   <Measure name="id" column="id" aggregator="count" datatype="Integer"
>> visible="false"/>
>>  </Cube>
>>
>>
>> El mié, 02-05-2007 a las 15:39 +0100, lists at dankeeley.co.uk escribió:
>>> Sorry pasted the wrong bit of xml.  See here, notice dim_priority
>>> appears
>>> twice.
>>>
>>>   <Dimension name="Priority">
>>>     <Hierarchy hasAll="true" allMemberName="All Priorities"
>>> primaryKey="DIM_PRIORITY_ID">
>>>       <Table name="dim_priority"/>
>>>       <Level name="Priority" column="PRIORITY_NAME"
>>> uniqueMembers="true">
>>> 	<Property name="Description" column="PRIORITY_DESCRIPTION"/>
>>>       </Level>
>>>     </Hierarchy>
>>>   </Dimension>
>>>
>>>   <Dimension name="Previous Priority">
>>>     <Hierarchy hasAll="true" allMemberName="All Priorities"
>>> primaryKey="DIM_PRIORITY_ID">
>>>       <Table name="dim_priority"/>
>>>       <Level name="Priority" column="PRIORITY_NAME"
>>> uniqueMembers="true">
>>> 	<Property name="Description" column="PRIORITY_DESCRIPTION"/>
>>>       </Level>
>>>     </Hierarchy>
>>>   </Dimension>
>>>
>>> > Hi,
>>> >
>>> > The mondrian schema for Software Quality Reports is partly posted
>>> below.
>>> >
>>> > It has multiple shared dimensions with the same table name.  This
>>> throws
>>> > an error saying that the table name cannot be duplicated.
>>> >
>>> > The forums seem to imply that the table name should be able to be
>>> > duplicated.
>>> >
>>> > Is that right? whats the workaround?
>>> >
>>> > Thanks,
>>> > an
>>> >
>>> >
>>> > <?xml version="1.0"?>
>>> > <Schema name="Issues">
>>> >
>>> >   <Dimension name="Time Changed" type="TimeDimension">
>>> >     <Hierarchy hasAll="true" allMemberName="All Time"
>>> > primaryKey="DIM_TIME_ID">
>>> >       <Table name="dim_time"/>
>>> >       <Level name="Year" column="YEAR_NUM" uniqueMembers="true"
>>> > levelType="TimeYears" type="Numeric"/>
>>> >       <Level name="Month" column="MONTH_NUM" nameColumn="MONTH_NAME"
>>> > uniqueMembers="false" levelType="TimeMonths"/>
>>> >       <Level name="Day" column="DAY_DAY_OF_MONTH"
>>> uniqueMembers="false"
>>> > levelType="TimeDays" type="Numeric" formatString="##"/>
>>> >     </Hierarchy>
>>> >   </Dimension>
>>> >
>>> >   <Dimension name="Time Created" type="TimeDimension">
>>> >     <Hierarchy hasAll="true" allMemberName="All Time"
>>> > primaryKey="DIM_TIME_ID">
>>> >       <Level name="Year" column="YEAR_NUM" uniqueMembers="true"
>>> > levelType="TimeYears" type="Numeric"/>
>>> >       <Level name="Month" column="MONTH_NUM" nameColumn="MONTH_NAME"
>>> > uniqueMembers="false" levelType="TimeMonths"/>
>>> >       <Level name="Day" column="DAY_DAY_OF_MONTH"
>>> uniqueMembers="false"
>>> > levelType="TimeDays" type="Numeric" formatString="##"/>
>>> >     </Hierarchy>
>>> >   </Dimension>
>>> >
>>> >   <Dimension name="Time Released" type="TimeDimension">
>>> >     <Hierarchy hasAll="true" allMemberName="All Time"
>>> > primaryKey="DIM_TIME_ID">
>>> >       <Level name="Year" column="YEAR_NUM" uniqueMembers="true"
>>> > levelType="TimeYears" type="Numeric"/>
>>> >       <Level name="Month" column="MONTH_NUM" nameColumn="MONTH_NAME"
>>> > uniqueMembers="false" levelType="TimeMonths"/>
>>> >       <Level name="Day" column="DAY_DAY_OF_MONTH"
>>> uniqueMembers="false"
>>> > levelType="TimeDays" type="Numeric" formatString="##"/>
>>> >     </Hierarchy>
>>> >   </Dimension>
>>> > _______________________________________________
>>> > Mondrian mailing list
>>> > Mondrian at pentaho.org
>>> > http://lists.pentaho.org/mailman/listinfo/mondrian
>>> >
>>>
>>> _______________________________________________
>>> Mondrian mailing list
>>> Mondrian at pentaho.org
>>> http://lists.pentaho.org/mailman/listinfo/mondrian
>>
>> _______________________________________________
>> Mondrian mailing list
>> Mondrian at pentaho.org
>> http://lists.pentaho.org/mailman/listinfo/mondrian
>>
>
> _______________________________________________
> Mondrian mailing list
> Mondrian at pentaho.org
> http://lists.pentaho.org/mailman/listinfo/mondrian
>




More information about the Mondrian mailing list