Bug 224247 - BIRT preview does not give location of binding error
Summary: BIRT preview does not give location of binding error
Status: NEW
Alias: None
Product: z_Archived
Classification: Eclipse Foundation
Component: BIRT (show other bugs)
Version: 2.2.2   Edit
Hardware: PC Windows XP
: P3 enhancement (vote)
Target Milestone: Future   Edit
Assignee: Mingxia Wu CLA
QA Contact: Tianli Zhang CLA
URL:
Whiteboard:
Keywords: plan
Depends on:
Blocks:
 
Reported: 2008-03-26 19:02 EDT by Paul Rogers CLA
Modified: 2010-03-30 01:40 EDT (History)
5 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Paul Rogers CLA 2008-03-26 19:02:11 EDT
Create a simple grouped report using the CUSTOMERS table from the Classic Models database. Use Country and State as the groups.

Next, decide to experiment with the difference between a key of dataSetRow["STATE"] and row["STATE"]. But, type the key as row["state"].

Run the report. This won't work. But, the error is:

The following items have errors: 


ReportDesign (id = 1): 
+ Column binding "state" does not exist

Notice that the error is attributed to the report design. Now, give the report to another person to sort out. They'll look on the report design (as suggested by the error), but won't see any bindings.

The workaround is to search the XML source for the word "state", and you'll find the offending group key. However, this is not terribly obvious.

Expected the error to say something like:

Column binding "state" does not exist
Referenced from the GroupKey property of TableGroup "State"

(Or whatever the correct property and element names are.)

Even better, expected the error to appear in the Problems list so I could click on it and have the offending component selected.
Comment 1 Zhiqiang Qian CLA 2008-03-27 00:06:21 EDT
Does clicking "+" give more details? Or I think Dte may need provide more detailed error message.
Comment 2 Lin Zhu CLA 2008-03-27 00:48:53 EDT
This actually ask DtE for providing context info when evaluate a script. The whole part is missing in current data engine script evaluation framework.
Comment 3 Wenfeng Li CLA 2008-06-09 18:59:14 EDT
(In reply to comment #2)
> This actually ask DtE for providing context info when evaluate a script. The
> whole part is missing in current data engine script evaluation framework.

Does engine know the context, such as the report item, the event, or the databinding column name, or a high lighting rule when it evaluates a JS expression?

THis way, when an JS eval error is get,  BIRT engine can tell user which report item and what kind of calcuation is being evaluated when an error happen?
Comment 4 Lin Zhu CLA 2008-08-26 22:15:58 EDT
Set the component to Report Engine. If engine can help to the point listed in #3 please make corresponding changes. Otherwise please assign the bug back to data engine.
Comment 5 Wei Yan CLA 2008-11-05 23:04:53 EST
Each script have a unique ID and associated with the unique line in the report design, the designer uses that ID to locate the errors with the report design file. 

The DTE need use the ID to run the script.
Comment 6 Lin Zhu CLA 2009-05-20 21:31:33 EDT
Similar to 247938, the assignation of script id needs lots of changes in data engine.Suggest to fix in 2.5.2.