Package org.apache.poi.xssf.usermodel
Class BaseXSSFEvaluationWorkbook
- java.lang.Object
-
- org.apache.poi.xssf.usermodel.BaseXSSFEvaluationWorkbook
-
- All Implemented Interfaces:
EvaluationWorkbook
,FormulaParsingWorkbook
,FormulaRenderingWorkbook
- Direct Known Subclasses:
SXSSFEvaluationWorkbook
,XSSFEvaluationWorkbook
@Internal public abstract class BaseXSSFEvaluationWorkbook extends java.lang.Object implements FormulaRenderingWorkbook, EvaluationWorkbook, FormulaParsingWorkbook
Internal POI use only - parent of XSSF and SXSSF evaluation workbooks
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.apache.poi.ss.formula.EvaluationWorkbook
EvaluationWorkbook.ExternalName, EvaluationWorkbook.ExternalSheet, EvaluationWorkbook.ExternalSheetRange
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
clearAllCachedResultValues()
Propagated fromWorkbookEvaluator.clearAllCachedResultValues()
to clear locally cached data.int
convertFromExternSheetIndex(int externSheetIndex)
XSSF doesn't use external sheet indexes, so when asked treat it just as a local indexXSSFName
createName()
Return the underlying workbookPtg
get3DReferencePtg(AreaReference area, SheetIdentifier sheet)
Produce the appropriate Ptg for a 3d area referencePtg
get3DReferencePtg(CellReference cell, SheetIdentifier sheet)
Produce the appropriate Ptg for a 3d cell referenceEvaluationWorkbook.ExternalName
getExternalName(int externSheetIndex, int externNameIndex)
HSSF Only - fetch the external-style name detailsEvaluationWorkbook.ExternalName
getExternalName(java.lang.String nameName, java.lang.String sheetName, int externalWorkbookNumber)
XSSF Only - fetch the external-style name detailsEvaluationWorkbook.ExternalSheet
getExternalSheet(int externSheetIndex)
HSSF Only - fetch the external-style sheet detailsEvaluationWorkbook.ExternalSheet
getExternalSheet(java.lang.String firstSheetName, java.lang.String lastSheetName, int externalWorkbookNumber)
XSSF Only - fetch the external-style sheet detailsint
getExternalSheetIndex(java.lang.String sheetName)
gets the externSheet index for a sheet from this workbookint
getExternalSheetIndex(java.lang.String workbookName, java.lang.String sheetName)
gets the externSheet index for a sheet from an external workbookEvaluationName
getName(java.lang.String name, int sheetIndex)
Return EvaluationName wrapper around the matching XSSFName (named range)EvaluationName
getName(NamePtg namePtg)
java.lang.String
getNameText(NamePtg namePtg)
NameXPxg
getNameXPtg(java.lang.String name, SheetIdentifier sheet)
Return an external name (named range, function, user-defined function) Pxgjava.lang.String
getSheetFirstNameByExternSheet(int externSheetIndex)
int
getSheetIndex(java.lang.String sheetName)
Finds a sheet index by case insensitive name.java.lang.String
getSheetLastNameByExternSheet(int externSheetIndex)
java.lang.String
getSheetName(int sheetIndex)
SpreadsheetVersion
getSpreadsheetVersion()
Returns an enum holding spreadhseet properties specific to an Excel version ( max column and row numbers, max arguments to a function, etc.)XSSFTable
getTable(java.lang.String name)
Returns the data table with the given name (case insensitive).UDFFinder
getUDFFinder()
java.lang.String
resolveNameXText(NameXPtg n)
-
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.poi.ss.formula.EvaluationWorkbook
getFormulaTokens, getSheet, getSheetIndex
-
-
-
-
Method Detail
-
clearAllCachedResultValues
public void clearAllCachedResultValues()
Description copied from interface:EvaluationWorkbook
Propagated fromWorkbookEvaluator.clearAllCachedResultValues()
to clear locally cached data. Implementations must call the same method on all referencedEvaluationSheet
instances, as well as clearing local caches.- Specified by:
clearAllCachedResultValues
in interfaceEvaluationWorkbook
- See Also:
WorkbookEvaluator.clearAllCachedResultValues()
-
convertFromExternSheetIndex
public int convertFromExternSheetIndex(int externSheetIndex)
XSSF doesn't use external sheet indexes, so when asked treat it just as a local index- Specified by:
convertFromExternSheetIndex
in interfaceEvaluationWorkbook
-
getExternalSheetIndex
public int getExternalSheetIndex(java.lang.String sheetName)
Description copied from interface:FormulaParsingWorkbook
gets the externSheet index for a sheet from this workbook- Specified by:
getExternalSheetIndex
in interfaceFormulaParsingWorkbook
-
getName
public EvaluationName getName(java.lang.String name, int sheetIndex)
Return EvaluationName wrapper around the matching XSSFName (named range)- Specified by:
getName
in interfaceEvaluationWorkbook
- Specified by:
getName
in interfaceFormulaParsingWorkbook
- Parameters:
name
- case-aware but case-insensitive named range in workbooksheetIndex
- index of sheet if named range scope is limited to one sheet if named range scope is global to the workbook, sheetIndex is -1.- Returns:
- If name is a named range in the workbook, returns EvaluationName corresponding to that named range Returns null if there is no named range with the same name and scope in the workbook
-
getSheetName
public java.lang.String getSheetName(int sheetIndex)
- Specified by:
getSheetName
in interfaceEvaluationWorkbook
-
getExternalName
public EvaluationWorkbook.ExternalName getExternalName(int externSheetIndex, int externNameIndex)
Description copied from interface:EvaluationWorkbook
HSSF Only - fetch the external-style name details- Specified by:
getExternalName
in interfaceEvaluationWorkbook
-
getExternalName
public EvaluationWorkbook.ExternalName getExternalName(java.lang.String nameName, java.lang.String sheetName, int externalWorkbookNumber)
Description copied from interface:EvaluationWorkbook
XSSF Only - fetch the external-style name details- Specified by:
getExternalName
in interfaceEvaluationWorkbook
-
getNameXPtg
public NameXPxg getNameXPtg(java.lang.String name, SheetIdentifier sheet)
Return an external name (named range, function, user-defined function) Pxg- Specified by:
getNameXPtg
in interfaceFormulaParsingWorkbook
-
get3DReferencePtg
public Ptg get3DReferencePtg(CellReference cell, SheetIdentifier sheet)
Description copied from interface:FormulaParsingWorkbook
Produce the appropriate Ptg for a 3d cell reference- Specified by:
get3DReferencePtg
in interfaceFormulaParsingWorkbook
-
get3DReferencePtg
public Ptg get3DReferencePtg(AreaReference area, SheetIdentifier sheet)
Description copied from interface:FormulaParsingWorkbook
Produce the appropriate Ptg for a 3d area reference- Specified by:
get3DReferencePtg
in interfaceFormulaParsingWorkbook
-
resolveNameXText
public java.lang.String resolveNameXText(NameXPtg n)
- Specified by:
resolveNameXText
in interfaceEvaluationWorkbook
- Specified by:
resolveNameXText
in interfaceFormulaRenderingWorkbook
-
getExternalSheet
public EvaluationWorkbook.ExternalSheet getExternalSheet(int externSheetIndex)
Description copied from interface:EvaluationWorkbook
HSSF Only - fetch the external-style sheet detailsReturn will have no workbook set if it's actually in our own workbook
- Specified by:
getExternalSheet
in interfaceEvaluationWorkbook
- Specified by:
getExternalSheet
in interfaceFormulaRenderingWorkbook
- Returns:
null
if externSheetIndex refers to a sheet inside the current workbook
-
getExternalSheet
public EvaluationWorkbook.ExternalSheet getExternalSheet(java.lang.String firstSheetName, java.lang.String lastSheetName, int externalWorkbookNumber)
Description copied from interface:EvaluationWorkbook
XSSF Only - fetch the external-style sheet detailsReturn will have no workbook set if it's actually in our own workbook
- Specified by:
getExternalSheet
in interfaceEvaluationWorkbook
-
getExternalSheetIndex
@NotImplemented public int getExternalSheetIndex(java.lang.String workbookName, java.lang.String sheetName)
Description copied from interface:FormulaParsingWorkbook
gets the externSheet index for a sheet from an external workbook- Specified by:
getExternalSheetIndex
in interfaceFormulaParsingWorkbook
- Parameters:
workbookName
- e.g. "Budget.xls"sheetName
- a name of a sheet in that workbook
-
getSheetIndex
public int getSheetIndex(java.lang.String sheetName)
Description copied from interface:EvaluationWorkbook
Finds a sheet index by case insensitive name.- Specified by:
getSheetIndex
in interfaceEvaluationWorkbook
- Returns:
- the index of the sheet matching the specified name. -1 if not found
-
getSheetFirstNameByExternSheet
public java.lang.String getSheetFirstNameByExternSheet(int externSheetIndex)
- Specified by:
getSheetFirstNameByExternSheet
in interfaceFormulaRenderingWorkbook
- Returns:
- the name of the (first) sheet referred to by the given external sheet index
-
getSheetLastNameByExternSheet
public java.lang.String getSheetLastNameByExternSheet(int externSheetIndex)
- Specified by:
getSheetLastNameByExternSheet
in interfaceFormulaRenderingWorkbook
- Returns:
- the name of the (last) sheet referred to by the given external sheet index
-
getNameText
public java.lang.String getNameText(NamePtg namePtg)
- Specified by:
getNameText
in interfaceFormulaRenderingWorkbook
-
getName
public EvaluationName getName(NamePtg namePtg)
- Specified by:
getName
in interfaceEvaluationWorkbook
-
createName
public XSSFName createName()
Description copied from interface:FormulaParsingWorkbook
Return the underlying workbook- Specified by:
createName
in interfaceFormulaParsingWorkbook
-
getTable
public XSSFTable getTable(java.lang.String name)
Returns the data table with the given name (case insensitive). Tables are cached for performance (formula evaluation looks them up by name repeatedly). After the first table lookup, adding or removing a table from the document structure will cause trouble. This is meant to be used on documents whose structure is essentially static at the point formulas are evaluated.- Specified by:
getTable
in interfaceFormulaParsingWorkbook
- Parameters:
name
- the data table name (case-insensitive)- Returns:
- The Data table in the workbook named name, or null if no table is named name.
- Since:
- 3.15 beta 2
-
getUDFFinder
public UDFFinder getUDFFinder()
- Specified by:
getUDFFinder
in interfaceEvaluationWorkbook
-
getSpreadsheetVersion
public SpreadsheetVersion getSpreadsheetVersion()
Description copied from interface:FormulaParsingWorkbook
Returns an enum holding spreadhseet properties specific to an Excel version ( max column and row numbers, max arguments to a function, etc.)- Specified by:
getSpreadsheetVersion
in interfaceEvaluationWorkbook
- Specified by:
getSpreadsheetVersion
in interfaceFormulaParsingWorkbook
-
-