type check error code when setting cell error value on HSSFCell
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1748172 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
8bf974b185
commit
ef3564968a
@ -771,24 +771,41 @@ public class HSSFCell implements Cell {
|
|||||||
* precalculated value , for errors we'll set
|
* precalculated value , for errors we'll set
|
||||||
* its value. For other types we will change the cell to an error
|
* its value. For other types we will change the cell to an error
|
||||||
* cell and set its value.
|
* cell and set its value.
|
||||||
|
* For error code byte, see {@link FormulaError}.
|
||||||
|
* @deprecated 3.15 beta 2. Use {@link #setCellErrorValue(FormulaError)} instead.
|
||||||
|
*/
|
||||||
|
public void setCellErrorValue(byte errorCode) {
|
||||||
|
FormulaError error = FormulaError.forInt(errorCode);
|
||||||
|
setCellErrorValue(error);
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* set a error value for the cell
|
||||||
|
*
|
||||||
|
* @param error the error value to set this cell to. For formulas we'll set the
|
||||||
|
* precalculated value , for errors we'll set
|
||||||
|
* its value. For other types we will change the cell to an error
|
||||||
|
* cell and set its value.
|
||||||
*/
|
*/
|
||||||
@SuppressWarnings("fallthrough")
|
@SuppressWarnings("fallthrough")
|
||||||
public void setCellErrorValue(byte errorCode) {
|
public void setCellErrorValue(FormulaError error) {
|
||||||
int row=_record.getRow();
|
int row=_record.getRow();
|
||||||
short col=_record.getColumn();
|
short col=_record.getColumn();
|
||||||
short styleIndex=_record.getXFIndex();
|
short styleIndex=_record.getXFIndex();
|
||||||
|
byte code = error.getCode();
|
||||||
switch (_cellType) {
|
switch (_cellType) {
|
||||||
default:
|
default:
|
||||||
setCellType(CELL_TYPE_ERROR, false, row, col, styleIndex);
|
setCellType(CELL_TYPE_ERROR, false, row, col, styleIndex);
|
||||||
// fall through
|
// fall through
|
||||||
case CELL_TYPE_ERROR:
|
case CELL_TYPE_ERROR:
|
||||||
(( BoolErrRecord ) _record).setValue(errorCode);
|
(( BoolErrRecord ) _record).setValue(code);
|
||||||
break;
|
break;
|
||||||
case CELL_TYPE_FORMULA:
|
case CELL_TYPE_FORMULA:
|
||||||
((FormulaRecordAggregate)_record).setCachedErrorResult(errorCode);
|
((FormulaRecordAggregate)_record).setCachedErrorResult(code);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Chooses a new boolean value for the cell when its type is changing.<p/>
|
* Chooses a new boolean value for the cell when its type is changing.<p/>
|
||||||
*
|
*
|
||||||
|
Loading…
Reference in New Issue
Block a user