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
Text txtArg = new Text( argsComposite, SWT.BORDER );
					GridData gridData = new GridData( );
					gridData.widthHint = txtFilter.getBounds( ).width - 9;
					txtArg.setLayoutData( gridData );
					createExpressionButton( argsComposite, txtArg );
					argsMap.put( argName, txtArg );
				}
			}
			else
			{
				( (GridData) argsComposite.getLayoutData( ) ).heightHint = 0;
				
			}
			this.cmbDataField.setEnabled( function.needDataField( ) );
		}
		else
		{
			( (GridData) argsComposite.getLayoutData( ) ).heightHint = 0;
			
			
		}
		argsComposite.layout( );
		composite.layout( );
		dialog.getShell( ).layout( );
	}
	private void createExpressionButton( final Composite parent, final Text text )
	{
		Button expressionButton = new Button( parent, SWT.PUSH );
		
		if (expressionProvider == null || (!( expressionProvider instanceof CrosstabBindingExpressionProvider) ))