public class ResultFormula extends BaseFormula
content
SCRIPT_XML_TAG, TFC_XML_TAG, XML_TAG
构造器和说明 |
---|
ResultFormula()
默认的构造函数
|
ResultFormula(BaseFormula formula)
根据指定的公式生成一个结果公式
|
限定符和类型 | 方法和说明 |
---|---|
ResultFormula |
clone()
克隆
|
java.lang.String[] |
dependence(CalculatorProvider ca)
获取当前对象对参数的依赖关系
|
boolean |
equals(java.lang.Object obj) |
java.lang.Object |
eval(CalculatorProvider cal)
公式执行后的结果
|
java.lang.Object |
evalTransferValue(CalculatorProvider cal)
执行转换结果
|
java.lang.Object |
evalValue(CalculatorProvider cal)
公式执行后的结果
|
java.lang.String |
getContent()
获取公式的内容
|
java.lang.String |
getPureContent()
获取公式的内容
|
ColumnRow[] |
getRelatedColumnRows()
返回和公式中单元格有关联的其他所有单元格
下面的返回结果是A1行列和C1行列:
CalculatorProviderContext.registerCalculatorProvider(Calculator.createCalculator());
Formula f = new Formula("left(A1,2) + 'B1' + C1");
ColumnRow[] crs = f.getRelatedColumnRows();
|
java.lang.Object |
getResult()
获取计算后的公式的结果
|
java.lang.Object |
getResultForCurrentValue()
用于公式中有原始值参加运算的情况,如$$$/10,多次计算结果会一直循环除以10,仅仅获取第一次计算后的结果
|
java.lang.String |
getTransferContent()
获取结果公式的内容
|
java.lang.String |
getXmlTag()
获取写xml的tag
|
boolean |
isEmpty()
是否为空的公式
|
boolean |
isExecuted()
判断该公式是否计算过
|
boolean |
isReserveInResult()
是否保留计算结果
|
boolean |
isReserveOnWriteOrAnaly()
是否在上报或者分析时保留公式
|
boolean |
isResult()
是否已经是结果公式
|
Expression |
parse(CalculatorProvider cal)
将公式解析为表达式
|
void |
readXML(XMLableReader reader)
读取子节点,应该会被XMLableReader.readXMLObject()调用多次
|
void |
resetExecuted()
让该公式需要被重新计算
|
void |
setContent(java.lang.String content)
设置公式的内容
|
void |
setExecuted()
设置该公式是否已经计算过
|
void |
setOriginResult(java.lang.Object originResult) |
void |
setReserveInResult(boolean reserveInResult)
设置导出编辑结果时是否保留公式
|
void |
setReserveOnWriteOrAnaly(boolean reserveOnWriteOrAnaly)
设置填报时计算后是否保留公式
|
void |
setResult(java.lang.Object result)
设置公式的计算结果
|
void |
setTransferContent(java.lang.String transferContent)
设置结果公式的内容
|
void |
writeXML(XMLPrintWriter writer)
Write XML.
|
createFormulaBuilder, getPureFormulaContent, modColumnRow, toString
exStatement
public ResultFormula()
public ResultFormula(BaseFormula formula)
formula
- 一般公式public boolean isExecuted()
public void setExecuted()
public void resetExecuted()
public boolean isResult()
isResult
在类中 BaseFormula
public java.lang.String[] dependence(CalculatorProvider ca)
dependence
在接口中 DependenceProvider
dependence
在类中 BaseFormula
ca
- 当前线程的算子public void setContent(java.lang.String content)
setContent
在接口中 FormulaProvider
setContent
在类中 BaseFormula
content
- 公式内容public java.lang.String getContent()
getContent
在接口中 FormulaProvider
getContent
在类中 BaseFormula
public java.lang.String getTransferContent()
BaseFormula
getTransferContent
在接口中 FormulaProvider
getTransferContent
在类中 BaseFormula
public void setTransferContent(java.lang.String transferContent)
BaseFormula
setTransferContent
在接口中 FormulaProvider
setTransferContent
在类中 BaseFormula
transferContent
- 公式内容public java.lang.String getPureContent()
getPureContent
在接口中 FormulaProvider
getPureContent
在类中 BaseFormula
public void setResult(java.lang.Object result)
setResult
在接口中 FormulaProvider
setResult
在类中 BaseFormula
result
- 公式计算结果public java.lang.Object getResult()
getResult
在接口中 FormulaProvider
getResult
在类中 BaseFormula
public boolean isEmpty()
isEmpty
在接口中 FormulaProvider
isEmpty
在类中 BaseFormula
public boolean isReserveInResult()
isReserveInResult
在接口中 FormulaProvider
isReserveInResult
在类中 BaseFormula
public boolean isReserveOnWriteOrAnaly()
isReserveOnWriteOrAnaly
在接口中 FormulaProvider
isReserveOnWriteOrAnaly
在类中 BaseFormula
public java.lang.Object evalTransferValue(CalculatorProvider cal) throws UtilEvalError
FormulaProvider
evalTransferValue
在接口中 FormulaProvider
evalTransferValue
在类中 AbstractFormulaProvider
cal
- 算子UtilEvalError
- 如果计算异常则抛出此异常public java.lang.Object evalValue(CalculatorProvider cal) throws UtilEvalError
evalValue
在接口中 FormulaProvider
evalValue
在类中 AbstractFormulaProvider
cal
- 算子UtilEvalError
- 如果计算异常则抛出此异常public java.lang.Object eval(CalculatorProvider cal) throws UtilEvalError
eval
在接口中 FormulaProvider
eval
在类中 AbstractFormulaProvider
cal
- 算子UtilEvalError
- 如果计算异常则抛出此异常public java.lang.Object getResultForCurrentValue()
BaseFormula
getResultForCurrentValue
在类中 BaseFormula
public ColumnRow[] getRelatedColumnRows()
BaseFormula
下面的返回结果是A1行列和C1行列:
CalculatorProviderContext.registerCalculatorProvider(Calculator.createCalculator()); Formula f = new Formula("left(A1,2) + 'B1' + C1"); ColumnRow[] crs = f.getRelatedColumnRows();
getRelatedColumnRows
在接口中 ColumnRowRelated
getRelatedColumnRows
在类中 BaseFormula
public void setOriginResult(java.lang.Object originResult)
setOriginResult
在类中 BaseFormula
public void setReserveInResult(boolean reserveInResult)
BaseFormula
setReserveInResult
在类中 BaseFormula
reserveInResult
- 需要保留公式则设置为true,否则设置为falsepublic void setReserveOnWriteOrAnaly(boolean reserveOnWriteOrAnaly)
BaseFormula
setReserveOnWriteOrAnaly
在类中 BaseFormula
reserveOnWriteOrAnaly
- 需要保留公式则设置为true,否则设置为falsepublic Expression parse(CalculatorProvider cal) throws com.fr.third.antlr.ANTLRException
parse
在接口中 FormulaProvider
parse
在类中 AbstractFormulaProvider
cal
- 算子com.fr.third.antlr.ANTLRException
- 如果解析异常则抛出此异常public java.lang.String getXmlTag()
FormulaProvider
public void readXML(XMLableReader reader)
XMLReadable
readXML
在接口中 XMLReadable
readXML
在类中 BaseFormula
reader
- XML读取对象XMLableReader
public void writeXML(XMLPrintWriter writer)
XMLWriter
writeXML
在接口中 XMLWriter
writeXML
在类中 BaseFormula
writer
- XML写入对象public boolean equals(java.lang.Object obj)
equals
在类中 BaseFormula
public ResultFormula clone() throws java.lang.CloneNotSupportedException
BaseFormula
clone
在接口中 FCloneable
clone
在接口中 FormulaProvider
clone
在类中 BaseFormula
java.lang.CloneNotSupportedException
- 不支持的克隆