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
this.newBinding.setName( txtName.getText( ) );
					this.newBinding.setExpression( txtExpression.getText( ) );
					this.newBinding.setDisplayName( txtDisplayName.getText( ) );
					this.binding = DEUtil.addColumn( getBindingHolder( ),
							newBinding,
							true );
				}
				else
				{
					for ( int i = 0; i < DATA_TYPE_CHOICES.length; i++ )
					{
						if ( DATA_TYPE_CHOICES[i].getDisplayName( )
								.equals( cmbType.getText( ) ) )
						{
							this.binding.setDataType( DATA_TYPE_CHOICES[i].getName( ) );
							break;
						}
					}
					this.binding.setDisplayName( txtDisplayName.getText( ) );
					this.binding.setExpression( txtExpression.getText( ) );
				}
			}
		}
	}
	private void saveAggregate( ) throws Exception
	{
		if ( getBinding( ) == null )
		{
			this.newBinding.setName( txtName.getText( ) );
			this.newBinding.setDisplayName( txtDisplayName.getText( ) );