https://issues.apache.org/bugzilla/show_bug.cgi?id=57426
Bug ID: 57426
Summary: CellStyle not applying after some columns
Product: POI
Version: 3.10-FINAL
Hardware: PC
Status: NEW
Severity: major
Priority: P2
Component: HSSF
Assignee: [email protected]
Reporter: [email protected]
I have to write data more than 70 columns and 40K rows.
After some no of columns CellStyle is not applying for entire column.
What i am doing is i am preparing one CellStyle per one column, while writing
to data i am applying cellstyle to each cell.
My code is as follows.
HSSFWorkbook workbook = new HSSFWorkbook();
HSSFWorkbook workbook = new HSSFWorkbook();
Sheet sheet = null;
Row row = null;
Cell cell = null;
CellStyle[] cellStyle = new CellStyle[noofcolumnscount];
cellStyle[colcount] = workbook.createCellStyle();
cellStyle[colcount].setFont(dataFont);
if (rptDetailsBean.getColumnDataType() != null &&
("NUMBER".equalsIgnoreCase(rptDetailsBean.getColumnDataType()) ||
"CURRENCY".equalsIgnoreCase(rptDetailsBean.getColumnDataType()))) {
cellStyle[colcount].setAlignment(HSSFCellStyle.ALIGN_RIGHT);
} else {
cellStyle[colcount].setAlignment(HSSFCellStyle.ALIGN_LEFT);
}
if (rptDetailsBean != null && rptDetailsBean.getFormat() != null) {
if (!isFormatValid(rptDetailsBean.getFormat(),
rptDetailsBean.getColumnDataType())) {
throw new java.lang.Exception("Format at " + (colcount) + "is
not valid");
}
cellStyle[colcount].setDataFormat(createHelper.createDataFormat().getFormat(rptDetailsBean.getFormat()));
}
i am applying style while writing each cell while looping trough resultset
cell = row.createCell(colcount);
int dataLength = 15;
if ("DATE".equalsIgnoreCase(rptDetailsBean.getColumnDataType()))
{
if (rs.getTimestamp(selectClause) != null) {
cell.setCellValue(rs.getTimestamp(selectClause));
cell.setCellStyle(cellStyle[colcount]);
} else {
cell.setCellValue("");
cell.setCellStyle(cellStyle[colcount]);
}
} else {
if
("NUMBER".equalsIgnoreCase(rptDetailsBean.getColumnDataType()) ||
"CURRENCY".equalsIgnoreCase(rptDetailsBean.getColumnDataType())) {
if ((Double) rs.getDouble(selectClause) != null &&
!rs.wasNull()) {
cell.setCellValue(rs.getDouble(selectClause));
cell.setCellStyle(cellStyle[colcount]);
} else {
cell.setCellValue("");
cell.setCellStyle(cellStyle[colcount]);
}
} else {
if (rs.getString(selectClause) != null) {
dataLength = rs.getString(selectClause).length();
cell.setCellValue(rs.getString(selectClause));
cell.setCellStyle(cellStyle[colcount]);
} else {
cell.setCellValue("");
cell.setCellStyle(cellStyle[colcount]);
}
}
}
Can you help in this.
--
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]