Bug 314631 Cann't get correct default values for parameters that with non-constant default value expressions
Steps to reproduce: 1. create a report with a scalar parameter that has non-constant default value expression such as BirtDateTime.today() 2. setup a project to get the default values of the parameter in BIRT runtime Eg. IReportEngine engine = createReportEngine( ); IRunnable runnable = engine.openReportDesign( REPORT_DESIGN ); IGetParamaterDefinitionTask task = engine.createGetParameterDefinitionTask( runnable ); HashMap result = task.getDefaultValues(); Expect result: The result map contains a parameter name and default value pair in which the default value is a Date instance of today. Actural result: The default value is null.
engine/org.eclipse.birt.report.engine/src/org/eclipse/birt/report/engine/api/impl/GetParameterDefinitionTask.java
DynamicFilterParameterDefn parameter = new DynamicFilterParameterDefn( );
			parameter.setHandle( handle );
			parameter.setLocale( ulocale.toLocale( ) );
			parameter.setParameterType( IParameterDefnBase.FILTER_PARAMETER );
			parameter.setName( handle.getName( ) );
			parameter.setIsRequired( handle.isRequired( ) );
			parameter.setDisplayName( handle.getDisplayName( ) );
			parameter.setDisplayNameKey( handle.getDisplayNameKey( ) );
			parameter.setHelpText( handle.getHelpText( ) );
			parameter.setHelpTextKey( handle.getHelpTextKey( ) );
			parameter.setPromptText( handle.getPromptText( ) );
			parameter.setPromptTextKey( handle.getPromptTextID( ) );
			parameter.setIsHidden( handle.isHidden( ) );
			parameter.setName( handle.getName( ) );
			
			List properties = handle.getUserProperties( );
			for ( int i = 0; i < properties.size( ); i++ )
			{
				UserPropertyDefn p = (UserPropertyDefn) properties.get( i );
				parameter.addUserProperty( p.getName( ), handle
						.getProperty( p.getName( ) ) );
			}
			
			String valueType = handle.getDataType( );
			if ( DesignChoiceConstants.PARAM_TYPE_BOOLEAN.equals( valueType ) )
				parameter.setDataType( IParameterDefn.TYPE_BOOLEAN );
			else if ( DesignChoiceConstants.PARAM_TYPE_DATETIME.equals( valueType ) )
				parameter.setDataType( IParameterDefn.TYPE_DATE_TIME );
			else if ( DesignChoiceConstants.PARAM_TYPE_DATE.equals( valueType ) )
				parameter.setDataType( IParameterDefn.TYPE_DATE );