Package net.sf.jasperreports.engine.fill
Class JRFillCrosstab.JRFillCrosstabDataset
java.lang.Object
net.sf.jasperreports.engine.fill.JRFillElementDataset
net.sf.jasperreports.engine.fill.JRFillCrosstab.JRFillCrosstabDataset
- All Implemented Interfaces:
Cloneable
,JRCrosstabDataset
,DatasetRunHolder
,JRCloneable
,JRElementDataset
- Enclosing class:
JRFillCrosstab
public class JRFillCrosstab.JRFillCrosstabDataset
extends JRFillElementDataset
implements JRCrosstabDataset
Fill-time crosstab input dataset implementation.
- Author:
- Lucian Chirita (lucianc@users.sourceforge.net)
-
Field Summary
FieldsFields inherited from class net.sf.jasperreports.engine.fill.JRFillElementDataset
datasetRun, incrementGroup, parent, resetGroup
-
Constructor Summary
ConstructorsConstructorDescriptionJRFillCrosstabDataset
(JRCrosstabDataset dataset, JRFillObjectFactory factory) -
Method Summary
Modifier and TypeMethodDescriptionvoid
collectExpressions
(JRExpressionCollector collector) protected void
customEvaluate
(JRCalculator calculator) Evaluates the expressions associated with the dataset.protected void
Increments the dataset by collecting the result of the expression evaluation.protected void
Initializes the element dataset.boolean
Returns whether the crosstab data is pre-sorted according to the crosstab's groups.Methods inherited from class net.sf.jasperreports.engine.fill.JRFillElementDataset
clone, evaluate, evaluateDatasetRun, evaluateIncrementWhenExpression, getDatasetResetType, getDatasetRun, getFillDataset, getFiller, getIncrementGroup, getIncrementType, getIncrementWhenExpression, getInputDataset, getLocale, getResetGroup, getTimeZone, increment, initialize, setBand
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface net.sf.jasperreports.engine.JRCloneable
clone
Methods inherited from interface net.sf.jasperreports.engine.JRElementDataset
getDatasetResetType, getDatasetRun, getIncrementGroup, getIncrementType, getIncrementWhenExpression, getResetGroup
-
Field Details
-
EXCEPTION_MESSAGE_KEY_DATASET_INCREMENTING_ERROR
- See Also:
-
-
Constructor Details
-
JRFillCrosstabDataset
-
-
Method Details
-
customInitialize
protected void customInitialize()Description copied from class:JRFillElementDataset
Initializes the element dataset.The dataset is initialized before being used and after each time the dataset gets reset.
- Specified by:
customInitialize
in classJRFillElementDataset
- See Also:
-
customEvaluate
Description copied from class:JRFillElementDataset
Evaluates the expressions associated with the dataset.Usually, the result of the evaluation would be preserved so that it is used in
JRFillElementDataset.customIncrement()
- Specified by:
customEvaluate
in classJRFillElementDataset
- Parameters:
calculator
- used to evaluate expressions- Throws:
JRExpressionEvalException
- any exception that occurs while evaluating expressions
-
customIncrement
protected void customIncrement()Description copied from class:JRFillElementDataset
Increments the dataset by collecting the result of the expression evaluation.- Specified by:
customIncrement
in classJRFillElementDataset
-
collectExpressions
- Specified by:
collectExpressions
in interfaceJRElementDataset
-
isDataPreSorted
public boolean isDataPreSorted()Description copied from interface:JRCrosstabDataset
Returns whether the crosstab data is pre-sorted according to the crosstab's groups.The crosstab calculation engine can optimize the calculations if the data is sorted by the row groups and column groups. For example, if there are two row groups R1 and R2 (subgroup of R1) and three column groups C1, C2 and C3 the data should be sorted by R1, R2, C1, C2, C3.
- Specified by:
isDataPreSorted
in interfaceJRCrosstabDataset
- Returns:
- whether the crosstab data is pre-sorted
-