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
}
			this.binding.clearArgumentList( );
			for ( Iterator iterator = argsMap.keySet( ).iterator( ); iterator.hasNext( ); )
			{
				String arg = (String) iterator.next( );
				AggregationArgument argHandle = StructureFactory.createAggregationArgument( );
				argHandle.setName( getArgumentByDisplayName( this.binding.getAggregateFunction( ),
						arg ) );
				argHandle.setValue( ( (Text) argsMap.get( arg ) ).getText( ) );
				this.binding.addArgument( argHandle );
			}
		}
	}
	private String getArgumentByDisplayName( String function, String argument )
	{
		try
		{
			IAggregationInfo info = DataUtil.getAggregationFactory( )
					.getAggrInfo( function );
			Iterator arguments = info.getParameters( ).iterator( );
			for ( ; arguments.hasNext( ); )
			{
				IParameterInfo argInfo = (IParameterInfo) arguments.next( );
				if ( argInfo.getDisplayName( ).equals( argument ) )
					return argInfo.getName( );
			}
		}
		catch ( BirtException e )
		{
			ExceptionHandler.handle( e );