Class ComputedColumn
- java.lang.Object
-
- org.eclipse.birt.report.model.core.Structure
-
- org.eclipse.birt.report.model.core.PropertyStructure
-
- org.eclipse.birt.report.model.api.elements.structures.ComputedColumn
-
- All Implemented Interfaces:
java.lang.Cloneable,IStructure,org.eclipse.birt.report.model.core.IPropertySet
public class ComputedColumn extends org.eclipse.birt.report.model.core.PropertyStructureRepresents one computed column. A computed column is a 'virtual' column produced as an expression of other columns within the data set.This is a managed object, meaning that all changes should be made though the command layer so that they can be undone and redone. Each computed column has the following properties:
- Column Name
- a computed column has a required column name.
- Expression
- expression of the computation for the column.
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringAGGREGATEON_FUNCTION_MEMBERName of the aggregateOn member.static java.lang.StringAGGREGATEON_MEMBERName of the aggregateOn member.static java.lang.StringAGGREGRATEON_MEMBERDeprecated.static java.lang.StringALLOW_EXPORT_MEMBERName of the allowExport member.static java.lang.StringARGUMENTS_MEMBERName of arguments of function member.static java.lang.StringCALCULATION_ARGUMENTS_MEMBERName of the member that specifies a list of calculation argument for the specific calculation function.static java.lang.StringCALCULATION_TYPE_MEMBERName of the member that specifies the calculation function name.static java.lang.StringCOLUMN_NAME_MEMBERDeprecated.usingNAME_MEMBERinstead.static java.lang.StringCOMPUTED_COLUMN_STRUCTName of this structure.static java.lang.StringDATA_TYPE_MEMBERName of the data-type member.static java.lang.StringDISPLAY_NAME_ID_MEMBERDisplayNameID of the column name member.static java.lang.StringDISPLAY_NAME_MEMBERDisplayName of the column name member.static java.lang.StringEXPRESSION_MEMBERName of the expression member.static java.lang.StringFILTER_MEMBERName of the filter member.static java.lang.StringNAME_MEMBERName of the column name member.static java.lang.StringREFERENCE_DATE_TYPE_MEMBERName of the member that specifies the reference date type.static java.lang.StringREFERENCE_DATE_VALUE_MEMBERName of the member that specifies the reference date value.static java.lang.StringTIME_DIMENSION_MEMBERName of the member that specifies the expression that returns the name of time dimension.
-
Constructor Summary
Constructors Constructor Description ComputedColumn()
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description voidaddAggregateOn(java.lang.String aggreValue)Adds an aggregate level to the list.voidaddArgument(AggregationArgument argument)Adds an argument to list.voidaddCalculationArgument(CalculationArgument argument)Adds a calculation argument to list.booleanallowExport()Gets the flag which indicates whether the computed column supports export.voidclearAggregateOnList()Sets the expression used to define this computed column.java.lang.StringgetAggregateFunction()Returns the expression used to define this computed column.java.lang.StringgetAggregateOn()Returns the aggregateOn expression to compute.java.util.ListgetAggregateOnList()Returns the list containing levels to be aggregated on.java.lang.StringgetAggregrateOn()Deprecated.java.lang.StringgetColumnName()Deprecated.usinggetName()instead.java.lang.StringgetDataType()Returns the data type of this column.java.lang.StringgetDisplayName()Returns column display name.java.lang.StringgetDisplayNameID()Gets column display name id.java.lang.StringgetExpression()Returns the expression to compute.java.lang.StringgetFilterExpression()Returns the expression used to define this computed column.java.lang.StringgetName()Returns the column name.java.lang.StringgetStructName()Returns the name of the structure definition.StructureHandlehandle(SimpleValueHandle valueHandle, int index)Creates the specific handle of this structure.voidremoveAggregateOn(java.lang.String aggreValue)Removes an aggregate level from the list.voidremoveArgument(AggregationArgument argument)Removes an argument from list.voidremoveCalculationArgument(CalculationArgument argument)Removes a calculation argument from list.voidsetAggregateFunction(java.lang.String expression)Sets the expression used to define this computed column.voidsetAggregateOn(java.lang.String aggregateOn)Sets the aggregateOn expression.voidsetAggregrateOn(java.lang.String aggregateOn)Deprecated.voidsetAllowExport(boolean allowExport)Sets the flag which indicates whether the computed column supports export.voidsetCalculationType(java.lang.String calculationType)Sets the calculation type.voidsetColumnName(java.lang.String columnName)Deprecated.usingsetName(String)instead.voidsetDataType(java.lang.String dataType)Sets the data type of this column.voidsetDisplayName(java.lang.String columnDisplayName)Sets the column display name.voidsetDisplayNameID(java.lang.String displayNameID)Sets the column display name id.voidsetExpression(java.lang.String expression)Sets the expression.voidsetFilterExpression(java.lang.String expression)Sets the expression used to define this computed column.voidsetName(java.lang.String name)Sets the column namevoidsetReferenceDateType(java.lang.String type)Sets the reference date type.voidsetReferenceDateValue(Expression expr)Sets the reference date value with the expression value.voidsetTimeDimension(java.lang.String expr)Sets the time dimension expression value.java.util.Listvalidate(org.eclipse.birt.report.model.core.Module module, org.eclipse.birt.report.model.core.DesignElement element)Validates this structure.-
Methods inherited from class org.eclipse.birt.report.model.core.PropertyStructure
clone, getIntrinsicProperty, getLocalProperty, getLocalProperty, setIntrinsicProperty, setProperty
-
Methods inherited from class org.eclipse.birt.report.model.core.Structure
checkStringMember, copy, equals, getCompatibleValue, getContext, getDefn, getElement, getExpressionProperty, getHandle, getHandle, getMemberDefn, getObjectDefn, getProperty, getProperty, getReferencableProperty, getStringProperty, isDesignTime, isReferencable, setContext, setExpressionProperty, setProperty, setupContext, updateReference
-
-
-
-
Field Detail
-
COMPUTED_COLUMN_STRUCT
public static final java.lang.String COMPUTED_COLUMN_STRUCT
Name of this structure. Matches the definition in the meta-data dictionary.- See Also:
- Constant Field Values
-
NAME_MEMBER
public static final java.lang.String NAME_MEMBER
Name of the column name member.- See Also:
- Constant Field Values
-
DISPLAY_NAME_MEMBER
public static final java.lang.String DISPLAY_NAME_MEMBER
DisplayName of the column name member.- See Also:
- Constant Field Values
-
DISPLAY_NAME_ID_MEMBER
public static final java.lang.String DISPLAY_NAME_ID_MEMBER
DisplayNameID of the column name member.- See Also:
- Constant Field Values
-
COLUMN_NAME_MEMBER
@Deprecated public static final java.lang.String COLUMN_NAME_MEMBER
Deprecated.usingNAME_MEMBERinstead.Name of the column name member.- See Also:
- Constant Field Values
-
EXPRESSION_MEMBER
public static final java.lang.String EXPRESSION_MEMBER
Name of the expression member.- See Also:
- Constant Field Values
-
DATA_TYPE_MEMBER
public static final java.lang.String DATA_TYPE_MEMBER
Name of the data-type member.- See Also:
- Constant Field Values
-
AGGREGATEON_MEMBER
public static final java.lang.String AGGREGATEON_MEMBER
Name of the aggregateOn member.- See Also:
- Constant Field Values
-
AGGREGRATEON_MEMBER
@Deprecated public static final java.lang.String AGGREGRATEON_MEMBER
Deprecated.Name of the aggregateOn member.- See Also:
- Constant Field Values
-
AGGREGATEON_FUNCTION_MEMBER
public static final java.lang.String AGGREGATEON_FUNCTION_MEMBER
Name of the aggregateOn member.- See Also:
- Constant Field Values
-
ARGUMENTS_MEMBER
public static final java.lang.String ARGUMENTS_MEMBER
Name of arguments of function member.- See Also:
- Constant Field Values
-
FILTER_MEMBER
public static final java.lang.String FILTER_MEMBER
Name of the filter member.- See Also:
- Constant Field Values
-
ALLOW_EXPORT_MEMBER
public static final java.lang.String ALLOW_EXPORT_MEMBER
Name of the allowExport member.- See Also:
- Constant Field Values
-
CALCULATION_TYPE_MEMBER
public static final java.lang.String CALCULATION_TYPE_MEMBER
Name of the member that specifies the calculation function name. The function name is defined by customer DB executor.- See Also:
- Constant Field Values
-
CALCULATION_ARGUMENTS_MEMBER
public static final java.lang.String CALCULATION_ARGUMENTS_MEMBER
Name of the member that specifies a list of calculation argument for the specific calculation function.- See Also:
- Constant Field Values
-
REFERENCE_DATE_TYPE_MEMBER
public static final java.lang.String REFERENCE_DATE_TYPE_MEMBER
Name of the member that specifies the reference date type.- See Also:
- Constant Field Values
-
REFERENCE_DATE_VALUE_MEMBER
public static final java.lang.String REFERENCE_DATE_VALUE_MEMBER
Name of the member that specifies the reference date value. It is required when reference date type is fixed date.- See Also:
- Constant Field Values
-
TIME_DIMENSION_MEMBER
public static final java.lang.String TIME_DIMENSION_MEMBER
Name of the member that specifies the expression that returns the name of time dimension.- See Also:
- Constant Field Values
-
-
Method Detail
-
getStructName
public java.lang.String getStructName()
Description copied from interface:IStructureReturns the name of the structure definition. The name is the one used to define the structure in the meta-data dictionary.- Returns:
- the internal name of the structure a defined in the meta-data dictionary.
-
getColumnName
@Deprecated public java.lang.String getColumnName()
Deprecated.usinggetName()instead.Returns the column name.- Returns:
- the column name
-
getName
public java.lang.String getName()
Returns the column name.- Returns:
- the column name
-
getDisplayName
public java.lang.String getDisplayName()
Returns column display name.- Returns:
- column display name.
-
getDisplayNameID
public java.lang.String getDisplayNameID()
Gets column display name id.- Returns:
- the column display name id.
-
setDisplayName
public void setDisplayName(java.lang.String columnDisplayName)
Sets the column display name.- Parameters:
columnDisplayName- the column display name to set.
-
setDisplayNameID
public void setDisplayNameID(java.lang.String displayNameID)
Sets the column display name id.- Parameters:
displayNameID- the column display name id.
-
setColumnName
@Deprecated public void setColumnName(java.lang.String columnName)
Deprecated.usingsetName(String)instead.Sets the column name.- Parameters:
columnName- the column name to set
-
setName
public void setName(java.lang.String name)
Sets the column name- Parameters:
name- the column name to set.
-
getExpression
public java.lang.String getExpression()
Returns the expression to compute.- Returns:
- the expression to compute
-
setExpression
public void setExpression(java.lang.String expression)
Sets the expression.- Parameters:
expression- the expression to set
-
handle
public StructureHandle handle(SimpleValueHandle valueHandle, int index)
Description copied from class:org.eclipse.birt.report.model.core.StructureCreates the specific handle of this structure. This handle is always created.- Specified by:
handlein classorg.eclipse.birt.report.model.core.Structure- Parameters:
valueHandle- the value handle of this structure list property this structure is inindex- the position of this structure in structure list- Returns:
- the handle of this structure.
-
validate
public java.util.List validate(org.eclipse.birt.report.model.core.Module module, org.eclipse.birt.report.model.core.DesignElement element)Validates this structure. The following are the rules:- The column name is required.
- Overrides:
validatein classorg.eclipse.birt.report.model.core.Structure- Parameters:
module- the moduleelement- the element contains this structure- Returns:
- the semantic error list
- See Also:
Structure.validate(Module, org.eclipse.birt.report.model.core.DesignElement)
-
getDataType
public java.lang.String getDataType()
Returns the data type of this column. The possible values are defined inDesignChoiceConstants, and they are:- COLUMN_DATA_TYPE_ANY
- COLUMN_DATA_TYPE_INTEGER
- COLUMN_DATA_TYPE_STRING
- COLUMN_DATA_TYPE_DATETIME
- COLUMN_DATA_TYPE_DECIMAL
- COLUMN_DATA_TYPE_FLOAT
- COLUMN_DATA_TYPE_STRUCTURE
- COLUMN_DATA_TYPE_TABLE
- Returns:
- the data type of this column.
-
setDataType
public void setDataType(java.lang.String dataType)
Sets the data type of this column. The allowed values are defined inDesignChoiceConstants, and they are:- COLUMN_DATA_TYPE_ANY
- COLUMN_DATA_TYPE_INTEGER
- COLUMN_DATA_TYPE_STRING
- COLUMN_DATA_TYPE_DATETIME
- COLUMN_DATA_TYPE_DECIMAL
- COLUMN_DATA_TYPE_FLOAT
- COLUMN_DATA_TYPE_STRUCTURE
- COLUMN_DATA_TYPE_TABLE
- Parameters:
dataType- the data type to set
-
getAggregrateOn
@Deprecated public java.lang.String getAggregrateOn()
Deprecated.Returns the aggregrateOn expression to compute.- Returns:
- the aggregrateOn expression to compute.
-
setAggregrateOn
@Deprecated public void setAggregrateOn(java.lang.String aggregateOn)
Deprecated.Sets the aggregateOn expression.- Parameters:
aggregateOn- the aggregateOn expression to set
-
getAggregateOn
public java.lang.String getAggregateOn()
Returns the aggregateOn expression to compute.- Returns:
- the aggregateOn expression to compute.
-
getAggregateOnList
public java.util.List getAggregateOnList()
Returns the list containing levels to be aggregated on.- Returns:
- the list containing levels to be aggregated on
-
setAggregateOn
public void setAggregateOn(java.lang.String aggregateOn)
Sets the aggregateOn expression.- Parameters:
aggregateOn- the aggregateOn expression to set
-
addAggregateOn
public void addAggregateOn(java.lang.String aggreValue)
Adds an aggregate level to the list.- Parameters:
aggreValue- the aggregate name. For listing elements, this can be "All" or the name of a single group.
-
removeAggregateOn
public void removeAggregateOn(java.lang.String aggreValue)
Removes an aggregate level from the list.- Parameters:
aggreValue- the aggregate name. For listing elements, this can be "All" or the name of a single group.
-
getAggregateFunction
public java.lang.String getAggregateFunction()
Returns the expression used to define this computed column.- Returns:
- the expression used to define this computed column
-
getFilterExpression
public java.lang.String getFilterExpression()
Returns the expression used to define this computed column.- Returns:
- the expression used to define this computed column
-
setAggregateFunction
public void setAggregateFunction(java.lang.String expression)
Sets the expression used to define this computed column.- Parameters:
expression- the expression to set- Throws:
SemanticException- value required exception
-
setFilterExpression
public void setFilterExpression(java.lang.String expression)
Sets the expression used to define this computed column.- Parameters:
expression- the expression to set- Throws:
SemanticException- value required exception
-
clearAggregateOnList
public void clearAggregateOnList()
Sets the expression used to define this computed column.- Parameters:
expression- the expression to set- Throws:
SemanticException- value required exception
-
addArgument
public void addArgument(AggregationArgument argument)
Adds an argument to list.- Parameters:
argument- the aggregate function argument
-
removeArgument
public void removeArgument(AggregationArgument argument)
Removes an argument from list.- Parameters:
argument- the aggregate function argument
-
allowExport
public boolean allowExport()
Gets the flag which indicates whether the computed column supports export.- Returns:
- true if it allows, otherwise false.
-
setAllowExport
public void setAllowExport(boolean allowExport)
Sets the flag which indicates whether the computed column supports export.- Parameters:
allowExport- the flag to set
-
setCalculationType
public void setCalculationType(java.lang.String calculationType)
Sets the calculation type.- Parameters:
calculationType-
-
addCalculationArgument
public void addCalculationArgument(CalculationArgument argument)
Adds a calculation argument to list.- Parameters:
argument- the calculation argument
-
removeCalculationArgument
public void removeCalculationArgument(CalculationArgument argument)
Removes a calculation argument from list.- Parameters:
argument- the calculation argument
-
setReferenceDateValue
public void setReferenceDateValue(Expression expr)
Sets the reference date value with the expression value. It must be set when reference date type isTODAY.- Parameters:
expr-
-
setReferenceDateType
public void setReferenceDateType(java.lang.String type)
Sets the reference date type.- Parameters:
offset-
-
setTimeDimension
public void setTimeDimension(java.lang.String expr)
Sets the time dimension expression value.- Parameters:
expr-
-
-