Discussions
Categories
Groups
Community Home
Categories
INTERNAL ENABLEMENT
POPULAR
PUBLIC CLOUD
PRIVATE CLOUD
Quick Links
MY LINKS
HELPFUL TIPS
Back to website
Home
Intelligence (Analytics)
BIRT 2.1.2 Chart error
sgavriel
Hi
I am using BIRT 2.1.2 and I am trying to create a report for Maximo v7.
While trying to setup the chart and I am inserting values from my data set in the X Series, Y Series and Y Series Grouping of the chart I get the following error (The chart id # varies depending on the combination of the expressions in the X and Y Series):
In the Y Series I may put something like: row["STATUS"]=="NEW" || row["STATUS"]=="INPROG"
and in the X Series I may put: row["SITEID"]
Chart (id = 289):
- The dataset used by the Chart is invalid
exception.unknown.datatype ( 1 time(s) )
detail : org.eclipse.birt.chart.exception.ChartException: The dataset used by the Chart is invalid at org.eclipse.birt.chart.datafeed.DataSetProcessorImpl.populate(DataSetProcessorImpl.java:319) at org.eclipse.birt.chart.internal.datafeed.DataProcessor.populateSeriesDataSet(DataProcessor.java:1422) at org.eclipse.birt.chart.internal.datafeed.DataProcessor.generateRuntimeSeries(DataProcessor.java:1050) at org.eclipse.birt.chart.internal.datafeed.DataProcessor.generateRuntimeSeries(DataProcessor.java:721) at org.eclipse.birt.chart.factory.Generator.bindData(Generator.java:559) at org.eclipse.birt.chart.reportitem.ChartReportItemPresentationImpl.onRowSets(ChartReportItemPresentationImpl.java:399) at org.eclipse.birt.report.engine.presentation.LocalizedContentVisitor.processExtendedContent(LocalizedContentVisitor.java:653) at org.eclipse.birt.report.engine.presentation.LocalizedContentVisitor.visitForeign(LocalizedContentVisitor.java:359) at org.eclipse.birt.report.engine.content.impl.ForeignContent.accept(ForeignContent.java:58) at org.eclipse.birt.report.engine.presentation.LocalizedContentVisitor.localize(LocalizedContentVisitor.java:111) at org.eclipse.birt.report.engine.internal.executor.l18n.LocalizedReportItemExecutor.execute(LocalizedReportItemExecutor.java:38) at org.eclipse.birt.report.engine.layout.html.HTMLBlockStackingLM.layoutChildren(HTMLBlockStackingLM.java:63) at org.eclipse.birt.report.engine.layout.html.HTMLAbstractLM.layout(HTMLAbstractLM.java:159) at org.eclipse.birt.report.engine.layout.html.HTMLInlineStackingLM.resumeLayout(HTMLInlineStackingLM.java:94) at org.eclipse.birt.report.engine.layout.html.HTMLInlineStackingLM.layoutChildren(HTMLInlineStackingLM.java:138) at org.eclipse.birt.report.engine.layout.html.HTMLAbstractLM.layout(HTMLAbstractLM.java:159) at org.eclipse.birt.report.engine.layout.html.HTMLRowLM.layout(HTMLRowLM.java:30) at org.eclipse.birt.report.engine.layout.html.HTMLBlockStackingLM.layoutChildren(HTMLBlockStackingLM.java:68) at org.eclipse.birt.report.engine.layout.html.HTMLTableLM.layoutChildren(HTMLTableLM.java:74) at org.eclipse.birt.report.engine.layout.html.HTMLAbstractLM.layout(HTMLAbstractLM.java:159) at org.eclipse.birt.report.engine.layout.html.HTMLPageLM.layoutChildren(HTMLPageLM.java:139) at org.eclipse.birt.report.engine.layout.html.HTMLPageLM.layout(HTMLPageLM.java:81) at org.eclipse.birt.report.engine.layout.html.HTMLReportLayoutEngine.layout(HTMLReportLayoutEngine.java:85) at org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.doRun(RunAndRenderTask.java:205) at org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.run(RunAndRenderTask.java:142) at org.eclipse.birt.report.service.ReportEngineService.runAndRenderReport(Unknown Source) at org.eclipse.birt.report.service.ReportEngineService.runAndRenderReport(Unknown Source) at org.eclipse.birt.report.service.BirtViewerReportService.runAndRenderReport(Unknown Source) at org.eclipse.birt.report.service.actionhandler.BirtRunAndRenderActionHandler.__execute(Unknown Source) at org.eclipse.birt.report.service.actionhandler.AbstractBaseActionHandler.execute(Unknown Source) at org.eclipse.birt.report.presentation.aggregation.layout.EngineFragment.doService(Unknown Source) at org.eclipse.birt.report.presentation.aggregation.AbstractBaseFragment.service(Unknown Source) at org.eclipse.birt.report.servlet.BirtEngineServlet.__doGet(Unknown Source) at org.eclipse.birt.report.servlet.BaseReportEngineServlet.doGet(Unknown Source) at javax.servlet.http.HttpServlet.service(HttpServlet.java:740) at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:327) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:256) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643) at org.apache.catalina.valves.CertificatesValve.invoke(CertificatesValve.java:246) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2422) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643) at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:171) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641) at org.eclipse.tomcat.internal.EclipseErrorReportValve.invoke(EclipseErrorReportValve.java:153) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:199) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:828) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:700) at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:584) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683) at java.lang.Thread.run(Thread.java:801)
Sometime I also get this error message:
"Unable to use a text data to render a numerical/datetime axis."
Can you please advise what needs to be done in order to successfully create a chart within the report?
Thanks,
sgavriel
Find more posts tagged with
Comments
Dragunov
Hi,
Regarding the first error i need more input. I am not clear what you were trying to do.
Regarding the second error "Unable to use a text data to render a numerical/datetime axis", This occurs when you define that the type of value that you pass to an axis is a text but you actually pass a date or a number.
This can be changed at double click the chart and go to the chart properties -> Format chart -> select Chart Area - >Axis
chek the type of value that you assigned for x axis and y axis.
You would have declared the type of an axis as "Text" but you pass a date or a number or decimal to that axis. So change it to DateTime type if the value that you pass is a date. If you pass a number or decimal you can choose the type as Linear or Logarithmic.
Thnx
sgavriel
So if I want to have in the
Value (Y) Series the row["STATUS"]
and in the
Category (X) Series the row["SITEID"]
and in the Optional Y Series Grouping the row["LOCATION"]
what should the each respective Axis type be?
I have tried the combinations and I still get the same error:
"The value axis may only have a numerical or datetime format"
Thanks
Virgil Dodson
Hi sgavriel,
The Y-axis needs a number to do something with like Count, Sum, etc. For your example, after dragging SITEID to the X-Axis, press the grouping/sorting button, enable grouping, and then select COUNT for the aggregrate expression. Once you have done this you can put non-numeric values for the Y-axis since it is just counting them.
I created an example (with BIRT 2.3.2) that groups values by Country, City, and then Status.
UPDATE: I realized after I submitted this that you were using 2.1.2 so you wont be able to open this example. In my example, I selected CITY for the X-axis, turned on grouping, selecting Text, 1, and COUNT. Then I selected COUNTRY for the Optional Grouping. In then created 6 different series and on each series, I added an expression like:
SERIES1: if (row["STATUS"] == "Shipped") 1
SERIES2: if (row["STATUS"] == "Cancelled") 1,
etc.
... then rename the Series1, Series2, etc on the format tab, Series -> Titles
Dragunov
Can you just attach the rptdesign file if possible?.
sgavriel
Thanks a lot vdodson.
Your suggestions worked out great!!!
I selected SITEID for the X-Axis, turned on grouping, selecting Text, 1, and COUNT. Then I selected LOCATION for the Optional Grouping. Then I selected for the Value (Y) Series the following: row["STATUS"] == "NEW" || row["STATUS"] == "QUEUED" || row["STATUS"] == "PENDING" || row["STATUS"] == "INPROG"