Bug 136893 Preview Report repeats first line for all entries
Overview Description: Report repeats the first entry 122 times, instead of generating 122 different entries. Steps to Reproduce: (1.) Start Eclipse, and switch to the Report Design perspective. (2.) Create a new BIRT project. File > New > Project... Business Intelligence and Reporting Tools/Report Project (3.) Create a new BIRT report. In the Navigator, select the BIRT project, and choose New > Report in its context menu. New Report wizard: Choose Report template "Grouped Listing". (Otherwise, accept defaults.) (4.) Create a DataSource: In the Navigator, open the BIRT report (.rptdesign extension). In the Data Explorer view, right-click on Data Sources, and choose "New Data Source" from its context menu. New Data Source dialog: Classic Models Inc. Sample Database (5.) Create a DataSet: In the Data Explorer view, right-click on Data Sets, and choose "New Data Set" from its context menu. Edit Data Set dialog: (Line 1.) select * (Line 2.) from: CLASSICMODELS.CUSTOMERS A. Position cursor after "from". B. Under Available Items, select Data Source/CLASSICMODELS/CUSTOMERS and drag to window with "from". (6.) Bind the data to the table: A. Drag "Data Sets/Data Set/STATE" from the Data Explorer view, and drop over "Group Header Row" in the Layout window (row 2, column 1). B. Drag "Data Sets/Data Set/CUSTOMERNAME" from the Data Explorer view, and drop over the second column in row "Detail Row" in the Layout window (row 3, column 2). C. Drag "Data Sets/Data Set/PHONE" from the Data Explorer view, and drop over the third column in row "Detail Row" in the Layout window (row 3, column 3). D. Save. (7.) Generate an HTML report: In the menu for Preview toolbar icon (near upper left of workspace), select HTML. Note: The report is also generated incorrectly, for a PDF report. To generate a PDF report, select PDF in the menu for the Preview toolbar icon. Actual Result: Report repeats the first entry 122 times. Report Header ------------- STATE CUSTOMER NAME PHONE Atelier graphique 40.32.2555 Atelier graphique 40.32.2555 ... Atelier graphique 40.32.2555 Expected Result: Report contains 122 different entries. Build Date & Platform: Note: I run a weekly BIRT smoke-test using the procedure described above under Steps to Reproduce. The problem was introduced since last week's smoke-test. I used the following .zip files: Eclipse Full SDK: eclipse-SDK-3.2M6-win32.zip EMF Runtime: emf-sdo-runtime-2.2.0M6.zip GEF Runtime: GEF-runtime-3.2M6.zip Data Tools Project: dtp_0.9M6_N040706.zip BIRT Runtime: birt-report-framework-N20060414.zip
UI/org.eclipse.birt.report.designer.ui/src/org/eclipse/birt/report/designer/internal/ui/dnd/InsertInLayoutUtil.java
/**
	 * Converts edit part selection into model selection.
	 * 
	 * @param selection
	 *            edit part
	 * @return model, return Collections.EMPTY_LIST if selection is null or
	 *         empty.
	 */
	public static IStructuredSelection editPart2Model( ISelection selection )
	{
		if ( selection == null || !( selection instanceof IStructuredSelection ) )
			return new StructuredSelection( Collections.EMPTY_LIST );
		List list = ( (IStructuredSelection) selection ).toList( );
		List resultList = new ArrayList( );
		for ( int i = 0; i < list.size( ); i++ )
		{
			Object obj = list.get( i );
			if ( obj instanceof ReportElementEditPart )
			{
				Object model = ( (ReportElementEditPart) obj ).getModel( );
				if ( model instanceof ListBandProxy )
				{
					model = ( (ListBandProxy) model ).getSlotHandle( );
				}
				resultList.add( model );
			}
		}
		return new StructuredSelection( resultList );
	}
}