List of usage examples for org.apache.poi.ss.usermodel CellStyle setFont
void setFont(Font font);
From source file:com.globalsight.everest.webapp.pagehandler.administration.reports.VendorPOXlsReport.java
License:Apache License
private CellStyle getFailedDateStyle(Workbook p_workbook) throws Exception { if (failedDateStyle == null) { Font dateFont = p_workbook.createFont(); dateFont.setFontName("Arial"); dateFont.setFontHeightInPoints((short) 10); DataFormat format = p_workbook.createDataFormat(); CellStyle cs = p_workbook.createCellStyle(); cs.setFont(dateFont); cs.setDataFormat(format.getFormat("M/d/yy")); cs.setWrapText(false);//from w w w.ja va2 s . com cs.setFillPattern(CellStyle.SOLID_FOREGROUND); cs.setFillForegroundColor(IndexedColors.RED.getIndex()); failedDateStyle = cs; } return failedDateStyle; }
From source file:com.griffinslogistics.document.excel.BDLGenerator.java
private static Map<String, CellStyle> createStyles(Workbook workbook) { Map<String, CellStyle> styles = new HashMap<String, CellStyle>(); CellStyle style; Font titleFont = workbook.createFont(); titleFont.setFontHeightInPoints((short) 26); titleFont.setFontName("Calibri"); titleFont.setBoldweight(Font.BOLDWEIGHT_BOLD); style = workbook.createCellStyle();/*from w ww.j av a2 s . co m*/ style.setFont(titleFont); style.setAlignment(CellStyle.ALIGN_CENTER); styles.put("title", style); titleFont = workbook.createFont(); titleFont.setFontHeightInPoints((short) 18); titleFont.setFontName("Calibri"); style = workbook.createCellStyle(); style.setFont(titleFont); style.setAlignment(CellStyle.ALIGN_JUSTIFY); styles.put("pulsioName", style); titleFont = workbook.createFont(); titleFont.setFontHeightInPoints((short) 14); titleFont.setFontName("Calibri"); style = workbook.createCellStyle(); style.setFont(titleFont); style.setAlignment(CellStyle.ALIGN_JUSTIFY); styles.put("contacts", style); CellStyle footerStyle = workbook.createCellStyle(); Font footerFont = workbook.createFont(); footerFont.setFontHeightInPoints((short) 14); footerFont.setFontName("Calibri"); footerFont.setBoldweight(Font.BOLDWEIGHT_BOLD); footerStyle.setFont(footerFont); footerStyle.setAlignment(CellStyle.ALIGN_JUSTIFY); styles.put("footer", footerStyle); titleFont = workbook.createFont(); titleFont.setFontHeightInPoints((short) 14); titleFont.setFontName("Calibri"); titleFont.setBoldweight(Font.BOLDWEIGHT_BOLD); titleFont.setItalic(true); style = workbook.createCellStyle(); style.setFont(titleFont); style.setAlignment(CellStyle.ALIGN_CENTER); style.setWrapText(true); style.setFillForegroundColor(HSSFColor.GREY_25_PERCENT.index); style.setFillPattern(CellStyle.SOLID_FOREGROUND); style.setBorderLeft(CellStyle.BORDER_MEDIUM); style.setBorderTop(CellStyle.BORDER_MEDIUM); style.setBorderRight(CellStyle.BORDER_THIN); style.setBorderBottom(CellStyle.BORDER_THIN); styles.put("tableHeadersLeft", style); CellStyle headerRowMiddleCellStyle = workbook.createCellStyle(); headerRowMiddleCellStyle.cloneStyleFrom(style); headerRowMiddleCellStyle.setBorderLeft(CellStyle.BORDER_THIN); styles.put("tableHeadersMiddle", headerRowMiddleCellStyle); CellStyle headerRowRightCellStyle = workbook.createCellStyle(); headerRowRightCellStyle.cloneStyleFrom(style); headerRowRightCellStyle.setBorderRight(CellStyle.BORDER_MEDIUM); styles.put("tableHeadersRight", headerRowRightCellStyle); CellStyle footerRowRightCellStyle = workbook.createCellStyle(); footerRowRightCellStyle.cloneStyleFrom(style); footerRowRightCellStyle.setFillPattern(CellStyle.NO_FILL); footerRowRightCellStyle.setBorderRight(CellStyle.BORDER_MEDIUM); footerRowRightCellStyle.setBorderBottom(CellStyle.BORDER_MEDIUM); styles.put("tableFooters", footerRowRightCellStyle); CellStyle bodyRowLeftCellStyle = workbook.createCellStyle(); bodyRowLeftCellStyle.cloneStyleFrom(style); Font titleBodyFont = workbook.createFont(); titleBodyFont.setFontHeightInPoints((short) 14); titleBodyFont.setFontName("Calibri"); bodyRowLeftCellStyle.setFont(titleBodyFont); bodyRowLeftCellStyle.setBorderTop(CellStyle.BORDER_THIN); bodyRowLeftCellStyle.setFillPattern(CellStyle.NO_FILL); styles.put("tableBodyLeft", bodyRowLeftCellStyle); CellStyle bodyRowMiddleCellStyle = workbook.createCellStyle(); bodyRowMiddleCellStyle.cloneStyleFrom(bodyRowLeftCellStyle); bodyRowMiddleCellStyle.setBorderLeft(CellStyle.BORDER_THIN); styles.put("tableBodyMiddle", bodyRowMiddleCellStyle); CellStyle bodyRowRightCellStyle = workbook.createCellStyle(); bodyRowRightCellStyle.cloneStyleFrom(bodyRowMiddleCellStyle); bodyRowRightCellStyle.setBorderRight(CellStyle.BORDER_MEDIUM); styles.put("tableBodyRight", bodyRowRightCellStyle); return styles; }
From source file:com.griffinslogistics.document.excel.BookLabelGenerator.java
private static Map<String, CellStyle> createStyles(XSSFWorkbook workbook) { Map<String, CellStyle> styles = new HashMap<String, CellStyle>(); CellStyle smallStyle = workbook.createCellStyle(); Font font = workbook.createFont(); font.setFontHeightInPoints((short) 10); smallStyle.setBorderBottom(CellStyle.BORDER_MEDIUM); smallStyle.setBorderLeft(CellStyle.BORDER_MEDIUM); smallStyle.setBorderRight(CellStyle.BORDER_MEDIUM); smallStyle.setBorderTop(CellStyle.BORDER_MEDIUM); smallStyle.setFont(font); smallStyle.setAlignment(CellStyle.ALIGN_CENTER); smallStyle.setVerticalAlignment(CellStyle.VERTICAL_CENTER); styles.put(STYLE_SMALL_FONT, smallStyle); CellStyle labelStyle = workbook.createCellStyle(); Font labelFont = workbook.createFont(); labelFont.setFontHeightInPoints((short) 20); labelStyle.setBorderBottom(CellStyle.BORDER_THIN); labelStyle.setBorderLeft(CellStyle.BORDER_MEDIUM); labelStyle.setBorderRight(CellStyle.BORDER_THIN); labelStyle.setBorderTop(CellStyle.BORDER_THIN); labelStyle.setFont(labelFont);// ww w. java 2 s.co m labelStyle.setAlignment(CellStyle.ALIGN_CENTER); labelStyle.setVerticalAlignment(CellStyle.VERTICAL_CENTER); labelStyle.setWrapText(true); styles.put(STYLE_LABEL, labelStyle); CellStyle contentStyle = workbook.createCellStyle(); Font contentFont = workbook.createFont(); contentFont.setFontHeightInPoints((short) 25); contentFont.setBoldweight(Font.BOLDWEIGHT_BOLD); contentStyle.setBorderBottom(CellStyle.BORDER_THIN); contentStyle.setBorderLeft(CellStyle.BORDER_THIN); contentStyle.setBorderRight(CellStyle.BORDER_MEDIUM); contentStyle.setBorderTop(CellStyle.BORDER_THIN); contentStyle.setFont(contentFont); contentStyle.setAlignment(CellStyle.ALIGN_CENTER); contentStyle.setWrapText(true); contentStyle.setVerticalAlignment(CellStyle.VERTICAL_CENTER); styles.put(STYLE_CONTENT, contentStyle); return styles; }
From source file:com.griffinslogistics.document.excel.CMRGenerator.java
private static Map<String, CellStyle> createStyles(Workbook workbook) { Map<String, CellStyle> styles = new HashMap<String, CellStyle>(); CellStyle style = workbook.createCellStyle(); Font font = workbook.createFont(); font.setBoldweight(Font.BOLDWEIGHT_BOLD); styles.put(DEFAULT_STYLE, style);// www.j av a2 s.c o m CellStyle labelStyle = workbook.createCellStyle(); font = workbook.createFont(); font.setFontHeightInPoints((short) 10); font.setColor(HSSFColor.DARK_RED.index); labelStyle.setFont(font); labelStyle.setWrapText(true); styles.put(LABEL_STYLE, labelStyle); CellStyle labelTopStyle = workbook.createCellStyle(); labelTopStyle.cloneStyleFrom(labelStyle); labelTopStyle.setBorderLeft(CellStyle.BORDER_MEDIUM); labelTopStyle.setBorderTop(CellStyle.BORDER_MEDIUM); labelTopStyle.setBorderRight(CellStyle.BORDER_MEDIUM); labelTopStyle.setVerticalAlignment(CellStyle.VERTICAL_TOP); styles.put(LABEL_TOP_STYLE, labelTopStyle); CellStyle labelMiddleStyle = workbook.createCellStyle(); labelMiddleStyle.cloneStyleFrom(labelStyle); labelMiddleStyle.setBorderLeft(CellStyle.BORDER_MEDIUM); labelMiddleStyle.setBorderRight(CellStyle.BORDER_MEDIUM); labelMiddleStyle.setVerticalAlignment(CellStyle.VERTICAL_TOP); styles.put(LABEL_MIDDLE_STYLE, labelMiddleStyle); CellStyle labelLeftStyle = workbook.createCellStyle(); labelLeftStyle.cloneStyleFrom(labelStyle); labelLeftStyle.setBorderLeft(CellStyle.BORDER_MEDIUM); labelLeftStyle.setVerticalAlignment(CellStyle.VERTICAL_TOP); styles.put(LABEL_LEFT_STYLE, labelLeftStyle); CellStyle labelRightStyle = workbook.createCellStyle(); labelRightStyle.cloneStyleFrom(labelStyle); labelRightStyle.setBorderRight(CellStyle.BORDER_MEDIUM); labelRightStyle.setVerticalAlignment(CellStyle.VERTICAL_TOP); styles.put(LABEL_RIGHT_STYLE, labelRightStyle); CellStyle labelBottomStyle = workbook.createCellStyle(); labelBottomStyle.cloneStyleFrom(labelStyle); labelBottomStyle.setBorderLeft(CellStyle.BORDER_MEDIUM); labelBottomStyle.setBorderRight(CellStyle.BORDER_MEDIUM); labelBottomStyle.setBorderBottom(CellStyle.BORDER_MEDIUM); styles.put(LABEL_BOTTOM_STYLE, labelBottomStyle); CellStyle labelWholeStyle = workbook.createCellStyle(); labelWholeStyle.cloneStyleFrom(labelStyle); labelWholeStyle.setBorderLeft(CellStyle.BORDER_MEDIUM); labelWholeStyle.setBorderRight(CellStyle.BORDER_MEDIUM); labelWholeStyle.setBorderBottom(CellStyle.BORDER_MEDIUM); labelWholeStyle.setBorderTop(CellStyle.BORDER_MEDIUM); labelWholeStyle.setVerticalAlignment(CellStyle.VERTICAL_TOP); styles.put(LABEL_WHOLE_STYLE, labelWholeStyle); Font contentFont = workbook.createFont(); contentFont.setFontHeightInPoints((short) 12); contentFont.setBoldweight(Font.BOLDWEIGHT_BOLD); CellStyle contentTopStyle = workbook.createCellStyle(); contentTopStyle.cloneStyleFrom(labelTopStyle); contentTopStyle.setFont(contentFont); styles.put(CONTENT_TOP_STYLE, contentTopStyle); CellStyle contentMiddleStyle = workbook.createCellStyle(); contentMiddleStyle.cloneStyleFrom(labelMiddleStyle); contentMiddleStyle.setFont(contentFont); styles.put(CONTENT_MIDDLE_STYLE, contentMiddleStyle); CellStyle contentMiddleAllignRightStyle = workbook.createCellStyle(); contentMiddleAllignRightStyle.cloneStyleFrom(contentMiddleStyle); contentMiddleAllignRightStyle.setBorderRight(CellStyle.BORDER_NONE); contentMiddleAllignRightStyle.setFont(contentFont); contentMiddleAllignRightStyle.setAlignment(CellStyle.ALIGN_RIGHT); styles.put(CONTENT_MIDDLE_ALLIGN_RIGHT_STYLE, contentMiddleAllignRightStyle); CellStyle contentBottomAllignCenterStyle = workbook.createCellStyle(); contentBottomAllignCenterStyle.cloneStyleFrom(contentMiddleStyle); contentBottomAllignCenterStyle.setBorderRight(CellStyle.BORDER_MEDIUM); contentBottomAllignCenterStyle.setBorderBottom(CellStyle.BORDER_MEDIUM); contentBottomAllignCenterStyle.setFont(contentFont); contentBottomAllignCenterStyle.setAlignment(CellStyle.ALIGN_CENTER); styles.put(CONTENT_BOTTOM_ALLIGN_CENTER_STYLE, contentBottomAllignCenterStyle); CellStyle contentMiddleNoBordersAllignRightStyle = workbook.createCellStyle(); contentMiddleNoBordersAllignRightStyle.cloneStyleFrom(contentMiddleAllignRightStyle); contentMiddleNoBordersAllignRightStyle.setBorderLeft(CellStyle.BORDER_NONE); contentMiddleNoBordersAllignRightStyle.setAlignment(CellStyle.ALIGN_CENTER); contentMiddleNoBordersAllignRightStyle.setFont(contentFont); styles.put(CONTENT_MIDDLE_NO_BORDERS_STYLE, contentMiddleNoBordersAllignRightStyle); CellStyle contentMiddleAllignCenterStyle = workbook.createCellStyle(); contentMiddleAllignCenterStyle.cloneStyleFrom(contentMiddleStyle); contentMiddleAllignCenterStyle.setAlignment(CellStyle.ALIGN_CENTER); contentMiddleAllignCenterStyle.setFont(contentFont); styles.put(CONTENT_MIDDLE_ALLIGN_CENTER_STYLE, contentMiddleAllignCenterStyle); CellStyle contentRightStyle = workbook.createCellStyle(); contentRightStyle.cloneStyleFrom(labelRightStyle); contentRightStyle.setFont(contentFont); styles.put(CONTENT_RIGHT_STYLE, contentRightStyle); CellStyle contentBottomStyle = workbook.createCellStyle(); contentBottomStyle.cloneStyleFrom(labelBottomStyle); contentBottomStyle.setFont(contentFont); styles.put(CONTENT_BOTTOM_STYLE, contentBottomStyle); CellStyle contentWholeStyle = workbook.createCellStyle(); contentWholeStyle.cloneStyleFrom(labelWholeStyle); contentWholeStyle.setFont(contentFont); styles.put(CONTENT_WHOLE_STYLE, contentWholeStyle); return styles; }
From source file:com.griffinslogistics.excel.BDLGenerator.java
private static Map<String, CellStyle> createStyles(Workbook workbook) { Map<String, CellStyle> styles = new HashMap<String, CellStyle>(); CellStyle style; Font titleFont = workbook.createFont(); titleFont.setFontHeightInPoints((short) 26); titleFont.setFontName("Calibri"); titleFont.setBoldweight(Font.BOLDWEIGHT_BOLD); style = workbook.createCellStyle();//from w w w. ja va2 s . c o m style.setFont(titleFont); style.setAlignment(CellStyle.ALIGN_CENTER); styles.put("title", style); titleFont = workbook.createFont(); titleFont.setFontHeightInPoints((short) 18); titleFont.setFontName("Calibri"); style = workbook.createCellStyle(); style.setFont(titleFont); style.setAlignment(CellStyle.ALIGN_JUSTIFY); styles.put("pulsioName", style); titleFont = workbook.createFont(); titleFont.setFontHeightInPoints((short) 14); titleFont.setFontName("Calibri"); style = workbook.createCellStyle(); style.setFont(titleFont); style.setAlignment(CellStyle.ALIGN_JUSTIFY); styles.put("contacts", style); CellStyle footerStyle = workbook.createCellStyle(); Font footerFont = workbook.createFont(); footerFont.setFontHeightInPoints((short) 14); footerFont.setFontName("Calibri"); footerFont.setBoldweight(Font.BOLDWEIGHT_BOLD); footerStyle.setFont(footerFont); footerStyle.setAlignment(CellStyle.ALIGN_JUSTIFY); styles.put("footer", footerStyle); titleFont = workbook.createFont(); titleFont.setFontHeightInPoints((short) 14); titleFont.setFontName("Calibri"); titleFont.setBoldweight(Font.BOLDWEIGHT_BOLD); titleFont.setItalic(true); style = workbook.createCellStyle(); style.setFont(titleFont); style.setAlignment(CellStyle.ALIGN_CENTER); style.setWrapText(true); // Override 25% grey to lighter grey HSSFWorkbook hssfWorkbook = (HSSFWorkbook) workbook; HSSFPalette palette = hssfWorkbook.getCustomPalette(); palette.setColorAtIndex(HSSFColor.GREY_25_PERCENT.index, (byte) 242, //RGB red (0-255) (byte) 242, //RGB green (byte) 242 //RGB blue ); style.setFillForegroundColor(HSSFColor.GREY_25_PERCENT.index); style.setFillPattern(CellStyle.SOLID_FOREGROUND); style.setBorderLeft(CellStyle.BORDER_MEDIUM); style.setBorderTop(CellStyle.BORDER_MEDIUM); style.setBorderRight(CellStyle.BORDER_THIN); style.setBorderBottom(CellStyle.BORDER_THIN); styles.put("tableHeadersLeft", style); CellStyle headerRowMiddleCellStyle = workbook.createCellStyle(); headerRowMiddleCellStyle.cloneStyleFrom(style); headerRowMiddleCellStyle.setBorderLeft(CellStyle.BORDER_THIN); styles.put("tableHeadersMiddle", headerRowMiddleCellStyle); CellStyle headerRowRightCellStyle = workbook.createCellStyle(); headerRowRightCellStyle.cloneStyleFrom(style); headerRowRightCellStyle.setBorderRight(CellStyle.BORDER_MEDIUM); styles.put("tableHeadersRight", headerRowRightCellStyle); CellStyle footerRowRightCellStyle = workbook.createCellStyle(); footerRowRightCellStyle.cloneStyleFrom(style); footerRowRightCellStyle.setFillPattern(CellStyle.NO_FILL); footerRowRightCellStyle.setBorderRight(CellStyle.BORDER_MEDIUM); footerRowRightCellStyle.setBorderBottom(CellStyle.BORDER_MEDIUM); styles.put("tableFooters", footerRowRightCellStyle); CellStyle bodyRowLeftCellStyle = workbook.createCellStyle(); bodyRowLeftCellStyle.cloneStyleFrom(style); Font titleBodyFont = workbook.createFont(); titleBodyFont.setFontHeightInPoints((short) 14); titleBodyFont.setFontName("Calibri"); bodyRowLeftCellStyle.setFont(titleBodyFont); bodyRowLeftCellStyle.setBorderTop(CellStyle.BORDER_THIN); bodyRowLeftCellStyle.setFillPattern(CellStyle.NO_FILL); styles.put("tableBodyLeft", bodyRowLeftCellStyle); CellStyle bodyRowMiddleCellStyle = workbook.createCellStyle(); bodyRowMiddleCellStyle.cloneStyleFrom(bodyRowLeftCellStyle); bodyRowMiddleCellStyle.setBorderLeft(CellStyle.BORDER_THIN); styles.put("tableBodyMiddle", bodyRowMiddleCellStyle); CellStyle bodyRowRightCellStyle = workbook.createCellStyle(); bodyRowRightCellStyle.cloneStyleFrom(bodyRowMiddleCellStyle); bodyRowRightCellStyle.setBorderRight(CellStyle.BORDER_MEDIUM); styles.put("tableBodyRight", bodyRowRightCellStyle); return styles; }
From source file:com.griffinslogistics.excel.BookLabelGenerator.java
private static Map<String, CellStyle> createStyles(XSSFWorkbook workbook) { Map<String, CellStyle> styles = new HashMap<String, CellStyle>(); CellStyle smallStyle = workbook.createCellStyle(); Font font = workbook.createFont(); font.setFontHeightInPoints((short) 10); smallStyle.setBorderBottom(CellStyle.BORDER_MEDIUM); smallStyle.setBorderLeft(CellStyle.BORDER_MEDIUM); smallStyle.setBorderRight(CellStyle.BORDER_MEDIUM); smallStyle.setBorderTop(CellStyle.BORDER_MEDIUM); smallStyle.setFont(font); smallStyle.setAlignment(CellStyle.ALIGN_CENTER); smallStyle.setVerticalAlignment(CellStyle.VERTICAL_CENTER); styles.put(STYLE_SMALL_FONT, smallStyle); CellStyle labelStyle = workbook.createCellStyle(); Font labelFont = workbook.createFont(); labelFont.setFontHeightInPoints((short) 13); labelStyle.setBorderBottom(CellStyle.BORDER_THIN); labelStyle.setBorderLeft(CellStyle.BORDER_MEDIUM); labelStyle.setBorderRight(CellStyle.BORDER_THIN); labelStyle.setBorderTop(CellStyle.BORDER_THIN); labelStyle.setFont(labelFont);//from w w w . j a va2 s . c o m labelStyle.setAlignment(CellStyle.ALIGN_CENTER); labelStyle.setVerticalAlignment(CellStyle.VERTICAL_CENTER); styles.put(STYLE_LABEL, labelStyle); CellStyle contentStyle = workbook.createCellStyle(); Font contentFont = workbook.createFont(); contentFont.setFontHeightInPoints((short) 15); contentFont.setBoldweight(Font.BOLDWEIGHT_BOLD); contentStyle.setBorderBottom(CellStyle.BORDER_THIN); contentStyle.setBorderLeft(CellStyle.BORDER_THIN); contentStyle.setBorderRight(CellStyle.BORDER_MEDIUM); contentStyle.setBorderTop(CellStyle.BORDER_THIN); contentStyle.setFont(contentFont); contentStyle.setAlignment(CellStyle.ALIGN_CENTER); contentStyle.setVerticalAlignment(CellStyle.VERTICAL_CENTER); styles.put(STYLE_CONTENT, contentStyle); return styles; }
From source file:com.gtwm.pb.servlets.ReportDownloader.java
License:Open Source License
/** * Return the session report as an Excel file * //from w ww . ja v a 2 s . co m * @param sessionData * @return */ private ByteArrayOutputStream getSessionReportAsExcel(CompanyInfo company, AppUserInfo user, SessionDataInfo sessionData) throws AgileBaseException, IOException, SQLException { BaseReportInfo report = sessionData.getReport(); if (report == null) { throw new ObjectNotFoundException("No report found in the session"); } // create Excel spreadsheet Workbook workbook = new SXSSFWorkbook(); // the pane 2 report String reportName = report.getReportName(); // Replace any invalid characters : \ / ? * [ or ] // http://support.microsoft.com/kb/215205 reportName = reportName.replaceAll("[\\/\\:\\\\\\?\\*\\[\\]]", "-"); Sheet reportSheet; try { reportSheet = workbook.createSheet(reportName); } catch (IllegalArgumentException iaex) { reportSheet = workbook.createSheet(reportName + " " + report.getInternalReportName()); } int rowNum = 0; // header CellStyle boldCellStyle = workbook.createCellStyle(); Font font = workbook.createFont(); font.setBoldweight(Font.BOLDWEIGHT_BOLD); boldCellStyle.setFont(font); Row row = reportSheet.createRow(rowNum); int columnNum = 0; Set<ReportFieldInfo> reportFields = report.getReportFields(); for (ReportFieldInfo reportField : reportFields) { Cell cell = row.createCell(columnNum); cell.setCellValue(reportField.getFieldName()); cell.setCellStyle(boldCellStyle); BaseField field = reportField.getBaseField(); if (field.equals(field.getTableContainingField().getPrimaryKey())) { reportSheet.setColumnHidden(columnNum, true); } columnNum++; } // data rowNum++; DataManagementInfo dataManagement = this.databaseDefn.getDataManagement(); List<DataRowInfo> reportDataRows = dataManagement.getReportDataRows(company, report, sessionData.getReportFilterValues(), false, sessionData.getReportSorts(), -1, QuickFilterType.AND, false); String fieldValue = ""; boolean defaultReport = (report.equals(report.getParentTable().getDefaultReport())); for (DataRowInfo dataRow : reportDataRows) { Map<BaseField, DataRowFieldInfo> dataRowFieldMap = dataRow.getDataRowFields(); row = reportSheet.createRow(rowNum); columnNum = 0; for (ReportFieldInfo reportField : reportFields) { BaseField field = reportField.getBaseField(); if (field instanceof TextField) { fieldValue = dataRowFieldMap.get(field).getKeyValue(); } else { fieldValue = dataRowFieldMap.get(field).getDisplayValue(); } if (!fieldValue.equals("")) { Cell cell; DatabaseFieldType dbFieldType = field.getDbType(); if ((defaultReport) && (field instanceof RelationField)) { dbFieldType = ((RelationField) field).getDisplayField().getDbType(); } switch (dbFieldType) { case FLOAT: cell = row.createCell(columnNum, Cell.CELL_TYPE_NUMERIC); try { cell.setCellValue(Double.valueOf(fieldValue.replace(",", ""))); } catch (NumberFormatException nfex) { // Fall back to a string representation cell = row.createCell(columnNum, Cell.CELL_TYPE_STRING); cell.setCellValue(fieldValue); } break; case INTEGER: case SERIAL: cell = row.createCell(columnNum, Cell.CELL_TYPE_NUMERIC); try { cell.setCellValue(Integer.valueOf(fieldValue.replace(",", ""))); } catch (NumberFormatException nfex) { logger.debug(nfex.toString() + ": value " + fieldValue.replace(",", "")); // Fall back to a string representation cell = row.createCell(columnNum, Cell.CELL_TYPE_STRING); cell.setCellValue(fieldValue); logger.debug("Successfully set string instead"); } break; case VARCHAR: default: cell = row.createCell(columnNum, Cell.CELL_TYPE_STRING); cell.setCellValue(Helpers.unencodeHtml(fieldValue)); break; } } columnNum++; } rowNum++; } // Export info worksheet addReportMetaDataWorksheet(company, user, sessionData, report, workbook); // one worksheet for each of the report summaries for (ChartInfo savedChart : report.getSavedCharts()) { this.addSummaryWorksheet(company, sessionData, savedChart, workbook); } // the default summary ChartInfo reportSummary = report.getChart(); Set<ChartAggregateInfo> aggregateFunctions = reportSummary.getAggregateFunctions(); Set<ChartGroupingInfo> groupings = reportSummary.getGroupings(); if ((groupings.size() > 0) || (aggregateFunctions.size() > 0)) { this.addSummaryWorksheet(company, sessionData, reportSummary, workbook); } // write to output ByteArrayOutputStream outputStream = new ByteArrayOutputStream(); workbook.write(outputStream); return outputStream; }
From source file:com.gtwm.pb.servlets.ReportDownloader.java
License:Open Source License
/** * Add a worksheet to the report for the specified workbook *///from ww w . j a va 2 s. c om private void addSummaryWorksheet(CompanyInfo company, SessionDataInfo sessionData, ChartInfo reportSummary, Workbook workbook) throws SQLException, CantDoThatException { ChartDataInfo reportSummaryData = this.databaseDefn.getDataManagement().getChartData(company, reportSummary, sessionData.getReportFilterValues(), false); if (reportSummaryData == null) { return; } int rowNum; Row row; Cell cell; int columnNum; String fieldValue; Sheet summarySheet; String summaryTitle = reportSummary.getTitle(); if (summaryTitle == null) { summaryTitle = "Summary"; } else if (summaryTitle.equals("")) { summaryTitle = "Summary"; } // Replace any invalid characters : \ / ? * [ or ] // http://support.microsoft.com/kb/215205 summaryTitle = summaryTitle.replaceAll("[\\/\\:\\\\\\?\\*\\[\\]]", "-"); try { summarySheet = workbook.createSheet(summaryTitle); } catch (IllegalArgumentException iaex) { // sheet name must be unique summarySheet = workbook.createSheet(summaryTitle + " " + reportSummary.getId()); } // header rowNum = 0; row = summarySheet.createRow(rowNum); columnNum = 0; CellStyle boldCellStyle = workbook.createCellStyle(); Font font = workbook.createFont(); font.setBoldweight(Font.BOLDWEIGHT_BOLD); boldCellStyle.setFont(font); Set<ChartAggregateInfo> aggregateFunctions = reportSummary.getAggregateFunctions(); Set<ChartGroupingInfo> groupings = reportSummary.getGroupings(); for (ChartGroupingInfo grouping : groupings) { BaseField groupingBaseField = grouping.getGroupingReportField().getBaseField(); if (groupingBaseField instanceof RelationField) { fieldValue = groupingBaseField.getTableContainingField() + ": " + ((RelationField) groupingBaseField).getDisplayField(); } else { fieldValue = groupingBaseField.getFieldName(); } cell = row.createCell(columnNum); cell.setCellValue(fieldValue); cell.setCellStyle(boldCellStyle); columnNum++; } for (ChartAggregateInfo aggregateFunction : aggregateFunctions) { fieldValue = aggregateFunction.toString(); cell = row.createCell(columnNum); cell.setCellValue(fieldValue); cell.setCellStyle(boldCellStyle); columnNum++; } List<ChartDataRowInfo> reportSummaryDataRows = reportSummaryData.getChartDataRows(); rowNum++; for (ChartDataRowInfo summaryDataRow : reportSummaryDataRows) { row = summarySheet.createRow(rowNum); columnNum = 0; for (ChartGroupingInfo grouping : groupings) { fieldValue = summaryDataRow.getGroupingValue(grouping); row.createCell(columnNum).setCellValue(fieldValue); columnNum++; } for (ChartAggregateInfo aggregateFunction : aggregateFunctions) { Double number = summaryDataRow.getAggregateValue(aggregateFunction).doubleValue(); row.createCell(columnNum, Cell.CELL_TYPE_NUMERIC).setCellValue(number); columnNum++; } rowNum++; } }
From source file:com.guardias.excel.CalendarToExcel.java
License:Apache License
public static void GenerateExcel(String RutaFile, Calendar calendar, String JSONContenidos, Medico AdministratorUser) throws IOException { Guardias[] lGuardias;// w w w .j a v a 2 s. c om Gson gson = new GsonBuilder().create(); lGuardias = gson.fromJson(JSONContenidos, Guardias[].class); boolean xlsx = true; int year = calendar.get(Calendar.YEAR); int month = calendar.get(Calendar.MONTH); DateFormat _format = new SimpleDateFormat("yyyy-MM-dd"); Workbook wb = xlsx ? new XSSFWorkbook() : new HSSFWorkbook(); Map<String, CellStyle> styles = createStyles(wb); calendar.set(Calendar.MONTH, month); calendar.set(Calendar.DAY_OF_MONTH, 1); calendar.setFirstDayOfWeek(Calendar.MONDAY); //create a sheet for each month Sheet sheet = wb.createSheet(_format.format(calendar.getTime())); CellStyle styleBORDER = wb.createCellStyle(); styleBORDER.setBorderRight(CellStyle.BORDER_THICK); styleBORDER.setBorderBottom(CellStyle.BORDER_THICK); styleBORDER.setBorderTop(CellStyle.BORDER_THICK); styleBORDER.setBorderLeft(CellStyle.BORDER_THICK); styleBORDER.setRightBorderColor(IndexedColors.LIGHT_ORANGE.getIndex()); styleBORDER.setLeftBorderColor(IndexedColors.LIGHT_ORANGE.getIndex()); styleBORDER.setTopBorderColor(IndexedColors.LIGHT_ORANGE.getIndex()); styleBORDER.setBottomBorderColor(IndexedColors.LIGHT_ORANGE.getIndex()); // //turn off gridlines sheet.setDisplayGridlines(true); sheet.autoSizeColumn(0); sheet.setPrintGridlines(true); sheet.setFitToPage(true); sheet.setHorizontallyCenter(true); PrintSetup printSetup = sheet.getPrintSetup(); printSetup.setLandscape(true); //header with month titles Row monthRow = sheet.createRow(1); Font fontH = wb.createFont(); CellStyle CStyleH = wb.createCellStyle(); CStyleH.setBorderRight(CellStyle.BORDER_THICK); CStyleH.setRightBorderColor(IndexedColors.LIGHT_ORANGE.getIndex()); fontH.setBold(true); CStyleH.setFont(fontH); for (int i = 0; i < days.length; i++) { Cell monthCell = monthRow.createCell(i); monthCell.setCellStyle(CStyleH); monthCell.setCellValue(days[i]); sheet.autoSizeColumn(i); } int cnt = 1, day = 1; int rownum = 2; for (int j = 0; j < 6; j++) { Row row = sheet.createRow(rownum++); Row rowGuardias; boolean bRowsCreated = false; // row.setHeightInPoints(100); for (int i = 0; i < days.length; i++) { Cell dayCell_1 = row.createCell(i); // Cell dayCell_2 = row.createCell(i*2 + 1); int currentDayOfWeek = (calendar.get(Calendar.DAY_OF_WEEK) + 7 - calendar.getFirstDayOfWeek()) % 7; //int day_of_week = calendar.get(Calendar.DAY_OF_WEEK); if (cnt > currentDayOfWeek && calendar.get(Calendar.MONTH) == month) { Font font = wb.createFont(); CellStyle CStyle = wb.createCellStyle(); short colorI = HSSFColor.AQUA.index; // presencia //font.set(colorI); CStyle.setFillForegroundColor(colorI); CStyle.setFillPattern(FillPatternType.SOLID_FOREGROUND); //CStyle.setBorderBottom( colorBorder); CStyle.setBorderRight(CellStyle.BORDER_THICK); CStyle.setBorderBottom(CellStyle.BORDER_THICK); CStyle.setBorderTop(CellStyle.BORDER_THICK); CStyle.setBorderLeft(CellStyle.BORDER_THICK); CStyle.setRightBorderColor(IndexedColors.LIGHT_ORANGE.getIndex()); CStyle.setLeftBorderColor(IndexedColors.LIGHT_ORANGE.getIndex()); CStyle.setTopBorderColor(IndexedColors.LIGHT_ORANGE.getIndex()); CStyle.setBottomBorderColor(IndexedColors.LIGHT_ORANGE.getIndex()); //CStyle.setFont(font); dayCell_1.setCellValue(day); dayCell_1.setCellStyle(CStyle); sheet.autoSizeColumn(i); String _Dia = _format.format(calendar.getTime()); int DataRowCont = 1; // esto sirve para coger la fila de los datos de cada dia for (int d = 0; d < lGuardias.length; d++) { Guardias oGuardias = lGuardias[d]; if (oGuardias.getDiaGuardia().equals(_Dia)) { if (!bRowsCreated) rowGuardias = sheet.createRow(rownum++); else rowGuardias = sheet.getRow(row.getRowNum() + DataRowCont); Cell dayCell_1_GUARDIAS = rowGuardias.createCell(i); // Cell dayCell_2_GUARDIAS = rowGuardias.createCell(i*2 + 1); List<Medico> _lMedico = MedicoDBImpl.getMedicos(oGuardias.getIdMedico(), AdministratorUser.getServicioId()); Medico _oMedico = _lMedico.get(0); font = wb.createFont(); CStyle = wb.createCellStyle(); // PRESENCIA // LOCALIZADA //XSSFRichTextString richString = new HSSFRichTextString(_oMedico.getApellidos() + " " + _oMedico.getNombre()); colorI = HSSFColor.LIGHT_ORANGE.index; // presencia if (oGuardias.getTipo().equals(Util.eTipoGuardia.LOCALIZADA.toString().toLowerCase())) colorI = HSSFColor.GREEN.index; else if (oGuardias.getTipo() .equals(Util.eTipoGuardia.REFUERZO.toString().toLowerCase())) colorI = HSSFColor.BLUE.index; else if (oGuardias.getTipo().equals("")) // residente colorI = HSSFColor.RED.index; font.setColor(colorI); CStyle.setFont(font); //CStyle.setBorderBottom( colorBorder); CStyle.setBorderRight(CellStyle.BORDER_THICK); CStyle.setRightBorderColor(IndexedColors.LIGHT_ORANGE.getIndex()); dayCell_1_GUARDIAS.setCellValue(_oMedico.getApellidos() + " " + _oMedico.getNombre() + "[" + _oMedico.getIDMEDICO() + "]"); dayCell_1_GUARDIAS.setCellStyle(CStyle); DataRowCont++; } } bRowsCreated = true; // dayCell_1_GUARDIAS.setCellValue(TextoGuardias.toString()); calendar.set(Calendar.DAY_OF_MONTH, ++day); /*if(i == 0 || i == days.length-1) { dayCell_1.setCellStyle(styles.get("weekend_left")); dayCell_2.setCellStyle(styles.get("weekend_right")); } else { dayCell_1.setCellStyle(styles.get("workday_left")); dayCell_2.setCellStyle(styles.get("workday_right")); } } else { dayCell_1.setCellStyle(styles.get("grey_left")); dayCell_2.setCellStyle(styles.get("grey_right"));*/ } cnt++; } if (calendar.get(Calendar.MONTH) > month) break; } // } // Write the output to a file String file = RutaFile; FileOutputStream out = new FileOutputStream(file); wb.write(out); out.close(); wb.close(); }
From source file:com.guardias.excel.CalendarToExcel.java
License:Apache License
/** * cell styles used for formatting calendar sheets *//*from w w w . j a v a2s. c o m*/ private static Map<String, CellStyle> createStyles(Workbook wb) { Map<String, CellStyle> styles = new HashMap<String, CellStyle>(); short borderColor = IndexedColors.GREY_50_PERCENT.getIndex(); CellStyle style; Font titleFont = wb.createFont(); titleFont.setFontHeightInPoints((short) 48); titleFont.setColor(IndexedColors.DARK_BLUE.getIndex()); style = wb.createCellStyle(); style.setAlignment(HorizontalAlignment.CENTER); style.setVerticalAlignment(VerticalAlignment.CENTER); style.setFont(titleFont); styles.put("title", style); Font monthFont = wb.createFont(); monthFont.setFontHeightInPoints((short) 12); monthFont.setColor(IndexedColors.WHITE.getIndex()); monthFont.setBold(true); style = wb.createCellStyle(); style.setAlignment(HorizontalAlignment.CENTER); style.setVerticalAlignment(VerticalAlignment.CENTER); style.setFillForegroundColor(IndexedColors.DARK_BLUE.getIndex()); style.setFillPattern(FillPatternType.SOLID_FOREGROUND); style.setFont(monthFont); styles.put("month", style); Font dayFont = wb.createFont(); dayFont.setFontHeightInPoints((short) 14); dayFont.setBold(true); style = wb.createCellStyle(); style.setAlignment(HorizontalAlignment.LEFT); style.setVerticalAlignment(VerticalAlignment.TOP); style.setFillForegroundColor(IndexedColors.LIGHT_CORNFLOWER_BLUE.getIndex()); style.setFillPattern(FillPatternType.SOLID_FOREGROUND); style.setBorderLeft(BorderStyle.THIN); style.setLeftBorderColor(borderColor); style.setBorderBottom(BorderStyle.THIN); style.setBottomBorderColor(borderColor); style.setFont(dayFont); styles.put("weekend_left", style); style = wb.createCellStyle(); style.setAlignment(HorizontalAlignment.CENTER); style.setVerticalAlignment(VerticalAlignment.TOP); style.setFillForegroundColor(IndexedColors.LIGHT_CORNFLOWER_BLUE.getIndex()); style.setFillPattern(FillPatternType.SOLID_FOREGROUND); style.setBorderRight(BorderStyle.THIN); style.setRightBorderColor(borderColor); style.setBorderBottom(BorderStyle.THIN); style.setBottomBorderColor(borderColor); styles.put("weekend_right", style); style = wb.createCellStyle(); style.setAlignment(HorizontalAlignment.LEFT); style.setVerticalAlignment(VerticalAlignment.TOP); style.setBorderLeft(BorderStyle.THIN); style.setFillForegroundColor(IndexedColors.WHITE.getIndex()); style.setFillPattern(FillPatternType.SOLID_FOREGROUND); style.setLeftBorderColor(borderColor); style.setBorderBottom(BorderStyle.THIN); style.setBottomBorderColor(borderColor); style.setFont(dayFont); styles.put("workday_left", style); style = wb.createCellStyle(); style.setAlignment(HorizontalAlignment.CENTER); style.setVerticalAlignment(VerticalAlignment.TOP); style.setFillForegroundColor(IndexedColors.WHITE.getIndex()); style.setFillPattern(FillPatternType.SOLID_FOREGROUND); style.setBorderRight(BorderStyle.THIN); style.setRightBorderColor(borderColor); style.setBorderBottom(BorderStyle.THIN); style.setBottomBorderColor(borderColor); styles.put("workday_right", style); style = wb.createCellStyle(); style.setBorderLeft(BorderStyle.THIN); style.setFillForegroundColor(IndexedColors.GREY_25_PERCENT.getIndex()); style.setFillPattern(FillPatternType.SOLID_FOREGROUND); style.setBorderBottom(BorderStyle.THIN); style.setBottomBorderColor(borderColor); styles.put("grey_left", style); style = wb.createCellStyle(); style.setFillForegroundColor(IndexedColors.GREY_25_PERCENT.getIndex()); style.setFillPattern(FillPatternType.SOLID_FOREGROUND); style.setBorderRight(BorderStyle.THIN); style.setRightBorderColor(borderColor); style.setBorderBottom(BorderStyle.THIN); style.setBottomBorderColor(borderColor); styles.put("grey_right", style); return styles; }