Hi,<div>I've discovered another part of RowsetDefinition which can only work reliably using the mondrian olap4j driver.</div><div><br></div><div>The line number is 5096 and the code snippet in question is the following:</div>
<div><br></div><div><div>protected void populateCatalog(</div><div> OlapConnection connection,</div><div> Catalog catalog,</div><div> List<Row> rows)</div><div> throws XmlaException, SQLException</div>
<div> {</div><div> // SQL Server actually includes the LEVELS_LIST row</div><div> StringBuilder buf = new StringBuilder(100);</div><div><br></div><div> for (Schema schema : filter(catalog.getSchemas(), schemaNameCond)) {</div>
<div> for (Cube cube : filter(sortedCubes(schema), cubeNameCond)) {</div><div> Dimension measuresDimension = cube.getDimensions().get(0);</div><div> Hierarchy measuresHierarchy =</div>
<div> measuresDimension.getHierarchies().get(0);</div></div><div><br></div><div><br></div><div>As you can see there is a strong assumption made here: that the first dimension in the list contains the Measures.</div>
<div>The right way to do this is to iterate through the array and stop when "dimension type" is MEASURE.</div><div><br></div><div>Thanks,</div><div>Michele</div>