List of usage examples for org.apache.poi.hssf.usermodel HSSFFont setFontHeightInPoints
public void setFontHeightInPoints(short height)
From source file:module.siadap.domain.SiadapRootModule.java
License:Open Source License
private void populateSheet(HSSFSheet sheetToWriteTo, boolean considerQuotas, UnitSiadapWrapper unitToSearchIn, HSSFWorkbook wb, boolean shouldIncludeEndOfRole, boolean includeHarmonizationResponsibles, boolean shouldIncludeUniverse) { CreationHelper creationHelper = wb.getCreationHelper(); // make the sheet fit the page PrintSetup ps = sheetToWriteTo.getPrintSetup(); sheetToWriteTo.setAutobreaks(true);//from ww w. j a v a 2s.c o m ps.setFitHeight((short) 1); ps.setFitWidth((short) 1); /* ** styles ** */ // CostCenter style HSSFFont costCenterFont = wb.createFont(); costCenterFont.setColor(HSSFColor.DARK_BLUE.index); costCenterFont.setFontHeightInPoints((short) 12); costCenterFont.setBoldweight(Font.BOLDWEIGHT_BOLD); CellStyle costCenterStyle = wb.createCellStyle(); costCenterStyle.setFont(costCenterFont); // make the Unit header style CellStyle unitHeaderStyle = wb.createCellStyle(); unitHeaderStyle.setBorderBottom(CellStyle.BORDER_THIN); unitHeaderStyle.setBorderTop(CellStyle.BORDER_THIN); unitHeaderStyle.setBorderLeft(CellStyle.BORDER_THIN); unitHeaderStyle.setBorderRight(CellStyle.BORDER_THIN); unitHeaderStyle.setAlignment(CellStyle.ALIGN_CENTER); unitHeaderStyle.setVerticalAlignment(CellStyle.VERTICAL_CENTER); HSSFFont headerFont = wb.createFont(); headerFont.setFontHeightInPoints((short) 12); headerFont.setBoldweight(Font.BOLDWEIGHT_BOLD); headerFont.setItalic(true); unitHeaderStyle.setFont(headerFont); // make the default name style CellStyle defaultTextNameStyle = wb.createCellStyle(); defaultTextNameStyle.setBorderLeft(CellStyle.BORDER_THIN); defaultTextNameStyle.setBorderRight(CellStyle.BORDER_THIN); defaultTextNameStyle.setBorderBottom(CellStyle.BORDER_NONE); defaultTextNameStyle.setBorderTop(CellStyle.BORDER_NONE); defaultTextNameStyle.setVerticalAlignment(CellStyle.VERTICAL_CENTER); HSSFFont defaultFont = wb.createFont(); defaultFont.setFontHeightInPoints((short) 11); defaultTextNameStyle.setFont(defaultFont); // make the last line name style CellStyle defaultTextNameLastStyle = wb.createCellStyle(); defaultTextNameLastStyle.setBorderLeft(CellStyle.BORDER_THIN); defaultTextNameLastStyle.setBorderRight(CellStyle.BORDER_THIN); defaultTextNameLastStyle.setBorderBottom(CellStyle.BORDER_THIN); defaultTextNameLastStyle.setBorderTop(CellStyle.BORDER_NONE); defaultTextNameLastStyle.setVerticalAlignment(CellStyle.VERTICAL_CENTER); defaultTextNameLastStyle.setFont(defaultFont); // make the default IST-ID last line style CellStyle defaultTextIstIdLastStyle = wb.createCellStyle(); defaultTextIstIdLastStyle.setBorderLeft(CellStyle.BORDER_THIN); defaultTextIstIdLastStyle.setBorderBottom(CellStyle.BORDER_THIN); defaultTextIstIdLastStyle.setBorderTop(CellStyle.BORDER_NONE); defaultTextIstIdLastStyle.setBorderRight(CellStyle.BORDER_THIN); defaultTextIstIdLastStyle.setVerticalAlignment(CellStyle.VERTICAL_CENTER); defaultTextIstIdLastStyle.setAlignment(CellStyle.ALIGN_CENTER); defaultTextIstIdLastStyle.setFont(defaultFont); // make the default IST-ID style CellStyle defaultTextIstIdStyle = wb.createCellStyle(); defaultTextIstIdStyle.setBorderLeft(CellStyle.BORDER_THIN); defaultTextIstIdStyle.setBorderBottom(CellStyle.BORDER_NONE); defaultTextIstIdStyle.setBorderTop(CellStyle.BORDER_NONE); defaultTextIstIdStyle.setBorderRight(CellStyle.BORDER_THIN); defaultTextIstIdStyle.setVerticalAlignment(CellStyle.VERTICAL_CENTER); defaultTextIstIdStyle.setAlignment(CellStyle.ALIGN_CENTER); defaultTextIstIdStyle.setFont(defaultFont); // header style // CellStyle headerStyle = wb.createCellStyle(); // HSSFFont headerFont = wb.createFont(); // headerFont.setFontName(HSSFFont.FONT_ARIAL); // headerFont.setFontHeightInPoints((short) 10); // headerStyle.setFont(headerFont); // // first line style CellStyle firstLineStyle = wb.createCellStyle(); HSSFFont firstLineFont = wb.createFont(); firstLineFont.setColor(HSSFColor.DARK_BLUE.index); firstLineFont.setFontHeightInPoints((short) 14); firstLineFont.setBoldweight(Font.BOLDWEIGHT_BOLD); firstLineStyle.setFont(firstLineFont); firstLineStyle.setAlignment(CellStyle.ALIGN_CENTER); firstLineStyle.setVerticalAlignment(CellStyle.VERTICAL_CENTER); // second line style CellStyle secondLineStyle = wb.createCellStyle(); HSSFFont secondLineFont = wb.createFont(); secondLineFont.setBoldweight(Font.BOLDWEIGHT_BOLD); secondLineFont.setFontHeightInPoints((short) 14); secondLineStyle.setFont(secondLineFont); secondLineStyle.setAlignment(CellStyle.ALIGN_CENTER); secondLineStyle.setVerticalAlignment(CellStyle.VERTICAL_CENTER); // the style for Unit Harmonization responsibles - title CellStyle unitHarmonizationTitleStyle = wb.createCellStyle(); // the BLUE title font - is equal to 'firstLineFont' unitHarmonizationTitleStyle.setFont(firstLineFont); // now we just have to shade it unitHarmonizationTitleStyle.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND); unitHarmonizationTitleStyle.setFillForegroundColor(HSSFColor.GREY_25_PERCENT.index); unitHarmonizationTitleStyle.setAlignment(CellStyle.ALIGN_CENTER); // the style for Unit Harmonization responsibles - normal // let's create the BLUE Arial 14 font for the responsibles of // harmonization HSSFFont harmonizationResponsibleFont = wb.createFont(); harmonizationResponsibleFont.setColor(HSSFColor.DARK_BLUE.index); harmonizationResponsibleFont.setFontHeightInPoints((short) 14); CellStyle unitHarmonizationResponsibleStyle = wb.createCellStyle(); unitHarmonizationResponsibleStyle.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND); unitHarmonizationResponsibleStyle.setFillForegroundColor(HSSFColor.GREY_25_PERCENT.index); unitHarmonizationResponsibleStyle.setFont(harmonizationResponsibleFont); unitHarmonizationResponsibleStyle.setAlignment(CellStyle.ALIGN_CENTER); /* ** END of styles ** */ /* ** Immutable IST header ** */ HSSFHeader header = sheetToWriteTo.getHeader(); header.setCenter(HSSFHeader.font("Arial", "Normal") + HSSFHeader.fontSize((short) 10)); header.setCenter("Instituto Superior Tcnico"); int rowIndex = START_ROW_INDEX; int cellIndex = START_CELL_INDEX; int firstLineIndex = rowIndex++; int secondLineIndex = rowIndex++; /* ** Write the first lines with the dates ** */ HSSFRow row = sheetToWriteTo.createRow(firstLineIndex); HSSFCell cell = row.createCell(cellIndex); cell.setCellValue("SIADAP - LISTA DE AVALIADORES " + unitToSearchIn.getYear()); cell.setCellStyle(firstLineStyle); sheetToWriteTo .addMergedRegion(new CellRangeAddress(firstLineIndex, firstLineIndex, cellIndex, cellIndex + 3)); // second line if (!considerQuotas) { cellIndex = START_CELL_INDEX; row = sheetToWriteTo.createRow(secondLineIndex); cell = row.createCell(cellIndex); cell.setCellValue("PESSOAL CONTRATADO PELA ADIST"); cell.setCellStyle(secondLineStyle); } /* ** write the IST logo ** */ int pictureIdx = wb.addPicture(istLogoBytes, Workbook.PICTURE_TYPE_PNG); HSSFPatriarch drawingPatriarch = sheetToWriteTo.createDrawingPatriarch(); ClientAnchor clientAnchor = creationHelper.createClientAnchor(); clientAnchor.setCol1(cellIndex); clientAnchor.setRow1(rowIndex); HSSFPicture picture = drawingPatriarch.createPicture(clientAnchor, pictureIdx); // let's give the next item some space rowIndex += 6; /* ** Dynamic IST footer ** */ HSSFFooter footer = sheetToWriteTo.getFooter(); footer.setLeft("Lista gerada em: " + HSSFFooter.date() + " " + HSSFFooter.time()); footer.setCenter(HSSFFooter.page()); footer.setRight("SIADAP - Lista de avaliadores " + unitToSearchIn.getYear()); for (UnitSiadapWrapper eachUnit : unitToSearchIn .getAllChildUnits(unitToSearchIn.getConfiguration().getUnitRelations())) { Collection<Person> harmonizationResponsibles = eachUnit.getHarmonizationResponsibles(); if (includeHarmonizationResponsibles && !harmonizationResponsibles.isEmpty()) { // let's add the section stating the responsible for // Harmonization cellIndex = START_CELL_INDEX; row = sheetToWriteTo.createRow(++rowIndex); // let's merge the row sheetToWriteTo.addMergedRegion(new CellRangeAddress(rowIndex, rowIndex, cellIndex, cellIndex + 3)); cell = row.createCell(cellIndex); cell.setCellStyle(unitHarmonizationTitleStyle); cell.setCellValue("UNIDADE DE HARMONIZAO: " + eachUnit.getName()); // a 'blank' styled line row = sheetToWriteTo.createRow(++rowIndex); // merge it sheetToWriteTo.addMergedRegion(new CellRangeAddress(rowIndex, rowIndex, cellIndex, cellIndex + 3)); row.createCell(cellIndex).setCellStyle(unitHarmonizationResponsibleStyle); // each responsible has one of the following lines for (Person harmonizationResponsible : harmonizationResponsibles) { cellIndex = START_CELL_INDEX; row = sheetToWriteTo.createRow(++rowIndex); // merge it sheetToWriteTo .addMergedRegion(new CellRangeAddress(rowIndex, rowIndex, cellIndex, cellIndex + 3)); cell = row.createCell(cellIndex); cell.setCellStyle(unitHarmonizationResponsibleStyle); cell.setCellValue("RESPONS?VEL PELA HARMONIZAO: " + harmonizationResponsible.getName()); } // and let's add an extra 'blank' styled line row = sheetToWriteTo.createRow(++rowIndex); sheetToWriteTo.addMergedRegion(new CellRangeAddress(rowIndex, rowIndex, cellIndex, cellIndex + 3)); row.createCell(cellIndex).setCellStyle(unitHarmonizationResponsibleStyle); // and a regular one! (skip one in the index) ++rowIndex; } if (eachUnit.getQuotaAwareTotalPeopleWorkingInUnit(false, considerQuotas) > 0) { row = sheetToWriteTo.createRow(++rowIndex); cellIndex = START_CELL_INDEX; // write the unit name and cost center String unitNameWithCC = eachUnit.getUnit().getPartyName().getContent(); if (eachUnit.getUnit().getPartyTypesSet().contains(PartyType.readBy("CostCenter"))) { unitNameWithCC += " - " + eachUnit.getUnit().getAcronym(); } cell = row.createCell(cellIndex++); sheetToWriteTo.addMergedRegion(new CellRangeAddress(rowIndex, rowIndex, --cellIndex, ++cellIndex)); cell.setCellValue(unitNameWithCC); cell.setCellStyle(costCenterStyle); /* **** write the Unit header ***** */ // restart the cell's index cellIndex = START_CELL_INDEX; // IST id avaliado int firstLineAfterUnitNameIndex = ++rowIndex; int secondLineAfterUnitNameIndex = ++rowIndex; row = sheetToWriteTo.createRow(firstLineAfterUnitNameIndex); cell = row.createCell(cellIndex); cell.setCellStyle(unitHeaderStyle); cell.setCellValue("IST id."); row = sheetToWriteTo.createRow(secondLineAfterUnitNameIndex); cell = row.createCell(cellIndex); cell.setCellStyle(unitHeaderStyle); // merge the IST id sheetToWriteTo.addMergedRegion(new CellRangeAddress(firstLineAfterUnitNameIndex, secondLineAfterUnitNameIndex, cellIndex, cellIndex)); // Nome avaliado row = sheetToWriteTo.getRow(firstLineAfterUnitNameIndex); cell = row.createCell(++cellIndex); cell.setCellStyle(unitHeaderStyle); cell.setCellValue("Nome"); row = sheetToWriteTo.getRow(secondLineAfterUnitNameIndex); cell = row.createCell(cellIndex); cell.setCellStyle(unitHeaderStyle); // merge sheetToWriteTo.addMergedRegion(new CellRangeAddress(firstLineAfterUnitNameIndex, secondLineAfterUnitNameIndex, cellIndex, cellIndex)); if (shouldIncludeUniverse) { // SIADAP do avaliado row = sheetToWriteTo.getRow(firstLineAfterUnitNameIndex); cell = row.createCell(++cellIndex); cell.setCellStyle(unitHeaderStyle); cell.setCellValue("SIADAP"); row = sheetToWriteTo.getRow(secondLineAfterUnitNameIndex); cell = row.createCell(cellIndex); cell.setCellStyle(unitHeaderStyle); // merge sheetToWriteTo.addMergedRegion(new CellRangeAddress(firstLineAfterUnitNameIndex, secondLineAfterUnitNameIndex, cellIndex, cellIndex)); } // Ist id do avaliador row = sheetToWriteTo.getRow(firstLineAfterUnitNameIndex); cell = row.createCell(++cellIndex); cell.setCellStyle(unitHeaderStyle); cell.setCellValue("IST id."); row = sheetToWriteTo.getRow(secondLineAfterUnitNameIndex); cell = row.createCell(cellIndex); cell.setCellStyle(unitHeaderStyle); // merge sheetToWriteTo.addMergedRegion(new CellRangeAddress(firstLineAfterUnitNameIndex, secondLineAfterUnitNameIndex, cellIndex, cellIndex)); // avaliador row = sheetToWriteTo.getRow(firstLineAfterUnitNameIndex); cell = row.createCell(++cellIndex); cell.setCellStyle(unitHeaderStyle); cell.setCellValue("Avaliador"); row = sheetToWriteTo.getRow(secondLineAfterUnitNameIndex); cell = row.createCell(cellIndex); cell.setCellStyle(unitHeaderStyle); // merge sheetToWriteTo.addMergedRegion(new CellRangeAddress(firstLineAfterUnitNameIndex, secondLineAfterUnitNameIndex, cellIndex, cellIndex)); List<PersonSiadapWrapper> listToUse = (considerQuotas) ? eachUnit.getUnitEmployeesWithQuotas(false) : eachUnit.getUnitEmployeesWithoutQuotas(true); // now let's take care of exporting the persons for (PersonSiadapWrapper personWrapper : listToUse) { row = sheetToWriteTo.createRow(++rowIndex); // restart the cell's index cellIndex = START_CELL_INDEX; String istIdEvaluated = personWrapper.getPerson().getUser().getUsername(); cell = row.createCell(cellIndex++); cell.setCellValue(istIdEvaluated); cell.setCellStyle(defaultTextIstIdStyle); String nameEvaluatedPerson = personWrapper.getPerson().getName(); cell = row.createCell(cellIndex++); cell.setCellValue(nameEvaluatedPerson); cell.setCellStyle(defaultTextNameStyle); if (shouldIncludeUniverse) { Siadap siadap = personWrapper.getSiadap(); String siadapUniverseToBeWritten = (siadap == null || siadap.getDefaultSiadapUniverse() == null) ? "No definido" : siadap.getDefaultSiadapUniverse().getLocalizedName(); cell = row.createCell(cellIndex++); cell.setCellValue(siadapUniverseToBeWritten); cell.setCellStyle(defaultTextNameStyle); } PersonSiadapWrapper evaluatorWrapper = personWrapper.getEvaluator(); String istIdEvaluator = evaluatorWrapper == null ? "-" : evaluatorWrapper.getPerson().getUser().getUsername(); cell = row.createCell(cellIndex++); cell.setCellValue(istIdEvaluator); cell.setCellStyle(defaultTextIstIdStyle); String nameEvaluatorWrapper = evaluatorWrapper == null ? "-" : evaluatorWrapper.getName(); cell = row.createCell(cellIndex++); cell.setCellValue(nameEvaluatorWrapper); cell.setCellStyle(defaultTextNameStyle); } // let's make a bottom border on the last four cells for (int i = START_CELL_INDEX; i < START_CELL_INDEX + 4; i++) { cell = row.getCell(i); // let's diferentaitate between the IST-id and the name if (i == START_CELL_INDEX || i == START_CELL_INDEX + 2) // first // cell, // IST-ID // then. // or // third // cell // the // other // IST-ID { cell.setCellStyle(defaultTextIstIdLastStyle); } else { cell.setCellStyle(defaultTextNameLastStyle); } } row = sheetToWriteTo.createRow(++rowIndex); row = sheetToWriteTo.createRow(++rowIndex); } } sheetToWriteTo.autoSizeColumn(START_CELL_INDEX); sheetToWriteTo.autoSizeColumn(START_CELL_INDEX + 1); sheetToWriteTo.autoSizeColumn(START_CELL_INDEX + 2); sheetToWriteTo.autoSizeColumn(START_CELL_INDEX + 3); sheetToWriteTo.autoSizeColumn(START_CELL_INDEX + 4); // now let's resize the logo picture.resize(); }
From source file:mx.avanti.siract.ui.FiltrosBeanUI.java
public void Export2ExcelSemaforoProgramasEd() throws Throwable { //variables listaux ReporteAux reporteUI = new ReporteAux(); // objeto de hoja de excel HSSFWorkbook workbook = new HSSFWorkbook(); String nombreLibro = ""; //guardamos imagen UABC en Documento URL location = FiltrosBeanUI.class.getProtectionDomain().getCodeSource().getLocation(); String path = location.getFile(); String replace = path.replace("FiltrosBeanUI.class", "uabclogo.png"); //InputStream uabc_image = new FileInputStream(replace); //InputStream uabc_image = new FileInputStream("C://decode/uabclogo.png"); InputStream uabc_image = new FileInputStream("/home/user/decode/uabclogo.png"); byte[] bytes = IOUtils.toByteArray(uabc_image); int uabcLogo = workbook.addPicture(bytes, Workbook.PICTURE_TYPE_PNG); uabc_image.close();/*from ww w . jav a 2 s .c o m*/ //definimos estilo a celda titulo de los encabezados con logo escuela HSSFCellStyle style = workbook.createCellStyle(); HSSFFont font = workbook.createFont(); font.setFontName(HSSFFont.FONT_ARIAL); font.setFontHeightInPoints((short) 20); font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD); font.setColor(HSSFColor.GREEN.index); style.setFont(font); //setCellStyle(style); //definimos los bordes de celdas en tabla HSSFCellStyle borderstabla = workbook.createCellStyle(); borderstabla.setBorderBottom(HSSFCellStyle.BORDER_THIN); borderstabla.setBorderTop(HSSFCellStyle.BORDER_THIN); borderstabla.setBorderRight(HSSFCellStyle.BORDER_THIN); borderstabla.setBorderLeft(HSSFCellStyle.BORDER_THIN); font = workbook.createFont(); borderstabla.setFont(font); //definimos el estilo de las cabezeras de una tabla HSSFCellStyle headerTabla = workbook.createCellStyle(); HSSFFont fontwit = workbook.createFont(); fontwit.setColor(HSSFColor.WHITE.index); headerTabla.setBorderBottom(HSSFCellStyle.BORDER_THIN); headerTabla.setBorderTop(HSSFCellStyle.BORDER_THIN); headerTabla.setBorderRight(HSSFCellStyle.BORDER_THIN); headerTabla.setBorderLeft(HSSFCellStyle.BORDER_THIN); headerTabla.setFillForegroundColor(HSSFColor.GREEN.index); headerTabla.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND); headerTabla.setFont(fontwit); //aqui cambie headerTabla.setWrapText(true); //aqui cambie //if(criterio.equalsIgnoreCase("programa_educativo")){ HSSFSheet sheet = workbook.createSheet("Programas Educativos"); nombreLibro = "- Director"; // if(reporte.equalsIgnoreCase("entregados")){ nombreLibro = "RACT General " + nombreLibro; //definimos encabezado sheet = cabezeraGeneralExcel(sheet, uabcLogo, style); HSSFRow row1 = sheet.createRow(7); row1.setHeight((short) 600); HSSFCell cell = row1.createCell(1); cell.setCellValue( "Concentrado de Reporte de Avance de Contenido Temtico General por Programa Educativo"); cell.setCellStyle(style); // HSSFRow row1 = sheet.createRow(14); // row1.setHeightInPoints(56); // HSSFRow row2 = sheet.createRow(28); // row2.setHeightInPoints(56); // HSSFRow row3 = sheet.createRow(42); // row3.setHeightInPoints(56); //aqui cambie jesus ruelas //for(int i=0;i<28;i++){ // sheet.autoSizeColumn(1); // sheet.autoSizeColumn(2); // sheet.autoSizeColumn(3); // sheet.autoSizeColumn(4); //merge cells de Total de RACT General de + ProgEd sheet.addMergedRegion(new CellRangeAddress(13, 13, 1, 5)); sheet.addMergedRegion(new CellRangeAddress(13, 13, 7, 11)); sheet.addMergedRegion(new CellRangeAddress(13, 13, 13, 17)); sheet.addMergedRegion(new CellRangeAddress(13, 13, 19, 23)); sheet.addMergedRegion(new CellRangeAddress(13, 13, 25, 29)); sheet.addMergedRegion(new CellRangeAddress(27, 27, 1, 5)); sheet.addMergedRegion(new CellRangeAddress(27, 27, 7, 11)); sheet.addMergedRegion(new CellRangeAddress(27, 27, 13, 17)); sheet.addMergedRegion(new CellRangeAddress(27, 27, 19, 23)); sheet.addMergedRegion(new CellRangeAddress(27, 27, 25, 29)); sheet.addMergedRegion(new CellRangeAddress(41, 41, 1, 5)); sheet.addMergedRegion(new CellRangeAddress(41, 41, 7, 11)); sheet.addMergedRegion(new CellRangeAddress(41, 41, 13, 17)); sheet.addMergedRegion(new CellRangeAddress(41, 41, 19, 23)); sheet.addMergedRegion(new CellRangeAddress(41, 41, 25, 29)); sheet.addMergedRegion(new CellRangeAddress(55, 55, 1, 5)); sheet.addMergedRegion(new CellRangeAddress(55, 55, 7, 11)); sheet.addMergedRegion(new CellRangeAddress(55, 55, 13, 17)); sheet.addMergedRegion(new CellRangeAddress(55, 55, 19, 23)); sheet.addMergedRegion(new CellRangeAddress(55, 55, 25, 29)); sheet.addMergedRegion(new CellRangeAddress(69, 69, 1, 5)); sheet.addMergedRegion(new CellRangeAddress(69, 69, 7, 11)); sheet.addMergedRegion(new CellRangeAddress(69, 69, 13, 17)); sheet.addMergedRegion(new CellRangeAddress(69, 69, 19, 23)); sheet.addMergedRegion(new CellRangeAddress(69, 69, 25, 29)); //merge cells de programa educativo sheet.addMergedRegion(new CellRangeAddress(11, 11, 2, 3)); sheet.addMergedRegion(new CellRangeAddress(11, 11, 8, 9)); sheet.addMergedRegion(new CellRangeAddress(11, 11, 14, 15)); sheet.addMergedRegion(new CellRangeAddress(11, 11, 20, 21)); sheet.addMergedRegion(new CellRangeAddress(11, 11, 26, 27)); sheet.addMergedRegion(new CellRangeAddress(25, 25, 2, 3)); sheet.addMergedRegion(new CellRangeAddress(25, 25, 8, 9)); sheet.addMergedRegion(new CellRangeAddress(25, 25, 14, 15)); sheet.addMergedRegion(new CellRangeAddress(25, 25, 20, 21)); sheet.addMergedRegion(new CellRangeAddress(25, 25, 26, 27)); sheet.addMergedRegion(new CellRangeAddress(39, 39, 2, 3)); sheet.addMergedRegion(new CellRangeAddress(39, 39, 8, 9)); sheet.addMergedRegion(new CellRangeAddress(39, 39, 14, 15)); sheet.addMergedRegion(new CellRangeAddress(39, 39, 20, 21)); sheet.addMergedRegion(new CellRangeAddress(39, 39, 26, 27)); sheet.addMergedRegion(new CellRangeAddress(53, 53, 2, 3)); sheet.addMergedRegion(new CellRangeAddress(53, 53, 8, 9)); sheet.addMergedRegion(new CellRangeAddress(53, 53, 14, 15)); sheet.addMergedRegion(new CellRangeAddress(53, 53, 20, 21)); sheet.addMergedRegion(new CellRangeAddress(53, 53, 26, 27)); sheet.addMergedRegion(new CellRangeAddress(67, 67, 2, 3)); sheet.addMergedRegion(new CellRangeAddress(67, 67, 8, 9)); sheet.addMergedRegion(new CellRangeAddress(67, 67, 14, 15)); sheet.addMergedRegion(new CellRangeAddress(67, 67, 20, 21)); sheet.addMergedRegion(new CellRangeAddress(67, 67, 26, 27)); //} //aqui cambie jesus ruelas //mostraremos tabla con // Programas educativos // Total Racs entregados // Total Esperados //preparamos informacion para insertar List<Programaeducativo> programasByUnidad = getProgramasByUnidad(); List<Planestudio> planesByPrograma = getPlanesByPrograma(); ArrayList<String> listaProgEdContar = esperadosDelegate.getSemadoroProgEdValor(1); //setCellStyle(style); //setExDat(sheet, 7, 1, "Concentrado de Reporte de Avance de Contenido Temtico General por Programa Educativo"); //imrpiimiremos la tabla // Definimos los encabezados de la tabla int pos = 0; int row = 11; int col = 1; Boolean bandPe = false; for (Programaeducativo pe : programasByUnidad) { for (String peContar : listaProgEdContar) { String[] contarEntEspProgEd; if (listaProgEdContar.size() >= pos) { if (peContar.contains(pe.getPednombre())) { contarEntEspProgEd = listaProgEdContar.get(pos).split("-"); setExDat(sheet, row, col, "Clave"); setExDat(sheet, row, col + 1, "Programa Educativo"); setExDat(sheet, row, col + 3, "Plan de Estudios"); setExDat(sheet, row, col + 4, "Responsable"); // if (contarEntEspProgEd[0].equalsIgnoreCase(programasByUnidad.get(0).getPednombre())) { setExDat(sheet, row + 1, col, pe.getPedclave()); setExDat(sheet, row + 1, col + 1, pe.getPednombre()); if (!(planesByPrograma.isEmpty())) { setExDat(sheet, row + 1, col + 2, planesByPrograma.get(0).getPesvigenciaPlan()); } setExDat(sheet, row + 1, col + 3, ""); // } setExDat(sheet, row + 2, col, "Total de RACT General de " + programasByUnidad.get(0).getPednombre()); setExDat(sheet, row + 3, col, "Resumen de totales \r\n por numero de RACT"); setExDat(sheet, row + 3, col + 1, "Total entregados"); setExDat(sheet, row + 3, col + 2, "%"); setExDat(sheet, row + 3, col + 3, "Total esperados"); setExDat(sheet, row + 3, col + 4, "%"); sheet.getRow(row + 3).getCell(1);//aqui modifique jesus ruelas float porcentEnt = (Float.parseFloat(contarEntEspProgEd[1])) / (Float.parseFloat(contarEntEspProgEd[2])) * 100; float porcentEsp = 100 - porcentEnt; // setExDat(sheet, 15, 1, "Todos los RACTS"); // setExDat(sheet, 15, 2, contarEntEspProgEd[1]); // setExDat(sheet, 15, 3, "" + porcentEnt + "%"); // setExDat(sheet, 15, 4, contarEntEspProgEd[2]); // setExDat(sheet, 15, 5, "" + porcentEsp + "%"); //String[] contarEntEspProgEd; String[] contarEntRact1; String[] contarEntRact2; String[] contarEntRact3; int esperadosProgEdUnicoRact = 0; contarEntRact1 = contarEntEspProgEd[3].split(":"); contarEntRact2 = contarEntEspProgEd[4].split(":"); contarEntRact3 = contarEntEspProgEd[5].split(":"); esperadosProgEdUnicoRact = (Integer.parseInt(contarEntEspProgEd[2])) / 3; float contarPorcentEntRact1 = (Float.parseFloat(contarEntRact1[1])) / ((float) esperadosProgEdUnicoRact) * 100; float contarPorcentEntRact2 = (Float.parseFloat(contarEntRact2[1])) / ((float) esperadosProgEdUnicoRact) * 100; float contarPorcentEntRact3 = (Float.parseFloat(contarEntRact3[1])) / ((float) esperadosProgEdUnicoRact) * 100; float contarPorcentEspRact1 = 100 - contarPorcentEntRact1; float contarPorcentEspRact2 = 100 - contarPorcentEntRact2; float contarPorcentEspRact3 = 100 - contarPorcentEntRact3; setExDat(sheet, row + 4, col, "RACT 1"); setExDat(sheet, row + 4, col + 1, contarEntRact1[1]); setExDat(sheet, row + 4, col + 2, "" + contarPorcentEntRact1 + "%"); setExDat(sheet, row + 4, col + 3, esperadosProgEdUnicoRact); setExDat(sheet, row + 4, col + 4, "" + contarPorcentEspRact1 + "%"); setExDat(sheet, row + 5, col, "RACT 2"); setExDat(sheet, row + 5, col + 1, contarEntRact2[1]); setExDat(sheet, row + 5, col + 2, "" + contarPorcentEntRact2 + "%"); setExDat(sheet, row + 5, col + 3, esperadosProgEdUnicoRact); setExDat(sheet, row + 5, col + 4, "" + contarPorcentEspRact2 + "%"); setExDat(sheet, row + 6, col, "RACT 3"); setExDat(sheet, row + 6, col + 1, contarEntRact3[1]); setExDat(sheet, row + 6, col + 2, "" + contarPorcentEntRact3 + "%"); setExDat(sheet, row + 6, col + 3, esperadosProgEdUnicoRact); setExDat(sheet, row + 6, col + 4, "" + contarPorcentEspRact3 + "%"); setExDat(sheet, row + 7, col, "Todos los RACTS"); setExDat(sheet, row + 7, col + 1, contarEntEspProgEd[1]); setExDat(sheet, row + 7, col + 2, "" + porcentEnt + "%"); setExDat(sheet, row + 7, col + 3, contarEntEspProgEd[2]); setExDat(sheet, row + 7, col + 4, "" + porcentEsp + "%"); setStyleCell(sheet, headerTabla, row, col); setStyleCell(sheet, headerTabla, row, col + 1); setStyleCell(sheet, headerTabla, row, col + 2); setStyleCell(sheet, headerTabla, row, col + 3); setStyleCell(sheet, headerTabla, row, col + 4); setStyleCell(sheet, headerTabla, row + 2, col); setStyleCell(sheet, headerTabla, row + 2, col + 1); setStyleCell(sheet, headerTabla, row + 2, col + 2); setStyleCell(sheet, headerTabla, row + 2, col + 3); setStyleCell(sheet, headerTabla, row + 3, col); setStyleCell(sheet, headerTabla, row + 3, col + 1); setStyleCell(sheet, headerTabla, row + 3, col + 2); setStyleCell(sheet, headerTabla, row + 3, col + 3); setStyleCell(sheet, headerTabla, row + 3, col + 4); bandPe = true; pos++; } } if (bandPe == true) { if (col >= 25) { row = row + 14; col = -5; } col = col + 6; bandPe = false; } } } /*sheet.autoSizeColumn(2); sheet.autoSizeColumn(3); sheet.autoSizeColumn(4);*/ //imprimimos la informacion en su lugar int prow = 14; for (Programaeducativo programa : programasByUnidad) { if (selectProgramEducativo.contains(programa.getPedid().toString())) { setExDat(sheet, prow, 17, programa.getPednombre()); setExDat(sheet, prow, 18, 75); setExDat(sheet, prow, 19, 100); prow++; } } // } //} //finalizamos con //metodo para descargar el objeto System.out.println("Generando Excel"); if (criterio != "" && reporte != "") { FacesContext facesContext = FacesContext.getCurrentInstance(); ExternalContext externalContext = facesContext.getExternalContext(); externalContext.setResponseContentType("application/vnd.ms-excel"); externalContext.setResponseHeader("Content-Disposition", "attachment; filename=\"" + nombreLibro + ".xls\""); workbook.write(externalContext.getResponseOutputStream()); facesContext.responseComplete(); } else { System.out.println("No se Genero por: Criterio->" + criterio + " , Reporte->" + reporte); } }
From source file:mx.avanti.siract.ui.FiltrosBeanUI.java
public void Export2Excel() throws Throwable { //variables listaux ReporteAux reporteUI = new ReporteAux(); // objeto de hoja de excel HSSFWorkbook workbook = new HSSFWorkbook(); String nombreLibro = ""; //guardamos imagen UABC en Documento URL location = FiltrosBeanUI.class.getProtectionDomain().getCodeSource().getLocation(); String path = location.getFile(); String replace = path.replace("FiltrosBeanUI.class", "uabclogo.png"); //InputStream uabc_image = new FileInputStream(replace); //InputStream uabc_image = new FileInputStream("C://decode/uabclogo.png"); InputStream uabc_image = new FileInputStream("/home/user/decode/uabclogo.png"); byte[] bytes = IOUtils.toByteArray(uabc_image); int uabcLogo = workbook.addPicture(bytes, Workbook.PICTURE_TYPE_PNG); uabc_image.close();/* w w w .j ava2s . co m*/ //definimos estilo a celda titulo de los encabezados con logo escuela HSSFCellStyle style = workbook.createCellStyle(); HSSFFont font = workbook.createFont(); font.setFontName(HSSFFont.FONT_ARIAL); font.setFontHeightInPoints((short) 20); font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD); font.setColor(HSSFColor.GREEN.index); style.setFont(font); //definimos los bordes de celdas en tabla HSSFCellStyle borderstabla = workbook.createCellStyle(); borderstabla.setBorderBottom(HSSFCellStyle.BORDER_THIN); borderstabla.setBorderTop(HSSFCellStyle.BORDER_THIN); borderstabla.setBorderRight(HSSFCellStyle.BORDER_THIN); borderstabla.setBorderLeft(HSSFCellStyle.BORDER_THIN); font = workbook.createFont(); borderstabla.setFont(font); //definimos el estilo de las cabezeras de una tabla HSSFCellStyle headerTabla = workbook.createCellStyle(); HSSFFont fontwit = workbook.createFont(); fontwit.setColor(HSSFColor.WHITE.index); headerTabla.setBorderBottom(HSSFCellStyle.BORDER_THIN); headerTabla.setBorderTop(HSSFCellStyle.BORDER_THIN); headerTabla.setBorderRight(HSSFCellStyle.BORDER_THIN); headerTabla.setBorderLeft(HSSFCellStyle.BORDER_THIN); headerTabla.setFillForegroundColor(HSSFColor.GREEN.index); headerTabla.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND); headerTabla.setFont(fontwit); if (criterio.equalsIgnoreCase("programa_educativo")) { HSSFSheet sheet = workbook.createSheet("Graficos"); nombreLibro = "- Programa Educativo"; if (reporte.equalsIgnoreCase("entregados")) { nombreLibro = "Entregados " + nombreLibro; //definimos encabezado sheet = cabezeraGeneralExcel(sheet, uabcLogo, style); //mostraremos tabla con // Programas educativos // Total Racs entregados // Total Esperados //preparamos informacion para insertar List<Programaeducativo> programasByUnidad = getProgramasByUnidad(); //imrpiimiremos la tabla // Definimos los encabezados de la tabla setExDat(sheet, 13, 17, "Programa Educativo"); setExDat(sheet, 13, 18, "Total de RACT Entregados"); setExDat(sheet, 13, 19, "Total de RACT Esperados"); setExDat(sheet, 13, 20, " "); setStyleCell(sheet, headerTabla, 13, 17); setStyleCell(sheet, headerTabla, 13, 18); setStyleCell(sheet, headerTabla, 13, 19); //imprimimos la informacion en su lugar int prow = 14; for (Programaeducativo programa : programasByUnidad) { if (selectProgramEducativo.contains(programa.getPedid().toString())) { setExDat(sheet, prow, 17, programa.getPednombre()); setExDat(sheet, prow, 18, 75); setExDat(sheet, prow, 19, 100); prow++; } } //Se obtiene consulta con los parametros seleccionados ArrayList<String> entregados = esperadosDelegate.getFullProgramaEdu(unidadacademica.getUacid(), Plan, Programa, Ciclo); //agregamos programacion de grafico if (tipografico.equalsIgnoreCase("barras")) { BarChartCL demo1 = new BarChartCL("Estadsticas de Reportes Entregados por Programa Educativo", entregados, "ExcelPOIGrafica1"); demo1.addChartToExcel(demo1.createChart(demo1.createDataset()), workbook); } if (tipografico.equalsIgnoreCase("linea")) { LineChartDemo1 demo1 = new LineChartDemo1( "Estadsticas de Reportes Entregados por Programa Educativo", entregados, "ExcelPOIGrafica1"); demo1.addChartToExcel(demo1.createChart(demo1.createDataset()), workbook); } if (tipografico.equalsIgnoreCase("pastel")) { PieChartDemo1 demo1 = new PieChartDemo1( "Estadsticas de Reportes Entregados por Programa Educativo", entregados, "ExcelPOIGrafica1"); demo1.addChartToExcel(demo1.createChart(demo1.createDataset()), workbook); } //Se acaba grafico //recorreremos todo el list aux para revisar los programas educativos que utiliza //aun que podemos usar el selectProgramaeducativo /* Programacion de Hojas*/ for (Programaeducativo programa : programasByUnidad) { if (selectProgramEducativo.contains(Integer.toString(programa.getPedclave()))) { //aqui creamos la hoja para el programa sheet = workbook.createSheet(programa.getPednombre()); //sheet = cabezeraGeneralExcel(sheet,uabcLogo,style); lo moveremos al final de la hoja para que no sea mdoficada la imagen setExDat(sheet, 8, 3, "Concentrado de Reporte de Avance de Contenido Temtico de Entregados por Programa Educativo"); boolean autotam = true; //informacion de programa educativo tabla setExDat(sheet, 14, 1, "Clave"); setExDat(sheet, 14, 2, "Programa Educativo"); setExDat(sheet, 14, 3, "Plan de Estudios"); setExDat(sheet, 14, 4, "Responsable"); setStyleCell(sheet, headerTabla, 14, 1); setStyleCell(sheet, headerTabla, 14, 2); setStyleCell(sheet, headerTabla, 14, 3); setStyleCell(sheet, headerTabla, 14, 4); //llenado de informacion List<Planestudio> planes = filtrosBeanHelper.getConsultaDelegate() .getPlanesByPrograma(programa.getPedclave()); setExDat(sheet, 15, 1, programa.getPedclave()); setExDat(sheet, 15, 2, programa.getPednombre()); setExDat(sheet, 15, 3, planes.get(0).getPesvigenciaPlan()); setExDat(sheet, 15, 4, "Llenar en tabla"); setStyleCell(sheet, borderstabla, 15, 1); setStyleCell(sheet, borderstabla, 15, 2); setStyleCell(sheet, borderstabla, 15, 3); setStyleCell(sheet, borderstabla, 15, 4); boolean uno = true; int currow = 20; Planestudio planeact = new Planestudio(); for (Planestudio planeactn : planes) { planeact = planeactn; break; } ReporteAvanceAux tempAux = new ReporteAvanceAux(); for (ReporteAvanceAux aux : listaAux) { tempAux = aux; break; } //intentaremos usar un solo plan setExDat(sheet, currow, 1, "?reas de conocimiento"); setStyleCell(sheet, headerTabla, currow, 1); currow++; //cada plan de estudios tiene varias areas de conocimiento //List<Areaconocimiento> areasConocimiento = filtrosBeanHelper.getConsultaDelegate().getAreasByPlan( tempAux.getReporteAvance().getUnidadaprendizajeImparteProfesor().getGrupo().getPlanestudio().getPesid() ); //List<Areaconocimiento> areasConocimiento = filtrosBeanHelper.getConsultaDelegate().getAreasByPlan( planeact.getPesid() ); List<Areaconocimiento> areasConocimiento = filtrosBeanHelper.getConsultaDelegate() .getAreasByPlanClave(programa.getPedclave(), tempAux.getReporteAvance().getUnidadaprendizajeImparteProfesor().getGrupo() .getPlanestudio().getPesvigenciaPlan()); for (Areaconocimiento areaCon : areasConocimiento) { //clave , area de conocimiento, responsable setExDat(sheet, currow, 1, "Clave"); setExDat(sheet, currow, 2, "?rea de conocimiento"); setExDat(sheet, currow, 3, "Responsable"); setStyleCell(sheet, headerTabla, currow, 1); setStyleCell(sheet, headerTabla, currow, 2); setStyleCell(sheet, headerTabla, currow, 3); currow++; setExDat(sheet, currow, 1, areaCon.getAcoclave()); //clave setExDat(sheet, currow, 2, areaCon.getAconombre()); //area conociminto setExDat(sheet, currow, 3, ""); //responsable currow += 2; //obtenemos las unidades de aprendisake setExDat(sheet, currow, 1, "Clave unidad de aprendizaje"); setExDat(sheet, currow, 2, "Unidad de aprendizaje"); setExDat(sheet, currow, 3, "No. de empleado"); setExDat(sheet, currow, 4, "Nombre del profesor"); setExDat(sheet, currow, 5, "Grupo"); setExDat(sheet, currow, 6, "% Avance 1er reporte"); setExDat(sheet, currow, 7, "Fecha de elaboracin 1er RACT"); setExDat(sheet, currow, 8, "% Avance 2do reporte"); setExDat(sheet, currow, 9, "Fecha de elaboracin 2do RACT"); setExDat(sheet, currow, 10, "% Avance 3er reporte"); setExDat(sheet, currow, 11, "Fecha de elaboracin 3er RACT"); //autosize para la columna if (autotam) { sheet.autoSizeColumn(2); sheet.autoSizeColumn(4); sheet.autoSizeColumn(11); autotam = false; } // para formatear toda la linea for (int i = 1; i <= 11; i++) { //tenemos qu aajustar texto //tenemos que centrar el texto //cambiar el color de fondo setStyleCell(sheet, headerTabla, currow, i); } currow++; //List<Unidadaprendizaje> unidadesAprendisaje = filtrosBeanHelper.getConsultaDelegate().getUnidadByArea(areaCon.getAcoclave()); //de ls listaAux separamos los los reportes que correspondan a la unidad de aprendisaje acutal ArrayList<ReporteAvanceAux> tempListAux = new ArrayList<ReporteAvanceAux>(); for (ReporteAvanceAux aux : listaAux) { if (aux.getAreaConocimiento().getAcoclave() == areaCon.getAcoclave() && programa.getPedclave() == aux.getReporteAvance() .getUnidadaprendizajeImparteProfesor().getGrupo().getPlanestudio() .getProgramaeducativo().getPedclave()) { tempListAux.add(aux); } } //List<UnidadaprendizajeImparteProfesor> unidadesProfesor = filtrosBeanHelper.getConsultaDelegate().getUnidadesAprendisajeImparteProf(unidadApren.getUapid()); int uniprofeTemp = 0; for (ReporteAvanceAux auxRacs : tempListAux) { String nompreP = auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor() .getProfesor().getPronombre(); String apellidoPP = auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor() .getProfesor().getProapellidoPaterno(); String apellidoPM = auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor() .getProfesor().getProapellidoMaterno(); int claveUnidadApren = auxRacs.getReporteAvance() .getUnidadaprendizajeImparteProfesor().getUnidadaprendizaje().getUapclave(); String nombreUnidad = auxRacs.getReporteAvance() .getUnidadaprendizajeImparteProfesor().getUnidadaprendizaje() .getUapnombre(); uniprofeTemp = claveUnidadApren; setExDat(sheet, currow, 1, claveUnidadApren); //clave setExDat(sheet, currow, 2, nombreUnidad); //nombre unidad //reporteAvance.unidadaprendizajeImparteProfesor.profesor.pronumeroEmpleado setExDat(sheet, currow, 3, auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor() .getProfesor().getPronumeroEmpleado()); //numero empleado setExDat(sheet, currow, 4, apellidoPP + " " + apellidoPM + " " + nompreP); //nombre maestro setExDat(sheet, currow, 5, auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor().getGrupo() .getGponumero() + "-" + auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor() .getUiptipoSubgrupo() + "-" + auxRacs.getReporteAvance() .getUnidadaprendizajeImparteProfesor().getUipsubgrupo()); //grupo numero //marcamos bordes for (int i = 1; i <= 5; i++) { setStyleCell(sheet, borderstabla, currow, i); } //tienne que ser entregados/enviados if (auxRacs.getStatusRact1() != null) { if (auxRacs.getStatusRact1().equalsIgnoreCase("Enviado")) { System.out.println("Entro a enviados 1"); setExDat(sheet, currow, (4 + (1 * 2)), auxRacs.getPorcentAvanceRact1()); //% avance 7** setExDat(sheet, currow, (4 + (1 * 2) + 1), auxRacs.getFechaElaboracRact1().toString()); //fecha elabora 8*** setStyleCell(sheet, borderstabla, currow, (4 + (1 * 2))); setStyleCell(sheet, borderstabla, currow, (4 + (1 * 2) + 1)); } else { setExDat(sheet, currow, (4 + (1 * 2)), " "); //% avance 7** setExDat(sheet, currow, (4 + (1 * 2) + 1), " "); //fecha elabora 8*** setStyleCell(sheet, borderstabla, currow, (4 + (1 * 2))); setStyleCell(sheet, borderstabla, currow, (4 + (1 * 2) + 1)); } } else { setExDat(sheet, currow, (4 + (1 * 2)), " "); //% avance 7** setExDat(sheet, currow, (4 + (1 * 2) + 1), " "); //fecha elabora 8*** setStyleCell(sheet, borderstabla, currow, (4 + (1 * 2))); setStyleCell(sheet, borderstabla, currow, (4 + (1 * 2) + 1)); } if (auxRacs.getStatusRact2() != null) { if (auxRacs.getStatusRact2().equalsIgnoreCase("Enviado")) { setExDat(sheet, currow, (4 + (2 * 2)), auxRacs.getPorcentAvanceRact2()); //% avance 7** setExDat(sheet, currow, (4 + (2 * 2) + 1), auxRacs.getFechaElaboracRact2().toString()); //fecha elabora 8*** setStyleCell(sheet, borderstabla, currow, (4 + (2 * 2))); setStyleCell(sheet, borderstabla, currow, (4 + (2 * 2) + 1)); } else { setExDat(sheet, currow, (4 + (2 * 2)), " "); //% avance 7** setExDat(sheet, currow, (4 + (2 * 2) + 1), " "); //fecha elabora 8*** setStyleCell(sheet, borderstabla, currow, (4 + (2 * 2))); setStyleCell(sheet, borderstabla, currow, (4 + (2 * 2) + 1)); } } else { setExDat(sheet, currow, (4 + (2 * 2)), " "); //% avance 7** setExDat(sheet, currow, (4 + (2 * 2) + 1), " "); //fecha elabora 8*** setStyleCell(sheet, borderstabla, currow, (4 + (2 * 2))); setStyleCell(sheet, borderstabla, currow, (4 + (2 * 2) + 1)); } if (auxRacs.getStatusRact3() != null) { if (auxRacs.getStatusRact3().equalsIgnoreCase("Enviado")) { setExDat(sheet, currow, (4 + (3 * 2)), auxRacs.getPorcentAvanceRact3()); //% avance 7** setExDat(sheet, currow, (4 + (3 * 2) + 1), auxRacs.getFechaElaboracRact3().toString()); //fecha elabora 8*** setStyleCell(sheet, borderstabla, currow, (4 + (3 * 2))); setStyleCell(sheet, borderstabla, currow, (4 + (3 * 2) + 1)); } else { setExDat(sheet, currow, (4 + (3 * 2)), " "); //% avance 7** setExDat(sheet, currow, (4 + (3 * 2) + 1), " "); //fecha elabora 8*** setStyleCell(sheet, borderstabla, currow, (4 + (3 * 2))); setStyleCell(sheet, borderstabla, currow, (4 + (3 * 2) + 1)); } } else { setExDat(sheet, currow, (4 + (3 * 2)), " "); //% avance 7** setExDat(sheet, currow, (4 + (3 * 2) + 1), " "); //fecha elabora 8*** setStyleCell(sheet, borderstabla, currow, (4 + (3 * 2))); setStyleCell(sheet, borderstabla, currow, (4 + (3 * 2) + 1)); } currow++; } currow += 2; } //aqui modifique Jesus Ruelas - Entregados //aqui cambie headerTabla.setWrapText(true); //aqui cambie //aqui cambie jesus ruelas //for(int i=0;i<28;i++){ // sheet.autoSizeColumn(1); // sheet.autoSizeColumn(2); // sheet.autoSizeColumn(3); // sheet.autoSizeColumn(4); //merge cells de Total de RACT General de + ProgEd // sheet.addMergedRegion(new CellRangeAddress(13,13,1,5)); // sheet.addMergedRegion(new CellRangeAddress(13,13,7,11)); // sheet.addMergedRegion(new CellRangeAddress(13,13,13,17)); // sheet.addMergedRegion(new CellRangeAddress(13,13,19,23)); // sheet.addMergedRegion(new CellRangeAddress(13,13,25,29)); //} //aqui cambie jesus ruelas //mostraremos tabla con // Programas educativos // Total Racs entregados // Total Esperados //preparamos informacion para insertar // List<Programaeducativo> programasByUnidad = getProgramasByUnidad(); List<Planestudio> planesByPrograma = getPlanesByPrograma(); int UACid = 1; ArrayList<String> listaProgEdContar = esperadosDelegate.getSemadoroProgEdValor(UACid); //setCellStyle(style); //setExDat(sheet, 7, 1, "Concentrado de Reporte de Avance de Contenido Temtico General por Programa Educativo"); //imrpiimiremos la tabla // Definimos los encabezados de la tabla int pos = 0; int row = currow + 4; int col = 1; Boolean bandPe = false; //for (Programaeducativo pe : programasByUnidad) { for (String peContar : listaProgEdContar) { String[] contarEntEspProgEd; if (listaProgEdContar.size() >= pos) { if (peContar.contains(programa.getPednombre())) { contarEntEspProgEd = listaProgEdContar.get(pos).split("-"); setExDat(sheet, row, col, "Clave"); setExDat(sheet, row, col + 1, "Programa Educativo"); setExDat(sheet, row, col + 3, "Plan de Estudios"); setExDat(sheet, row, col + 4, "Responsable"); // if (contarEntEspProgEd[0].equalsIgnoreCase(programasByUnidad.get(0).getPednombre())) { setExDat(sheet, row + 1, col, programa.getPedclave()); setExDat(sheet, row + 1, col + 1, programa.getPednombre()); if (!(planesByPrograma.isEmpty())) { setExDat(sheet, row + 1, col + 2, planesByPrograma.get(0).getPesvigenciaPlan()); } setExDat(sheet, row + 1, col + 3, ""); // } // sheet.addMergedRegion(new CellRangeAddress(row+2,col,5,1)); setExDat(sheet, row + 2, col, "Total de RACT General de " + programa.getPednombre()); setExDat(sheet, row + 3, col, "Resumen de totales \r\n por numero de RACT"); setExDat(sheet, row + 3, col + 1, "Total entregados"); setExDat(sheet, row + 3, col + 2, "%"); setExDat(sheet, row + 3, col + 3, "Total esperados"); setExDat(sheet, row + 3, col + 4, "%"); sheet.getRow(row + 3).getCell(1);//aqui modifique jesus ruelas float porcentEnt = (Float.parseFloat(contarEntEspProgEd[1])) / (Float.parseFloat(contarEntEspProgEd[2])) * 100; float porcentEsp = 100 - porcentEnt; // setExDat(sheet, 15, 1, "Todos los RACTS"); // setExDat(sheet, 15, 2, contarEntEspProgEd[1]); // setExDat(sheet, 15, 3, "" + porcentEnt + "%"); // setExDat(sheet, 15, 4, contarEntEspProgEd[2]); // setExDat(sheet, 15, 5, "" + porcentEsp + "%"); //String[] contarEntEspProgEd; String[] contarEntRact1; String[] contarEntRact2; String[] contarEntRact3; int esperadosProgEdUnicoRact = 0; contarEntRact1 = contarEntEspProgEd[3].split(":"); contarEntRact2 = contarEntEspProgEd[4].split(":"); contarEntRact3 = contarEntEspProgEd[5].split(":"); esperadosProgEdUnicoRact = (Integer.parseInt(contarEntEspProgEd[2])) / 3; float contarPorcentEntRact1 = (Float.parseFloat(contarEntRact1[1])) / ((float) esperadosProgEdUnicoRact) * 100; float contarPorcentEntRact2 = (Float.parseFloat(contarEntRact2[1])) / ((float) esperadosProgEdUnicoRact) * 100; float contarPorcentEntRact3 = (Float.parseFloat(contarEntRact3[1])) / ((float) esperadosProgEdUnicoRact) * 100; float contarPorcentEspRact1 = 100 - contarPorcentEntRact1; float contarPorcentEspRact2 = 100 - contarPorcentEntRact2; float contarPorcentEspRact3 = 100 - contarPorcentEntRact3; setExDat(sheet, row + 4, col, "RACT 1"); setExDat(sheet, row + 4, col + 1, contarEntRact1[1]); setExDat(sheet, row + 4, col + 2, "" + contarPorcentEntRact1 + "%"); setExDat(sheet, row + 4, col + 3, esperadosProgEdUnicoRact); setExDat(sheet, row + 4, col + 4, "" + contarPorcentEspRact1 + "%"); setExDat(sheet, row + 5, col, "RACT 2"); setExDat(sheet, row + 5, col + 1, contarEntRact2[1]); setExDat(sheet, row + 5, col + 2, "" + contarPorcentEntRact2 + "%"); setExDat(sheet, row + 5, col + 3, esperadosProgEdUnicoRact); setExDat(sheet, row + 5, col + 4, "" + contarPorcentEspRact2 + "%"); setExDat(sheet, row + 6, col, "RACT 3"); setExDat(sheet, row + 6, col + 1, contarEntRact3[1]); setExDat(sheet, row + 6, col + 2, "" + contarPorcentEntRact3 + "%"); setExDat(sheet, row + 6, col + 3, esperadosProgEdUnicoRact); setExDat(sheet, row + 6, col + 4, "" + contarPorcentEspRact3 + "%"); setExDat(sheet, row + 7, col, "Todos los RACTS"); setExDat(sheet, row + 7, col + 1, contarEntEspProgEd[1]); setExDat(sheet, row + 7, col + 2, "" + porcentEnt + "%"); setExDat(sheet, row + 7, col + 3, contarEntEspProgEd[2]); setExDat(sheet, row + 7, col + 4, "" + porcentEsp + "%"); setStyleCell(sheet, headerTabla, row, col); setStyleCell(sheet, headerTabla, row, col + 1); setStyleCell(sheet, headerTabla, row, col + 2); setStyleCell(sheet, headerTabla, row, col + 3); setStyleCell(sheet, headerTabla, row, col + 4); setStyleCell(sheet, headerTabla, row + 2, col); setStyleCell(sheet, headerTabla, row + 2, col + 1); setStyleCell(sheet, headerTabla, row + 2, col + 2); setStyleCell(sheet, headerTabla, row + 2, col + 3); setStyleCell(sheet, headerTabla, row + 3, col); setStyleCell(sheet, headerTabla, row + 3, col + 1); setStyleCell(sheet, headerTabla, row + 3, col + 2); setStyleCell(sheet, headerTabla, row + 3, col + 3); setStyleCell(sheet, headerTabla, row + 3, col + 4); bandPe = true; pos++; } } // if (bandPe == true) { // if (col >= 25) { // row = row + 14; // col = -5; // } // col = col + 6; // bandPe = false; // } pos++; } //} //aqui modifique Jesus Ruelas sheet = cabezeraGeneralExcel(sheet, uabcLogo, style); } // fin del la comparacon de plan } // fin del for por plan de estudios } // fin de si es por entregados if(entregados) if (reporte.equalsIgnoreCase("noentregados")) { nombreLibro = "No Entregados " + nombreLibro; //definimos encabezado sheet = cabezeraGeneralExcel(sheet, uabcLogo, style); //mostraremos tabla con // Programas educativos // Total Racs entregados // Total Esperados //preparamos informacion para insertar List<Programaeducativo> programasByUnidad = getProgramasByUnidad(); //imrpiimiremos la tabla // Definimos los encabezados de la tabla setExDat(sheet, 13, 17, "Programa Educativo"); setExDat(sheet, 13, 18, "Total de RACT Entregados"); setExDat(sheet, 13, 19, "Total de RACT Esperados"); setExDat(sheet, 13, 20, " "); setStyleCell(sheet, headerTabla, 13, 17); setStyleCell(sheet, headerTabla, 13, 18); setStyleCell(sheet, headerTabla, 13, 19); //imprimimos la informacion en su lugar int prow = 14; for (Programaeducativo programa : programasByUnidad) { if (selectProgramEducativo.contains(programa.getPedid().toString())) { setExDat(sheet, prow, 17, programa.getPednombre()); setExDat(sheet, prow, 18, 75); setExDat(sheet, prow, 19, 100); prow++; } } //Se obtiene consulta con los parametros seleccionados ArrayList<String> entregados = esperadosDelegate.getFullProgramaEdu(unidadacademica.getUacid(), Plan, Programa, Ciclo); //agregamos programacion de grafico if (tipografico.equalsIgnoreCase("barras")) { BarChartCL demo1 = new BarChartCL("Estadsticas de Reportes Entregados por Programa Educativo", entregados, "ExcelPOIGrafica1"); demo1.addChartToExcel(demo1.createChart(demo1.createDataset()), workbook); } if (tipografico.equalsIgnoreCase("linea")) { LineChartDemo1 demo1 = new LineChartDemo1( "Estadsticas de Reportes Entregados por Programa Educativo", entregados, "ExcelPOIGrafica1"); demo1.addChartToExcel(demo1.createChart(demo1.createDataset()), workbook); } if (tipografico.equalsIgnoreCase("pastel")) { PieChartDemo1 demo1 = new PieChartDemo1( "Estadsticas de Reportes Entregados por Programa Educativo", entregados, "ExcelPOIGrafica1"); demo1.addChartToExcel(demo1.createChart(demo1.createDataset()), workbook); } //Se acaba grafico //recorreremos todo el list aux para revisar los programas educativos que utiliza //aun que podemos usar el selectProgramaeducativo /* Programacion de Hojas*/ for (Programaeducativo programa : programasByUnidad) { if (selectProgramEducativo.contains(Integer.toString(programa.getPedclave()))) { sheet = workbook.createSheet(programa.getPednombre()); sheet = cabezeraGeneralExcel(sheet, uabcLogo, style); setExDat(sheet, 8, 3, "Concentrado de Reporte de Avance de Contenido Temtico de Entregados por Programa Educativo"); boolean autotam = true; //informacion de programa educativo tabla setExDat(sheet, 14, 1, "Clave"); setExDat(sheet, 14, 2, "Programa Educativo"); setExDat(sheet, 14, 3, "Plan de Estudios"); setExDat(sheet, 14, 4, "Responsable"); setStyleCell(sheet, headerTabla, 14, 1); setStyleCell(sheet, headerTabla, 14, 2); setStyleCell(sheet, headerTabla, 14, 3); setStyleCell(sheet, headerTabla, 14, 4); //llenado de informacion // se tiene imprimir por cada plan de estudios??? setExDat(sheet, 15, 1, programa.getPedclave()); setExDat(sheet, 15, 2, programa.getPednombre()); setExDat(sheet, 15, 3, ""); setExDat(sheet, 15, 4, ""); setStyleCell(sheet, borderstabla, 15, 1); setStyleCell(sheet, borderstabla, 15, 2); setStyleCell(sheet, borderstabla, 15, 3); setStyleCell(sheet, borderstabla, 15, 4); List<Planestudio> planes = filtrosBeanHelper.getConsultaDelegate() .getPlanesByPrograma(programa.getPedid()); boolean uno = true; int currow = 20; ReporteAvanceAux tempAux = new ReporteAvanceAux(); for (ReporteAvanceAux aux : listaAux) { tempAux = aux; break; } //intentaremos usar un solo plan setExDat(sheet, currow, 1, "?reas de conocimiento"); setStyleCell(sheet, headerTabla, currow, 1); currow++; //cada plan de estudios tiene varias areas de conocimiento //List<Areaconocimiento> areasConocimiento = filtrosBeanHelper.getConsultaDelegate().getAreasByPlan( tempAux.getReporteAvance().getUnidadaprendizajeImparteProfesor().getGrupo().getPlanestudio().getPesid() ); List<Areaconocimiento> areasConocimiento = filtrosBeanHelper.getConsultaDelegate() .getAreasByPlanClave(programa.getPedclave(), tempAux.getReporteAvance().getUnidadaprendizajeImparteProfesor().getGrupo() .getPlanestudio().getPesvigenciaPlan()); for (Areaconocimiento areaCon : areasConocimiento) { //clave , area de conocimiento, responsable setExDat(sheet, currow, 1, "Clave"); setExDat(sheet, currow, 2, "?rea de conocimiento"); setExDat(sheet, currow, 3, "Responsable"); setStyleCell(sheet, headerTabla, currow, 1); setStyleCell(sheet, headerTabla, currow, 2); setStyleCell(sheet, headerTabla, currow, 3); currow++; setExDat(sheet, currow, 1, areaCon.getAcoclave()); //clave setExDat(sheet, currow, 2, areaCon.getAconombre()); //area conociminto setExDat(sheet, currow, 3, ""); //responsable currow += 2; //obtenemos las unidades de aprendisake setExDat(sheet, currow, 1, "Clave unidad de aprendizaje"); setExDat(sheet, currow, 2, "Unidad de aprendizaje"); setExDat(sheet, currow, 3, "No. de empleado"); setExDat(sheet, currow, 4, "Nombre del profesor"); setExDat(sheet, currow, 5, "Grupo"); setExDat(sheet, currow, 6, "% Avance 1er reporte"); setExDat(sheet, currow, 7, "Fecha de elaboracin 1er RACT"); setExDat(sheet, currow, 8, "% Avance 2do reporte"); setExDat(sheet, currow, 9, "Fecha de elaboracin 2do RACT"); setExDat(sheet, currow, 10, "% Avance 3er reporte"); setExDat(sheet, currow, 11, "Fecha de elaboracin 3er RACT"); //autosize para la columna if (autotam) { sheet.autoSizeColumn(2); sheet.autoSizeColumn(4); sheet.autoSizeColumn(11); autotam = false; } // para formatear toda la linea for (int i = 1; i <= 11; i++) { //tenemos qu aajustar texto //tenemos que centrar el texto //cambiar el color de fondo setStyleCell(sheet, headerTabla, currow, i); } currow++; //List<Unidadaprendizaje> unidadesAprendisaje = filtrosBeanHelper.getConsultaDelegate().getUnidadByArea(areaCon.getAcoclave()); //de ls listaAux separamos los los reportes que correspondan a la unidad de aprendisaje acutal ArrayList<ReporteAvanceAux> tempListAux = new ArrayList<ReporteAvanceAux>(); for (ReporteAvanceAux aux : listaAux) { if (aux.getAreaConocimiento() != null && aux.getAreaConocimiento().getAcoclave() == areaCon.getAcoclave() && programa.getPedclave() == aux.getReporteAvance() .getUnidadaprendizajeImparteProfesor().getGrupo().getPlanestudio() .getProgramaeducativo().getPedclave()) { tempListAux.add(aux); } } //List<UnidadaprendizajeImparteProfesor> unidadesProfesor = filtrosBeanHelper.getConsultaDelegate().getUnidadesAprendisajeImparteProf(unidadApren.getUapid()); int uniprofeTemp = 0; for (ReporteAvanceAux auxRacs : tempListAux) { String nompreP = auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor() .getProfesor().getPronombre(); String apellidoPP = auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor() .getProfesor().getProapellidoPaterno(); String apellidoPM = auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor() .getProfesor().getProapellidoMaterno(); int claveUnidadApren = auxRacs.getReporteAvance() .getUnidadaprendizajeImparteProfesor().getUnidadaprendizaje().getUapclave(); String nombreUnidad = auxRacs.getReporteAvance() .getUnidadaprendizajeImparteProfesor().getUnidadaprendizaje() .getUapnombre(); uniprofeTemp = claveUnidadApren; setExDat(sheet, currow, 1, claveUnidadApren); //clave setExDat(sheet, currow, 2, nombreUnidad); //nombre unidad //reporteAvance.unidadaprendizajeImparteProfesor.profesor.pronumeroEmpleado setExDat(sheet, currow, 3, auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor() .getProfesor().getPronumeroEmpleado()); //numero empleado setExDat(sheet, currow, 4, apellidoPP + " " + apellidoPM + " " + nompreP); //nombre maestro setExDat(sheet, currow, 5, auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor().getGrupo() .getGponumero() + "-" + auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor() .getUiptipoSubgrupo() + "-" + auxRacs.getReporteAvance() .getUnidadaprendizajeImparteProfesor().getUipsubgrupo()); //grupo numero //marcamos bordes for (int i = 6; i <= 11; i++) { setExDat(sheet, currow, i, " "); } for (int i = 1; i <= 11; i++) { setStyleCell(sheet, borderstabla, currow, i); } //hasta aqui comente Jesus Ruelas - 4 nov 2015 // //tienne que ser entregados/enviados // if(auxRacs.getStatusRact1()!=null){ // // System.out.println("Entro a enviados 1"); // setExDat(sheet, currow,(4 + (1*2)), auxRacs.getPorcentAvanceRact1() ); //% avance 7** // setExDat(sheet, currow,(4 + (1*2)+1), auxRacs.getFechaElaboracRact1().toString() ); //fecha elabora 8*** // setStyleCell(sheet, borderstabla, currow, (4 + (1*2))); // setStyleCell(sheet, borderstabla, currow, (4 + (1*2)+1)); // // } // else{ // setExDat(sheet, currow,(4 + (1*2)), " " ); //% avance 7** // setExDat(sheet, currow,(4 + (1*2)+1), " " ); //fecha elabora 8*** // setStyleCell(sheet, borderstabla, currow, (4 + (1*2))); // setStyleCell(sheet, borderstabla, currow, (4 + (1*2)+1)); // } // // // if(auxRacs.getStatusRact2()!=null){ // // setExDat(sheet, currow,(4 + (2*2)), auxRacs.getPorcentAvanceRact2() ); //% avance 7** // setExDat(sheet, currow,(4 + (2*2)+1), auxRacs.getFechaElaboracRact2().toString() ); //fecha elabora 8*** // setStyleCell(sheet, borderstabla, currow, (4 + (2*2))); // setStyleCell(sheet, borderstabla, currow, (4 + (2*2)+1)); // // }else{ // setExDat(sheet, currow,(4 + (2*2)), " " ); //% avance 7** // setExDat(sheet, currow,(4 + (2*2)+1), " " ); //fecha elabora 8*** // setStyleCell(sheet, borderstabla, currow, (4 + (2*2))); // setStyleCell(sheet, borderstabla, currow, (4 + (2*2)+1)); // } // // if(auxRacs.getStatusRact3()!=null){ // setExDat(sheet, currow,(4 + (3*2)), auxRacs.getPorcentAvanceRact3() ); //% avance 7** // setExDat(sheet, currow,(4 + (3*2)+1), auxRacs.getFechaElaboracRact3().toString() ); //fecha elabora 8*** // setStyleCell(sheet, borderstabla, currow, (4 + (3*2))); // setStyleCell(sheet, borderstabla, currow, (4 + (3*2)+1)); // } // else{ // setExDat(sheet, currow,(4 + (3*2)), " " ); //% avance 7** // setExDat(sheet, currow,(4 + (3*2)+1), " " ); //fecha elabora 8*** // setStyleCell(sheet, borderstabla, currow, (4 + (3*2))); // setStyleCell(sheet, borderstabla, currow, (4 + (3*2)+1)); // } //hasta aqui comente Jesus Ruelas - 4 nov 2015 //tienne que ser entregados/enviados if (auxRacs.getStatusRact1() != null) { System.out.println("Entro a enviados 1"); setExDat(sheet, currow, (4 + (1 * 2)), auxRacs.getPorcentAvanceRact1()); //% avance 7** if (auxRacs.getFechaElaboracRact1() != null) { setExDat(sheet, currow, (4 + (1 * 2) + 1), auxRacs.getFechaElaboracRact1().toString()); //fecha elabora 8*** } else { setExDat(sheet, currow, (4 + (1 * 2) + 1), " "); //fecha elabora 8*** } setStyleCell(sheet, borderstabla, currow, (4 + (1 * 2))); setStyleCell(sheet, borderstabla, currow, (4 + (1 * 2) + 1)); } else { setExDat(sheet, currow, (4 + (1 * 2)), " "); //% avance 7** setExDat(sheet, currow, (4 + (1 * 2) + 1), " "); //fecha elabora 8*** setStyleCell(sheet, borderstabla, currow, (4 + (1 * 2))); setStyleCell(sheet, borderstabla, currow, (4 + (1 * 2) + 1)); } if (auxRacs.getStatusRact2() != null) { setExDat(sheet, currow, (4 + (2 * 2)), auxRacs.getPorcentAvanceRact2()); //% avance 7** if (auxRacs.getFechaElaboracRact2() != null) { setExDat(sheet, currow, (4 + (2 * 2) + 1), auxRacs.getFechaElaboracRact2().toString()); //fecha elabora 8*** } else { setExDat(sheet, currow, (4 + (2 * 2) + 1), " "); //fecha elabora 8*** } setStyleCell(sheet, borderstabla, currow, (4 + (2 * 2))); setStyleCell(sheet, borderstabla, currow, (4 + (2 * 2) + 1)); } else { setExDat(sheet, currow, (4 + (2 * 2)), " "); //% avance 7** setExDat(sheet, currow, (4 + (2 * 2) + 1), " "); //fecha elabora 8*** setStyleCell(sheet, borderstabla, currow, (4 + (2 * 2))); setStyleCell(sheet, borderstabla, currow, (4 + (2 * 2) + 1)); } if (auxRacs.getStatusRact3() != null) { setExDat(sheet, currow, (4 + (3 * 2)), auxRacs.getPorcentAvanceRact3()); //% avance 7** if (auxRacs.getFechaElaboracRact3() != null) { setExDat(sheet, currow, (4 + (3 * 2) + 1), auxRacs.getFechaElaboracRact3().toString()); //fecha elabora 8*** } else { setExDat(sheet, currow, (4 + (3 * 2) + 1), " "); //fecha elabora 8*** } setStyleCell(sheet, borderstabla, currow, (4 + (3 * 2))); setStyleCell(sheet, borderstabla, currow, (4 + (3 * 2) + 1)); } else { setExDat(sheet, currow, (4 + (3 * 2)), " "); //% avance 7** setExDat(sheet, currow, (4 + (3 * 2) + 1), " "); //fecha elabora 8*** setStyleCell(sheet, borderstabla, currow, (4 + (3 * 2))); setStyleCell(sheet, borderstabla, currow, (4 + (3 * 2) + 1)); } currow++; } currow += 2; } //aqui modifique Jesus Ruelas - No entregados //aqui cambie headerTabla.setWrapText(true); //aqui cambie //aqui cambie jesus ruelas //for(int i=0;i<28;i++){ // sheet.autoSizeColumn(1); // sheet.autoSizeColumn(2); // sheet.autoSizeColumn(3); // sheet.autoSizeColumn(4); //merge cells de Total de RACT General de + ProgEd // sheet.addMergedRegion(new CellRangeAddress(13,13,1,5)); // sheet.addMergedRegion(new CellRangeAddress(13,13,7,11)); // sheet.addMergedRegion(new CellRangeAddress(13,13,13,17)); // sheet.addMergedRegion(new CellRangeAddress(13,13,19,23)); // sheet.addMergedRegion(new CellRangeAddress(13,13,25,29)); //} //aqui cambie jesus ruelas //mostraremos tabla con // Programas educativos // Total Racs entregados // Total Esperados //preparamos informacion para insertar // List<Programaeducativo> programasByUnidad = getProgramasByUnidad(); List<Planestudio> planesByPrograma = getPlanesByPrograma(); int UACid = 1; ArrayList<String> listaProgEdContar = esperadosDelegate.getSemadoroProgEdValor(UACid); //setCellStyle(style); //setExDat(sheet, 7, 1, "Concentrado de Reporte de Avance de Contenido Temtico General por Programa Educativo"); //imrpiimiremos la tabla // Definimos los encabezados de la tabla int pos = 0; int row = currow + 4; int col = 1; Boolean bandPe = false; //for (Programaeducativo pe : programasByUnidad) { for (String peContar : listaProgEdContar) { String[] contarEntEspProgEd; if (listaProgEdContar.size() >= pos) { if (peContar.contains(programa.getPednombre())) { contarEntEspProgEd = listaProgEdContar.get(pos).split("-"); setExDat(sheet, row, col, "Clave"); setExDat(sheet, row, col + 1, "Programa Educativo"); setExDat(sheet, row, col + 3, "Plan de Estudios"); setExDat(sheet, row, col + 4, "Responsable"); // if (contarEntEspProgEd[0].equalsIgnoreCase(programasByUnidad.get(0).getPednombre())) { setExDat(sheet, row + 1, col, programa.getPedclave()); setExDat(sheet, row + 1, col + 1, programa.getPednombre()); if (!(planesByPrograma.isEmpty())) { setExDat(sheet, row + 1, col + 2, planesByPrograma.get(0).getPesvigenciaPlan()); } setExDat(sheet, row + 1, col + 3, ""); // } // sheet.addMergedRegion(new CellRangeAddress(row+2,col,5,1)); setExDat(sheet, row + 2, col, "Total de RACT General de " + programa.getPednombre()); setExDat(sheet, row + 3, col, "Resumen de totales \r\n por numero de RACT"); setExDat(sheet, row + 3, col + 1, "Total no entregados"); setExDat(sheet, row + 3, col + 2, "%"); setExDat(sheet, row + 3, col + 3, "Total esperados"); setExDat(sheet, row + 3, col + 4, "%"); sheet.getRow(row + 3).getCell(1);//aqui modifique jesus ruelas float porcentEnt = (Float.parseFloat(contarEntEspProgEd[1])) / (Float.parseFloat(contarEntEspProgEd[2])) * 100; float porcentNoEnt = ((Float.parseFloat(contarEntEspProgEd[2])) - (Float.parseFloat(contarEntEspProgEd[1]))) / (Float.parseFloat(contarEntEspProgEd[2])) * 100; float porcentEsp = 100 - porcentEnt; // setExDat(sheet, 15, 1, "Todos los RACTS"); // setExDat(sheet, 15, 2, contarEntEspProgEd[1]); // setExDat(sheet, 15, 3, "" + porcentEnt + "%"); // setExDat(sheet, 15, 4, contarEntEspProgEd[2]); // setExDat(sheet, 15, 5, "" + porcentEsp + "%"); //String[] contarEntEspProgEd; String[] contarEntRact1; String[] contarEntRact2; String[] contarEntRact3; int esperadosProgEdUnicoRact = 0; contarEntRact1 = contarEntEspProgEd[3].split(":"); contarEntRact2 = contarEntEspProgEd[4].split(":"); contarEntRact3 = contarEntEspProgEd[5].split(":"); esperadosProgEdUnicoRact = (Integer.parseInt(contarEntEspProgEd[2])) / 3; int contarNoEntRact1 = esperadosProgEdUnicoRact - (Integer.parseInt(contarEntRact1[1])); int contarNoEntRact2 = esperadosProgEdUnicoRact - (Integer.parseInt(contarEntRact2[1])); int contarNoEntRact3 = esperadosProgEdUnicoRact - (Integer.parseInt(contarEntRact3[1])); float contarPorcentEntRact1 = (Float.parseFloat(contarEntRact1[1])) / ((float) esperadosProgEdUnicoRact) * 100; float contarPorcentEntRact2 = (Float.parseFloat(contarEntRact2[1])) / ((float) esperadosProgEdUnicoRact) * 100; float contarPorcentEntRact3 = (Float.parseFloat(contarEntRact3[1])) / ((float) esperadosProgEdUnicoRact) * 100; float contarPorcentNoEntRact1 = (((float) esperadosProgEdUnicoRact) - (Float.parseFloat(contarEntRact1[1]))) / ((float) esperadosProgEdUnicoRact) * 100; float contarPorcentNoEntRact2 = (((float) esperadosProgEdUnicoRact) - (Float.parseFloat(contarEntRact2[1]))) / ((float) esperadosProgEdUnicoRact) * 100; float contarPorcentNoEntRact3 = (((float) esperadosProgEdUnicoRact) - (Float.parseFloat(contarEntRact3[1]))) / ((float) esperadosProgEdUnicoRact) * 100; float contarPorcentEspRact1 = 100 - contarPorcentEntRact1; float contarPorcentEspRact2 = 100 - contarPorcentEntRact2; float contarPorcentEspRact3 = 100 - contarPorcentEntRact3; setExDat(sheet, row + 4, col, "RACT 1"); setExDat(sheet, row + 4, col + 1, contarNoEntRact1); setExDat(sheet, row + 4, col + 2, "" + contarPorcentNoEntRact1 + "%"); setExDat(sheet, row + 4, col + 3, esperadosProgEdUnicoRact); setExDat(sheet, row + 4, col + 4, "" + contarPorcentEspRact1 + "%"); setExDat(sheet, row + 5, col, "RACT 2"); setExDat(sheet, row + 5, col + 1, contarNoEntRact2); setExDat(sheet, row + 5, col + 2, "" + contarPorcentNoEntRact2 + "%"); setExDat(sheet, row + 5, col + 3, esperadosProgEdUnicoRact); setExDat(sheet, row + 5, col + 4, "" + contarPorcentEspRact2 + "%"); setExDat(sheet, row + 6, col, "RACT 3"); setExDat(sheet, row + 6, col + 1, contarNoEntRact3); setExDat(sheet, row + 6, col + 2, "" + contarPorcentNoEntRact3 + "%"); setExDat(sheet, row + 6, col + 3, esperadosProgEdUnicoRact); setExDat(sheet, row + 6, col + 4, "" + contarPorcentEspRact3 + "%"); int totalNoEnt = (Integer.parseInt(contarEntEspProgEd[2]) - (Integer.parseInt(contarEntEspProgEd[1]))); setExDat(sheet, row + 7, col, "Todos los RACTS"); setExDat(sheet, row + 7, col + 1, "" + (Integer.parseInt(contarEntEspProgEd[2]) - (Integer.parseInt(contarEntEspProgEd[1])))); setExDat(sheet, row + 7, col + 2, "" + porcentNoEnt + "%"); setExDat(sheet, row + 7, col + 3, contarEntEspProgEd[2]); setExDat(sheet, row + 7, col + 4, "" + porcentEsp + "%"); setStyleCell(sheet, headerTabla, row, col); setStyleCell(sheet, headerTabla, row, col + 1); setStyleCell(sheet, headerTabla, row, col + 2); setStyleCell(sheet, headerTabla, row, col + 3); setStyleCell(sheet, headerTabla, row, col + 4); setStyleCell(sheet, headerTabla, row + 2, col); setStyleCell(sheet, headerTabla, row + 2, col + 1); setStyleCell(sheet, headerTabla, row + 2, col + 2); setStyleCell(sheet, headerTabla, row + 2, col + 3); setStyleCell(sheet, headerTabla, row + 3, col); setStyleCell(sheet, headerTabla, row + 3, col + 1); setStyleCell(sheet, headerTabla, row + 3, col + 2); setStyleCell(sheet, headerTabla, row + 3, col + 3); setStyleCell(sheet, headerTabla, row + 3, col + 4); bandPe = true; pos++; } } // if (bandPe == true) { // if (col >= 25) { // row = row + 14; // col = -5; // } // col = col + 6; // bandPe = false; // } pos++; } //} //aqui modifique Jesus Ruelas } // fin del la comparacon de plan } // fin del for por plan de estudios } // fin de si es por entregados if(entregados) if (reporte.equalsIgnoreCase("entregadosynoentregados")) { nombreLibro = "Entregados y No Entregados " + nombreLibro; //definimos encabezado sheet = cabezeraGeneralExcel(sheet, uabcLogo, style); //mostraremos tabla con // Programas educativos // Total Racs entregados // Total Esperados //preparamos informacion para insertar List<Programaeducativo> programasByUnidad = getProgramasByUnidad(); //imrpiimiremos la tabla // Definimos los encabezados de la tabla setExDat(sheet, 13, 17, "Programa Educativo"); setExDat(sheet, 13, 18, "Total de RACT Entregados"); setExDat(sheet, 13, 19, "Total de RACT Esperados"); setExDat(sheet, 13, 20, " "); setStyleCell(sheet, headerTabla, 13, 17); setStyleCell(sheet, headerTabla, 13, 18); setStyleCell(sheet, headerTabla, 13, 19); /*sheet.autoSizeColumn(2); sheet.autoSizeColumn(3); sheet.autoSizeColumn(4);*/ //imprimimos la informacion en su lugar int prow = 14; for (Programaeducativo programa : programasByUnidad) { if (selectProgramEducativo.contains(programa.getPedid().toString())) { setExDat(sheet, prow, 17, programa.getPednombre()); setExDat(sheet, prow, 18, 75); setExDat(sheet, prow, 19, 100); prow++; } } //Se obtiene consulta con los parametros seleccionados ArrayList<String> entregados = esperadosDelegate.getFullProgramaEdu(unidadacademica.getUacid(), Plan, Programa, Ciclo); //agregamos programacion de grafico if (tipografico.equalsIgnoreCase("barras")) { BarChartCL demo1 = new BarChartCL("Estadsticas de Reportes Entregados por Programa Educativo", entregados, "ExcelPOIGrafica1"); demo1.addChartToExcel(demo1.createChart(demo1.createDataset()), workbook); } if (tipografico.equalsIgnoreCase("linea")) { LineChartDemo1 demo1 = new LineChartDemo1( "Estadsticas de Reportes Entregados por Programa Educativo", entregados, "ExcelPOIGrafica1"); demo1.addChartToExcel(demo1.createChart(demo1.createDataset()), workbook); } if (tipografico.equalsIgnoreCase("pastel")) { PieChartDemo1 demo1 = new PieChartDemo1( "Estadsticas de Reportes Entregados por Programa Educativo", entregados, "ExcelPOIGrafica1"); demo1.addChartToExcel(demo1.createChart(demo1.createDataset()), workbook); } //Se acaba grafico //recorreremos todo el list aux para revisar los programas educativos que utiliza //aun que podemos usar el selectProgramaeducativo /* Programacion de Hojas*/ for (Programaeducativo programa : programasByUnidad) { if (selectProgramEducativo.contains(Integer.toString(programa.getPedclave()))) { sheet = workbook.createSheet(programa.getPednombre()); sheet = cabezeraGeneralExcel(sheet, uabcLogo, style); setExDat(sheet, 8, 3, "Concentrado de Reporte de Avance de Contenido Temtico de Entregados por Programa Educativo"); boolean autotam = true; //informacion de programa educativo tabla setExDat(sheet, 14, 1, "Clave"); setExDat(sheet, 14, 2, "Programa Educativo"); setExDat(sheet, 14, 3, "Plan de Estudios"); setExDat(sheet, 14, 4, "Responsable"); setStyleCell(sheet, headerTabla, 14, 1); setStyleCell(sheet, headerTabla, 14, 2); setStyleCell(sheet, headerTabla, 14, 3); setStyleCell(sheet, headerTabla, 14, 4); //llenado de informacion // se tiene imprimir por cada plan de estudios??? // Responsableprogramaeducativo responsable = filtrosBeanHelper.getConsultaDelegate().getResponsableProgramaEducativoByID(programa.getPedid()); setExDat(sheet, 15, 1, programa.getPedclave()); setExDat(sheet, 15, 2, programa.getPednombre()); setExDat(sheet, 15, 3, ""); setExDat(sheet, 15, 4, ""); setStyleCell(sheet, borderstabla, 15, 1); setStyleCell(sheet, borderstabla, 15, 2); setStyleCell(sheet, borderstabla, 15, 3); setStyleCell(sheet, borderstabla, 15, 4); List<Planestudio> planes = filtrosBeanHelper.getConsultaDelegate() .getPlanesByPrograma(programa.getPedid()); boolean uno = true; int currow = 20; ReporteAvanceAux tempAux = new ReporteAvanceAux(); for (ReporteAvanceAux aux : listaAux) { tempAux = aux; break; } //intentaremos usar un solo plan setExDat(sheet, currow, 1, "?reas de conocimiento"); setStyleCell(sheet, headerTabla, currow, 1); currow++; //cada plan de estudios tiene varias areas de conocimiento //List<Areaconocimiento> areasConocimiento = filtrosBeanHelper.getConsultaDelegate().getAreasByPlan( tempAux.getReporteAvance().getUnidadaprendizajeImparteProfesor().getGrupo().getPlanestudio().getPesid() ); List<Areaconocimiento> areasConocimiento = filtrosBeanHelper.getConsultaDelegate() .getAreasByPlanClave(programa.getPedclave(), tempAux.getReporteAvance().getUnidadaprendizajeImparteProfesor().getGrupo() .getPlanestudio().getPesvigenciaPlan()); for (Areaconocimiento areaCon : areasConocimiento) { //clave , area de conocimiento, responsable setExDat(sheet, currow, 1, "Clave"); setExDat(sheet, currow, 2, "?rea de conocimiento"); setExDat(sheet, currow, 3, "Responsable"); setStyleCell(sheet, headerTabla, currow, 1); setStyleCell(sheet, headerTabla, currow, 2); setStyleCell(sheet, headerTabla, currow, 3); currow++; setExDat(sheet, currow, 1, areaCon.getAcoclave()); //clave setExDat(sheet, currow, 2, areaCon.getAconombre()); //area conociminto setExDat(sheet, currow, 3, ""); //responsable currow += 2; //obtenemos las unidades de aprendisake setExDat(sheet, currow, 1, "Clave unidad de aprendizaje"); setExDat(sheet, currow, 2, "Unidad de aprendizaje"); setExDat(sheet, currow, 3, "No. de empleado"); setExDat(sheet, currow, 4, "Nombre del profesor"); setExDat(sheet, currow, 5, "Grupo"); setExDat(sheet, currow, 6, "% Avance 1er reporte"); setExDat(sheet, currow, 7, "Fecha de elaboracin 1er RACT"); setExDat(sheet, currow, 8, "% Avance 2do reporte"); setExDat(sheet, currow, 9, "Fecha de elaboracin 2do RACT"); setExDat(sheet, currow, 10, "% Avance 3er reporte"); setExDat(sheet, currow, 11, "Fecha de elaboracin 3er RACT"); if (autotam) { sheet.autoSizeColumn(2); sheet.autoSizeColumn(4); sheet.autoSizeColumn(11); autotam = false; } // para formatear toda la linea for (int i = 1; i <= 11; i++) { //tenemos qu aajustar texto //tenemos que centrar el texto //cambiar el color de fondo setStyleCell(sheet, headerTabla, currow, i); } currow++; //List<Unidadaprendizaje> unidadesAprendisaje = filtrosBeanHelper.getConsultaDelegate().getUnidadByArea(areaCon.getAcoclave()); //de ls listaAux separamos los los reportes que correspondan a la unidad de aprendisaje acutal ArrayList<ReporteAvanceAux> tempListAux = new ArrayList<ReporteAvanceAux>(); for (ReporteAvanceAux aux : listaAux) { if (aux.getAreaConocimiento() != null && aux.getAreaConocimiento().getAcoclave() == areaCon.getAcoclave() && programa.getPedclave() == aux.getReporteAvance() .getUnidadaprendizajeImparteProfesor().getGrupo().getPlanestudio() .getProgramaeducativo().getPedclave()) { tempListAux.add(aux); } } //List<UnidadaprendizajeImparteProfesor> unidadesProfesor = filtrosBeanHelper.getConsultaDelegate().getUnidadesAprendisajeImparteProf(unidadApren.getUapid()); int uniprofeTemp = 0; for (ReporteAvanceAux auxRacs : tempListAux) { //marcamos bordes for (int i = 1; i <= 11; i++) { setExDat(sheet, currow, i, " "); } for (int i = 1; i <= 11; i++) { setStyleCell(sheet, borderstabla, currow, i); } String nompreP = auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor() .getProfesor().getPronombre(); String apellidoPP = auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor() .getProfesor().getProapellidoPaterno(); String apellidoPM = auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor() .getProfesor().getProapellidoMaterno(); int claveUnidadApren = auxRacs.getReporteAvance() .getUnidadaprendizajeImparteProfesor().getUnidadaprendizaje().getUapclave(); String nombreUnidad = auxRacs.getReporteAvance() .getUnidadaprendizajeImparteProfesor().getUnidadaprendizaje() .getUapnombre(); uniprofeTemp = claveUnidadApren; setExDat(sheet, currow, 1, claveUnidadApren); //clave setExDat(sheet, currow, 2, nombreUnidad); //nombre unidad //reporteAvance.unidadaprendizajeImparteProfesor.profesor.pronumeroEmpleado setExDat(sheet, currow, 3, auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor() .getProfesor().getPronumeroEmpleado()); //numero empleado setExDat(sheet, currow, 4, apellidoPP + " " + apellidoPM + " " + nompreP); //nombre maestro setExDat(sheet, currow, 5, auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor().getGrupo() .getGponumero() + "-" + auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor() .getUiptipoSubgrupo() + "-" + auxRacs.getReporteAvance() .getUnidadaprendizajeImparteProfesor().getUipsubgrupo()); //grupo numero //marcamos bordes for (int i = 1; i <= 5; i++) { setStyleCell(sheet, borderstabla, currow, i); } //tienne que ser entregados/enviados setExDat(sheet, currow, (4 + (1 * 2)), auxRacs.getPorcentAvanceRact1()); //% avance 7** if (auxRacs.getFechaElaboracRact1() != null) { setExDat(sheet, currow, (4 + (1 * 2) + 1), auxRacs.getFechaElaboracRact1().toString()); //fecha elabora 8*** } setStyleCell(sheet, borderstabla, currow, (4 + (1 * 2))); setStyleCell(sheet, borderstabla, currow, (4 + (1 * 2) + 1)); setExDat(sheet, currow, (4 + (2 * 2)), auxRacs.getPorcentAvanceRact2()); //% avance 7** if (auxRacs.getFechaElaboracRact2() != null) { setExDat(sheet, currow, (4 + (2 * 2) + 1), auxRacs.getFechaElaboracRact2().toString()); //fecha elabora 8*** } setStyleCell(sheet, borderstabla, currow, (4 + (2 * 2))); setStyleCell(sheet, borderstabla, currow, (4 + (2 * 2) + 1)); setExDat(sheet, currow, (4 + (3 * 2)), auxRacs.getPorcentAvanceRact3()); //% avance 7** if (auxRacs.getFechaElaboracRact3() != null) { setExDat(sheet, currow, (4 + (3 * 2) + 1), auxRacs.getFechaElaboracRact3().toString()); //fecha elabora 8*** } setStyleCell(sheet, borderstabla, currow, (4 + (3 * 2))); setStyleCell(sheet, borderstabla, currow, (4 + (3 * 2) + 1)); currow++; } currow += 2; } //aqui modifique Jesus Ruelas - Entregados Y No Entregados //aqui cambie headerTabla.setWrapText(true); //aqui cambie //aqui cambie jesus ruelas //for(int i=0;i<28;i++){ // sheet.autoSizeColumn(1); // sheet.autoSizeColumn(2); // sheet.autoSizeColumn(3); // sheet.autoSizeColumn(4); //merge cells de Total de RACT General de + ProgEd // sheet.addMergedRegion(new CellRangeAddress(13,13,1,5)); // sheet.addMergedRegion(new CellRangeAddress(13,13,7,11)); // sheet.addMergedRegion(new CellRangeAddress(13,13,13,17)); // sheet.addMergedRegion(new CellRangeAddress(13,13,19,23)); // sheet.addMergedRegion(new CellRangeAddress(13,13,25,29)); //} //aqui cambie jesus ruelas //mostraremos tabla con // Programas educativos // Total Racs entregados // Total Esperados //preparamos informacion para insertar // List<Programaeducativo> programasByUnidad = getProgramasByUnidad(); List<Planestudio> planesByPrograma = getPlanesByPrograma(); int UACid = 1; ArrayList<String> listaProgEdContar = esperadosDelegate.getSemadoroProgEdValor(UACid); //setCellStyle(style); //setExDat(sheet, 7, 1, "Concentrado de Reporte de Avance de Contenido Temtico General por Programa Educativo"); //imrpiimiremos la tabla // Definimos los encabezados de la tabla int pos = 0; int row = currow + 4; int col = 1; Boolean bandPe = false; //for (Programaeducativo pe : programasByUnidad) { for (String peContar : listaProgEdContar) { String[] contarEntEspProgEd; if (listaProgEdContar.size() >= pos) { if (peContar.contains(programa.getPednombre())) { contarEntEspProgEd = listaProgEdContar.get(pos).split("-"); setExDat(sheet, row, col, "Clave"); setExDat(sheet, row, col + 1, "Programa Educativo"); setExDat(sheet, row, col + 3, "Plan de Estudios"); setExDat(sheet, row, col + 4, "Responsable"); // if (contarEntEspProgEd[0].equalsIgnoreCase(programasByUnidad.get(0).getPednombre())) { setExDat(sheet, row + 1, col, programa.getPedclave()); setExDat(sheet, row + 1, col + 1, programa.getPednombre()); if (!(planesByPrograma.isEmpty())) { setExDat(sheet, row + 1, col + 2, planesByPrograma.get(0).getPesvigenciaPlan()); } setExDat(sheet, row + 1, col + 3, ""); // } // sheet.addMergedRegion(new CellRangeAddress(row+2,col,5,1)); setExDat(sheet, row + 2, col, "Total de RACT General de " + programa.getPednombre()); setExDat(sheet, row + 3, col, "Resumen de totales \r\n por numero de RACT"); setExDat(sheet, row + 3, col + 1, "Total entregados"); setExDat(sheet, row + 3, col + 2, "%"); setExDat(sheet, row + 3, col + 3, "Total esperados"); setExDat(sheet, row + 3, col + 4, "%"); sheet.getRow(row + 3).getCell(1);//aqui modifique jesus ruelas float porcentEnt = (Float.parseFloat(contarEntEspProgEd[1])) / (Float.parseFloat(contarEntEspProgEd[2])) * 100; float porcentEsp = 100 - porcentEnt; // setExDat(sheet, 15, 1, "Todos los RACTS"); // setExDat(sheet, 15, 2, contarEntEspProgEd[1]); // setExDat(sheet, 15, 3, "" + porcentEnt + "%"); // setExDat(sheet, 15, 4, contarEntEspProgEd[2]); // setExDat(sheet, 15, 5, "" + porcentEsp + "%"); //String[] contarEntEspProgEd; String[] contarEntRact1; String[] contarEntRact2; String[] contarEntRact3; int esperadosProgEdUnicoRact = 0; contarEntRact1 = contarEntEspProgEd[3].split(":"); contarEntRact2 = contarEntEspProgEd[4].split(":"); contarEntRact3 = contarEntEspProgEd[5].split(":"); esperadosProgEdUnicoRact = (Integer.parseInt(contarEntEspProgEd[2])) / 3; float contarPorcentEntRact1 = (Float.parseFloat(contarEntRact1[1])) / ((float) esperadosProgEdUnicoRact) * 100; float contarPorcentEntRact2 = (Float.parseFloat(contarEntRact2[1])) / ((float) esperadosProgEdUnicoRact) * 100; float contarPorcentEntRact3 = (Float.parseFloat(contarEntRact3[1])) / ((float) esperadosProgEdUnicoRact) * 100; float contarPorcentEspRact1 = 100 - contarPorcentEntRact1; float contarPorcentEspRact2 = 100 - contarPorcentEntRact2; float contarPorcentEspRact3 = 100 - contarPorcentEntRact3; setExDat(sheet, row + 4, col, "RACT 1"); setExDat(sheet, row + 4, col + 1, contarEntRact1[1]); setExDat(sheet, row + 4, col + 2, "" + contarPorcentEntRact1 + "%"); setExDat(sheet, row + 4, col + 3, esperadosProgEdUnicoRact); setExDat(sheet, row + 4, col + 4, "" + contarPorcentEspRact1 + "%"); setExDat(sheet, row + 5, col, "RACT 2"); setExDat(sheet, row + 5, col + 1, contarEntRact2[1]); setExDat(sheet, row + 5, col + 2, "" + contarPorcentEntRact2 + "%"); setExDat(sheet, row + 5, col + 3, esperadosProgEdUnicoRact); setExDat(sheet, row + 5, col + 4, "" + contarPorcentEspRact2 + "%"); setExDat(sheet, row + 6, col, "RACT 3"); setExDat(sheet, row + 6, col + 1, contarEntRact3[1]); setExDat(sheet, row + 6, col + 2, "" + contarPorcentEntRact3 + "%"); setExDat(sheet, row + 6, col + 3, esperadosProgEdUnicoRact); setExDat(sheet, row + 6, col + 4, "" + contarPorcentEspRact3 + "%"); setExDat(sheet, row + 7, col, "Todos los RACTS"); setExDat(sheet, row + 7, col + 1, contarEntEspProgEd[1]); setExDat(sheet, row + 7, col + 2, "" + porcentEnt + "%"); setExDat(sheet, row + 7, col + 3, contarEntEspProgEd[2]); setExDat(sheet, row + 7, col + 4, "" + porcentEsp + "%"); setStyleCell(sheet, headerTabla, row, col); setStyleCell(sheet, headerTabla, row, col + 1); setStyleCell(sheet, headerTabla, row, col + 2); setStyleCell(sheet, headerTabla, row, col + 3); setStyleCell(sheet, headerTabla, row, col + 4); setStyleCell(sheet, headerTabla, row + 2, col); setStyleCell(sheet, headerTabla, row + 2, col + 1); setStyleCell(sheet, headerTabla, row + 2, col + 2); setStyleCell(sheet, headerTabla, row + 2, col + 3); setStyleCell(sheet, headerTabla, row + 3, col); setStyleCell(sheet, headerTabla, row + 3, col + 1); setStyleCell(sheet, headerTabla, row + 3, col + 2); setStyleCell(sheet, headerTabla, row + 3, col + 3); setStyleCell(sheet, headerTabla, row + 3, col + 4); bandPe = true; pos++; } } // if (bandPe == true) { // if (col >= 25) { // row = row + 14; // col = -5; // } // col = col + 6; // bandPe = false; // } pos++; } //} //aqui modifique Jesus Ruelas } // fin del la comparacon de plan } // fin del for por plan de estudios } // fin de si es por entregados y no entregados if(entregados) if (reporte.equalsIgnoreCase("entregadosatiempo") || reporte.equalsIgnoreCase("entregadosenfechalimite") || reporte.equalsIgnoreCase("entregadosdespueslimite") || reporte.equalsIgnoreCase("entregadosdespueslimite") || reporte.equalsIgnoreCase("entregadosatiempoenfechalimiteydespues")) { if (reporte.equalsIgnoreCase("entregadosatiempo")) { System.out.println("Entro a entregados a tiempo"); nombreLibro = "Entregados a Tiempo " + nombreLibro; } if (reporte.equalsIgnoreCase("entregadosenfechalimite")) { System.out.println("Entro a entregados en fecha"); nombreLibro = "Entregados en Fecha Limite " + nombreLibro; } if (reporte.equalsIgnoreCase("entregadosdespueslimite")) { System.out.println("Entro a entregados despues"); nombreLibro = "Entregados despues Fecha Limite" + nombreLibro; } if (reporte.equalsIgnoreCase("entregadosatiempoenfechalimiteydespues")) { System.out.println("Entro a entregados a tiempo"); nombreLibro = "Entregados a Tiempo-Limite-Despues de Fecha " + nombreLibro; } //mostraremos tabla con // Programas educativos // Total Racs entregados // Total Esperados //preparamos informacion para insertar List<Programaeducativo> programasByUnidad = getProgramasByUnidad(); //imrpiimiremos la tabla // Definimos los encabezados de la tabla setExDat(sheet, 13, 17, "Programa Educativo"); setExDat(sheet, 13, 18, "Total de RACT Entregados"); setExDat(sheet, 13, 19, "Total de RACT Esperados"); setExDat(sheet, 13, 20, " "); setStyleCell(sheet, headerTabla, 13, 17); setStyleCell(sheet, headerTabla, 13, 18); setStyleCell(sheet, headerTabla, 13, 19); /*sheet.autoSizeColumn(2); sheet.autoSizeColumn(3); sheet.autoSizeColumn(4);*/ //imprimimos la informacion en su lugar int prow = 14; for (Programaeducativo programa : programasByUnidad) { if (selectProgramEducativo.contains(programa.getPedid().toString())) { setExDat(sheet, prow, 17, programa.getPednombre()); setExDat(sheet, prow, 18, 75); setExDat(sheet, prow, 19, 100); prow++; } } //Se obtiene consulta con los parametros seleccionados ArrayList<String> entregados = esperadosDelegate.getFullProgramaEdu(unidadacademica.getUacid(), Plan, Programa, Ciclo); //agregamos programacion de grafico if (tipografico.equalsIgnoreCase("barras")) { BarChartCL demo1 = new BarChartCL("Estadsticas de Reportes Entregados por Programa Educativo", entregados, "ExcelPOIGrafica1"); demo1.addChartToExcel(demo1.createChart(demo1.createDataset()), workbook); } if (tipografico.equalsIgnoreCase("linea")) { LineChartDemo1 demo1 = new LineChartDemo1( "Estadsticas de Reportes Entregados por Programa Educativo", entregados, "ExcelPOIGrafica1"); demo1.addChartToExcel(demo1.createChart(demo1.createDataset()), workbook); } if (tipografico.equalsIgnoreCase("pastel")) { PieChartDemo1 demo1 = new PieChartDemo1( "Estadsticas de Reportes Entregados por Programa Educativo", entregados, "ExcelPOIGrafica1"); demo1.addChartToExcel(demo1.createChart(demo1.createDataset()), workbook); } //Se acaba grafico //recorreremos todo el list aux para revisar los programas educativos que utiliza //aun que podemos usar el selectProgramaeducativo /* Programacion de Hojas*/ for (Programaeducativo programa : programasByUnidad) { if (selectProgramEducativo.contains(Integer.toString(programa.getPedclave()))) { sheet = workbook.createSheet(programa.getPednombre()); sheet = cabezeraGeneralExcel(sheet, uabcLogo, style); setExDat(sheet, 8, 3, "Concentrado de Reporte de Avance de Contenido Temtico de Entregados por Programa Educativo"); boolean autotam = true; //informacion de programa educativo tabla setExDat(sheet, 14, 1, "Clave"); setExDat(sheet, 14, 2, "Programa Educativo"); setExDat(sheet, 14, 3, "Plan de Estudios"); setExDat(sheet, 14, 4, "Responsable"); setStyleCell(sheet, headerTabla, 14, 1); setStyleCell(sheet, headerTabla, 14, 2); setStyleCell(sheet, headerTabla, 14, 3); setStyleCell(sheet, headerTabla, 14, 4); //llenado de informacion // se tiene imprimir por cada plan de estudios??? // Responsableprogramaeducativo responsable = filtrosBeanHelper.getConsultaDelegate().getResponsableProgramaEducativoByID(programa.getPedid()); setExDat(sheet, 15, 1, programa.getPedclave()); setExDat(sheet, 15, 2, programa.getPednombre()); setExDat(sheet, 15, 3, ""); setExDat(sheet, 15, 4, ""); setStyleCell(sheet, borderstabla, 15, 1); setStyleCell(sheet, borderstabla, 15, 2); setStyleCell(sheet, borderstabla, 15, 3); setStyleCell(sheet, borderstabla, 15, 4); List<Planestudio> planes = filtrosBeanHelper.getConsultaDelegate() .getPlanesByPrograma(programa.getPedid()); boolean uno = true; int currow = 20; ReporteAvanceAux tempAux = new ReporteAvanceAux(); for (ReporteAvanceAux aux : listaAux) { tempAux = aux; break; } //intentaremos usar un solo plan setExDat(sheet, currow, 1, "?reas de conocimiento"); setStyleCell(sheet, headerTabla, currow, 1); currow++; //cada plan de estudios tiene varias areas de conocimiento //List<Areaconocimiento> areasConocimiento = filtrosBeanHelper.getConsultaDelegate().getAreasByPlan( tempAux.getReporteAvance().getUnidadaprendizajeImparteProfesor().getGrupo().getPlanestudio().getPesid() ); List<Areaconocimiento> areasConocimiento = filtrosBeanHelper.getConsultaDelegate() .getAreasByPlanClave(programa.getPedclave(), tempAux.getReporteAvance().getUnidadaprendizajeImparteProfesor().getGrupo() .getPlanestudio().getPesvigenciaPlan()); for (Areaconocimiento areaCon : areasConocimiento) { //clave , area de conocimiento, responsable setExDat(sheet, currow, 1, "Clave"); setExDat(sheet, currow, 2, "?rea de conocimiento"); setExDat(sheet, currow, 3, "Responsable"); setStyleCell(sheet, headerTabla, currow, 1); setStyleCell(sheet, headerTabla, currow, 2); setStyleCell(sheet, headerTabla, currow, 3); currow++; setExDat(sheet, currow, 1, areaCon.getAcoclave()); //clave setExDat(sheet, currow, 2, areaCon.getAconombre()); //area conociminto setExDat(sheet, currow, 3, ""); //responsable currow += 2; //obtenemos las unidades de aprendisake setExDat(sheet, currow, 1, "Clave unidad de aprendizaje"); setExDat(sheet, currow, 2, "Unidad de aprendizaje"); setExDat(sheet, currow, 3, "No. de empleado"); setExDat(sheet, currow, 4, "Nombre del profesor"); setExDat(sheet, currow, 5, "Grupo"); setExDat(sheet, currow, 6, "% Avance 1er reporte"); setExDat(sheet, currow, 7, "Fecha de elaboracin 1er RACT"); setExDat(sheet, currow, 8, "% Avance 2do reporte"); setExDat(sheet, currow, 9, "Fecha de elaboracin 2do RACT"); setExDat(sheet, currow, 10, "% Avance 3er reporte"); setExDat(sheet, currow, 11, "Fecha de elaboracin 3er RACT"); if (autotam) { sheet.autoSizeColumn(2); sheet.autoSizeColumn(4); sheet.autoSizeColumn(11); autotam = false; } // para formatear toda la linea for (int i = 1; i <= 11; i++) { //tenemos qu aajustar texto //tenemos que centrar el texto //cambiar el color de fondo setStyleCell(sheet, headerTabla, currow, i); } currow++; //List<Unidadaprendizaje> unidadesAprendisaje = filtrosBeanHelper.getConsultaDelegate().getUnidadByArea(areaCon.getAcoclave()); //de ls listaAux separamos los los reportes que correspondan a la unidad de aprendisaje acutal ArrayList<ReporteAvanceAux> tempListAux = new ArrayList<ReporteAvanceAux>(); for (ReporteAvanceAux aux : listaAux) { if (aux.getAreaConocimiento() != null && aux.getAreaConocimiento().getAcoclave() == areaCon.getAcoclave() && programa.getPedclave() == aux.getReporteAvance() .getUnidadaprendizajeImparteProfesor().getGrupo().getPlanestudio() .getProgramaeducativo().getPedclave()) { tempListAux.add(aux); } } //List<UnidadaprendizajeImparteProfesor> unidadesProfesor = filtrosBeanHelper.getConsultaDelegate().getUnidadesAprendisajeImparteProf(unidadApren.getUapid()); int uniprofeTemp = 0; for (ReporteAvanceAux auxRacs : tempListAux) { //marcamos bordes for (int i = 1; i <= 11; i++) { setExDat(sheet, currow, i, " "); } for (int i = 1; i <= 11; i++) { setStyleCell(sheet, borderstabla, currow, i); } String nompreP = auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor() .getProfesor().getPronombre(); String apellidoPP = auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor() .getProfesor().getProapellidoPaterno(); String apellidoPM = auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor() .getProfesor().getProapellidoMaterno(); int claveUnidadApren = auxRacs.getReporteAvance() .getUnidadaprendizajeImparteProfesor().getUnidadaprendizaje().getUapclave(); String nombreUnidad = auxRacs.getReporteAvance() .getUnidadaprendizajeImparteProfesor().getUnidadaprendizaje() .getUapnombre(); uniprofeTemp = claveUnidadApren; setExDat(sheet, currow, 1, claveUnidadApren); //clave setExDat(sheet, currow, 2, nombreUnidad); //nombre unidad //reporteAvance.unidadaprendizajeImparteProfesor.profesor.pronumeroEmpleado setExDat(sheet, currow, 3, auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor() .getProfesor().getPronumeroEmpleado()); //numero empleado setExDat(sheet, currow, 4, apellidoPP + " " + apellidoPM + " " + nompreP); //nombre maestro setExDat(sheet, currow, 5, auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor().getGrupo() .getGponumero() + "-" + auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor() .getUiptipoSubgrupo() + "-" + auxRacs.getReporteAvance() .getUnidadaprendizajeImparteProfesor().getUipsubgrupo()); //grupo numero //marcamos bordes for (int i = 1; i <= 5; i++) { setStyleCell(sheet, borderstabla, currow, i); } //tienne que ser entregados/enviados setExDat(sheet, currow, (4 + (1 * 2)), auxRacs.getPorcentAvanceRact1()); //% avance 7** if (auxRacs.getFechaElaboracRact1() != null) { setExDat(sheet, currow, (4 + (1 * 2) + 1), auxRacs.getFechaElaboracRact1().toString()); //fecha elabora 8*** } setStyleCell(sheet, borderstabla, currow, (4 + (1 * 2))); setStyleCell(sheet, borderstabla, currow, (4 + (1 * 2) + 1)); setExDat(sheet, currow, (4 + (2 * 2)), auxRacs.getPorcentAvanceRact2()); //% avance 7** if (auxRacs.getFechaElaboracRact2() != null) { setExDat(sheet, currow, (4 + (2 * 2) + 1), auxRacs.getFechaElaboracRact2().toString()); //fecha elabora 8*** } setStyleCell(sheet, borderstabla, currow, (4 + (2 * 2))); setStyleCell(sheet, borderstabla, currow, (4 + (2 * 2) + 1)); setExDat(sheet, currow, (4 + (3 * 2)), auxRacs.getPorcentAvanceRact3()); //% avance 7** if (auxRacs.getFechaElaboracRact3() != null) { setExDat(sheet, currow, (4 + (3 * 2) + 1), auxRacs.getFechaElaboracRact3().toString()); //fecha elabora 8*** } setStyleCell(sheet, borderstabla, currow, (4 + (3 * 2))); setStyleCell(sheet, borderstabla, currow, (4 + (3 * 2) + 1)); currow++; } currow += 2; } //aqui modifique Jesus Ruelas - Entregados A Tiempo //aqui cambie headerTabla.setWrapText(true); //aqui cambie //aqui cambie jesus ruelas //for(int i=0;i<28;i++){ // sheet.autoSizeColumn(1); // sheet.autoSizeColumn(2); // sheet.autoSizeColumn(3); // sheet.autoSizeColumn(4); //merge cells de Total de RACT General de + ProgEd // sheet.addMergedRegion(new CellRangeAddress(13,13,1,5)); // sheet.addMergedRegion(new CellRangeAddress(13,13,7,11)); // sheet.addMergedRegion(new CellRangeAddress(13,13,13,17)); // sheet.addMergedRegion(new CellRangeAddress(13,13,19,23)); // sheet.addMergedRegion(new CellRangeAddress(13,13,25,29)); //} //aqui cambie jesus ruelas //mostraremos tabla con // Programas educativos // Total Racs entregados // Total Esperados //preparamos informacion para insertar // List<Programaeducativo> programasByUnidad = getProgramasByUnidad(); List<Planestudio> planesByPrograma = getPlanesByPrograma(); int UACid = 1; ArrayList<String> listaProgEdContar = esperadosDelegate.getSemadoroProgEdValor(UACid); //setCellStyle(style); //setExDat(sheet, 7, 1, "Concentrado de Reporte de Avance de Contenido Temtico General por Programa Educativo"); //imrpiimiremos la tabla // Definimos los encabezados de la tabla int pos = 0; int row = currow + 4; int col = 1; Boolean bandPe = false; //for (Programaeducativo pe : programasByUnidad) { for (String peContar : listaProgEdContar) { String[] contarEntEspProgEd; if (listaProgEdContar.size() >= pos) { if (peContar.contains(programa.getPednombre())) { contarEntEspProgEd = listaProgEdContar.get(pos).split("-"); setExDat(sheet, row, col, "Clave"); setExDat(sheet, row, col + 1, "Programa Educativo"); setExDat(sheet, row, col + 3, "Plan de Estudios"); setExDat(sheet, row, col + 4, "Responsable"); // if (contarEntEspProgEd[0].equalsIgnoreCase(programasByUnidad.get(0).getPednombre())) { setExDat(sheet, row + 1, col, programa.getPedclave()); setExDat(sheet, row + 1, col + 1, programa.getPednombre()); if (!(planesByPrograma.isEmpty())) { setExDat(sheet, row + 1, col + 2, planesByPrograma.get(0).getPesvigenciaPlan()); } setExDat(sheet, row + 1, col + 3, ""); // } // sheet.addMergedRegion(new CellRangeAddress(row+2,col,5,1)); setExDat(sheet, row + 2, col, "Total de RACT General de " + programa.getPednombre()); setExDat(sheet, row + 3, col, "Resumen de totales \r\n por numero de RACT"); setExDat(sheet, row + 3, col + 1, "Total entregados"); setExDat(sheet, row + 3, col + 2, "%"); setExDat(sheet, row + 3, col + 3, "Total esperados"); setExDat(sheet, row + 3, col + 4, "%"); sheet.getRow(row + 3).getCell(1);//aqui modifique jesus ruelas float porcentEnt = (Float.parseFloat(contarEntEspProgEd[1])) / (Float.parseFloat(contarEntEspProgEd[2])) * 100; float porcentEsp = 100 - porcentEnt; // setExDat(sheet, 15, 1, "Todos los RACTS"); // setExDat(sheet, 15, 2, contarEntEspProgEd[1]); // setExDat(sheet, 15, 3, "" + porcentEnt + "%"); // setExDat(sheet, 15, 4, contarEntEspProgEd[2]); // setExDat(sheet, 15, 5, "" + porcentEsp + "%"); //String[] contarEntEspProgEd; String[] contarEntRact1; String[] contarEntRact2; String[] contarEntRact3; int esperadosProgEdUnicoRact = 0; contarEntRact1 = contarEntEspProgEd[3].split(":"); contarEntRact2 = contarEntEspProgEd[4].split(":"); contarEntRact3 = contarEntEspProgEd[5].split(":"); esperadosProgEdUnicoRact = (Integer.parseInt(contarEntEspProgEd[2])) / 3; float contarPorcentEntRact1 = (Float.parseFloat(contarEntRact1[1])) / ((float) esperadosProgEdUnicoRact) * 100; float contarPorcentEntRact2 = (Float.parseFloat(contarEntRact2[1])) / ((float) esperadosProgEdUnicoRact) * 100; float contarPorcentEntRact3 = (Float.parseFloat(contarEntRact3[1])) / ((float) esperadosProgEdUnicoRact) * 100; float contarPorcentEspRact1 = 100 - contarPorcentEntRact1; float contarPorcentEspRact2 = 100 - contarPorcentEntRact2; float contarPorcentEspRact3 = 100 - contarPorcentEntRact3; setExDat(sheet, row + 4, col, "RACT 1"); setExDat(sheet, row + 4, col + 1, contarEntRact1[1]); setExDat(sheet, row + 4, col + 2, "" + contarPorcentEntRact1 + "%"); setExDat(sheet, row + 4, col + 3, esperadosProgEdUnicoRact); setExDat(sheet, row + 4, col + 4, "" + contarPorcentEspRact1 + "%"); setExDat(sheet, row + 5, col, "RACT 2"); setExDat(sheet, row + 5, col + 1, contarEntRact2[1]); setExDat(sheet, row + 5, col + 2, "" + contarPorcentEntRact2 + "%"); setExDat(sheet, row + 5, col + 3, esperadosProgEdUnicoRact); setExDat(sheet, row + 5, col + 4, "" + contarPorcentEspRact2 + "%"); setExDat(sheet, row + 6, col, "RACT 3"); setExDat(sheet, row + 6, col + 1, contarEntRact3[1]); setExDat(sheet, row + 6, col + 2, "" + contarPorcentEntRact3 + "%"); setExDat(sheet, row + 6, col + 3, esperadosProgEdUnicoRact); setExDat(sheet, row + 6, col + 4, "" + contarPorcentEspRact3 + "%"); setExDat(sheet, row + 7, col, "Todos los RACTS"); setExDat(sheet, row + 7, col + 1, contarEntEspProgEd[1]); setExDat(sheet, row + 7, col + 2, "" + porcentEnt + "%"); setExDat(sheet, row + 7, col + 3, contarEntEspProgEd[2]); setExDat(sheet, row + 7, col + 4, "" + porcentEsp + "%"); setStyleCell(sheet, headerTabla, row, col); setStyleCell(sheet, headerTabla, row, col + 1); setStyleCell(sheet, headerTabla, row, col + 2); setStyleCell(sheet, headerTabla, row, col + 3); setStyleCell(sheet, headerTabla, row, col + 4); setStyleCell(sheet, headerTabla, row + 2, col); setStyleCell(sheet, headerTabla, row + 2, col + 1); setStyleCell(sheet, headerTabla, row + 2, col + 2); setStyleCell(sheet, headerTabla, row + 2, col + 3); setStyleCell(sheet, headerTabla, row + 3, col); setStyleCell(sheet, headerTabla, row + 3, col + 1); setStyleCell(sheet, headerTabla, row + 3, col + 2); setStyleCell(sheet, headerTabla, row + 3, col + 3); setStyleCell(sheet, headerTabla, row + 3, col + 4); bandPe = true; pos++; } } // if (bandPe == true) { // if (col >= 25) { // row = row + 14; // col = -5; // } // col = col + 6; // bandPe = false; // } pos++; } //} //aqui modifique Jesus Ruelas } // fin del la comparacon de plan } // fin del for por plan de estudios //definimos encabezado sheet = cabezeraGeneralExcel(sheet, uabcLogo, style); } // fin de si es por entregados a tiempoif(entregados) //Porcentaje de Avance Global Incompleto if (reporte.equalsIgnoreCase("Porcentaje de Avance Global Completo") || reporte.equalsIgnoreCase("Porcentaje de Avance Global Incompleto") || reporte.equalsIgnoreCase("Porcentaje de Avance Global Completo e Incompleto")) { nombreLibro = reporte + nombreLibro; //definimos encabezado sheet = cabezeraGeneralExcel(sheet, uabcLogo, style); //mostraremos tabla con // Programas educativos // Total Racs entregados // Total Esperados //preparamos informacion para insertar List<Programaeducativo> programasByUnidad = getProgramasByUnidad(); //imrpiimiremos la tabla // Definimos los encabezados de la tabla setExDat(sheet, 13, 17, "Programa Educativo"); setExDat(sheet, 13, 18, "Total de RACT Entregados"); setExDat(sheet, 13, 19, "Total de RACT Esperados"); setExDat(sheet, 13, 20, " "); setStyleCell(sheet, headerTabla, 13, 17); setStyleCell(sheet, headerTabla, 13, 18); setStyleCell(sheet, headerTabla, 13, 19); /*sheet.autoSizeColumn(2); sheet.autoSizeColumn(3); sheet.autoSizeColumn(4);*/ //imprimimos la informacion en su lugar int prow = 14; for (Programaeducativo programa : programasByUnidad) { if (selectProgramEducativo.contains(programa.getPedid().toString())) { setExDat(sheet, prow, 17, programa.getPednombre()); setExDat(sheet, prow, 18, 75); setExDat(sheet, prow, 19, 100); prow++; } } //Se obtiene consulta con los parametros seleccionados ArrayList<String> entregados = esperadosDelegate.getFullProgramaEdu(unidadacademica.getUacid(), Plan, Programa, Ciclo); //agregamos programacion de grafico if (tipografico.equalsIgnoreCase("barras")) { BarChartCL demo1 = new BarChartCL("Estadsticas de Reportes Entregados por Programa Educativo", entregados, "ExcelPOIGrafica1"); demo1.addChartToExcel(demo1.createChart(demo1.createDataset()), workbook); } if (tipografico.equalsIgnoreCase("linea")) { LineChartDemo1 demo1 = new LineChartDemo1( "Estadsticas de Reportes Entregados por Programa Educativo", entregados, "ExcelPOIGrafica1"); demo1.addChartToExcel(demo1.createChart(demo1.createDataset()), workbook); } if (tipografico.equalsIgnoreCase("pastel")) { PieChartDemo1 demo1 = new PieChartDemo1( "Estadsticas de Reportes Entregados por Programa Educativo", entregados, "ExcelPOIGrafica1"); demo1.addChartToExcel(demo1.createChart(demo1.createDataset()), workbook); } //Se acaba grafico //recorreremos todo el list aux para revisar los programas educativos que utiliza //aun que podemos usar el selectProgramaeducativo /* Programacion de Hojas*/ for (Programaeducativo programa : programasByUnidad) { if (selectProgramEducativo.contains(Integer.toString(programa.getPedclave()))) { //sheet = cabezeraGeneralExcel(sheet,uabcLogo,style); lo moveremos al final de la hoja para que no sea mdoficada la imagen sheet = workbook.createSheet(programa.getPednombre()); sheet = cabezeraGeneralExcel(sheet, uabcLogo, style); //setExDat(sheet, 8, 3, "Concentrado de Reporte de Avance de Contenido Temtico de Entregados por Programa Educativo"); boolean autotam = true; //informacion de programa educativo tabla setExDat(sheet, 14, 1, "Clave"); setExDat(sheet, 14, 2, "Programa Educativo"); setExDat(sheet, 14, 3, "Plan de Estudios"); setExDat(sheet, 14, 4, "Responsable"); setStyleCell(sheet, headerTabla, 14, 1); setStyleCell(sheet, headerTabla, 14, 2); setStyleCell(sheet, headerTabla, 14, 3); setStyleCell(sheet, headerTabla, 14, 4); //llenado de informacion // se tiene imprimir por cada plan de estudios??? // Responsableprogramaeducativo responsable = filtrosBeanHelper.getConsultaDelegate().getResponsableProgramaEducativoByID(programa.getPedid()); setExDat(sheet, 15, 1, programa.getPedclave()); setExDat(sheet, 15, 2, programa.getPednombre()); setExDat(sheet, 15, 3, ""); setExDat(sheet, 15, 4, ""); setStyleCell(sheet, borderstabla, 15, 1); setStyleCell(sheet, borderstabla, 15, 2); setStyleCell(sheet, borderstabla, 15, 3); setStyleCell(sheet, borderstabla, 15, 4); List<Planestudio> planes = filtrosBeanHelper.getConsultaDelegate() .getPlanesByPrograma(programa.getPedid()); boolean uno = true; int currow = 20; Planestudio planeact = new Planestudio(); for (Planestudio planeactn : planes) { planeact = planeactn; break; } ReporteAvanceAux tempAux = new ReporteAvanceAux(); for (ReporteAvanceAux aux : listaAux) { tempAux = aux; break; } //intentaremos usar un solo plan setExDat(sheet, currow, 1, "?reas de conocimiento"); setStyleCell(sheet, headerTabla, currow, 1); currow++; List<Areaconocimiento> areasConocimiento = filtrosBeanHelper.getConsultaDelegate() .getAreasByPlanClave(programa.getPedclave(), tempAux.getReporteAvance().getUnidadaprendizajeImparteProfesor().getGrupo() .getPlanestudio().getPesvigenciaPlan()); for (Areaconocimiento areaCon : areasConocimiento) { //clave , area de conocimiento, responsable setExDat(sheet, currow, 1, "Clave"); setExDat(sheet, currow, 2, "?rea de conocimiento"); setExDat(sheet, currow, 3, "Responsable"); setStyleCell(sheet, headerTabla, currow, 1); setStyleCell(sheet, headerTabla, currow, 2); setStyleCell(sheet, headerTabla, currow, 3); currow++; setExDat(sheet, currow, 1, areaCon.getAcoclave()); //clave setExDat(sheet, currow, 2, areaCon.getAconombre()); //area conociminto setExDat(sheet, currow, 3, ""); //responsable currow += 2; //obtenemos las unidades de aprendisake setExDat(sheet, currow, 1, "Clave unidad de aprendizaje"); setExDat(sheet, currow, 2, "Unidad de aprendizaje"); setExDat(sheet, currow, 3, "No. de empleado"); setExDat(sheet, currow, 4, "Nombre del profesor"); setExDat(sheet, currow, 5, "Grupo"); setExDat(sheet, currow, 6, "% Avance 1er reporte"); setExDat(sheet, currow, 7, "Fecha de elaboracin 1er RACT"); setExDat(sheet, currow, 8, "% Avance 2do reporte"); setExDat(sheet, currow, 9, "Fecha de elaboracin 2do RACT"); setExDat(sheet, currow, 10, "% Avance 3er reporte"); setExDat(sheet, currow, 11, "Fecha de elaboracin 3er RACT"); //autosize para la columna if (autotam) { sheet.autoSizeColumn(2); sheet.autoSizeColumn(4); sheet.autoSizeColumn(11); autotam = false; } // para formatear toda la linea for (int i = 1; i <= 11; i++) { //tenemos qu aajustar texto //tenemos que centrar el texto //cambiar el color de fondo setStyleCell(sheet, headerTabla, currow, i); } currow++; //List<Unidadaprendizaje> unidadesAprendisaje = filtrosBeanHelper.getConsultaDelegate().getUnidadByArea(areaCon.getAcoclave()); //de ls listaAux separamos los los reportes que correspondan a la unidad de aprendisaje acutal ArrayList<ReporteAvanceAux> tempListAux = new ArrayList<ReporteAvanceAux>(); for (ReporteAvanceAux aux : listaAux) { if (aux.getAreaConocimiento().getAcoclave() == areaCon.getAcoclave() && programa.getPedclave() == aux.getReporteAvance() .getUnidadaprendizajeImparteProfesor().getGrupo().getPlanestudio() .getProgramaeducativo().getPedclave()) { tempListAux.add(aux); } } //List<UnidadaprendizajeImparteProfesor> unidadesProfesor = filtrosBeanHelper.getConsultaDelegate().getUnidadesAprendisajeImparteProf(unidadApren.getUapid()); int uniprofeTemp = 0; for (ReporteAvanceAux auxRacs : tempListAux) { String nompreP = auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor() .getProfesor().getPronombre(); String apellidoPP = auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor() .getProfesor().getProapellidoPaterno(); String apellidoPM = auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor() .getProfesor().getProapellidoMaterno(); int claveUnidadApren = auxRacs.getReporteAvance() .getUnidadaprendizajeImparteProfesor().getUnidadaprendizaje().getUapclave(); String nombreUnidad = auxRacs.getReporteAvance() .getUnidadaprendizajeImparteProfesor().getUnidadaprendizaje() .getUapnombre(); uniprofeTemp = claveUnidadApren; setExDat(sheet, currow, 1, claveUnidadApren); //clave setExDat(sheet, currow, 2, nombreUnidad); //nombre unidad //reporteAvance.unidadaprendizajeImparteProfesor.profesor.pronumeroEmpleado setExDat(sheet, currow, 3, auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor() .getProfesor().getPronumeroEmpleado()); //numero empleado setExDat(sheet, currow, 4, apellidoPP + " " + apellidoPM + " " + nompreP); //nombre maestro setExDat(sheet, currow, 5, auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor().getGrupo() .getGponumero() + "-" + auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor() .getUiptipoSubgrupo() + "-" + auxRacs.getReporteAvance() .getUnidadaprendizajeImparteProfesor().getUipsubgrupo()); //grupo numero //marcamos bordes for (int i = 1; i <= 5; i++) { setStyleCell(sheet, borderstabla, currow, i); } float totalpor = 0; if (auxRacs.getStatusRact1() != null && auxRacs.getStatusRact2() != null && auxRacs.getStatusRact3() != null) { totalpor = auxRacs.getPorcentAvanceRact1() + auxRacs.getPorcentAvanceRact2() + auxRacs.getPorcentAvanceRact3(); } //tienne que ser entregados/enviados if (auxRacs.getStatusRact1() != null) { System.out.println("Entro a enviados 1"); setExDat(sheet, currow, (4 + (1 * 2)), auxRacs.getPorcentAvanceRact1()); //% avance 7** if (auxRacs.getFechaElaboracRact1() != null) { setExDat(sheet, currow, (4 + (1 * 2) + 1), auxRacs.getFechaElaboracRact1().toString()); //fecha elabora 8*** } else { setExDat(sheet, currow, (4 + (1 * 2) + 1), " "); //fecha elabora 8*** } setStyleCell(sheet, borderstabla, currow, (4 + (1 * 2))); setStyleCell(sheet, borderstabla, currow, (4 + (1 * 2) + 1)); } else { setExDat(sheet, currow, (4 + (1 * 2)), " "); //% avance 7** setExDat(sheet, currow, (4 + (1 * 2) + 1), " "); //fecha elabora 8*** setStyleCell(sheet, borderstabla, currow, (4 + (1 * 2))); setStyleCell(sheet, borderstabla, currow, (4 + (1 * 2) + 1)); } if (auxRacs.getStatusRact2() != null) { setExDat(sheet, currow, (4 + (2 * 2)), auxRacs.getPorcentAvanceRact2()); //% avance 7** if (auxRacs.getFechaElaboracRact2() != null) { setExDat(sheet, currow, (4 + (2 * 2) + 1), auxRacs.getFechaElaboracRact2().toString()); //fecha elabora 8*** } else { setExDat(sheet, currow, (4 + (2 * 2) + 1), " "); //fecha elabora 8*** } setStyleCell(sheet, borderstabla, currow, (4 + (2 * 2))); setStyleCell(sheet, borderstabla, currow, (4 + (2 * 2) + 1)); } else { setExDat(sheet, currow, (4 + (2 * 2)), " "); //% avance 7** setExDat(sheet, currow, (4 + (2 * 2) + 1), " "); //fecha elabora 8*** setStyleCell(sheet, borderstabla, currow, (4 + (2 * 2))); setStyleCell(sheet, borderstabla, currow, (4 + (2 * 2) + 1)); } if (auxRacs.getStatusRact3() != null) { setExDat(sheet, currow, (4 + (3 * 2)), auxRacs.getPorcentAvanceRact3()); //% avance 7** if (auxRacs.getFechaElaboracRact3() != null) { setExDat(sheet, currow, (4 + (3 * 2) + 1), auxRacs.getFechaElaboracRact3().toString()); //fecha elabora 8*** } else { setExDat(sheet, currow, (4 + (3 * 2) + 1), " "); //fecha elabora 8*** } setStyleCell(sheet, borderstabla, currow, (4 + (3 * 2))); setStyleCell(sheet, borderstabla, currow, (4 + (3 * 2) + 1)); } else { setExDat(sheet, currow, (4 + (3 * 2)), " "); //% avance 7** setExDat(sheet, currow, (4 + (3 * 2) + 1), " "); //fecha elabora 8*** setStyleCell(sheet, borderstabla, currow, (4 + (3 * 2))); setStyleCell(sheet, borderstabla, currow, (4 + (3 * 2) + 1)); } currow++; } currow += 2; } //cabeceran excel //sheet = cabezeraGeneralExcel(sheet,uabcLogo,style); } // fin del la comparacon de plan } // fin del for por plan de estudios } // fin de si es por entregados if(entregados) } //fin de programas educativos if (criterio.equalsIgnoreCase("area_conocimiento")) { HSSFSheet sheet = workbook.createSheet("Graficos"); nombreLibro = "- Area de conocimiento"; if (reporte.equalsIgnoreCase("entregados") || reporte.equalsIgnoreCase("noentregados") || reporte.equalsIgnoreCase("entregadosynoentregados") || //Aqui modifique Jesus Ruelas 26 oct 2015 reporte.equalsIgnoreCase("entregadosatiempo") || reporte.equalsIgnoreCase("entregadosdespueslimite") || reporte.equalsIgnoreCase("entregadosatiempoenfechalimiteydespues") || //Aqui modifique Jesus Ruelas 26 oct 2015 reporte.equalsIgnoreCase("Porcentaje de Avance Global Completo") || reporte.equalsIgnoreCase("Porcentaje de Avance Global Incompleto") || reporte.equalsIgnoreCase("Porcentaje de Avance Global Completo e Incompleto")) { if (reporte.equalsIgnoreCase("entregados")) nombreLibro = "Entregados " + nombreLibro; if (reporte.equalsIgnoreCase("noentregados")) nombreLibro = "No Entregados " + nombreLibro; if (reporte.equalsIgnoreCase("entregadosynoentregados")) nombreLibro = "Entregados Y No Entregados " + nombreLibro; //Aqui modifique Jesus Ruelas 26 oct 2015 if (reporte.equalsIgnoreCase("entregadosatiempo")) nombreLibro = "Entregados a tiempo " + nombreLibro; if (reporte.equalsIgnoreCase("entregadosdespueslimite")) nombreLibro = "Entregados despus de fecha lmite " + nombreLibro; if (reporte.equalsIgnoreCase("entregadosatiempoenfechalimiteydespues")) nombreLibro = "Entregados a tiempo y despues de fecha lmite " + nombreLibro; //Aqui modifique Jesus Ruelas 26 oct 2015 if (reporte.equalsIgnoreCase("Porcentaje de Avance Global Completo")) nombreLibro = "Porcentaje de Avance Global Completo " + nombreLibro; if (reporte.equalsIgnoreCase("Porcentaje de Avance Global Incompleto")) nombreLibro = "Porcentaje de Avance Global Incompleto " + nombreLibro; if (reporte.equalsIgnoreCase("Porcentaje de Avance Global Completo e Incompleto")) nombreLibro = "Porcentaje de Avance Global Completo e Incompleto " + nombreLibro; //definimos encabezado //sheet = cabezeraGeneralExcel(sheet,uabcLogo,style); //mostraremos tabla con // Programas educativos // Total Racs entregados // Total Esperados //preparamos informacion para insertar List<Programaeducativo> programasByUnidad = getProgramasByUnidad(); List<Areaconocimiento> areasByUnidad = getAreasByPlanesEstudioClave(); /* Programacion de Hojas*/ for (Areaconocimiento areaConocimiento : areasByUnidad) { if (selectAreaConocimiento.contains(Integer.toString(areaConocimiento.getAcoclave()))) { //aqui creamos la hoja para el programa ArrayList<ReporteAvanceAux> tempListAux = new ArrayList<ReporteAvanceAux>(); for (ReporteAvanceAux aux : listaAux) { if (aux.getAreaConocimiento().getAcoclave() == areaConocimiento.getAcoclave()) { tempListAux.add(aux); } } //// de este for // para no imprirmir hojas vacias if (tempListAux.size() > 0) { sheet = workbook.createSheet(areaConocimiento.getAconombre()); //sheet = cabezeraGeneralExcel(sheet,uabcLogo,style); lo moveremos al final de la hoja para que no sea mdoficada la imagen setExDat(sheet, 8, 3, "Concentrado de Reporte de Avance de Contenido Temtico de Entregados por Area de conocimiento"); boolean autotam = true; int currow = 18; //Aqui modifique Jesus Ruelas 26 oct 2015 if (reporte.equalsIgnoreCase("entregadosatiempo") || reporte.equalsIgnoreCase("entregadosdespueslimite") || reporte.equalsIgnoreCase("entregadosatiempoenfechalimiteydespues")) { if (ract.equalsIgnoreCase("1") || ract.equalsIgnoreCase("2") || ract.equalsIgnoreCase("3")) { setExDat(sheet, currow, 1, "Fecha Corte"); setExDat(sheet, currow, 2, "Fecha Lmite"); setStyleCell(sheet, headerTabla, currow, 1); setStyleCell(sheet, headerTabla, currow, 2); currow++; setExDat(sheet, currow, 1, tempListAux.get(0).getFechaCorte().toString()); setExDat(sheet, currow, 2, tempListAux.get(0).getFechaLimite().toString()); currow++; currow++; } else { ReporteAux rep1 = new ReporteAux(); ReporteAux rep2 = new ReporteAux(); ReporteAux rep3 = new ReporteAux(); rep1.setNumRact(1); rep2.setNumRact(2); rep3.setNumRact(3); rep1.setCescicloEscolar(tempListAux.get(0).getReporteAvance() .getUnidadaprendizajeImparteProfesor().getUnidadaprendizaje() .getCicloescolar().getCescicloEscolar()); rep2.setCescicloEscolar(tempListAux.get(0).getReporteAvance() .getUnidadaprendizajeImparteProfesor().getUnidadaprendizaje() .getCicloescolar().getCescicloEscolar()); rep3.setCescicloEscolar(tempListAux.get(0).getReporteAvance() .getUnidadaprendizajeImparteProfesor().getUnidadaprendizaje() .getCicloescolar().getCescicloEscolar()); ReporteAvanceAux ra1 = new ReporteAvanceAux(); ReporteAvanceAux ra2 = new ReporteAvanceAux(); ReporteAvanceAux ra3 = new ReporteAvanceAux(); ra1 = filtrosBeanHelper.TiempoLimiteYCorte(rep1); ra2 = filtrosBeanHelper.TiempoLimiteYCorte(rep2); ra3 = filtrosBeanHelper.TiempoLimiteYCorte(rep3); setExDat(sheet, currow, 1, "Fecha Corte Ract 1"); setExDat(sheet, currow, 2, "Fecha Lmite Ract 1"); setStyleCell(sheet, headerTabla, currow, 1); setStyleCell(sheet, headerTabla, currow, 2); currow++; setExDat(sheet, currow, 1, ra1.getFechaCorte().toString()); setExDat(sheet, currow, 2, ra1.getFechaLimite().toString()); //currow++; setExDat(sheet, currow - 1, 4, "Fecha Corte Ract 2"); setExDat(sheet, currow - 1, 5, "Fecha Lmite Ract 2"); setStyleCell(sheet, headerTabla, currow - 1, 4); setStyleCell(sheet, headerTabla, currow - 1, 5); //currow++; setExDat(sheet, currow, 4, ra2.getFechaCorte().toString()); setExDat(sheet, currow, 5, ra2.getFechaLimite().toString()); //currow++; setExDat(sheet, currow - 1, 7, "Fecha Corte Ract 3"); setExDat(sheet, currow - 1, 8, "Fecha Lmite Ract 3"); setStyleCell(sheet, headerTabla, currow - 1, 7); setStyleCell(sheet, headerTabla, currow - 1, 8); //currow++; setExDat(sheet, currow, 7, ra3.getFechaCorte().toString()); setExDat(sheet, currow, 8, ra3.getFechaLimite().toString()); currow++; currow++; } } //Aqui modifique Jesus Ruelas 26 oct 2015 setExDat(sheet, currow, 1, "Clave unidad de aprendizaje"); setExDat(sheet, currow, 2, "Unidad de aprendizaje"); setExDat(sheet, currow, 3, "No. de empleado"); setExDat(sheet, currow, 4, "Nombre del profesor"); setExDat(sheet, currow, 5, "Grupo"); setExDat(sheet, currow, 6, "% Avance 1er reporte"); setExDat(sheet, currow, 7, "Fecha de elaboracin 1er RACT"); setExDat(sheet, currow, 8, "% Avance 2do reporte"); setExDat(sheet, currow, 9, "Fecha de elaboracin 2do RACT"); setExDat(sheet, currow, 10, "% Avance 3er reporte"); setExDat(sheet, currow, 11, "Fecha de elaboracin 3er RACT"); //autosize para la columna if (autotam) { sheet.autoSizeColumn(2); sheet.autoSizeColumn(4); sheet.autoSizeColumn(11); autotam = false; } // para formatear toda la linea for (int i = 1; i <= 11; i++) { setStyleCell(sheet, headerTabla, currow, i); } currow++; int uniprofeTemp = 0; for (ReporteAvanceAux auxRacs : tempListAux) { //marcamos bordes for (int i = 1; i <= 11; i++) { setExDat(sheet, currow, i, " "); } for (int i = 1; i <= 11; i++) { setStyleCell(sheet, borderstabla, currow, i); } String nompreP = auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor() .getProfesor().getPronombre(); String apellidoPP = auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor() .getProfesor().getProapellidoPaterno(); String apellidoPM = auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor() .getProfesor().getProapellidoMaterno(); int claveUnidadApren = auxRacs.getReporteAvance() .getUnidadaprendizajeImparteProfesor().getUnidadaprendizaje().getUapclave(); String nombreUnidad = auxRacs.getReporteAvance() .getUnidadaprendizajeImparteProfesor().getUnidadaprendizaje() .getUapnombre(); uniprofeTemp = claveUnidadApren; setExDat(sheet, currow, 1, claveUnidadApren); //clave setExDat(sheet, currow, 2, nombreUnidad); //nombre unidad //reporteAvance.unidadaprendizajeImparteProfesor.profesor.pronumeroEmpleado setExDat(sheet, currow, 3, auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor() .getProfesor().getPronumeroEmpleado()); //numero empleado setExDat(sheet, currow, 4, apellidoPP + " " + apellidoPM + " " + nompreP); //nombre maestro setExDat(sheet, currow, 5, auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor().getGrupo() .getGponumero() + "-" + auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor() .getUiptipoSubgrupo() + "-" + auxRacs.getReporteAvance() .getUnidadaprendizajeImparteProfesor().getUipsubgrupo()); //grupo numero //marcamos bordes for (int i = 1; i <= 5; i++) { setStyleCell(sheet, borderstabla, currow, i); } //tienne que ser entregados/enviados if (auxRacs.getStatusRact1() != null) { System.out.println("Entro a enviados 1"); setExDat(sheet, currow, (4 + (1 * 2)), auxRacs.getPorcentAvanceRact1()); //% avance 7** if (auxRacs.getFechaElaboracRact1() != null) { setExDat(sheet, currow, (4 + (1 * 2) + 1), auxRacs.getFechaElaboracRact1().toString()); //fecha elabora 8*** } else { setExDat(sheet, currow, (4 + (1 * 2) + 1), " "); //fecha elabora 8*** } setStyleCell(sheet, borderstabla, currow, (4 + (1 * 2))); setStyleCell(sheet, borderstabla, currow, (4 + (1 * 2) + 1)); } else { setExDat(sheet, currow, (4 + (1 * 2)), " "); //% avance 7** setExDat(sheet, currow, (4 + (1 * 2) + 1), " "); //fecha elabora 8*** setStyleCell(sheet, borderstabla, currow, (4 + (1 * 2))); setStyleCell(sheet, borderstabla, currow, (4 + (1 * 2) + 1)); } if (auxRacs.getStatusRact2() != null) { setExDat(sheet, currow, (4 + (2 * 2)), auxRacs.getPorcentAvanceRact2()); //% avance 7** if (auxRacs.getFechaElaboracRact2() != null) { setExDat(sheet, currow, (4 + (2 * 2) + 1), auxRacs.getFechaElaboracRact2().toString()); //fecha elabora 8*** } else { setExDat(sheet, currow, (4 + (2 * 2) + 1), " "); //fecha elabora 8*** } setStyleCell(sheet, borderstabla, currow, (4 + (2 * 2))); setStyleCell(sheet, borderstabla, currow, (4 + (2 * 2) + 1)); } else { setExDat(sheet, currow, (4 + (2 * 2)), " "); //% avance 7** setExDat(sheet, currow, (4 + (2 * 2) + 1), " "); //fecha elabora 8*** setStyleCell(sheet, borderstabla, currow, (4 + (2 * 2))); setStyleCell(sheet, borderstabla, currow, (4 + (2 * 2) + 1)); } if (auxRacs.getStatusRact3() != null) { setExDat(sheet, currow, (4 + (3 * 2)), auxRacs.getPorcentAvanceRact3()); //% avance 7** if (auxRacs.getFechaElaboracRact3() != null) { setExDat(sheet, currow, (4 + (3 * 2) + 1), auxRacs.getFechaElaboracRact3().toString()); //fecha elabora 8*** } else { setExDat(sheet, currow, (4 + (3 * 2) + 1), " "); //fecha elabora 8*** } setStyleCell(sheet, borderstabla, currow, (4 + (3 * 2))); setStyleCell(sheet, borderstabla, currow, (4 + (3 * 2) + 1)); } else { setExDat(sheet, currow, (4 + (3 * 2)), " "); //% avance 7** setExDat(sheet, currow, (4 + (3 * 2) + 1), " "); //fecha elabora 8*** setStyleCell(sheet, borderstabla, currow, (4 + (3 * 2))); setStyleCell(sheet, borderstabla, currow, (4 + (3 * 2) + 1)); } currow++; } } // delfindelfor //fin de codigo e imrpesion de cabezera sheet = cabezeraGeneralExcel(sheet, uabcLogo, style); } } // fin del for por plan de estudios } // fin de si es por entregados if(entregados) } //fin de areas de conocimiento if (criterio.equalsIgnoreCase("unidad_aprendizaje")) { HSSFSheet sheet = workbook.createSheet("Graficos"); nombreLibro = "- Unidad de aprendizaje"; if (reporte.equalsIgnoreCase("entregados") || reporte.equalsIgnoreCase("noentregados") || reporte.equalsIgnoreCase("entregadosynoentregados") || //Aqui modifique Jesus Ruelas 26 oct 2015 reporte.equalsIgnoreCase("entregadosatiempo") || reporte.equalsIgnoreCase("entregadosdespueslimite") || reporte.equalsIgnoreCase("entregadosatiempoenfechalimiteydespues") || //Aqui modifique Jesus Ruelas 26 oct 2015 reporte.equalsIgnoreCase("Porcentaje de Avance Global Completo") || reporte.equalsIgnoreCase("Porcentaje de Avance Global Incompleto") || reporte.equalsIgnoreCase("Porcentaje de Avance Global Completo e Incompleto")) { if (reporte.equalsIgnoreCase("entregados")) nombreLibro = "Entregados " + nombreLibro; if (reporte.equalsIgnoreCase("noentregados")) nombreLibro = "No Entregados " + nombreLibro; if (reporte.equalsIgnoreCase("entregadosynoentregados")) nombreLibro = "Entregados Y No Entregados " + nombreLibro; //Aqui modifique Jesus Ruelas 26 oct 2015 if (reporte.equalsIgnoreCase("entregadosatiempo")) nombreLibro = "Entregados a tiempo " + nombreLibro; if (reporte.equalsIgnoreCase("entregadosdespueslimite")) nombreLibro = "Entregados despus de fecha lmite " + nombreLibro; if (reporte.equalsIgnoreCase("entregadosatiempoenfechalimiteydespues")) nombreLibro = "Entregados a tiempo y despues de fecha lmite " + nombreLibro; //Aqui modifique Jesus Ruelas 26 oct 2015 if (reporte.equalsIgnoreCase("Porcentaje de Avance Global Completo")) nombreLibro = "Porcentaje de Avance Global Completo " + nombreLibro; if (reporte.equalsIgnoreCase("Porcentaje de Avance Global Incompleto")) nombreLibro = "Porcentaje de Avance Global Incompleto " + nombreLibro; if (reporte.equalsIgnoreCase("Porcentaje de Avance Global Completo e Incompleto")) nombreLibro = "Porcentaje de Avance Global Completo e Incompleto " + nombreLibro; //definimos encabezado //sheet = cabezeraGeneralExcel(sheet,uabcLogo,style); //mostraremos tabla con // Programas educativos // Total Racs entregados // Total Esperados //preparamos informacion para insertar List<Programaeducativo> programasByUnidad = getProgramasByUnidad(); List<Unidadaprendizaje> unidadesByArea = getUnidadesByAreaAconocimientoClave(); /* Programacion de Hojas*/ for (Unidadaprendizaje unidadAprend : unidadesByArea) { if (selectUnidadAprendisaje.contains(Integer.toString(unidadAprend.getUapclave()))) { //aqui creamos la hoja para el programa ArrayList<ReporteAvanceAux> tempListAux = new ArrayList<ReporteAvanceAux>(); for (ReporteAvanceAux aux : listaAux) { if (aux.reporteAvance.getUnidadaprendizajeImparteProfesor().getUnidadaprendizaje() .getUapclave() == unidadAprend.getUapclave()) { tempListAux.add(aux); } } //// de este for // para no imprirmir hojas vacias if (tempListAux.size() > 0) { sheet = workbook.createSheet(unidadAprend.getUapnombre()); //sheet = cabezeraGeneralExcel(sheet,uabcLogo,style); lo moveremos al final de la hoja para que no sea mdoficada la imagen setExDat(sheet, 8, 3, "Concentrado de Reporte de Avance de Contenido Temtico de Entregados por Unidad de aprendizaje"); boolean autotam = true; int currow = 18; //Aqui modifique Jesus Ruelas 26 oct 2015 if (reporte.equalsIgnoreCase("entregadosatiempo") || reporte.equalsIgnoreCase("entregadosdespueslimite") || reporte.equalsIgnoreCase("entregadosatiempoenfechalimiteydespues")) { if (ract.equalsIgnoreCase("1") || ract.equalsIgnoreCase("2") || ract.equalsIgnoreCase("3")) { setExDat(sheet, currow, 1, "Fecha Corte"); setExDat(sheet, currow, 2, "Fecha Lmite"); setStyleCell(sheet, headerTabla, currow, 1); setStyleCell(sheet, headerTabla, currow, 2); currow++; setExDat(sheet, currow, 1, tempListAux.get(0).getFechaCorte().toString()); setExDat(sheet, currow, 2, tempListAux.get(0).getFechaLimite().toString()); currow++; currow++; } else { ReporteAux rep1 = new ReporteAux(); ReporteAux rep2 = new ReporteAux(); ReporteAux rep3 = new ReporteAux(); rep1.setNumRact(1); rep2.setNumRact(2); rep3.setNumRact(3); rep1.setCescicloEscolar(tempListAux.get(0).getReporteAvance() .getUnidadaprendizajeImparteProfesor().getUnidadaprendizaje() .getCicloescolar().getCescicloEscolar()); rep2.setCescicloEscolar(tempListAux.get(0).getReporteAvance() .getUnidadaprendizajeImparteProfesor().getUnidadaprendizaje() .getCicloescolar().getCescicloEscolar()); rep3.setCescicloEscolar(tempListAux.get(0).getReporteAvance() .getUnidadaprendizajeImparteProfesor().getUnidadaprendizaje() .getCicloescolar().getCescicloEscolar()); ReporteAvanceAux ra1 = new ReporteAvanceAux(); ReporteAvanceAux ra2 = new ReporteAvanceAux(); ReporteAvanceAux ra3 = new ReporteAvanceAux(); ra1 = filtrosBeanHelper.TiempoLimiteYCorte(rep1); ra2 = filtrosBeanHelper.TiempoLimiteYCorte(rep2); ra3 = filtrosBeanHelper.TiempoLimiteYCorte(rep3); setExDat(sheet, currow, 1, "Fecha Corte Ract 1"); setExDat(sheet, currow, 2, "Fecha Lmite Ract 1"); setStyleCell(sheet, headerTabla, currow, 1); setStyleCell(sheet, headerTabla, currow, 2); currow++; setExDat(sheet, currow, 1, ra1.getFechaCorte().toString()); setExDat(sheet, currow, 2, ra1.getFechaLimite().toString()); //currow++; setExDat(sheet, currow - 1, 4, "Fecha Corte Ract 2"); setExDat(sheet, currow - 1, 5, "Fecha Lmite Ract 2"); setStyleCell(sheet, headerTabla, currow - 1, 4); setStyleCell(sheet, headerTabla, currow - 1, 5); //currow++; setExDat(sheet, currow, 4, ra2.getFechaCorte().toString()); setExDat(sheet, currow, 5, ra2.getFechaLimite().toString()); //currow++; setExDat(sheet, currow - 1, 7, "Fecha Corte Ract 3"); setExDat(sheet, currow - 1, 8, "Fecha Lmite Ract 3"); setStyleCell(sheet, headerTabla, currow - 1, 7); setStyleCell(sheet, headerTabla, currow - 1, 8); //currow++; setExDat(sheet, currow, 7, ra3.getFechaCorte().toString()); setExDat(sheet, currow, 8, ra3.getFechaLimite().toString()); currow++; currow++; } } //Aqui modifique Jesus Ruelas 26 oct 2015 setExDat(sheet, currow, 1, "Clave unidad de aprendizaje"); setExDat(sheet, currow, 2, "Unidad de aprendizaje"); setStyleCell(sheet, headerTabla, currow, 1); setStyleCell(sheet, headerTabla, currow, 2); currow++; int claveUnidadApren = tempListAux.get(0).getReporteAvance() .getUnidadaprendizajeImparteProfesor().getUnidadaprendizaje().getUapclave(); String nombreUnidad = tempListAux.get(0).getReporteAvance() .getUnidadaprendizajeImparteProfesor().getUnidadaprendizaje().getUapnombre(); int uniprofeTemp = 0; uniprofeTemp = claveUnidadApren; setExDat(sheet, currow, 1, claveUnidadApren); //clave setExDat(sheet, currow, 2, nombreUnidad); //nombre unidad currow++; //autosize para la columna if (autotam) { sheet.autoSizeColumn(2); sheet.autoSizeColumn(4); sheet.autoSizeColumn(11); autotam = false; } setExDat(sheet, currow, 1, "No. de empleado"); setExDat(sheet, currow, 2, "Nombre del profesor"); setExDat(sheet, currow, 3, "Grupo"); setExDat(sheet, currow, 4, "% Avance 1er reporte"); setExDat(sheet, currow, 5, "Fecha de elaboracin 1er RACT"); setExDat(sheet, currow, 6, "% Avance 2do reporte"); setExDat(sheet, currow, 7, "Fecha de elaboracin 2do RACT"); setExDat(sheet, currow, 8, "% Avance 3er reporte"); setExDat(sheet, currow, 9, "Fecha de elaboracin 3er RACT"); // para formatear toda la linea for (int i = 1; i <= 9; i++) { setStyleCell(sheet, headerTabla, currow, i); } //currow++; currow++; for (ReporteAvanceAux auxRacs : tempListAux) { //marcamos bordes for (int i = 1; i <= 9; i++) { setExDat(sheet, currow, i, " "); } for (int i = 1; i <= 9; i++) { setStyleCell(sheet, borderstabla, currow, i); } String nompreP = auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor() .getProfesor().getPronombre(); String apellidoPP = auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor() .getProfesor().getProapellidoPaterno(); String apellidoPM = auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor() .getProfesor().getProapellidoMaterno(); //reporteAvance.unidadaprendizajeImparteProfesor.profesor.pronumeroEmpleado setExDat(sheet, currow, 1, auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor() .getProfesor().getPronumeroEmpleado()); //numero empleado setExDat(sheet, currow, 2, apellidoPP + " " + apellidoPM + " " + nompreP); //nombre maestro setExDat(sheet, currow, 3, auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor().getGrupo() .getGponumero() + "-" + auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor() .getUiptipoSubgrupo() + "-" + auxRacs.getReporteAvance() .getUnidadaprendizajeImparteProfesor().getUipsubgrupo()); //grupo numero //marcamos bordes for (int i = 1; i <= 5; i++) { setStyleCell(sheet, borderstabla, currow, i); } //tienne que ser entregados/enviados if (auxRacs.getStatusRact1() != null) { System.out.println("Entro a enviados 1"); setExDat(sheet, currow, (2 + (1 * 2)), auxRacs.getPorcentAvanceRact1()); //% avance 7** if (auxRacs.getFechaElaboracRact1() != null) { setExDat(sheet, currow, (2 + (1 * 2) + 1), auxRacs.getFechaElaboracRact1().toString()); //fecha elabora 8*** } else { setExDat(sheet, currow, (2 + (1 * 2) + 1), " "); //fecha elabora 8*** } setStyleCell(sheet, borderstabla, currow, (2 + (1 * 2))); setStyleCell(sheet, borderstabla, currow, (2 + (1 * 2) + 1)); } else { setExDat(sheet, currow, (2 + (1 * 2)), " "); //% avance 7** setExDat(sheet, currow, (2 + (1 * 2) + 1), " "); //fecha elabora 8*** setStyleCell(sheet, borderstabla, currow, (2 + (1 * 2))); setStyleCell(sheet, borderstabla, currow, (2 + (1 * 2) + 1)); } if (auxRacs.getStatusRact2() != null) { setExDat(sheet, currow, (2 + (2 * 2)), auxRacs.getPorcentAvanceRact2()); //% avance 7** if (auxRacs.getFechaElaboracRact2() != null) { setExDat(sheet, currow, (2 + (2 * 2) + 1), auxRacs.getFechaElaboracRact2().toString()); //fecha elabora 8*** } else { setExDat(sheet, currow, (2 + (2 * 2) + 1), " "); //fecha elabora 8*** } setStyleCell(sheet, borderstabla, currow, (2 + (2 * 2))); setStyleCell(sheet, borderstabla, currow, (2 + (2 * 2) + 1)); } else { setExDat(sheet, currow, (2 + (2 * 2)), " "); //% avance 7** setExDat(sheet, currow, (2 + (2 * 2) + 1), " "); //fecha elabora 8*** setStyleCell(sheet, borderstabla, currow, (2 + (2 * 2))); setStyleCell(sheet, borderstabla, currow, (2 + (2 * 2) + 1)); } if (auxRacs.getStatusRact3() != null) { setExDat(sheet, currow, (2 + (3 * 2)), auxRacs.getPorcentAvanceRact3()); //% avance 7** if (auxRacs.getFechaElaboracRact3() != null) { setExDat(sheet, currow, (2 + (3 * 2) + 1), auxRacs.getFechaElaboracRact3().toString()); //fecha elabora 8*** } else { setExDat(sheet, currow, (2 + (3 * 2) + 1), " "); //fecha elabora 8*** } setStyleCell(sheet, borderstabla, currow, (2 + (3 * 2))); setStyleCell(sheet, borderstabla, currow, (2 + (3 * 2) + 1)); } else { setExDat(sheet, currow, (2 + (3 * 2)), " "); //% avance 7** setExDat(sheet, currow, (2 + (3 * 2) + 1), " "); //fecha elabora 8*** setStyleCell(sheet, borderstabla, currow, (2 + (3 * 2))); setStyleCell(sheet, borderstabla, currow, (2 + (3 * 2) + 1)); } currow++; } } // delfindelfor //fin de codigo e imrpesion de cabezera sheet = cabezeraGeneralExcel(sheet, uabcLogo, style); } } // fin del for por plan de estudios } // fin de si es por entregados if(entregados) } //fin de unidad de aprendizaje if (criterio.equalsIgnoreCase("profesor")) { HSSFSheet sheet = workbook.createSheet("Graficos"); nombreLibro = "- Profesor"; if (reporte.equalsIgnoreCase("entregados") || reporte.equalsIgnoreCase("noentregados") || reporte.equalsIgnoreCase("entregadosynoentregados") || //Aqui modifique Jesus Ruelas 26 oct 2015 reporte.equalsIgnoreCase("entregadosatiempo") || reporte.equalsIgnoreCase("entregadosdespueslimite") || reporte.equalsIgnoreCase("entregadosatiempoenfechalimiteydespues") || //Aqui modifique Jesus Ruelas 26 oct 2015 reporte.equalsIgnoreCase("Porcentaje de Avance Global Completo") || reporte.equalsIgnoreCase("Porcentaje de Avance Global Incompleto") || reporte.equalsIgnoreCase("Porcentaje de Avance Global Completo e Incompleto")) { if (reporte.equalsIgnoreCase("entregados")) nombreLibro = "Entregados " + nombreLibro; if (reporte.equalsIgnoreCase("noentregados")) nombreLibro = "No Entregados " + nombreLibro; if (reporte.equalsIgnoreCase("entregadosynoentregados")) nombreLibro = "Entregados Y No Entregados " + nombreLibro; //Aqui modifique Jesus Ruelas 26 oct 2015 if (reporte.equalsIgnoreCase("entregadosatiempo")) nombreLibro = "Entregados a tiempo " + nombreLibro; if (reporte.equalsIgnoreCase("entregadosdespueslimite")) nombreLibro = "Entregados despus de fecha lmite " + nombreLibro; if (reporte.equalsIgnoreCase("entregadosatiempoenfechalimiteydespues")) nombreLibro = "Entregados a tiempo y despues de fecha lmite " + nombreLibro; //Aqui modifique Jesus Ruelas 26 oct 2015 if (reporte.equalsIgnoreCase("Porcentaje de Avance Global Completo")) nombreLibro = "Porcentaje de Avance Global Completo " + nombreLibro; if (reporte.equalsIgnoreCase("Porcentaje de Avance Global Incompleto")) nombreLibro = "Porcentaje de Avance Global Incompleto " + nombreLibro; if (reporte.equalsIgnoreCase("Porcentaje de Avance Global Completo e Incompleto")) nombreLibro = "Porcentaje de Avance Global Completo e Incompleto " + nombreLibro; //definimos encabezado //sheet = cabezeraGeneralExcel(sheet,uabcLogo,style); //mostraremos tabla con // Programas educativos // Total Racs entregados // Total Esperados //preparamos informacion para insertar List<Programaeducativo> programasByUnidad = getProgramasByUnidad(); List<Profesor> profesoresByUAprend = getProfesoresByUnidadAprendisajeClave(); /* Programacion de Hojas*/ for (Profesor prof : profesoresByUAprend) { if (selectProfesor.contains(Integer.toString(prof.getPronumeroEmpleado()))) { //aqui creamos la hoja para el programa ArrayList<ReporteAvanceAux> tempListAux = new ArrayList<ReporteAvanceAux>(); for (ReporteAvanceAux aux : listaAux) { if (aux.reporteAvance.getUnidadaprendizajeImparteProfesor().getProfesor() .getPronumeroEmpleado() == prof.getPronumeroEmpleado()) { tempListAux.add(aux); } } //// de este for // para no imprirmir hojas vacias if (tempListAux.size() > 0) { String nompreP = tempListAux.get(0).getReporteAvance() .getUnidadaprendizajeImparteProfesor().getProfesor().getPronombre(); String apellidoPP = tempListAux.get(0).getReporteAvance() .getUnidadaprendizajeImparteProfesor().getProfesor().getProapellidoPaterno(); String apellidoPM = tempListAux.get(0).getReporteAvance() .getUnidadaprendizajeImparteProfesor().getProfesor().getProapellidoMaterno(); sheet = workbook.createSheet(String.valueOf(prof.getPronumeroEmpleado())); //sheet = cabezeraGeneralExcel(sheet,uabcLogo,style); lo moveremos al final de la hoja para que no sea mdoficada la imagen setExDat(sheet, 8, 3, "Concentrado de Reporte de Avance de Contenido Temtico de Entregados por Profesor " + prof.getPronumeroEmpleado() + " " + apellidoPP + " " + apellidoPM + " " + nompreP); boolean autotam = true; int currow = 18; //Aqui modifique Jesus Ruelas 26 oct 2015 if (reporte.equalsIgnoreCase("entregadosatiempo") || reporte.equalsIgnoreCase("entregadosdespueslimite") || reporte.equalsIgnoreCase("entregadosatiempoenfechalimiteydespues")) { if (ract.equalsIgnoreCase("1") || ract.equalsIgnoreCase("2") || ract.equalsIgnoreCase("3")) { setExDat(sheet, currow, 1, "Fecha Corte"); setExDat(sheet, currow, 2, "Fecha Lmite"); setStyleCell(sheet, headerTabla, currow, 1); setStyleCell(sheet, headerTabla, currow, 2); currow++; setExDat(sheet, currow, 1, tempListAux.get(0).getFechaCorte().toString()); setExDat(sheet, currow, 2, tempListAux.get(0).getFechaLimite().toString()); currow++; currow++; } else { ReporteAux rep1 = new ReporteAux(); ReporteAux rep2 = new ReporteAux(); ReporteAux rep3 = new ReporteAux(); rep1.setNumRact(1); rep2.setNumRact(2); rep3.setNumRact(3); rep1.setCescicloEscolar(tempListAux.get(0).getReporteAvance() .getUnidadaprendizajeImparteProfesor().getUnidadaprendizaje() .getCicloescolar().getCescicloEscolar()); rep2.setCescicloEscolar(tempListAux.get(0).getReporteAvance() .getUnidadaprendizajeImparteProfesor().getUnidadaprendizaje() .getCicloescolar().getCescicloEscolar()); rep3.setCescicloEscolar(tempListAux.get(0).getReporteAvance() .getUnidadaprendizajeImparteProfesor().getUnidadaprendizaje() .getCicloescolar().getCescicloEscolar()); ReporteAvanceAux ra1 = new ReporteAvanceAux(); ReporteAvanceAux ra2 = new ReporteAvanceAux(); ReporteAvanceAux ra3 = new ReporteAvanceAux(); ra1 = filtrosBeanHelper.TiempoLimiteYCorte(rep1); ra2 = filtrosBeanHelper.TiempoLimiteYCorte(rep2); ra3 = filtrosBeanHelper.TiempoLimiteYCorte(rep3); setExDat(sheet, currow, 1, "Fecha Corte Ract 1"); setExDat(sheet, currow, 2, "Fecha Lmite Ract 1"); setStyleCell(sheet, headerTabla, currow, 1); setStyleCell(sheet, headerTabla, currow, 2); currow++; setExDat(sheet, currow, 1, ra1.getFechaCorte().toString()); setExDat(sheet, currow, 2, ra1.getFechaLimite().toString()); //currow++; setExDat(sheet, currow - 1, 4, "Fecha Corte Ract 2"); setExDat(sheet, currow - 1, 5, "Fecha Lmite Ract 2"); setStyleCell(sheet, headerTabla, currow - 1, 4); setStyleCell(sheet, headerTabla, currow - 1, 5); //currow++; setExDat(sheet, currow, 4, ra2.getFechaCorte().toString()); setExDat(sheet, currow, 5, ra2.getFechaLimite().toString()); //currow++; setExDat(sheet, currow - 1, 7, "Fecha Corte Ract 3"); setExDat(sheet, currow - 1, 8, "Fecha Lmite Ract 3"); setStyleCell(sheet, headerTabla, currow - 1, 7); setStyleCell(sheet, headerTabla, currow - 1, 8); //currow++; setExDat(sheet, currow, 7, ra3.getFechaCorte().toString()); setExDat(sheet, currow, 8, ra3.getFechaLimite().toString()); currow++; currow++; } } //Aqui modifique Jesus Ruelas 26 oct 2015 //autosize para la columna if (autotam) { sheet.autoSizeColumn(2); sheet.autoSizeColumn(4); sheet.autoSizeColumn(11); autotam = false; } //reporteAvance.unidadaprendizajeImparteProfesor.profesor.pronumeroEmpleado // setExDat(sheet, currow,3, tempListAux.get(0).getReporteAvance().getUnidadaprendizajeImparteProfesor().getProfesor().getPronumeroEmpleado() ); //numero empleado // setExDat(sheet, currow,4, apellidoPP+ " "+apellidoPM+ " "+nompreP ); //nombre maestro // setExDat(sheet, currow,5, tempListAux.get(0).getReporteAvance().getUnidadaprendizajeImparteProfesor().getGrupo().getGponumero() + "-"+ auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor().getUiptipoSubgrupo() + "-"+ auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor().getUipsubgrupo() ); //grupo numero setExDat(sheet, currow, 1, "Clave unidad de aprendizaje"); setExDat(sheet, currow, 2, "Unidad de aprendizaje"); setExDat(sheet, currow, 3, "Area de conocimiento"); setExDat(sheet, currow, 4, "Grupo"); setExDat(sheet, currow, 5, "% Avance 1er reporte"); setExDat(sheet, currow, 6, "Fecha de elaboracin 1er RACT"); setExDat(sheet, currow, 7, "% Avance 2do reporte"); setExDat(sheet, currow, 8, "Fecha de elaboracin 2do RACT"); setExDat(sheet, currow, 9, "% Avance 3er reporte"); setExDat(sheet, currow, 10, "Fecha de elaboracin 3er RACT"); // para formatear toda la linea for (int i = 1; i <= 10; i++) { setStyleCell(sheet, headerTabla, currow, i); } //currow++; currow++; for (ReporteAvanceAux auxRacs : tempListAux) { //marcamos bordes for (int i = 1; i <= 10; i++) { setExDat(sheet, currow, i, " "); } for (int i = 1; i <= 10; i++) { setStyleCell(sheet, borderstabla, currow, i); } //currow++; int claveUnidadApren = auxRacs.getReporteAvance() .getUnidadaprendizajeImparteProfesor().getUnidadaprendizaje().getUapclave(); String nombreUnidad = auxRacs.getReporteAvance() .getUnidadaprendizajeImparteProfesor().getUnidadaprendizaje() .getUapnombre(); String areaCon = auxRacs.getAreaConocimiento().getAconombre(); //String grupo = auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor().getGrupo().getAreaConocimiento(); int uniprofeTemp = 0; uniprofeTemp = claveUnidadApren; setExDat(sheet, currow, 1, claveUnidadApren); //clave setExDat(sheet, currow, 2, nombreUnidad); //clave setExDat(sheet, currow, 3, areaCon); //nombre unidad setExDat(sheet, currow, 4, auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor().getGrupo() .getGponumero() + "-" + auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor() .getUiptipoSubgrupo() + "-" + auxRacs.getReporteAvance() .getUnidadaprendizajeImparteProfesor().getUipsubgrupo()); //grupo numero //marcamos bordes for (int i = 1; i <= 5; i++) { setStyleCell(sheet, borderstabla, currow, i); } //tienne que ser entregados/enviados if (auxRacs.getStatusRact1() != null) { System.out.println("Entro a enviados 1"); setExDat(sheet, currow, (3 + (1 * 2)), auxRacs.getPorcentAvanceRact1()); //% avance 7** if (auxRacs.getFechaElaboracRact1() != null) { setExDat(sheet, currow, (3 + (1 * 2) + 1), auxRacs.getFechaElaboracRact1().toString()); //fecha elabora 8*** } else { setExDat(sheet, currow, (3 + (1 * 2) + 1), " "); //fecha elabora 8*** } setStyleCell(sheet, borderstabla, currow, (3 + (1 * 2))); setStyleCell(sheet, borderstabla, currow, (3 + (1 * 2) + 1)); } else { setExDat(sheet, currow, (3 + (1 * 2)), " "); //% avance 7** setExDat(sheet, currow, (3 + (1 * 2) + 1), " "); //fecha elabora 8*** setStyleCell(sheet, borderstabla, currow, (3 + (1 * 2))); setStyleCell(sheet, borderstabla, currow, (3 + (1 * 2) + 1)); } if (auxRacs.getStatusRact2() != null) { setExDat(sheet, currow, (3 + (2 * 2)), auxRacs.getPorcentAvanceRact2()); //% avance 7** if (auxRacs.getFechaElaboracRact2() != null) { setExDat(sheet, currow, (3 + (2 * 2) + 1), auxRacs.getFechaElaboracRact2().toString()); //fecha elabora 8*** } else { setExDat(sheet, currow, (3 + (2 * 2) + 1), " "); //fecha elabora 8*** } setStyleCell(sheet, borderstabla, currow, (3 + (2 * 2))); setStyleCell(sheet, borderstabla, currow, (3 + (2 * 2) + 1)); } else { setExDat(sheet, currow, (3 + (2 * 2)), " "); //% avance 7** setExDat(sheet, currow, (3 + (2 * 2) + 1), " "); //fecha elabora 8*** setStyleCell(sheet, borderstabla, currow, (3 + (2 * 2))); setStyleCell(sheet, borderstabla, currow, (3 + (2 * 2) + 1)); } if (auxRacs.getStatusRact3() != null) { setExDat(sheet, currow, (3 + (3 * 2)), auxRacs.getPorcentAvanceRact3()); //% avance 7** if (auxRacs.getFechaElaboracRact3() != null) { setExDat(sheet, currow, (3 + (3 * 2) + 1), auxRacs.getFechaElaboracRact3().toString()); //fecha elabora 8*** } else { setExDat(sheet, currow, (3 + (3 * 2) + 1), " "); //fecha elabora 8*** } setStyleCell(sheet, borderstabla, currow, (3 + (3 * 2))); setStyleCell(sheet, borderstabla, currow, (3 + (3 * 2) + 1)); } else { setExDat(sheet, currow, (3 + (3 * 2)), " "); //% avance 7** setExDat(sheet, currow, (3 + (3 * 2) + 1), " "); //fecha elabora 8*** setStyleCell(sheet, borderstabla, currow, (3 + (3 * 2))); setStyleCell(sheet, borderstabla, currow, (3 + (3 * 2) + 1)); } currow++; } } // delfindelfor //fin de codigo e imrpesion de cabezera sheet = cabezeraGeneralExcel(sheet, uabcLogo, style); } } // fin del for por plan de estudios } // fin de si es por entregados if(entregados) } //fin de profesor if (criterio.equalsIgnoreCase("area_administrativa")) { HSSFSheet sheet = workbook.createSheet("Graficos"); nombreLibro = "- Area administrativa"; if (reporte.equalsIgnoreCase("entregados") || reporte.equalsIgnoreCase("noentregados") || reporte.equalsIgnoreCase("entregadosynoentregados") || //Aqui modifique Jesus Ruelas 26 oct 2015 reporte.equalsIgnoreCase("entregadosatiempo") || reporte.equalsIgnoreCase("entregadosdespueslimite") || reporte.equalsIgnoreCase("entregadosatiempoenfechalimiteydespues") || //Aqui modifique Jesus Ruelas 26 oct 2015 reporte.equalsIgnoreCase("Porcentaje de Avance Global Completo") || reporte.equalsIgnoreCase("Porcentaje de Avance Global Incompleto") || reporte.equalsIgnoreCase("Porcentaje de Avance Global Completo e Incompleto")) { if (reporte.equalsIgnoreCase("entregados")) nombreLibro = "Entregados " + nombreLibro; if (reporte.equalsIgnoreCase("noentregados")) nombreLibro = "No Entregados " + nombreLibro; if (reporte.equalsIgnoreCase("entregadosynoentregados")) nombreLibro = "Entregados Y No Entregados " + nombreLibro; //Aqui modifique Jesus Ruelas 26 oct 2015 if (reporte.equalsIgnoreCase("entregadosatiempo")) nombreLibro = "Entregados a tiempo " + nombreLibro; if (reporte.equalsIgnoreCase("entregadosdespueslimite")) nombreLibro = "Entregados despus de fecha lmite " + nombreLibro; if (reporte.equalsIgnoreCase("entregadosatiempoenfechalimiteydespues")) nombreLibro = "Entregados a tiempo y despues de fecha lmite " + nombreLibro; //Aqui modifique Jesus Ruelas 26 oct 2015 if (reporte.equalsIgnoreCase("Porcentaje de Avance Global Completo")) nombreLibro = "Porcentaje de Avance Global Completo " + nombreLibro; if (reporte.equalsIgnoreCase("Porcentaje de Avance Global Incompleto")) nombreLibro = "Porcentaje de Avance Global Incompleto " + nombreLibro; if (reporte.equalsIgnoreCase("Porcentaje de Avance Global Completo e Incompleto")) nombreLibro = "Porcentaje de Avance Global Completo e Incompleto " + nombreLibro; //definimos encabezado //sheet = cabezeraGeneralExcel(sheet,uabcLogo,style); //mostraremos tabla con // Programas educativos // Total Racs entregados // Total Esperados //preparamos informacion para insertar List<Programaeducativo> programasByUnidad = getProgramasByUnidad(); List<Areaadministrativa> areasByProgEd = getAreasAdminByProgEdClave(); //Aqui modifique Jesus Ruelas 28 oct 2015 sheet = workbook.createSheet("Hoja 1"); int currow = 15; //Aqui modifique Jesus Ruelas 28 oct 2015 /* Programacion de Hojas*/ for (Areaadministrativa areaAdmin : areasByProgEd) { if (selectAreaAdministrativa.contains(Integer.toString(areaAdmin.getAadid()))) { //aqui creamos la hoja para el programa ArrayList<ReporteAvanceAux> tempListAux = new ArrayList<ReporteAvanceAux>(); for (ReporteAvanceAux aux : listaAux) { if (aux.CAAnombre.equalsIgnoreCase(areaAdmin.getAadnombre())) { tempListAux.add(aux); } } //// de este for // para no imprirmir hojas vacias if (tempListAux.size() > 0) { //comente esta linea de abajo Jesus Ruelas - 28 oct 2015 //sheet = workbook.createSheet(areaConocimiento.getAconombre()); //sheet = cabezeraGeneralExcel(sheet,uabcLogo,style); lo moveremos al final de la hoja para que no sea mdoficada la imagen setExDat(sheet, 8, 3, "Concentrado de Reporte de Avance de Contenido Temtico de Entregados por Area administrativa"); boolean autotam = true; //currow = currow + 3; //Aqui modifique Jesus Ruelas 26 oct 2015 if (reporte.equalsIgnoreCase("entregadosatiempo") || reporte.equalsIgnoreCase("entregadosdespueslimite") || reporte.equalsIgnoreCase("entregadosatiempoenfechalimiteydespues")) { if (ract.equalsIgnoreCase("1") || ract.equalsIgnoreCase("2") || ract.equalsIgnoreCase("3")) { setExDat(sheet, currow, 1, "Fecha Corte"); setExDat(sheet, currow, 2, "Fecha Lmite"); setStyleCell(sheet, headerTabla, currow, 1); setStyleCell(sheet, headerTabla, currow, 2); currow++; setExDat(sheet, currow, 1, tempListAux.get(0).getFechaCorte().toString()); setExDat(sheet, currow, 2, tempListAux.get(0).getFechaLimite().toString()); currow++; currow++; } else { ReporteAux rep1 = new ReporteAux(); ReporteAux rep2 = new ReporteAux(); ReporteAux rep3 = new ReporteAux(); rep1.setNumRact(1); rep2.setNumRact(2); rep3.setNumRact(3); rep1.setCescicloEscolar(tempListAux.get(0).getReporteAvance() .getUnidadaprendizajeImparteProfesor().getUnidadaprendizaje() .getCicloescolar().getCescicloEscolar()); rep2.setCescicloEscolar(tempListAux.get(0).getReporteAvance() .getUnidadaprendizajeImparteProfesor().getUnidadaprendizaje() .getCicloescolar().getCescicloEscolar()); rep3.setCescicloEscolar(tempListAux.get(0).getReporteAvance() .getUnidadaprendizajeImparteProfesor().getUnidadaprendizaje() .getCicloescolar().getCescicloEscolar()); ReporteAvanceAux ra1 = new ReporteAvanceAux(); ReporteAvanceAux ra2 = new ReporteAvanceAux(); ReporteAvanceAux ra3 = new ReporteAvanceAux(); ra1 = filtrosBeanHelper.TiempoLimiteYCorte(rep1); ra2 = filtrosBeanHelper.TiempoLimiteYCorte(rep2); ra3 = filtrosBeanHelper.TiempoLimiteYCorte(rep3); setExDat(sheet, currow, 1, "Fecha Corte Ract 1"); setExDat(sheet, currow, 2, "Fecha Lmite Ract 1"); setStyleCell(sheet, headerTabla, currow, 1); setStyleCell(sheet, headerTabla, currow, 2); currow++; setExDat(sheet, currow, 1, ra1.getFechaCorte().toString()); setExDat(sheet, currow, 2, ra1.getFechaLimite().toString()); //currow++; setExDat(sheet, currow - 1, 4, "Fecha Corte Ract 2"); setExDat(sheet, currow - 1, 5, "Fecha Lmite Ract 2"); setStyleCell(sheet, headerTabla, currow - 1, 4); setStyleCell(sheet, headerTabla, currow - 1, 5); //currow++; setExDat(sheet, currow, 4, ra2.getFechaCorte().toString()); setExDat(sheet, currow, 5, ra2.getFechaLimite().toString()); //currow++; setExDat(sheet, currow - 1, 7, "Fecha Corte Ract 3"); setExDat(sheet, currow - 1, 8, "Fecha Lmite Ract 3"); setStyleCell(sheet, headerTabla, currow - 1, 7); setStyleCell(sheet, headerTabla, currow - 1, 8); //currow++; setExDat(sheet, currow, 7, ra3.getFechaCorte().toString()); setExDat(sheet, currow, 8, ra3.getFechaLimite().toString()); currow++; currow++; } } //Aqui modifique Jesus Ruelas 26 oct 2015 //autosize para la columna if (autotam) { sheet.autoSizeColumn(2); sheet.autoSizeColumn(4); sheet.autoSizeColumn(11); autotam = false; } // para formatear toda la linea for (int i = 1; i <= 11; i++) { setStyleCell(sheet, headerTabla, currow, i); } currow++; //Boolean siguienteAreaAdmin = true; String CAAnombreActual = ""; int uniprofeTemp = 0; for (ReporteAvanceAux auxRacs : tempListAux) { if (!(CAAnombreActual.equalsIgnoreCase(auxRacs.getCAAnombre()))) { CAAnombreActual = auxRacs.getCAAnombre(); // currow=currow+2; setExDat(sheet, currow, 1, "Area de conocimiento"); setExDat(sheet, currow, 2, "Area administrativa"); setStyleCell(sheet, headerTabla, currow, 1); setStyleCell(sheet, headerTabla, currow, 2); currow++; setExDat(sheet, currow, 1, auxRacs.getAreaConocimiento().getAconombre()); //clave setExDat(sheet, currow, 2, auxRacs.getCAAnombre()); //nombre unidad currow = currow + 2; //marcamos bordes for (int i = 1; i <= 11; i++) { setExDat(sheet, currow, i, " "); } for (int i = 1; i <= 11; i++) { setStyleCell(sheet, borderstabla, currow, i); } setExDat(sheet, currow, 1, "Clave unidad de aprendizaje"); setExDat(sheet, currow, 2, "Unidad de aprendizaje"); setExDat(sheet, currow, 3, "No. de empleado"); setExDat(sheet, currow, 4, "Nombre del profesor"); setExDat(sheet, currow, 5, "Grupo"); setExDat(sheet, currow, 6, "% Avance 1er reporte"); setExDat(sheet, currow, 7, "Fecha de elaboracin 1er RACT"); setExDat(sheet, currow, 8, "% Avance 2do reporte"); setExDat(sheet, currow, 9, "Fecha de elaboracin 2do RACT"); setExDat(sheet, currow, 10, "% Avance 3er reporte"); setExDat(sheet, currow, 11, "Fecha de elaboracin 3er RACT"); // para formatear toda la linea for (int i = 1; i <= 11; i++) { //tenemos qu aajustar texto //tenemos que centrar el texto //cambiar el color de fondo setStyleCell(sheet, headerTabla, currow, i); } currow++; } String nompreP = auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor() .getProfesor().getPronombre(); String apellidoPP = auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor() .getProfesor().getProapellidoPaterno(); String apellidoPM = auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor() .getProfesor().getProapellidoMaterno(); int claveUnidadApren = auxRacs.getReporteAvance() .getUnidadaprendizajeImparteProfesor().getUnidadaprendizaje().getUapclave(); String nombreUnidad = auxRacs.getReporteAvance() .getUnidadaprendizajeImparteProfesor().getUnidadaprendizaje() .getUapnombre(); uniprofeTemp = claveUnidadApren; setExDat(sheet, currow, 1, claveUnidadApren); //clave setExDat(sheet, currow, 2, nombreUnidad); //nombre unidad //reporteAvance.unidadaprendizajeImparteProfesor.profesor.pronumeroEmpleado setExDat(sheet, currow, 3, auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor() .getProfesor().getPronumeroEmpleado()); //numero empleado setExDat(sheet, currow, 4, apellidoPP + " " + apellidoPM + " " + nompreP); //nombre maestro setExDat(sheet, currow, 5, auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor().getGrupo() .getGponumero() + "-" + auxRacs.getReporteAvance().getUnidadaprendizajeImparteProfesor() .getUiptipoSubgrupo() + "-" + auxRacs.getReporteAvance() .getUnidadaprendizajeImparteProfesor().getUipsubgrupo()); //grupo numero //marcamos bordes for (int i = 1; i <= 5; i++) { setStyleCell(sheet, borderstabla, currow, i); } //tienne que ser entregados/enviados if (auxRacs.getStatusRact1() != null) { System.out.println("Entro a enviados 1"); setExDat(sheet, currow, (4 + (1 * 2)), auxRacs.getPorcentAvanceRact1()); //% avance 7** if (auxRacs.getFechaElaboracRact1() != null) { setExDat(sheet, currow, (4 + (1 * 2) + 1), auxRacs.getFechaElaboracRact1().toString()); //fecha elabora 8*** } else { setExDat(sheet, currow, (4 + (1 * 2) + 1), " "); //fecha elabora 8*** } setStyleCell(sheet, borderstabla, currow, (4 + (1 * 2))); setStyleCell(sheet, borderstabla, currow, (4 + (1 * 2) + 1)); } else { setExDat(sheet, currow, (4 + (1 * 2)), " "); //% avance 7** setExDat(sheet, currow, (4 + (1 * 2) + 1), " "); //fecha elabora 8*** setStyleCell(sheet, borderstabla, currow, (4 + (1 * 2))); setStyleCell(sheet, borderstabla, currow, (4 + (1 * 2) + 1)); } if (auxRacs.getStatusRact2() != null) { setExDat(sheet, currow, (4 + (2 * 2)), auxRacs.getPorcentAvanceRact2()); //% avance 7** if (auxRacs.getFechaElaboracRact2() != null) { setExDat(sheet, currow, (4 + (2 * 2) + 1), auxRacs.getFechaElaboracRact2().toString()); //fecha elabora 8*** } else { setExDat(sheet, currow, (4 + (2 * 2) + 1), " "); //fecha elabora 8*** } setStyleCell(sheet, borderstabla, currow, (4 + (2 * 2))); setStyleCell(sheet, borderstabla, currow, (4 + (2 * 2) + 1)); } else { setExDat(sheet, currow, (4 + (2 * 2)), " "); //% avance 7** setExDat(sheet, currow, (4 + (2 * 2) + 1), " "); //fecha elabora 8*** setStyleCell(sheet, borderstabla, currow, (4 + (2 * 2))); setStyleCell(sheet, borderstabla, currow, (4 + (2 * 2) + 1)); } if (auxRacs.getStatusRact3() != null) { setExDat(sheet, currow, (4 + (3 * 2)), auxRacs.getPorcentAvanceRact3()); //% avance 7** if (auxRacs.getFechaElaboracRact3() != null) { setExDat(sheet, currow, (4 + (3 * 2) + 1), auxRacs.getFechaElaboracRact3().toString()); //fecha elabora 8*** } else { setExDat(sheet, currow, (4 + (3 * 2) + 1), " "); //fecha elabora 8*** } setStyleCell(sheet, borderstabla, currow, (4 + (3 * 2))); setStyleCell(sheet, borderstabla, currow, (4 + (3 * 2) + 1)); } else { setExDat(sheet, currow, (4 + (3 * 2)), " "); //% avance 7** setExDat(sheet, currow, (4 + (3 * 2) + 1), " "); //fecha elabora 8*** setStyleCell(sheet, borderstabla, currow, (4 + (3 * 2))); setStyleCell(sheet, borderstabla, currow, (4 + (3 * 2) + 1)); } currow++; } } // delfindelfor //fin de codigo e imrpesion de cabezera sheet = cabezeraGeneralExcel(sheet, uabcLogo, style); } } // fin del for por plan de estudios } // fin de si es por entregados if(entregados) } //fin de areas administrativas //finalizamos con //metodo para descargar el objeto System.out.println("Generando Excel"); if (criterio != "" && reporte != "") { FacesContext facesContext = FacesContext.getCurrentInstance(); ExternalContext externalContext = facesContext.getExternalContext(); externalContext.setResponseContentType("application/vnd.ms-excel"); externalContext.setResponseHeader("Content-Disposition", "attachment; filename=\"" + nombreLibro + ".xls\""); //genera libro workbook.write(externalContext.getResponseOutputStream()); facesContext.responseComplete(); } else { System.out.println("No se Genero por: Criterio->" + criterio + " , Reporte->" + reporte); } }
From source file:net.algem.planning.export.PlanningExportService.java
License:Open Source License
/** * * @param wb workbook//from w w w . j a v a2s.c o m * @return a map, each key-value composed of a style name and a cell style */ private Map<String, CellStyle> createStyles(HSSFWorkbook wb) { Map<String, CellStyle> styles = new HashMap<>(); HSSFFont nf = wb.createFont(); nf.setFontName("monospace"); HSSFFont bf = wb.createFont(); bf.setFontName("monospace"); bf.setBold(true); HSSFFont sf = wb.createFont(); sf.setFontHeightInPoints((short) 8); sf.setFontName("monospace"); CellStyle style = wb.createCellStyle(); style.setAlignment(CellStyle.ALIGN_CENTER); style.setVerticalAlignment(CellStyle.VERTICAL_CENTER); style.setWrapText(true); style.setFillPattern(CellStyle.SOLID_FOREGROUND); style.setFillForegroundColor(IndexedColors.GREY_25_PERCENT.getIndex()); styles.put("header", style); //LEFT HEADER style = wb.createCellStyle(); style.setAlignment(CellStyle.ALIGN_CENTER); style.setVerticalAlignment(CellStyle.VERTICAL_TOP); style.setWrapText(true); style.setFont(bf); style.setBorderLeft(CellStyle.BORDER_THIN); style.setBorderRight(CellStyle.BORDER_THIN); style.setBorderTop(CellStyle.BORDER_THIN); style.setBorderBottom(CellStyle.BORDER_DOTTED); styles.put("hour", style); style = wb.createCellStyle(); style.setAlignment(CellStyle.ALIGN_CENTER); style.setVerticalAlignment(CellStyle.VERTICAL_TOP); style.setWrapText(false); style.setFont(sf); style.setBorderLeft(CellStyle.BORDER_THIN); style.setBorderRight(CellStyle.BORDER_THIN); style.setBorderTop(CellStyle.BORDER_DOTTED); style.setBorderBottom(CellStyle.BORDER_THIN); styles.put("hour-quarter", style); style = wb.createCellStyle(); style.setAlignment(CellStyle.ALIGN_CENTER); style.setVerticalAlignment(CellStyle.VERTICAL_TOP); style.setWrapText(false); style.setFont(sf); style.setBorderLeft(CellStyle.BORDER_THIN); style.setBorderRight(CellStyle.BORDER_THIN); style.setBorderTop(CellStyle.BORDER_DASHED); style.setBorderBottom(CellStyle.BORDER_THIN); styles.put("hour-half", style); style = wb.createCellStyle(); style.setAlignment(CellStyle.ALIGN_CENTER); style.setVerticalAlignment(CellStyle.VERTICAL_TOP); style.setWrapText(true); style.setFont(nf); style.setBorderLeft(CellStyle.BORDER_THIN); style.setBorderRight(CellStyle.BORDER_THIN); style.setBorderTop(CellStyle.BORDER_THIN); style.setBorderBottom(CellStyle.BORDER_THIN); styles.put("hour-last", style); return styles; }
From source file:net.sf.infrared.web.report.ExcelSummaryReport.java
License:Apache License
private void setUpColumnHeadingStyle() { columnHeadingStyle = wb.createCellStyle(); HSSFFont columnHeadingFont = wb.createFont(); columnHeadingFont.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD); columnHeadingFont.setFontHeightInPoints((short) 10); columnHeadingStyle.setFont(columnHeadingFont); columnHeadingStyle.setWrapText(true); columnHeadingStyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER); columnHeadingStyle.setAlignment(HSSFCellStyle.ALIGN_CENTER); columnHeadingStyle.setBorderLeft(HSSFCellStyle.BORDER_THIN); columnHeadingStyle.setBorderRight(HSSFCellStyle.BORDER_THIN); columnHeadingStyle.setBorderTop(HSSFCellStyle.BORDER_THIN); columnHeadingStyle.setBorderBottom(HSSFCellStyle.BORDER_THIN); columnHeadingStyle.setFillPattern(HSSFCellStyle.NO_FILL); columnHeadingStyle.setFillBackgroundColor(HSSFColor.GREY_25_PERCENT.index); }
From source file:net.sf.infrared.web.report.ExcelSummaryReport.java
License:Apache License
private void setUpSubHeadingStyle() { subHeadingStyle = wb.createCellStyle(); HSSFFont subHeadingFont = wb.createFont(); subHeadingFont.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD); subHeadingFont.setFontHeightInPoints((short) 12); subHeadingStyle.setFont(subHeadingFont); }
From source file:net.sf.infrared.web.report.ExcelSummaryReport.java
License:Apache License
private void setUpMainHeadingStyle() { mainHeadingStyle = wb.createCellStyle(); HSSFFont mainHeadingFont = wb.createFont(); mainHeadingFont.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD); mainHeadingFont.setFontHeightInPoints((short) 14); mainHeadingStyle.setFont(mainHeadingFont); }
From source file:net.sf.jasperreports.engine.export.JRXlsExporter.java
License:Open Source License
/** * *///from w ww . j a va2 s .c o m protected HSSFFont getLoadedFont(JRFont font, short forecolor, Map<Attribute, Object> attributes, Locale locale) { HSSFFont cellFont = null; String fontName = font.getFontName(); FontInfo fontInfo = FontUtil.getInstance(jasperReportsContext).getFontInfo(fontName, locale); if (fontInfo != null) { //fontName found in font extensions FontFamily family = fontInfo.getFontFamily(); String exportFont = family.getExportFont(getExporterKey()); if (exportFont != null) { fontName = exportFont; } } short superscriptType = HSSFFont.SS_NONE; if (attributes != null && attributes.get(TextAttribute.SUPERSCRIPT) != null) { Object value = attributes.get(TextAttribute.SUPERSCRIPT); if (TextAttribute.SUPERSCRIPT_SUPER.equals(value)) { superscriptType = HSSFFont.SS_SUPER; } else if (TextAttribute.SUPERSCRIPT_SUB.equals(value)) { superscriptType = HSSFFont.SS_SUB; } } boolean isFontSizeFixEnabled = getCurrentItemConfiguration().isFontSizeFixEnabled(); for (int i = 0; i < loadedFonts.size(); i++) { HSSFFont cf = (HSSFFont) loadedFonts.get(i); short fontSize = (short) font.getFontsize(); if (isFontSizeFixEnabled) { fontSize -= 1; } if (cf.getFontName().equals(fontName) && (cf.getColor() == forecolor) && (cf.getFontHeightInPoints() == fontSize) && ((cf.getUnderline() == HSSFFont.U_SINGLE) ? (font.isUnderline()) : (!font.isUnderline())) && (cf.getStrikeout() == font.isStrikeThrough()) && ((cf.getBoldweight() == HSSFFont.BOLDWEIGHT_BOLD) ? (font.isBold()) : (!font.isBold())) && (cf.getItalic() == font.isItalic()) && (cf.getTypeOffset() == superscriptType)) { cellFont = cf; break; } } if (cellFont == null) { cellFont = workbook.createFont(); cellFont.setFontName(fontName); cellFont.setColor(forecolor); short fontSize = (short) font.getFontsize(); if (isFontSizeFixEnabled) { fontSize -= 1; } cellFont.setFontHeightInPoints(fontSize); if (font.isUnderline()) { cellFont.setUnderline(HSSFFont.U_SINGLE); } if (font.isStrikeThrough()) { cellFont.setStrikeout(true); } if (font.isBold()) { cellFont.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD); } if (font.isItalic()) { cellFont.setItalic(true); } cellFont.setTypeOffset(superscriptType); loadedFonts.add(cellFont); } return cellFont; }
From source file:net.sf.jasperreports.engine.export.JRXlsMetadataExporter.java
License:Open Source License
/** * *///from ww w . j a va 2 s .co m protected HSSFFont getLoadedFont(JRFont font, short forecolor, Map<Attribute, Object> attributes, Locale locale) { HSSFFont cellFont = null; String fontName = font.getFontName(); FontInfo fontInfo = FontUtil.getInstance(jasperReportsContext).getFontInfo(fontName, locale); if (fontInfo != null) { //fontName found in font extensions FontFamily family = fontInfo.getFontFamily(); String exportFont = family.getExportFont(getExporterKey()); if (exportFont != null) { fontName = exportFont; } } boolean isFontSizeFixEnabled = getCurrentItemConfiguration().isFontSizeFixEnabled(); short superscriptType = HSSFFont.SS_NONE; if (attributes != null && attributes.get(TextAttribute.SUPERSCRIPT) != null) { Object value = attributes.get(TextAttribute.SUPERSCRIPT); if (TextAttribute.SUPERSCRIPT_SUPER.equals(value)) { superscriptType = HSSFFont.SS_SUPER; } else if (TextAttribute.SUPERSCRIPT_SUB.equals(value)) { superscriptType = HSSFFont.SS_SUB; } } for (int i = 0; i < loadedFonts.size(); i++) { HSSFFont cf = (HSSFFont) loadedFonts.get(i); short fontSize = (short) font.getFontsize(); if (isFontSizeFixEnabled) { fontSize -= 1; } if (cf.getFontName().equals(fontName) && (cf.getColor() == forecolor) && (cf.getFontHeightInPoints() == fontSize) && ((cf.getUnderline() == HSSFFont.U_SINGLE) ? (font.isUnderline()) : (!font.isUnderline())) && (cf.getStrikeout() == font.isStrikeThrough()) && ((cf.getBoldweight() == HSSFFont.BOLDWEIGHT_BOLD) ? (font.isBold()) : (!font.isBold())) && (cf.getItalic() == font.isItalic()) && (cf.getTypeOffset() == superscriptType)) { cellFont = cf; break; } } if (cellFont == null) { cellFont = workbook.createFont(); cellFont.setFontName(fontName); cellFont.setColor(forecolor); short fontSize = (short) font.getFontsize(); if (isFontSizeFixEnabled) { fontSize -= 1; } cellFont.setFontHeightInPoints(fontSize); if (font.isUnderline()) { cellFont.setUnderline(HSSFFont.U_SINGLE); } if (font.isStrikeThrough()) { cellFont.setStrikeout(true); } if (font.isBold()) { cellFont.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD); } if (font.isItalic()) { cellFont.setItalic(true); } cellFont.setTypeOffset(superscriptType); loadedFonts.add(cellFont); } return cellFont; }
From source file:net.sourceforge.fenixedu.presentationTier.Action.academicAdministration.executionCourseManagement.CourseLoadOverviewBean.java
License:Open Source License
public StyledExcelSpreadsheet getInconsistencySpreadsheet() { final StyledExcelSpreadsheet spreadsheet = new StyledExcelSpreadsheet( BundleUtil.getString(Bundle.ACADEMIC, "label.course.load.inconsistency.filename") + "_" + executionSemester.getExecutionYear().getYear().replace('/', '_') + "_" + executionSemester.getSemester()); HSSFCellStyle normalStyle = spreadsheet.getExcelStyle().getValueStyle(); normalStyle.setAlignment(HSSFCellStyle.ALIGN_CENTER); HSSFWorkbook wb = spreadsheet.getWorkbook(); HSSFFont font = wb.createFont(); font.setColor(HSSFColor.BLACK.index); font.setFontHeightInPoints((short) 8); HSSFCellStyle redStyle = wb.createCellStyle(); redStyle.setFont(font);//from w w w . j a v a 2 s .co m redStyle.setAlignment(HSSFCellStyle.ALIGN_CENTER); redStyle.setFillForegroundColor(HSSFColor.ORANGE.index); redStyle.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND); HSSFCellStyle yellowStyle = wb.createCellStyle(); yellowStyle.setFont(font); yellowStyle.setAlignment(HSSFCellStyle.ALIGN_CENTER); yellowStyle.setFillForegroundColor(HSSFColor.YELLOW.index); yellowStyle.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND); spreadsheet.newHeaderRow(); spreadsheet.addHeader(BundleUtil.getString(Bundle.ACADEMIC, "label.department")); spreadsheet.addHeader(BundleUtil.getString(Bundle.ACADEMIC, "label.degree")); spreadsheet.addHeader(BundleUtil.getString(Bundle.ACADEMIC, "label.executionCourse")); spreadsheet.addHeader(BundleUtil.getString(Bundle.ACADEMIC, "label.shift")); spreadsheet.addHeader(BundleUtil.getString(Bundle.ACADEMIC, "label.shiftType")); spreadsheet.addHeader(BundleUtil.getString(Bundle.ACADEMIC, "label.load.competenceCourse")); spreadsheet.addHeader(BundleUtil.getString(Bundle.ACADEMIC, "label.load.curricularCourse")); spreadsheet.addHeader(BundleUtil.getString(Bundle.ACADEMIC, "label.load.executionCourse")); spreadsheet.addHeader(BundleUtil.getString(Bundle.ACADEMIC, "label.load.lessonInstances")); spreadsheet.addHeader(BundleUtil.getString(Bundle.ACADEMIC, "label.load.lesson.count")); spreadsheet.addHeader(BundleUtil.getString(Bundle.ACADEMIC, "label.load.lessonInstances.count")); for (final ExecutionCourse executionCourse : executionSemester.getAssociatedExecutionCoursesSet()) { for (final CourseLoad courseLoad : executionCourse.getCourseLoadsSet()) { for (final Shift shift : courseLoad.getShiftsSet()) { spreadsheet.newRow(); spreadsheet.addCell(getDepartmentString(executionCourse)); spreadsheet.addCell(executionCourse.getDegreePresentationString()); spreadsheet.addCell(executionCourse.getName()); spreadsheet.addCell(shift.getNome()); spreadsheet.addCell(courseLoad.getType().getFullNameTipoAula()); final BigDecimal competenceCourseLoad = new BigDecimal(getCompetenceCourseLoad(courseLoad)) .setScale(2, RoundingMode.HALF_EVEN); final BigDecimal curricularCourseLoad = new BigDecimal(getCurricularCourseLoad(courseLoad)) .setScale(2, RoundingMode.HALF_EVEN); final BigDecimal executionLoad = courseLoad.getTotalQuantity().setScale(2, RoundingMode.HALF_EVEN); final BigDecimal shiftCourseLoad = getShiftCourseLoad(shift).setScale(2, RoundingMode.HALF_EVEN); if (competenceCourseLoad.signum() < 0) { spreadsheet.addCell(getCompetenceCourseLoadStrings(courseLoad), redStyle); } else { spreadsheet.addCell(competenceCourseLoad); } if (!competenceCourseLoad.equals(curricularCourseLoad) || curricularCourseLoad.signum() < 0) { spreadsheet.addCell(getCurricularCourseLoadString(courseLoad), redStyle); } else { spreadsheet.addCell(curricularCourseLoad); } if (!executionLoad.equals(curricularCourseLoad)) { spreadsheet.addCell(executionLoad, redStyle); } else { spreadsheet.addCell(executionLoad); } if (!shiftCourseLoad.equals(executionLoad)) { if (isLargeDifference(shiftCourseLoad, executionLoad, competenceCourseLoad.divide(new BigDecimal(14), 2, RoundingMode.HALF_EVEN))) { spreadsheet.addCell(shiftCourseLoad, redStyle); } else { spreadsheet.addCell(shiftCourseLoad, yellowStyle); } } else { spreadsheet.addCell(shiftCourseLoad); } spreadsheet.addCell(shift.getAssociatedLessonsSet().size()); spreadsheet.addCell(getLessonInstanceCount(shift)); } } } final HSSFSheet sheet = wb.getSheetAt(0); sheet.createFreezePane(0, 1, 0, 1); sheet.autoSizeColumn(1, true); sheet.autoSizeColumn(2, true); sheet.autoSizeColumn(3, true); sheet.autoSizeColumn(4, true); sheet.autoSizeColumn(5, true); sheet.autoSizeColumn(6, true); sheet.autoSizeColumn(7, true); sheet.autoSizeColumn(8, true); sheet.autoSizeColumn(9, true); return spreadsheet; }