BIRT 2.3.1: Crosstab doesn't allow group level deeper than 2 for totals [message #366096] |
Fri, 28 November 2008 14:58 |
Eclipse User |
|
|
|
Originally posted by: seb_schneider.gmx.net
I have a report that uses a Crosstab. It was designed for BIRT 2.2.1.
Now I am updating to 2.3.1 and my report doesn't work anymore.
I use a crosstab that refers to a datacube with a group that is 3 levels
deep, for example:
LEVEL1
-- LEVEL2
-- LEVEL3
In the crosstab I use this group to define the columns. I have 2 totals,
one that refers to LEVEL1 and one that refers to LEVEL3. The LEVEL3
group total works perfectly in 2.2.1 but doesn't work in 2.3.1.
Also, when I tried to redo the report, the 2.3.1 ReportDesigner doesn't
even give me the option to put a total on LEVEL3, though 2.2.1 had this
ability.
Is this just a bug or does the crosstab feature not work with groups
deeper than 2 levels anymore?
Thanks for your help in advance,
Sebastian
PS: The WebViewer, deployed to an JBoss application server, shows the
following exception when running the report:
org.eclipse.birt.report.engine.api.EngineException: An exception
occurred during processing. Please see the following message for
details:The binding "CARDCOUNT_Group/CARD_VALUE" refers to invalid
levels. at
org.eclipse.birt.report.engine.executor.ExecutionContext.add Exception(ExecutionContext.java:1109)
at
org.eclipse.birt.report.engine.data.dte.AbstractDataEngine.d oPrepareQuery(AbstractDataEngine.java:210)
at
org.eclipse.birt.report.engine.data.dte.DataGenerationEngine .doPrepareQuery(DataGenerationEngine.java:73)
at
org.eclipse.birt.report.engine.data.dte.AbstractDataEngine.p repare(AbstractDataEngine.java:167)
at
org.eclipse.birt.report.engine.executor.ReportExecutor.execu te(ReportExecutor.java:109)
at
org.eclipse.birt.report.engine.internal.executor.wrap.Wrappe dReportExecutor.execute(WrappedReportExecutor.java:59)
at
org.eclipse.birt.report.engine.internal.executor.emitter.Rep ortEmitterExecutor.execute(ReportEmitterExecutor.java:76)
at
org.eclipse.birt.report.engine.internal.executor.wrap.Wrappe dReportExecutor.execute(WrappedReportExecutor.java:59)
at
org.eclipse.birt.report.engine.internal.executor.dup.Suppres sDuplciateReportExecutor.execute(SuppressDuplciateReportExec utor.java:51)
at
org.eclipse.birt.report.engine.presentation.ReportDocumentBu ilder.build(ReportDocumentBuilder.java:229)
at
org.eclipse.birt.report.engine.api.impl.RunTask.doRun(RunTas k.java:237)
at
org.eclipse.birt.report.engine.api.impl.RunTask.run(RunTask. java:90)
at
org.eclipse.birt.report.service.ReportEngineService.runRepor t(ReportEngineService.java:1164)
at
org.eclipse.birt.report.service.BirtViewerReportService.runR eport(BirtViewerReportService.java:155)
at
org.eclipse.birt.report.service.actionhandler.BirtRunReportA ctionHandler.__execute(BirtRunReportActionHandler.java:81)
at
org.eclipse.birt.report.service.actionhandler.BirtGetPageAct ionHandler.__checkDocumentExists(BirtGetPageActionHandler.ja va:58)
at
org.eclipse.birt.report.service.actionhandler.AbstractGetPag eActionHandler.prepareParameters(AbstractGetPageActionHandle r.java:121)
at
org.eclipse.birt.report.service.actionhandler.AbstractGetPag eActionHandler.__execute(AbstractGetPageActionHandler.java:1 06)
at
org.eclipse.birt.report.service.actionhandler.AbstractBaseAc tionHandler.execute(AbstractBaseActionHandler.java:90)
at
org.eclipse.birt.report.soapengine.processor.AbstractBaseDoc umentProcessor.__executeAction(AbstractBaseDocumentProcessor .java:47)
at
org.eclipse.birt.report.soapengine.processor.AbstractBaseCom ponentProcessor.executeAction(AbstractBaseComponentProcessor .java:143)
at
org.eclipse.birt.report.soapengine.processor.BirtDocumentPro cessor.handleGetPage(BirtDocumentProcessor.java:87)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAcce ssorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMe thodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597) at
org.eclipse.birt.report.soapengine.processor.AbstractBaseCom ponentProcessor.process(AbstractBaseComponentProcessor.java: 112)
at
org.eclipse.birt.report.soapengine.endpoint.BirtSoapBindingI mpl.getUpdatedObjects(BirtSoapBindingImpl.java:66)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAcce ssorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMe thodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597) at
org.apache.axis.providers.java.RPCProvider.invokeMethod(RPCP rovider.java:397)
at
org.apache.axis.providers.java.RPCProvider.processMessage(RP CProvider.java:186)
at
org.apache.axis.providers.java.JavaProvider.invoke(JavaProvi der.java:323)
at
org.apache.axis.strategies.InvocationStrategy.visit(Invocati onStrategy.java:32)
at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118) at
org.apache.axis.SimpleChain.invoke(SimpleChain.java:83) at
org.apache.axis.handlers.soap.SOAPService.invoke(SOAPService .java:454)
at org.apache.axis.server.AxisServer.invoke(AxisServer.java:281 ) at
org.apache.axis.transport.http.AxisServlet.doPost(AxisServle t.java:699)
at
org.eclipse.birt.report.servlet.BirtSoapMessageDispatcherSer vlet.doPost(BirtSoapMessageDispatcherServlet.java:225)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) at
org.apache.axis.transport.http.AxisServletBase.service(AxisS ervletBase.java:327)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) at
org.eclipse.birt.report.servlet.BirtSoapMessageDispatcherSer vlet.service(BirtSoapMessageDispatcherServlet.java:112)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFi lter(ApplicationFilterChain.java:290)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(App licationFilterChain.java:206)
at
org.eclipse.birt.report.filter.ViewerFilter.doFilter(ViewerF ilter.java:68)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFi lter(ApplicationFilterChain.java:235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(App licationFilterChain.java:206)
at
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(Repl yHeaderFilter.java:96)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFi lter(ApplicationFilterChain.java:235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(App licationFilterChain.java:206)
at
org.apache.catalina.core.StandardWrapperValve.invoke(Standar dWrapperValve.java:230)
at
org.apache.catalina.core.StandardContextValve.invoke(Standar dContextValve.java:175)
at
org.jboss.web.tomcat.security.SecurityAssociationValve.invok e(SecurityAssociationValve.java:179)
at
org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccCo ntextValve.java:84)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHo stValve.java:127)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorRepo rtValve.java:102)
at
org.jboss.web.tomcat.service.jca.CachedConnectionValve.invok e(CachedConnectionValve.java:157)
at
org.apache.catalina.core.StandardEngineValve.invoke(Standard EngineValve.java:109)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAd apter.java:262)
at
org.apache.coyote.http11.Http11Processor.process(Http11Proce ssor.java:844)
at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHand ler.process(Http11Protocol.java:583)
at
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoin t.java:446)
at java.lang.Thread.run(Thread.java:619)Caused by:
org.eclipse.birt.report.data.adapter.api.AdapterException: An exception
occurred during processing. Please see the following message for
details:The binding "CARDCOUNT_Group/CARD_VALUE" refers to invalid
levels. at
org.eclipse.birt.report.data.adapter.impl.DataRequestSession Impl.prepare(DataRequestSessionImpl.java:523)
at
org.eclipse.birt.report.engine.data.dte.AbstractDataEngine.d oPrepareQuery(AbstractDataEngine.java:203)...
65 moreCaused by: org.eclipse.birt.data.engine.core.DataException: The
binding "CARDCOUNT_Group/CARD_VALUE" refers to invalid levels. at
org.eclipse.birt.data.engine.olap.util.OlapQueryUtil.validat eBinding(OlapQueryUtil.java:126)
at
org.eclipse.birt.data.engine.olap.impl.query.PreparedCubeQue ry.validateBinding(PreparedCubeQuery.java:103)
at
org.eclipse.birt.data.engine.olap.impl.query.PreparedCubeQue ry.validateQuery(PreparedCubeQuery.java:98)
at
org.eclipse.birt.data.engine.olap.impl.query.PreparedCubeQue ry.(PreparedCubeQuery.java:51)
at
org.eclipse.birt.data.engine.impl.DataEngineImpl.prepare(Dat aEngineImpl.java:670)
at
org.eclipse.birt.report.data.adapter.impl.DataRequestSession Impl.prepare(DataRequestSessionImpl.java:1053)
at
org.eclipse.birt.report.data.adapter.impl.DataRequestSession Impl.prepare(DataRequestSessionImpl.java:509)...
66 more
------------------------------------------------------------ --------------------
org.eclipse.birt.report.engine.api.EngineException: Can't find the
prepared query
org.eclipse.birt.data.engine.olap.impl.query.CubeQueryDefini tion @251232ca.
at
org.eclipse.birt.report.engine.executor.ExecutorManager$Exec utorContext.executeQuery(ExecutorManager.java:432)
at
org.eclipse.birt.report.item.crosstab.core.re.executor.BaseC rosstabExecutor.executeQuery(BaseCrosstabExecutor.java:103)
at
org.eclipse.birt.report.item.crosstab.core.re.executor.Cross tabReportItemExecutor.execute(CrosstabReportItemExecutor.jav a:102)
at
org.eclipse.birt.report.engine.executor.ExtendedItemExecutor .execute(ExtendedItemExecutor.java:61)
at
org.eclipse.birt.report.engine.internal.executor.wrap.Wrappe dReportItemExecutor.execute(WrappedReportItemExecutor.java:4 5)
at
org.eclipse.birt.report.engine.internal.executor.emitter.Rep ortItemEmitterExecutor.execute(ReportItemEmitterExecutor.jav a:45)
at
org.eclipse.birt.report.engine.internal.executor.dup.Suppres sDuplicateItemExecutor.execute(SuppressDuplicateItemExecutor .java:42)
at
org.eclipse.birt.report.engine.layout.html.HTMLBlockStacking LM.layoutNodes(HTMLBlockStackingLM.java:63)
at
org.eclipse.birt.report.engine.layout.html.HTMLPageLM.layout (HTMLPageLM.java:90)
at
org.eclipse.birt.report.engine.layout.html.HTMLReportLayoutE ngine.layout(HTMLReportLayoutEngine.java:101)
at
org.eclipse.birt.report.engine.presentation.ReportDocumentBu ilder.build(ReportDocumentBuilder.java:231)
at
org.eclipse.birt.report.engine.api.impl.RunTask.doRun(RunTas k.java:237)
at
org.eclipse.birt.report.engine.api.impl.RunTask.run(RunTask. java:90)
at
org.eclipse.birt.report.service.ReportEngineService.runRepor t(ReportEngineService.java:1164)
at
org.eclipse.birt.report.service.BirtViewerReportService.runR eport(BirtViewerReportService.java:155)
at
org.eclipse.birt.report.service.actionhandler.BirtRunReportA ctionHandler.__execute(BirtRunReportActionHandler.java:81)
at
org.eclipse.birt.report.service.actionhandler.BirtGetPageAct ionHandler.__checkDocumentExists(BirtGetPageActionHandler.ja va:58)
at
org.eclipse.birt.report.service.actionhandler.AbstractGetPag eActionHandler.prepareParameters(AbstractGetPageActionHandle r.java:121)
at
org.eclipse.birt.report.service.actionhandler.AbstractGetPag eActionHandler.__execute(AbstractGetPageActionHandler.java:1 06)
at
org.eclipse.birt.report.service.actionhandler.AbstractBaseAc tionHandler.execute(AbstractBaseActionHandler.java:90)
at
org.eclipse.birt.report.soapengine.processor.AbstractBaseDoc umentProcessor.__executeAction(AbstractBaseDocumentProcessor .java:47)
at
org.eclipse.birt.report.soapengine.processor.AbstractBaseCom ponentProcessor.executeAction(AbstractBaseComponentProcessor .java:143)
at
org.eclipse.birt.report.soapengine.processor.BirtDocumentPro cessor.handleGetPage(BirtDocumentProcessor.java:87)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAcce ssorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMe thodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597) at
org.eclipse.birt.report.soapengine.processor.AbstractBaseCom ponentProcessor.process(AbstractBaseComponentProcessor.java: 112)
at
org.eclipse.birt.report.soapengine.endpoint.BirtSoapBindingI mpl.getUpdatedObjects(BirtSoapBindingImpl.java:66)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAcce ssorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMe thodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597) at
org.apache.axis.providers.java.RPCProvider.invokeMethod(RPCP rovider.java:397)
at
org.apache.axis.providers.java.RPCProvider.processMessage(RP CProvider.java:186)
at
org.apache.axis.providers.java.JavaProvider.invoke(JavaProvi der.java:323)
at
org.apache.axis.strategies.InvocationStrategy.visit(Invocati onStrategy.java:32)
at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118) at
org.apache.axis.SimpleChain.invoke(SimpleChain.java:83) at
org.apache.axis.handlers.soap.SOAPService.invoke(SOAPService .java:454)
at org.apache.axis.server.AxisServer.invoke(AxisServer.java:281 ) at
org.apache.axis.transport.http.AxisServlet.doPost(AxisServle t.java:699)
at
org.eclipse.birt.report.servlet.BirtSoapMessageDispatcherSer vlet.doPost(BirtSoapMessageDispatcherServlet.java:225)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) at
org.apache.axis.transport.http.AxisServletBase.service(AxisS ervletBase.java:327)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) at
org.eclipse.birt.report.servlet.BirtSoapMessageDispatcherSer vlet.service(BirtSoapMessageDispatcherServlet.java:112)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFi lter(ApplicationFilterChain.java:290)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(App licationFilterChain.java:206)
at
org.eclipse.birt.report.filter.ViewerFilter.doFilter(ViewerF ilter.java:68)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFi lter(ApplicationFilterChain.java:235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(App licationFilterChain.java:206)
at
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(Repl yHeaderFilter.java:96)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFi lter(ApplicationFilterChain.java:235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(App licationFilterChain.java:206)
at
org.apache.catalina.core.StandardWrapperValve.invoke(Standar dWrapperValve.java:230)
at
org.apache.catalina.core.StandardContextValve.invoke(Standar dContextValve.java:175)
at
org.jboss.web.tomcat.security.SecurityAssociationValve.invok e(SecurityAssociationValve.java:179)
at
org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccCo ntextValve.java:84)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHo stValve.java:127)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorRepo rtValve.java:102)
at
org.jboss.web.tomcat.service.jca.CachedConnectionValve.invok e(CachedConnectionValve.java:157)
at
org.apache.catalina.core.StandardEngineValve.invoke(Standard EngineValve.java:109)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAd apter.java:262)
at
org.apache.coyote.http11.Http11Processor.process(Http11Proce ssor.java:844)
at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHand ler.process(Http11Protocol.java:583)
at
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoin t.java:446)
at java.lang.Thread.run(Thread.java:619)Caused by:
org.eclipse.birt.report.engine.api.EngineException: Can't find the
prepared query
org.eclipse.birt.data.engine.olap.impl.query.CubeQueryDefini tion @251232ca.
at
org.eclipse.birt.report.engine.data.dte.DteDataEngine.doExec uteCube(DteDataEngine.java:161)
at
org.eclipse.birt.report.engine.data.dte.DataGenerationEngine .doExecuteCube(DataGenerationEngine.java:92)
at
org.eclipse.birt.report.engine.data.dte.AbstractDataEngine.e xecute(AbstractDataEngine.java:253)
at
org.eclipse.birt.report.engine.executor.ExecutorManager$Exec utorContext.executeQuery(ExecutorManager.java:422)...
67 more
|
|
|
|
Re: BIRT 2.3.1: Crosstab doesn't allow group level deeper than 2 for totals [message #366114 is a reply to message #366112] |
Mon, 01 December 2008 15:55 |
Eclipse User |
|
|
|
Originally posted by: jasonweathersby.alltel.net
Sebastian,
Can you try this in the 2.3.1 designer and increase the data settings in
window->preferences->Report Design->Preview->Data
Jason
Sebastian Schneider wrote:
> OK, I have analyzed this problem a little more and it doesn't seem to be
> a problem with the group levels but a problem with the cube itself.
>
> The last Exception of the previously mentioned stacktrace says:
>
> org.eclipse.birt.report.engine.api.EngineException: Can't find the
> prepared query
> org.eclipse.birt.data.engine.olap.impl.query.CubeQueryDefini tion @251232ca.
> at
> org.eclipse.birt.report.engine.executor.ExecutorManager$Exec utorContext.executeQuery(ExecutorManager.java:432)...
>
>
>
> Does anyone have an idea what could be the reason, why the data cube or
> the data cube query can't be found? All I did was updating the engine
> from 2.2.1 to 2.3.1.
|
|
|
Re: BIRT 2.3.1: Crosstab doesn't allow group level deeper than 2 for totals [message #366183 is a reply to message #366114] |
Fri, 05 December 2008 08:54 |
Eclipse User |
|
|
|
Originally posted by: seb_schneider.gmx.net
Hello Jason,
I already fixed the problem. This is what I did:
1. Remove the column's grand totals from Report layout.
2. Remove the <structure> elements of the grand totals in XML view,
because they weren't removed by step 1.
3. Rebuild the column's grand totals in Report layout.
After this, the report worked fine again.
Greetings,
Sebastian
Jason Weathersby schrieb:
> Sebastian,
>
> Can you try this in the 2.3.1 designer and increase the data settings in
> window->preferences->Report Design->Preview->Data
>
> Jason
>
> Sebastian Schneider wrote:
>> OK, I have analyzed this problem a little more and it doesn't seem to
>> be a problem with the group levels but a problem with the cube itself.
>>
>> The last Exception of the previously mentioned stacktrace says:
>>
>> org.eclipse.birt.report.engine.api.EngineException: Can't find the
>> prepared query
>> org.eclipse.birt.data.engine.olap.impl.query.CubeQueryDefini tion @251232ca.
>> at
>> org.eclipse.birt.report.engine.executor.ExecutorManager$Exec utorContext.executeQuery(ExecutorManager.java:432)...
>>
>>
>>
>> Does anyone have an idea what could be the reason, why the data cube
>> or the data cube query can't be found? All I did was updating the
>> engine from 2.2.1 to 2.3.1.
|
|
|
Powered by
FUDForum. Page generated in 0.03223 seconds