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.
UI/org.eclipse.birt.report.designer.ui/src/org/eclipse/birt/report/designer/internal/ui/dialogs/BindingDialogHelper.java
protected static final String FILTER_CONDITION = Messages.getString( "BindingDialogHelper.text.Filter" ); 
	protected static final String AGGREGATE_ON = Messages.getString( "BindingDialogHelper.text.AggOn" ); 
	protected static final String TABLE = Messages.getString( "BindingDialogHelper.text.Table" ); 
	protected static final String LIST = Messages.getString( "BindingDialogHelper.text.List" ); 
	protected static final String GROUP = Messages.getString( "BindingDialogHelper.text.Group" ); 
	protected static final String EXPRESSION = Messages.getString( "BindingDialogHelper.text.Expression" ); 
	protected static final String DISPLAY_NAME = Messages.getString( "BindingDialogHelper.text.displayName" ); 
	protected static final String DEFAULT_ITEM_NAME = Messages.getString( "BindingDialogHelper.bindingName.dataitem" ); 
	protected static final String DEFAULT_AGGREGATION_NAME = Messages.getString( "BindingDialogHelper.bindingName.aggregation" ); 
	protected static final IChoiceSet DATA_TYPE_CHOICE_SET = DEUtil.getMetaDataDictionary( )
			.getStructure( ComputedColumn.COMPUTED_COLUMN_STRUCT )
			.getMember( ComputedColumn.DATA_TYPE_MEMBER )
			.getAllowedChoices( );
	protected static final IChoice[] DATA_TYPE_CHOICES = DATA_TYPE_CHOICE_SET.getChoices( null );
	protected String[] dataTypes = ChoiceSetFactory.getDisplayNamefromChoiceSet( DATA_TYPE_CHOICE_SET );
	private Text txtName, txtFilter, txtExpression;
	private Combo cmbType, cmbFunction, cmbDataField, cmbGroup;
	private Button btnTable, btnGroup;
	private Composite argsComposite;
	private String name;
	private String typeSelect;
	private String expression;
	private Map argsMap = new HashMap( );
	private Composite composite;
	private Text txtDisplayName;
	private ComputedColumn newBinding;
	private CLabel messageLine;
	private Combo cmbName;
	private boolean isCreate;
	private boolean isRef;