Search in sources :

Example 1 with Level

use of org.olap4j.metadata.Level in project mondrian by pentaho.

the class Olap4jTest method foo.

private Member foo(int i) throws SQLException {
    final OlapConnection connection = getTestContext().getOlap4jConnection();
    final Cube cube;
    final Hierarchy measuresHierarchy;
    final CellSet cellSet;
    switch(i) {
        case 0:
            cellSet = connection.createStatement().executeOlapQuery("select [Measures].[Unit Sales] on 0\n" + "from [Sales]");
            return cellSet.getAxes().get(0).getPositions().get(0).getMembers().get(0);
        case 1:
            cellSet = connection.createStatement().executeOlapQuery("select [Measures].Members on 0\n" + "from [Sales]");
            return cellSet.getAxes().get(0).getPositions().get(0).getMembers().get(0);
        case 2:
            cellSet = connection.createStatement().executeOlapQuery("select [Measures].[Measures].Members on 0\n" + "from [Sales]");
            return cellSet.getAxes().get(0).getPositions().get(0).getMembers().get(0);
        case 3:
            cube = connection.getOlapSchema().getCubes().get("Sales");
            measuresHierarchy = cube.getHierarchies().get("Measures");
            final NamedList<Member> rootMembers = measuresHierarchy.getRootMembers();
            return rootMembers.get(0);
        case 4:
            cube = connection.getOlapSchema().getCubes().get("Sales");
            measuresHierarchy = cube.getHierarchies().get("Measures");
            final Level measuresLevel = measuresHierarchy.getLevels().get(0);
            final List<Member> levelMembers = measuresLevel.getMembers();
            return levelMembers.get(0);
        case 5:
            cube = connection.getOlapSchema().getCubes().get("Sales");
            measuresHierarchy = cube.getHierarchies().get("Measures");
            return measuresHierarchy.getDefaultMember();
        case 6:
            cube = connection.getOlapSchema().getCubes().get("Sales");
            return cube.lookupMember(IdentifierNode.parseIdentifier("[Measures].[Unit Sales]").getSegmentList());
        default:
            throw new IllegalArgumentException("bad index " + i);
    }
}
Also used : Hierarchy(org.olap4j.metadata.Hierarchy) Cube(org.olap4j.metadata.Cube) Level(org.olap4j.metadata.Level) Member(org.olap4j.metadata.Member)

Example 2 with Level

use of org.olap4j.metadata.Level in project mondrian by pentaho.

the class MondrianOlap4jExtra method isHierarchyParentChild.

public boolean isHierarchyParentChild(Hierarchy hierarchy) {
    Level nonAllFirstLevel = hierarchy.getLevels().get(0);
    if (nonAllFirstLevel.getLevelType() == Level.Type.ALL) {
        nonAllFirstLevel = hierarchy.getLevels().get(1);
    }
    MondrianOlap4jLevel olap4jLevel = (MondrianOlap4jLevel) nonAllFirstLevel;
    return ((RolapLevel) olap4jLevel.level).isParentChild();
}
Also used : Level(org.olap4j.metadata.Level)

Aggregations

Level (org.olap4j.metadata.Level)2 Cube (org.olap4j.metadata.Cube)1 Hierarchy (org.olap4j.metadata.Hierarchy)1 Member (org.olap4j.metadata.Member)1