views:

31

answers:

0

Hi, I have a mesurement which is an average and it mapped as a CalculatedMember to support aggregate tables:

<Measure name="AverageFullPercent_sum" column="fullDockPercent" datatype="Numeric" aggregator="sum" visible="false">
</Measure>
<Measure name="AverageFullPercent_count" column="fullDockPercent" datatype="Numeric" aggregator="count" visible="false">
</Measure>
<CalculatedMember name="AverageEmptyPercent" caption="Average Empty %" formula="[Measures].[AverageEmptyPercent_sum]/[Measures].[AverageEmptyPercent_count]" dimension="Measures" visible="true">
</CalculatedMember>

Hovever, when I use the mesurement AND apply a filter on some values of a dimension, I get mondrian.olap.fun.MondrianEvaluationException: Could not find an aggregator in the current evaluation context as a result in the Grand Total in excel.

The stacktrace is:

2010.06.01;16:48:05.074 WARN  Mondrian: exception in executeStripe.
mondrian.olap.fun.MondrianEvaluationException: Could not find an aggregator in the current evaluation context
    at mondrian.olap.fun.FunUtil.newEvalException(FunUtil.java:78)
    at mondrian.olap.fun.AggregateFunDef$AggregateCalc.aggregate(AggregateFunDef.java:93)
    at mondrian.olap.fun.AggregateFunDef$AggregateCalc.evaluate(AggregateFunDef.java:71)
    at mondrian.rolap.RolapEvaluator.evaluateCurrent(RolapEvaluator.java:471)
    at mondrian.rolap.RolapResult.executeStripe(RolapResult.java:902)
    at mondrian.rolap.RolapResult.executeStripe(RolapResult.java:1040)
    at mondrian.rolap.RolapResult.executeStripe(RolapResult.java:1040)
    at mondrian.rolap.RolapResult.executeBody(RolapResult.java:798)
    at mondrian.rolap.RolapResult.<init>(RolapResult.java:416)
    at mondrian.rolap.RolapConnection.execute(RolapConnection.java:607)
    at mondrian.xmla.XmlaHandler.executeQuery(XmlaHandler.java:1695)
    at mondrian.xmla.XmlaHandler.execute(XmlaHandler.java:643)
    at mondrian.xmla.XmlaHandler.process(XmlaHandler.java:551)
    at mondrian.xmla.impl.DefaultXmlaServlet.handleSoapBody(DefaultXmlaServlet.java:426)
    at mondrian.xmla.XmlaServlet.doPost(XmlaServlet.java:330)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
    at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:502)
    at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:389)
    at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
    at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
    at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
    at org.mortbay.jetty.Server.handle(Server.java:326)
    at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:534)
    at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:879)
    at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:747)
    at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
    at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
    at org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:228)
    at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:520)

Any idea how to fix this? Is this a bug?

Thank you very much!