|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.poi.xssf.usermodel.BaseXSSFFormulaEvaluator
public abstract class BaseXSSFFormulaEvaluator
Internal POI use only - parent of XSSF and SXSSF formula evaluators
Constructor Summary | |
---|---|
protected |
BaseXSSFFormulaEvaluator(WorkbookEvaluator bookEvaluator)
|
Method Summary | |
---|---|
WorkbookEvaluator |
_getWorkbookEvaluator()
Provide the underlying WorkbookEvaluator |
void |
clearAllCachedResultValues()
Should be called whenever there are major changes (e.g. |
protected void |
doEvaluateInCell(Cell cell)
If cell contains formula, it evaluates the formula, and puts the formula result back into the cell, in place of the old formula. |
CellValue |
evaluate(Cell cell)
If cell contains a formula, the formula is evaluated and returned, else the CellValue simply copies the appropriate cell value from the cell and also its cell type. |
int |
evaluateFormulaCell(Cell cell)
If cell contains formula, it evaluates the formula, and saves the result of the formula. |
void |
notifyDeleteCell(Cell cell)
Should be called to tell the cell value cache that the specified cell has just become a formula cell, or the formula text has changed |
void |
notifySetFormula(Cell cell)
Should be called to tell the cell value cache that the specified (value or formula) cell has changed. |
void |
notifyUpdateCell(Cell cell)
Should be called to tell the cell value cache that the specified (value or formula) cell has changed. |
void |
setDebugEvaluationOutputForNextEval(boolean value)
Perform detailed output of formula evaluation for next evaluation only? Is for developer use only (also developers using POI for their XLS files). |
void |
setIgnoreMissingWorkbooks(boolean ignore)
Whether to ignore missing references to external workbooks and use cached formula results in the main workbook instead. |
void |
setupReferencedWorkbooks(java.util.Map<java.lang.String,FormulaEvaluator> evaluators)
Sets up the Formula Evaluator to be able to reference and resolve links to other workbooks, eg [Test.xls]Sheet1!A1. |
protected abstract EvaluationCell |
toEvaluationCell(Cell cell)
Turns a XSSFCell / SXSSFCell into a XSSFEvaluationCell |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface org.apache.poi.ss.usermodel.FormulaEvaluator |
---|
evaluateAll, evaluateInCell |
Constructor Detail |
---|
protected BaseXSSFFormulaEvaluator(WorkbookEvaluator bookEvaluator)
Method Detail |
---|
public void clearAllCachedResultValues()
clearAllCachedResultValues
in interface FormulaEvaluator
public void notifySetFormula(Cell cell)
FormulaEvaluator
notifySetFormula
in interface FormulaEvaluator
public void notifyDeleteCell(Cell cell)
FormulaEvaluator
notifyDeleteCell
in interface FormulaEvaluator
public void notifyUpdateCell(Cell cell)
FormulaEvaluator
notifyUpdateCell
in interface FormulaEvaluator
public CellValue evaluate(Cell cell)
evaluate
in interface FormulaEvaluator
cell
- public int evaluateFormulaCell(Cell cell)
int evaluatedCellType = evaluator.evaluateFormulaCell(cell);Be aware that your cell will hold both the formula, and the result. If you want the cell replaced with the result of the formula, use
evaluate(org.apache.poi.ss.usermodel.Cell)
}
evaluateFormulaCell
in interface FormulaEvaluator
cell
- The cell to evaluate
protected void doEvaluateInCell(Cell cell)
protected abstract EvaluationCell toEvaluationCell(Cell cell)
public void setupReferencedWorkbooks(java.util.Map<java.lang.String,FormulaEvaluator> evaluators)
FormulaEvaluator
For a workbook referenced as [Test.xls]Sheet1!A1, you should supply a map containing the key Test.xls (no square brackets), and an open FormulaEvaluator onto that Workbook.
setupReferencedWorkbooks
in interface FormulaEvaluator
evaluators
- Map of workbook names (no square brackets) to an evaluator on that workbookpublic WorkbookEvaluator _getWorkbookEvaluator()
WorkbookEvaluatorProvider
_getWorkbookEvaluator
in interface WorkbookEvaluatorProvider
public void setIgnoreMissingWorkbooks(boolean ignore)
In some cases external workbooks referenced by formulas in the main workbook are not available. With this method you can control how POI handles such missing references:
CollaboratingWorkbooksEnvironment.WorkbookNotFoundException
if an external reference cannot be resolved
setIgnoreMissingWorkbooks
in interface FormulaEvaluator
ignore
- whether to ignore missing references to external workbookspublic void setDebugEvaluationOutputForNextEval(boolean value)
setDebugEvaluationOutputForNextEval
in interface FormulaEvaluator
value
- whether to perform detailed output
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |