Mondrian Error:Duplicate table alias的错误解决办法
使用Mondrian进行OLAP开发,我想在一个立方体里面展现同一个表里面的不同的维度时,就出现了这个问题:Mondrian Error:Duplicate table alias,意思是说有重复的表别名。
?
?
如我现在要对人员信息进行不同维度(性别、部门、职务、职业技能等级)的分析,而这些维度信息都是保存在一张表里面,原先写的Schema为:
?
<Schema name="Mondrian"><Cube name="hrtest"> <Table name="user" /> <Dimension name="性别" foreignKey="sex" > <Hierarchy hasAll="true" primaryKey="sex" allMemberName="所有性别"> <Table name="user" /> <Level name="性别" column="sex" uniqueMembers="true" /> </Hierarchy> </Dimension> <Dimension name="职务" foreignKey="post" > <Hierarchy hasAll="true" primaryKey="post" allMemberName="所有职务"> <Table name="user" /> <Level name="等级" column="grade" uniqueMembers="true" /> <Level name="职称" column="post" uniqueMembers="true" /> <Level name="性别" column="sex" uniqueMembers="true" /> </Hierarchy> </Dimension> <Measure name="人数" column="username" aggregator="count" /> </Cube> </Schema>
?这个时候运行就会出现:Mondrian Error:Duplicate table alias的错误
?
需要对表名进行重命名,将上面Table加上一个alias的属性就可以解决问题
?<Table name="user" alias ="a" />