Home » Archived » BIRT » "Use report data" in charts is broken ?
"Use report data" in charts is broken ? [message #121677] |
Tue, 31 January 2006 10:55  |
Eclipse User |
|
|
|
Is there a rule as to when report data is available to other elements of
the same report?
Context:
- so far I have been unable to select report data as input for a chart
(when "Use report data" option is selected, the columns to drag and drop
from remain empty).
- results from a query of a data-set are only available as input to
another data-set if the second data-set is part of a subreport that
contains the first data-set
If this is documented somewhere, please point to me to it, I will hapely
read any docs available on this.
regards,
Ruben
|
|
|
Re: "Use report data" in charts is broken ? [message #121751 is a reply to message #121677] |
Tue, 31 January 2006 11:43   |
Eclipse User |
|
|
|
Hi Ruben,
"Use report data" means the chart will use the data bound to its container
element. For instance if you bind a dataset to a table, and put a chart
inside the table, you will be able to choose "Use report data" to get the
dataset that applies to the cell where the chart is (note that the chart
must be already in the table, if you're creating a new one, you'll have to
close the wizard after it's dropped in the table, and reopen it, the reason
being a new chart is not yet part of the table, so it can't access its
data). If there is no container element, use report data won't be able to
access any data. Let me know if the terminology is confusing.
I guess your second question is unrelated to charts?
Thanks,
David
"Ruben" <rsa@newtec.be> wrote in message
news:03e608d8a31143a6c0aa546a482f1871$1@www.eclipse.org...
> Is there a rule as to when report data is available to other elements of
> the same report?
>
> Context:
>
> - so far I have been unable to select report data as input for a chart
> (when "Use report data" option is selected, the columns to drag and drop
> from remain empty).
>
> - results from a query of a data-set are only available as input to
> another data-set if the second data-set is part of a subreport that
> contains the first data-set
>
> If this is documented somewhere, please point to me to it, I will hapely
> read any docs available on this.
>
> regards,
> Ruben
>
|
|
| |
Re: "Use report data" in charts is broken ? [message #121780 is a reply to message #121751] |
Tue, 31 January 2006 12:00   |
Eclipse User |
|
|
|
Hello David,
thanks for your reply, it makes a lot of things more clear.
Your explanation of having to create the chart first, close it and re-open
it in order to be able to use the data sounds logical, but it is very
confusing for a newby like me. Certainly as the chart creation wizard
complains that the chart has not been bound to any datasets. Very, very
confusing.
Perhaps a warning during the creation of chart would be in order (if "use
report data" is selected)?
As to my second question: I feel it is related.
How I experience it: any one time a data set is dragged onto the page, a
table is automatically created. And from your reply I learn that the data
in that table is only available to other elements in the same table.
However, whenever I drag other data-sets in to cells of the table, a sub
table is created. How can I prevent that ?
The data in those sub tables is not available for other elements in the
"first level table".
Perhaps it is the way I'm working with Birt that is broken:
I have made serveral data-sets, each one containing a query that results
in 1 single value. Each of these queries takes the same paramter: a
product id.
I create a table that contains (automatically created) sub tables with in
each subtable the results of these queries.
The results of these queries (single digits) should be input to a chart.
However the chart has no access to the data in these sub tables, but I
fail to find a way of adding the data sets to a table without creating
these subtables.
Your advise will be very welcome.
regards,
Ruben
|
|
|
Re: "Use report data" in charts is broken ? [message #121846 is a reply to message #121780] |
Tue, 31 January 2006 13:08   |
Eclipse User |
|
|
|
Hi Ruben,
Please go ahead an file a bugzilla entry for the first issue, I agree this
is something we should fix. https://bugs.eclipse.org/bugs/
Regarding the second question, I think it's not the natural way to organize
your data, since each dataset can hold any number of values. I think you
should only have one dataset, that returns all the values. Let's say you
want the product price based on product id, so your dataset should have two
columns: product id and product price. In your table's detail row you can
show the product id on the left cell and the product price on the right
cell. Then you can put the chart in the table header or table footer to
display a graphical view of all the prices. Let me know if this isn't clear.
Please also note that you can create your table using the Palette, then bind
them to data, or drag dataset fields into them, if you want to avoid the
automatic table creation.
Thanks,
David
"Ruben" <rsa@newtec.be> wrote in message
news:751dc11af29b6fa149d98da4a887bdea$1@www.eclipse.org...
> Hello David,
>
> thanks for your reply, it makes a lot of things more clear.
>
> Your explanation of having to create the chart first, close it and re-open
> it in order to be able to use the data sounds logical, but it is very
> confusing for a newby like me. Certainly as the chart creation wizard
> complains that the chart has not been bound to any datasets. Very, very
> confusing.
>
> Perhaps a warning during the creation of chart would be in order (if "use
> report data" is selected)?
>
> As to my second question: I feel it is related.
> How I experience it: any one time a data set is dragged onto the page, a
> table is automatically created. And from your reply I learn that the data
> in that table is only available to other elements in the same table.
> However, whenever I drag other data-sets in to cells of the table, a sub
> table is created. How can I prevent that ?
> The data in those sub tables is not available for other elements in the
> "first level table".
>
> Perhaps it is the way I'm working with Birt that is broken:
>
> I have made serveral data-sets, each one containing a query that results
> in 1 single value. Each of these queries takes the same paramter: a
> product id.
> I create a table that contains (automatically created) sub tables with in
> each subtable the results of these queries.
> The results of these queries (single digits) should be input to a chart.
> However the chart has no access to the data in these sub tables, but I
> fail to find a way of adding the data sets to a table without creating
> these subtables.
>
> Your advise will be very welcome.
>
> regards,
> Ruben
>
|
|
|
Re: "Use report data" in charts is broken ? [message #122557 is a reply to message #121846] |
Wed, 01 February 2006 05:19   |
Eclipse User |
|
|
|
Hello David,
Following your reasoning to I would have to retreive the data for 1 chart
with 1 query: however the results I want to correlate come from the
different queries that seem impossible to combine. I've included the
queries I've built te retrieve the info we want for your reference.
My idea now is to wrap these seperate queries in a data set that offers
these data together. Can I somehow issues several queries in the same data
set ?
Is this possible using javascript ? Or do you see other ways in bringing
the data together to make it accessible to 1 chart?
Thanks for your help.
Ruben
Query resulting in validation effort for [product]:
---------------------------------------------------
select COUNT(*) from bugs where (product_id LIKE ?) AND
((bug_status = "UNCONFIRMED") or (((bug_status = "VERIFIED") or
(bug_status = "RESOLVED")) AND ((resolution = "FIXED") or
(resolution="INVALID") or (resolution = "WONTFIX") or
(resolution="LATER") or (resolution = "REMIND") or
(resolution = "DUPLICATE") or (resolution = "WORKSFORME"))))
Query resulting in design effort for [product]:
-----------------------------------------------
select COUNT(*) from bugs where (product_id LIKE ?) AND
((bug_status = "NEW") or (bug_status = "ASSIGNED") or
(bug_status = "REOPENED"))
Query resulting in spent effort for [product]:
----------------------------------------------
select COUNT(*)from bugs where (product_id LIKE ?) AND
(bug_status = "CLOSED") AND ((resolution = "FIXED") or
(resolution= "INVALID") or (resolution = "WONTFIX") or
(resolution = "DUPLICATE") or (resolution = "WORKSFORME"))
Query resulting in total effort for [product]:
----------------------------------------------
select COUNT(*) from bugs where (product_id LIKE ?)
<Hi Ruben,
<
<Please go ahead an file a bugzilla entry for the first issue, I agree this
<is something we should fix. https://bugs.eclipse.org/bugs/
<
<Regarding the second question, I think it's not the natural way to
organize
<your data, since each dataset can hold any number of values. I think you
<should only have one dataset, that returns all the values. Let's say you
<want the product price based on product id, so your dataset should have
two
<columns: product id and product price. In your table's detail row you can
<show the product id on the left cell and the product price on the right
<cell. Then you can put the chart in the table header or table footer to
<display a graphical view of all the prices. Let me know if this isn't
clear.
<
<Please also note that you can create your table using the Palette, then
bind
<them to data, or drag dataset fields into them, if you want to avoid the
<automatic table creation.
<
<Thanks,
<
<David
"Ruben" <rsa@xxxxxxxx> wrote in message
news:751dc11af29b6fa149d98da4a887bdea$1@xxxxxxxxe.org...
Hello David,
thanks for your reply, it makes a lot of things more clear.
Your explanation of having to create the chart first, close it and
re-open
it in order to be able to use the data sounds logical, but it is very
confusing for a newby like me. Certainly as the chart creation wizard
complains that the chart has not been bound to any datasets. Very, very
confusing.
Perhaps a warning during the creation of chart would be in order (if
"use
report data" is selected)?
As to my second question: I feel it is related.
How I experience it: any one time a data set is dragged onto the page,
a
table is automatically created. And from your reply I learn that the
data
in that table is only available to other elements in the same table.
However, whenever I drag other data-sets in to cells of the table, a
sub
table is created. How can I prevent that ?
The data in those sub tables is not available for other elements in the
"first level table".
Perhaps it is the way I'm working with Birt that is broken:
I have made serveral data-sets, each one containing a query that
results
in 1 single value. Each of these queries takes the same paramter: a
product id.
I create a table that contains (automatically created) sub tables with
in
each subtable the results of these queries.
The results of these queries (single digits) should be input to a
chart.
However the chart has no access to the data in these sub tables, but I
fail to find a way of adding the data sets to a table without creating
these subtables.
Your advise will be very welcome.
regards,
Ruben
|
|
|
Re: "Use report data" in charts is broken ? [message #122679 is a reply to message #122557] |
Wed, 01 February 2006 09:14   |
Eclipse User |
|
|
|
Hi Ruben,
I think you can combine all your queries into one using the union sql
operator.
For instance
select COUNT(*) as validationeffort from bugs where (product_id LIKE ?) AND
((bug_status = "UNCONFIRMED") or (((bug_status = "VERIFIED") or
(bug_status = "RESOLVED")) AND ((resolution = "FIXED") or
(resolution="INVALID") or (resolution = "WONTFIX") or
(resolution="LATER") or (resolution = "REMIND") or
(resolution = "DUPLICATE") or (resolution = "WORKSFORME"))))
union
select COUNT(*) as designeffort from bugs where (product_id LIKE ?) AND
((bug_status = "NEW") or (bug_status = "ASSIGNED") or
(bug_status = "REOPENED"))
union
select COUNT(*) as spenteffort from bugs where (product_id LIKE ?) AND
(bug_status = "CLOSED") AND ((resolution = "FIXED") or
(resolution= "INVALID") or (resolution = "WONTFIX") or
(resolution = "DUPLICATE") or (resolution = "WORKSFORME"))
union
select COUNT(*) as totaleffort from bugs where (product_id LIKE ?)
Thanks,
David
"Ruben" <rsa@newtec.be> wrote in message
news:86fce160f295d6fd49b3483df17a1e36$1@www.eclipse.org...
> Hello David,
>
> Following your reasoning to I would have to retreive the data for 1 chart
> with 1 query: however the results I want to correlate come from the
> different queries that seem impossible to combine. I've included the
> queries I've built te retrieve the info we want for your reference.
>
> My idea now is to wrap these seperate queries in a data set that offers
> these data together. Can I somehow issues several queries in the same data
> set ?
> Is this possible using javascript ? Or do you see other ways in bringing
> the data together to make it accessible to 1 chart?
>
> Thanks for your help.
>
> Ruben
>
> Query resulting in validation effort for [product]:
> ---------------------------------------------------
> select COUNT(*) from bugs where (product_id LIKE ?) AND
> ((bug_status = "UNCONFIRMED") or (((bug_status = "VERIFIED") or
> (bug_status = "RESOLVED")) AND ((resolution = "FIXED") or
> (resolution="INVALID") or (resolution = "WONTFIX") or
> (resolution="LATER") or (resolution = "REMIND") or
> (resolution = "DUPLICATE") or (resolution = "WORKSFORME"))))
>
> Query resulting in design effort for [product]:
> -----------------------------------------------
> select COUNT(*) from bugs where (product_id LIKE ?) AND
> ((bug_status = "NEW") or (bug_status = "ASSIGNED") or
> (bug_status = "REOPENED"))
>
> Query resulting in spent effort for [product]:
> ----------------------------------------------
> select COUNT(*)from bugs where (product_id LIKE ?) AND (bug_status =
> "CLOSED") AND ((resolution = "FIXED") or (resolution= "INVALID") or
> (resolution = "WONTFIX") or (resolution = "DUPLICATE") or (resolution =
> "WORKSFORME"))
>
> Query resulting in total effort for [product]:
> ----------------------------------------------
> select COUNT(*) from bugs where (product_id LIKE ?)
>
>
> <Hi Ruben,
> <
> <Please go ahead an file a bugzilla entry for the first issue, I agree
> this
> <is something we should fix. https://bugs.eclipse.org/bugs/
> <
> <Regarding the second question, I think it's not the natural way to
> organize
> <your data, since each dataset can hold any number of values. I think you
> <should only have one dataset, that returns all the values. Let's say you
> <want the product price based on product id, so your dataset should have
> two
> <columns: product id and product price. In your table's detail row you can
> <show the product id on the left cell and the product price on the right
> <cell. Then you can put the chart in the table header or table footer to
> <display a graphical view of all the prices. Let me know if this isn't
> clear.
> <
> <Please also note that you can create your table using the Palette, then
> bind
> <them to data, or drag dataset fields into them, if you want to avoid the
> <automatic table creation.
> <
> <Thanks,
> <
> <David
>
>
> "Ruben" <rsa@xxxxxxxx> wrote in message
> news:751dc11af29b6fa149d98da4a887bdea$1@xxxxxxxxe.org...
>
> Hello David,
>
> thanks for your reply, it makes a lot of things more clear.
>
> Your explanation of having to create the chart first, close it and
> re-open
> it in order to be able to use the data sounds logical, but it is very
> confusing for a newby like me. Certainly as the chart creation wizard
> complains that the chart has not been bound to any datasets. Very, very
> confusing.
>
> Perhaps a warning during the creation of chart would be in order (if
> "use
> report data" is selected)?
>
> As to my second question: I feel it is related.
> How I experience it: any one time a data set is dragged onto the page,
> a
> table is automatically created. And from your reply I learn that the
> data
> in that table is only available to other elements in the same table.
> However, whenever I drag other data-sets in to cells of the table, a
> sub
> table is created. How can I prevent that ?
> The data in those sub tables is not available for other elements in the
> "first level table".
>
> Perhaps it is the way I'm working with Birt that is broken:
>
> I have made serveral data-sets, each one containing a query that
> results
> in 1 single value. Each of these queries takes the same paramter: a
> product id.
> I create a table that contains (automatically created) sub tables with
> in
> each subtable the results of these queries.
> The results of these queries (single digits) should be input to a
> chart.
> However the chart has no access to the data in these sub tables, but I
> fail to find a way of adding the data sets to a table without creating
> these subtables.
>
> Your advise will be very welcome.
>
> regards,
> Ruben
>
|
|
|
Re: "Use report data" in charts is broken ? [message #122711 is a reply to message #122679] |
Wed, 01 February 2006 09:58   |
Eclipse User |
|
|
|
Hello David,
Thanks for your suggestion. Eventually though I combined all queries using
nested select statements (as union would give me 1 column with several
values, which wouldn't map).
I can now access the data from te report in the chart.
There are seemingly 2 problems though:
a) when chosing "use report data" the columns appear, but they contain the
default values of the query, not the values that appear in the report.
This remains like this even when the report is run (in preview). I was
assuming the chart would use the values as they are shown in the report ?
b) When I then try to parameter the data for the chart as I do with the
data in the report (using the button "parameters" next to the data preview
window of the chart) I get an error and a trace.
This stack trace happens both when selecting "use report data" and "use
data-set".
Am I still doing something wrong ?
regards,
Ruben
The following error is shown:
A BIRT exception occurred: Error evaluating Javascript expression. Script
engine error: ReferenceError: "params" is not defined.
Script source: ParamBinding(id1), line: 0, text:
params["Product"]. See next exception for more information.
Error evaluating Javascript expression. Script engine error:
ReferenceError: "params" is not defined.
Script source: ParamBinding(id1), line: 0, text:
params["Product"]
This is the trace that goes with it:
t:
org.eclipse.birt.data.engine.core.DataException.wrap(DataExc eption.java:113)
org.eclipse.birt.data.engine.script.ScriptEvalUtil.evaluateJ SAsExpr(ScriptEvalUtil.java:531)
org.eclipse.birt.data.engine.script.ScriptEvalUtil.evalExpr( ScriptEvalUtil.java:484)
org.eclipse.birt.data.engine.impl.PreparedExtendedDSQuery$Ex tendedDSQueryExecutor.evaluateInputParameterValue(PreparedEx tendedDSQuery.java:359)
org.eclipse.birt.data.engine.impl.PreparedExtendedDSQuery$Ex tendedDSQueryExecutor.getMergedParameters(PreparedExtendedDS Query.java:307)
org.eclipse.birt.data.engine.impl.PreparedExtendedDSQuery$Ex tendedDSQueryExecutor.populateOdiQuery(PreparedExtendedDSQue ry.java:214)
org.eclipse.birt.data.engine.impl.PreparedQuery$Executor.pre pareExecution(PreparedQuery.java:671)
org.eclipse.birt.data.engine.impl.PreparedQuery$Executor.acc ess$000(PreparedQuery.java:498)
org.eclipse.birt.data.engine.impl.PreparedQuery.doPrepare(Pr eparedQuery.java:225)
org.eclipse.birt.data.engine.impl.PreparedDataSourceQuery.ex ecute(PreparedDataSourceQuery.java:145)
org.eclipse.birt.report.designer.internal.ui.util.DataSetMan ager.getCacheMetaData(DataSetManager.java:933)
org.eclipse.birt.report.designer.internal.ui.util.DataSetMan ager.getCacheMetaData(DataSetManager.java:907)
org.eclipse.birt.chart.reportitem.ReportDataServiceProvider. getPreviewHeaderModel(ReportDataServiceProvider.java:96)
org.eclipse.birt.chart.reportitem.ReportDataServiceProvider. getPreviewHeader(ReportDataServiceProvider.java:78)
org.eclipse.birt.chart.ui.swt.wizard.TaskSelectData.switchDa taTable(TaskSelectData.java:397)
org.eclipse.birt.chart.ui.swt.wizard.TaskSelectData.refreshT ablePreview(TaskSelectData.java:606)
org.eclipse.birt.chart.ui.swt.wizard.TaskSelectData.widgetSe lected(TaskSelectData.java:588)
org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListe ner.java:90)
org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java :66)
org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:843)
org.eclipse.swt.widgets.Display.runDeferredEvents(Display.ja va:3080)
org.eclipse.swt.widgets.Display.readAndDispatch(Display.java :2713)
org.eclipse.birt.core.ui.frameworks.taskwizard.WizardBase.op en(WizardBase.java:219)
org.eclipse.birt.chart.ui.swt.wizard.ChartWizard.open(ChartW izard.java:175)
org.eclipse.birt.chart.reportitem.ChartReportItemBuilderImpl .open(ChartReportItemBuilderImpl.java:207)
org.eclipse.birt.report.designer.internal.ui.extension.Exten dedEditPart.performDirectEdit(ExtendedEditPart.java:139)
org.eclipse.birt.report.designer.internal.ui.extension.Exten dedEditPart.performRequest(ExtendedEditPart.java:168)
org.eclipse.gef.tools.SelectEditPartTracker.performOpen(Sele ctEditPartTracker.java:187)
org.eclipse.gef.tools.SelectEditPartTracker.handleDoubleClic k(SelectEditPartTracker.java:131)
org.eclipse.gef.tools.AbstractTool.mouseDoubleClick(Abstract Tool.java:944)
org.eclipse.gef.tools.SelectionTool.mouseDoubleClick(Selecti onTool.java:502)
org.eclipse.gef.EditDomain.mouseDoubleClick(EditDomain.java: 204)
org.eclipse.gef.ui.parts.DomainEventDispatcher.dispatchMouse DoubleClicked(DomainEventDispatcher.java:285)
org.eclipse.draw2d.LightweightSystem$EventHandler.mouseDoubl eClick(LightweightSystem.java:517)
org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListe ner.java:141)
org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java :66)
org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:843)
org.eclipse.swt.widgets.Display.runDeferredEvents(Display.ja va:3080)
org.eclipse.swt.widgets.Display.readAndDispatch(Display.java :2713)
org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.jav a:1699)
org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1663)
org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Work bench.java:367)
org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.j ava:143)
org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplicatio n.java:103)
org.eclipse.core.internal.runtime.PlatformActivator$1.run(Pl atformActivator.java:226)
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:376)
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:163)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
java.lang.reflect.Method.invoke(Unknown Source)
org.eclipse.core.launcher.Main.invokeFramework(Main.java:334 )
org.eclipse.core.launcher.Main.basicRun(Main.java:278)
org.eclipse.core.launcher.Main.run(Main.java:973)
org.eclipse.core.launcher.Main.main(Main.java:948)
Caused By:ReferenceError: "params" is not defined.
org.mozilla.javascript.ScriptRuntime.constructError(ScriptRu ntime.java:3240)
org.mozilla.javascript.ScriptRuntime.constructError(ScriptRu ntime.java:3230)
org.mozilla.javascript.ScriptRuntime.notFoundError(ScriptRun time.java:3303)
org.mozilla.javascript.ScriptRuntime.nameOrFunction(ScriptRu ntime.java:1632)
org.mozilla.javascript.ScriptRuntime.name(ScriptRuntime.java :1571)
org.mozilla.javascript.gen.c53._c0(ParamBinding(id1):0)
org.mozilla.javascript.gen.c53.call(ParamBinding(id1))
org.mozilla.javascript.ContextFactory.doTopCall(ContextFacto ry.java:304)
org.mozilla.javascript.ScriptRuntime.doTopCall(ScriptRuntime .java:2769)
org.mozilla.javascript.gen.c53.call(ParamBinding(id1))
org.mozilla.javascript.gen.c53.exec(ParamBinding(id1))
org.eclipse.birt.core.script.JavascriptEvalUtil.evaluateScri pt(JavascriptEvalUtil.java:86)
org.eclipse.birt.data.engine.script.ScriptEvalUtil.evaluateJ SAsExpr(ScriptEvalUtil.java:527)
org.eclipse.birt.data.engine.script.ScriptEvalUtil.evalExpr( ScriptEvalUtil.java:484)
org.eclipse.birt.data.engine.impl.PreparedExtendedDSQuery$Ex tendedDSQueryExecutor.evaluateInputParameterValue(PreparedEx tendedDSQuery.java:359)
org.eclipse.birt.data.engine.impl.PreparedExtendedDSQuery$Ex tendedDSQueryExecutor.getMergedParameters(PreparedExtendedDS Query.java:307)
org.eclipse.birt.data.engine.impl.PreparedExtendedDSQuery$Ex tendedDSQueryExecutor.populateOdiQuery(PreparedExtendedDSQue ry.java:214)
org.eclipse.birt.data.engine.impl.PreparedQuery$Executor.pre pareExecution(PreparedQuery.java:671)
org.eclipse.birt.data.engine.impl.PreparedQuery$Executor.acc ess$000(PreparedQuery.java:498)
org.eclipse.birt.data.engine.impl.PreparedQuery.doPrepare(Pr eparedQuery.java:225)
org.eclipse.birt.data.engine.impl.PreparedDataSourceQuery.ex ecute(PreparedDataSourceQuery.java:145)
org.eclipse.birt.report.designer.internal.ui.util.DataSetMan ager.getCacheMetaData(DataSetManager.java:933)
org.eclipse.birt.report.designer.internal.ui.util.DataSetMan ager.getCacheMetaData(DataSetManager.java:907)
org.eclipse.birt.chart.reportitem.ReportDataServiceProvider. getPreviewHeaderModel(ReportDataServiceProvider.java:96)
org.eclipse.birt.chart.reportitem.ReportDataServiceProvider. getPreviewHeader(ReportDataServiceProvider.java:78)
org.eclipse.birt.chart.ui.swt.wizard.TaskSelectData.switchDa taTable(TaskSelectData.java:397)
org.eclipse.birt.chart.ui.swt.wizard.TaskSelectData.refreshT ablePreview(TaskSelectData.java:606)
org.eclipse.birt.chart.ui.swt.wizard.TaskSelectData.widgetSe lected(TaskSelectData.java:588)
org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListe ner.java:90)
org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java :66)
org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:843)
org.eclipse.swt.widgets.Display.runDeferredEvents(Display.ja va:3080)
org.eclipse.swt.widgets.Display.readAndDispatch(Display.java :2713)
org.eclipse.birt.core.ui.frameworks.taskwizard.WizardBase.op en(WizardBase.java:219)
org.eclipse.birt.chart.ui.swt.wizard.ChartWizard.open(ChartW izard.java:175)
org.eclipse.birt.chart.reportitem.ChartReportItemBuilderImpl .open(ChartReportItemBuilderImpl.java:207)
org.eclipse.birt.report.designer.internal.ui.extension.Exten dedEditPart.performDirectEdit(ExtendedEditPart.java:139)
org.eclipse.birt.report.designer.internal.ui.extension.Exten dedEditPart.performRequest(ExtendedEditPart.java:168)
org.eclipse.gef.tools.SelectEditPartTracker.performOpen(Sele ctEditPartTracker.java:187)
org.eclipse.gef.tools.SelectEditPartTracker.handleDoubleClic k(SelectEditPartTracker.java:131)
org.eclipse.gef.tools.AbstractTool.mouseDoubleClick(Abstract Tool.java:944)
org.eclipse.gef.tools.SelectionTool.mouseDoubleClick(Selecti onTool.java:502)
org.eclipse.gef.EditDomain.mouseDoubleClick(EditDomain.java: 204)
org.eclipse.gef.ui.parts.DomainEventDispatcher.dispatchMouse DoubleClicked(DomainEventDispatcher.java:285)
org.eclipse.draw2d.LightweightSystem$EventHandler.mouseDoubl eClick(LightweightSystem.java:517)
org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListe ner.java:141)
org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java :66)
org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:843)
org.eclipse.swt.widgets.Display.runDeferredEvents(Display.ja va:3080)
org.eclipse.swt.widgets.Display.readAndDispatch(Display.java :2713)
org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.jav a:1699)
org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1663)
org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Work bench.java:367)
org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.j ava:143)
org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplicatio n.java:103)
org.eclipse.core.internal.runtime.PlatformActivator$1.run(Pl atformActivator.java:226)
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:376)
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:163)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
java.lang.reflect.Method.invoke(Unknown Source)
org.eclipse.core.launcher.Main.invokeFramework(Main.java:334 )
org.eclipse.core.launcher.Main.basicRun(Main.java:278)
org.eclipse.core.launcher.Main.run(Main.java:973)
org.eclipse.core.launcher.Main.main(Main.java:948)
|
|
|
Re: "Use report data" in charts is broken ? [message #122857 is a reply to message #122711] |
Wed, 01 February 2006 15:03   |
Eclipse User |
|
|
|
Hi Ruben,
Ok, it's good you fixed the sql issue, nested select is probably a better
way indeed.
a) I'm not sure what you mean by "it shows the default values of the query".
b) Don't worry about that error, there is a bugzilla for this:
https://bugs.eclipse.org/bugs/show_bug.cgi?id=122864. Add yourself in CC to
track down the issue. In any case, it's just an inaccurate error message, it
should be a simple warning that the chart can't access the variable "params"
in design mode, since it is by nature a run time value. Anyway, it will
revert to sample data, instead of live preview in that case, and you won't
see the error again until you change something in the dataset.
Thanks,
David
"Ruben" <rsa@newtec.be> wrote in message
news:12f6d6e92852e4475251886b04c79cfa$1@www.eclipse.org...
> Hello David,
>
> Thanks for your suggestion. Eventually though I combined all queries using
> nested select statements (as union would give me 1 column with several
> values, which wouldn't map).
>
> I can now access the data from te report in the chart.
> There are seemingly 2 problems though:
> a) when chosing "use report data" the columns appear, but they contain the
> default values of the query, not the values that appear in the report.
> This remains like this even when the report is run (in preview). I was
> assuming the chart would use the values as they are shown in the report ?
>
> b) When I then try to parameter the data for the chart as I do with the
> data in the report (using the button "parameters" next to the data preview
> window of the chart) I get an error and a trace. This stack trace happens
> both when selecting "use report data" and "use data-set".
>
> Am I still doing something wrong ?
>
> regards,
> Ruben
>
> The following error is shown:
> A BIRT exception occurred: Error evaluating Javascript expression. Script
> engine error: ReferenceError: "params" is not defined.
> Script source: ParamBinding(id1), line: 0, text:
> params["Product"]. See next exception for more information.
> Error evaluating Javascript expression. Script engine error:
> ReferenceError: "params" is not defined.
> Script source: ParamBinding(id1), line: 0, text:
> params["Product"]
>
> This is the trace that goes with it:
> t:
> org.eclipse.birt.data.engine.core.DataException.wrap(DataExc eption.java:113)
> org.eclipse.birt.data.engine.script.ScriptEvalUtil.evaluateJ SAsExpr(ScriptEvalUtil.java:531)
> org.eclipse.birt.data.engine.script.ScriptEvalUtil.evalExpr( ScriptEvalUtil.java:484)
> org.eclipse.birt.data.engine.impl.PreparedExtendedDSQuery$Ex tendedDSQueryExecutor.evaluateInputParameterValue(PreparedEx tendedDSQuery.java:359)
> org.eclipse.birt.data.engine.impl.PreparedExtendedDSQuery$Ex tendedDSQueryExecutor.getMergedParameters(PreparedExtendedDS Query.java:307)
> org.eclipse.birt.data.engine.impl.PreparedExtendedDSQuery$Ex tendedDSQueryExecutor.populateOdiQuery(PreparedExtendedDSQue ry.java:214)
> org.eclipse.birt.data.engine.impl.PreparedQuery$Executor.pre pareExecution(PreparedQuery.java:671)
> org.eclipse.birt.data.engine.impl.PreparedQuery$Executor.acc ess$000(PreparedQuery.java:498)
> org.eclipse.birt.data.engine.impl.PreparedQuery.doPrepare(Pr eparedQuery.java:225)
> org.eclipse.birt.data.engine.impl.PreparedDataSourceQuery.ex ecute(PreparedDataSourceQuery.java:145)
> org.eclipse.birt.report.designer.internal.ui.util.DataSetMan ager.getCacheMetaData(DataSetManager.java:933)
> org.eclipse.birt.report.designer.internal.ui.util.DataSetMan ager.getCacheMetaData(DataSetManager.java:907)
> org.eclipse.birt.chart.reportitem.ReportDataServiceProvider. getPreviewHeaderModel(ReportDataServiceProvider.java:96)
> org.eclipse.birt.chart.reportitem.ReportDataServiceProvider. getPreviewHeader(ReportDataServiceProvider.java:78)
> org.eclipse.birt.chart.ui.swt.wizard.TaskSelectData.switchDa taTable(TaskSelectData.java:397)
> org.eclipse.birt.chart.ui.swt.wizard.TaskSelectData.refreshT ablePreview(TaskSelectData.java:606)
> org.eclipse.birt.chart.ui.swt.wizard.TaskSelectData.widgetSe lected(TaskSelectData.java:588)
> org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListe ner.java:90)
> org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java :66)
> org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:843)
> org.eclipse.swt.widgets.Display.runDeferredEvents(Display.ja va:3080)
> org.eclipse.swt.widgets.Display.readAndDispatch(Display.java :2713)
> org.eclipse.birt.core.ui.frameworks.taskwizard.WizardBase.op en(WizardBase.java:219)
> org.eclipse.birt.chart.ui.swt.wizard.ChartWizard.open(ChartW izard.java:175)
> org.eclipse.birt.chart.reportitem.ChartReportItemBuilderImpl .open(ChartReportItemBuilderImpl.java:207)
> org.eclipse.birt.report.designer.internal.ui.extension.Exten dedEditPart.performDirectEdit(ExtendedEditPart.java:139)
> org.eclipse.birt.report.designer.internal.ui.extension.Exten dedEditPart.performRequest(ExtendedEditPart.java:168)
> org.eclipse.gef.tools.SelectEditPartTracker.performOpen(Sele ctEditPartTracker.java:187)
> org.eclipse.gef.tools.SelectEditPartTracker.handleDoubleClic k(SelectEditPartTracker.java:131)
> org.eclipse.gef.tools.AbstractTool.mouseDoubleClick(Abstract Tool.java:944)
> org.eclipse.gef.tools.SelectionTool.mouseDoubleClick(Selecti onTool.java:502)
> org.eclipse.gef.EditDomain.mouseDoubleClick(EditDomain.java: 204)
> org.eclipse.gef.ui.parts.DomainEventDispatcher.dispatchMouse DoubleClicked(DomainEventDispatcher.java:285)
> org.eclipse.draw2d.LightweightSystem$EventHandler.mouseDoubl eClick(LightweightSystem.java:517)
> org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListe ner.java:141)
> org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java :66)
> org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:843)
> org.eclipse.swt.widgets.Display.runDeferredEvents(Display.ja va:3080)
> org.eclipse.swt.widgets.Display.readAndDispatch(Display.java :2713)
> org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.jav a:1699)
> org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1663)
> org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Work bench.java:367)
> org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.j ava:143)
> org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplicatio n.java:103)
> org.eclipse.core.internal.runtime.PlatformActivator$1.run(Pl atformActivator.java:226)
> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:376)
> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:163)
> sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
> sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
> java.lang.reflect.Method.invoke(Unknown Source)
> org.eclipse.core.launcher.Main.invokeFramework(Main.java:334 )
> org.eclipse.core.launcher.Main.basicRun(Main.java:278)
> org.eclipse.core.launcher.Main.run(Main.java:973)
> org.eclipse.core.launcher.Main.main(Main.java:948)
>
> Caused By:ReferenceError: "params" is not defined.
> org.mozilla.javascript.ScriptRuntime.constructError(ScriptRu ntime.java:3240)
> org.mozilla.javascript.ScriptRuntime.constructError(ScriptRu ntime.java:3230)
> org.mozilla.javascript.ScriptRuntime.notFoundError(ScriptRun time.java:3303)
> org.mozilla.javascript.ScriptRuntime.nameOrFunction(ScriptRu ntime.java:1632)
> org.mozilla.javascript.ScriptRuntime.name(ScriptRuntime.java :1571)
> org.mozilla.javascript.gen.c53._c0(ParamBinding(id1):0)
> org.mozilla.javascript.gen.c53.call(ParamBinding(id1))
> org.mozilla.javascript.ContextFactory.doTopCall(ContextFacto ry.java:304)
> org.mozilla.javascript.ScriptRuntime.doTopCall(ScriptRuntime .java:2769)
> org.mozilla.javascript.gen.c53.call(ParamBinding(id1))
> org.mozilla.javascript.gen.c53.exec(ParamBinding(id1))
> org.eclipse.birt.core.script.JavascriptEvalUtil.evaluateScri pt(JavascriptEvalUtil.java:86)
> org.eclipse.birt.data.engine.script.ScriptEvalUtil.evaluateJ SAsExpr(ScriptEvalUtil.java:527)
> org.eclipse.birt.data.engine.script.ScriptEvalUtil.evalExpr( ScriptEvalUtil.java:484)
> org.eclipse.birt.data.engine.impl.PreparedExtendedDSQuery$Ex tendedDSQueryExecutor.evaluateInputParameterValue(PreparedEx tendedDSQuery.java:359)
> org.eclipse.birt.data.engine.impl.PreparedExtendedDSQuery$Ex tendedDSQueryExecutor.getMergedParameters(PreparedExtendedDS Query.java:307)
> org.eclipse.birt.data.engine.impl.PreparedExtendedDSQuery$Ex tendedDSQueryExecutor.populateOdiQuery(PreparedExtendedDSQue ry.java:214)
> org.eclipse.birt.data.engine.impl.PreparedQuery$Executor.pre pareExecution(PreparedQuery.java:671)
> org.eclipse.birt.data.engine.impl.PreparedQuery$Executor.acc ess$000(PreparedQuery.java:498)
> org.eclipse.birt.data.engine.impl.PreparedQuery.doPrepare(Pr eparedQuery.java:225)
> org.eclipse.birt.data.engine.impl.PreparedDataSourceQuery.ex ecute(PreparedDataSourceQuery.java:145)
> org.eclipse.birt.report.designer.internal.ui.util.DataSetMan ager.getCacheMetaData(DataSetManager.java:933)
> org.eclipse.birt.report.designer.internal.ui.util.DataSetMan ager.getCacheMetaData(DataSetManager.java:907)
> org.eclipse.birt.chart.reportitem.ReportDataServiceProvider. getPreviewHeaderModel(ReportDataServiceProvider.java:96)
> org.eclipse.birt.chart.reportitem.ReportDataServiceProvider. getPreviewHeader(ReportDataServiceProvider.java:78)
> org.eclipse.birt.chart.ui.swt.wizard.TaskSelectData.switchDa taTable(TaskSelectData.java:397)
> org.eclipse.birt.chart.ui.swt.wizard.TaskSelectData.refreshT ablePreview(TaskSelectData.java:606)
> org.eclipse.birt.chart.ui.swt.wizard.TaskSelectData.widgetSe lected(TaskSelectData.java:588)
> org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListe ner.java:90)
> org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java :66)
> org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:843)
> org.eclipse.swt.widgets.Display.runDeferredEvents(Display.ja va:3080)
> org.eclipse.swt.widgets.Display.readAndDispatch(Display.java :2713)
> org.eclipse.birt.core.ui.frameworks.taskwizard.WizardBase.op en(WizardBase.java:219)
> org.eclipse.birt.chart.ui.swt.wizard.ChartWizard.open(ChartW izard.java:175)
> org.eclipse.birt.chart.reportitem.ChartReportItemBuilderImpl .open(ChartReportItemBuilderImpl.java:207)
> org.eclipse.birt.report.designer.internal.ui.extension.Exten dedEditPart.performDirectEdit(ExtendedEditPart.java:139)
> org.eclipse.birt.report.designer.internal.ui.extension.Exten dedEditPart.performRequest(ExtendedEditPart.java:168)
> org.eclipse.gef.tools.SelectEditPartTracker.performOpen(Sele ctEditPartTracker.java:187)
> org.eclipse.gef.tools.SelectEditPartTracker.handleDoubleClic k(SelectEditPartTracker.java:131)
> org.eclipse.gef.tools.AbstractTool.mouseDoubleClick(Abstract Tool.java:944)
> org.eclipse.gef.tools.SelectionTool.mouseDoubleClick(Selecti onTool.java:502)
> org.eclipse.gef.EditDomain.mouseDoubleClick(EditDomain.java: 204)
> org.eclipse.gef.ui.parts.DomainEventDispatcher.dispatchMouse DoubleClicked(DomainEventDispatcher.java:285)
> org.eclipse.draw2d.LightweightSystem$EventHandler.mouseDoubl eClick(LightweightSystem.java:517)
> org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListe ner.java:141)
> org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java :66)
> org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:843)
> org.eclipse.swt.widgets.Display.runDeferredEvents(Display.ja va:3080)
> org.eclipse.swt.widgets.Display.readAndDispatch(Display.java :2713)
> org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.jav a:1699)
> org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1663)
> org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Work bench.java:367)
> org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.j ava:143)
> org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplicatio n.java:103)
> org.eclipse.core.internal.runtime.PlatformActivator$1.run(Pl atformActivator.java:226)
> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:376)
> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:163)
> sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
> sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
> java.lang.reflect.Method.invoke(Unknown Source)
> org.eclipse.core.launcher.Main.invokeFramework(Main.java:334 )
> org.eclipse.core.launcher.Main.basicRun(Main.java:278)
> org.eclipse.core.launcher.Main.run(Main.java:973)
> org.eclipse.core.launcher.Main.main(Main.java:948)
>
>
|
|
|
Re: "Use report data" in charts is broken ? [message #122964 is a reply to message #122857] |
Thu, 02 February 2006 04:24  |
Eclipse User |
|
|
|
Hello David,
regarding my remark a):
When I add a chart to the table in which a dataset has been used, and
chosing the option "use report data" in the chart, I am asuming that the
chart will use the data that is displayed in the report.
(The data shown in the report happens to be determined by a parameter that
needs to be specified by the user).
However what I see in the chart (both in the preview mode of the report,
as in the design mode of the chart), is that the default values of the
dataset used in the report are shown (so not taking in account the
parameter).
So in the review of the report: the data in the table is correctly
displayed depending on the parameter value chosen by the user, but the
chart still shows the default data of the dataset (as if the parameter was
not yet determined).
What strikes me as odd, is that seemingly one needs to replicate the
parameter settings in the chart data, as it is done in the report data,
even though the chart is configured as using the report data (not a
dataset directly).
I am/was assuming that the chart data is linked with the data on the
report (which already is bound with the report parameter), and just uses
those values.
If one uses a data set as data input for a chart, then it is indeed
perfectly logical that one needs to link the dataset with the parameter of
the report.
I hope this makes it somewhat more clear.
Am I making the wrong assumptions?
regards,
Ruben
>Hi Ruben,
<
<Ok, it's good you fixed the sql issue, nested select is probably a better
<way indeed.
<
<a) I'm not sure what you mean by "it shows the default values of the
query".
<b) Don't worry about that error, there is a bugzilla for this:
<https://bugs.eclipse.org/bugs/show_bug.cgi?id=122864. Add yourself in CC
to
<track down the issue. In any case, it's just an inaccurate error message,
it
<should be a simple warning that the chart can't access the variable
"params"
<in design mode, since it is by nature a run time value. Anyway, it will
<revert to sample data, instead of live preview in that case, and you won't
<see the error again until you change something in the dataset.
<
<Thanks,
<
<David
"Ruben" <rsa@xxxxxxxx> wrote in message
news:12f6d6e92852e4475251886b04c79cfa$1@xxxxxxxxe.org...
Hello David,
Thanks for your suggestion. Eventually though I combined all queries
using
nested select statements (as union would give me 1 column with several
values, which wouldn't map).
I can now access the data from te report in the chart.
There are seemingly 2 problems though:
a) when chosing "use report data" the columns appear, but they contain
the
default values of the query, not the values that appear in the report.
This remains like this even when the report is run (in preview). I was
assuming the chart would use the values as they are shown in the
report ?
b) When I then try to parameter the data for the chart as I do with the
data in the report (using the button "parameters" next to the data
preview
window of the chart) I get an error and a trace. This stack trace
happens
both when selecting "use report data" and "use data-set".
Am I still doing something wrong ?
regards,
Ruben
|
|
|
Goto Forum:
Current Time: Thu May 08 12:22:45 EDT 2025
Powered by FUDForum. Page generated in 0.08768 seconds
|