Bug 198270 Copying an aggregate does not make a copy, only a reference
In a table with groups or multiple columns, create an aggregate in a footer or a header. Copy the aggregate to another cell in a footer or a header. Make changes to the new aggregate appropriate to its new location. Expected result: The changes appear in only the new copy of the aggregate. Actual result: The changes appear in both aggregates because the new aggregate is not a copy, but a reference to the same aggregate as the original.
xtab/org.eclipse.birt.report.item.crosstab.ui/src/org/eclipse/birt/report/item/crosstab/internal/ui/dialogs/CrosstabBindingDialogHelper.java
layout.numColumns = 3;
		argsComposite.setLayout( layout );
		new Label( composite, SWT.NONE ).setText( FILTER_CONDITION );
		txtFilter = new Text( composite, SWT.BORDER );
		txtFilter.setLayoutData( new GridData( GridData.FILL_HORIZONTAL
				| GridData.GRAB_HORIZONTAL ) );
		createExpressionButton( composite, txtFilter );
		Label lblAggOn = new Label( composite, SWT.NONE );
		lblAggOn.setText( AGGREGATE_ON );
		gridData = new GridData( );
		gridData.verticalAlignment = GridData.BEGINNING;
		lblAggOn.setLayoutData( gridData );
		cmbAggOn = new Combo( composite, SWT.BORDER | SWT.READ_ONLY );
		cmbAggOn.setLayoutData( new GridData( GridData.FILL_HORIZONTAL
				| GridData.GRAB_HORIZONTAL ) );
	}
	private void createCommonSection( Composite composite )
	{
		new Label( composite, SWT.NONE ).setText( EXPRESSION );
		txtExpression = new Text( composite, SWT.BORDER );
		txtExpression.setLayoutData( new GridData( GridData.FILL_HORIZONTAL
				| GridData.GRAB_HORIZONTAL ) );
		createExpressionButton( composite, txtExpression );
		txtExpression.addModifyListener( new ModifyListener( ) {
			public void modifyText( ModifyEvent e )
			{
				validate( );
			}
		} );
	}