List of usage examples for org.apache.poi.hssf.usermodel HSSFWorkbook createCellStyle
@Override
public HSSFCellStyle createCellStyle()
From source file:mat.server.service.impl.XLSGenerator.java
/** Adds the disclaimer. * //from w w w .j a v a 2 s . co m * @param wkbk - HSSFWorkbook. * */ protected final void addDisclaimer(final HSSFWorkbook wkbk) { String disclaimerText = "The codes that you are exporting directly reflect the codes you entered into the " + "Measure Authoring Tool. These codes may be owned by a third party and " + "subject to copyright or other intellectual property restrictions. Use of these " + "codes may require permission from the code owner or agreement to a license. " + "It is your responsibility to ensure that your use of any third party code is " + "permissible and that you have fulfilled any notice or license requirements " + "imposed by the code owner. Use of the Measure Authoring Tool does not " + "confer any rights on you with respect to these codes other than those codes that may " + "be available from the code owner."; HSSFSheet wkst = wkbk.createSheet("Disclaimer"); HSSFRow row = wkst.createRow(0); row.createCell(0, HSSFCell.CELL_TYPE_STRING).setCellValue(disclaimerText); wkst.setColumnWidth(0, (75 * 256)); HSSFCell cell = row.getCell(0); HSSFCellStyle style = wkbk.createCellStyle(); style.setWrapText(true); cell.setCellStyle(style); }
From source file:matriz.core.GerarXLS.java
public static void expExcel(String nomeArquivo, String demanda, List<LineMatriz> linhastabela) { HSSFWorkbook workbook = new HSSFWorkbook(); HSSFSheet firstSheet = workbook.createSheet("Aba1"); HSSFFont fontBranca = workbook.createFont(); fontBranca.setFontHeightInPoints((short) 16); fontBranca.setColor(HSSFColor.WHITE.index); fontBranca.setBoldweight(Font.BOLDWEIGHT_BOLD); HSSFFont fontBrancaMenor = workbook.createFont(); fontBrancaMenor.setFontHeightInPoints((short) 10); fontBrancaMenor.setColor(HSSFColor.WHITE.index); fontBrancaMenor.setBoldweight(Font.BOLDWEIGHT_BOLD); FileOutputStream fos = null;//from w w w.j a v a 2 s .com nomeArquivo = nomeArquivo + "/Matriz de Rastreabilidade " + demanda + ".xls"; try { fos = new FileOutputStream(new File(nomeArquivo)); HSSFRow rowa = firstSheet.createRow(0); rowa.createCell(1); // criar titulo HSSFRow row0 = firstSheet.createRow(1); HSSFCellStyle style = workbook.createCellStyle(); style.setFont(fontBranca); style.setFillForegroundColor(HSSFColor.DARK_BLUE.index); style.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND); style.setAlignment(HSSFCellStyle.ALIGN_CENTER); style.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER); style.setBorderBottom(HSSFCellStyle.BORDER_THIN); style.setBorderTop(HSSFCellStyle.BORDER_THIN); style.setBorderLeft(HSSFCellStyle.BORDER_THIN); style.setBorderRight(HSSFCellStyle.BORDER_THIN); row0.createCell(0).setCellValue("Matriz de classes alteradas na " + demanda); row0.getCell(0).setCellStyle(style); //nome das colunas HSSFRow row1 = firstSheet.createRow(2); HSSFCellStyle style2 = workbook.createCellStyle(); style2.setFillForegroundColor(HSSFColor.DARK_BLUE.index); style2.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND); style2.setAlignment(HSSFCellStyle.ALIGN_CENTER_SELECTION); style2.setFont(fontBrancaMenor); style2.setBorderBottom(HSSFCellStyle.BORDER_THIN); style2.setBorderTop(HSSFCellStyle.BORDER_THIN); style2.setBorderLeft(HSSFCellStyle.BORDER_THIN); style2.setBorderRight(HSSFCellStyle.BORDER_THIN); row1.createCell(0).setCellValue("Sistema"); row1.createCell(1).setCellValue("Mdulo"); row1.createCell(2).setCellValue("Diretrio"); row1.createCell(3).setCellValue("Arquivo"); row1.createCell(4).setCellValue("Ambiente"); row1.createCell(5).setCellValue("Tipo do Arquivo"); row1.createCell(6).setCellValue("Ao"); row1.createCell(7).setCellValue("Data"); row1.createCell(8).setCellValue("Reviso SVN"); row1.createCell(9).setCellValue("Autor"); row1.createCell(10).setCellValue("Motivo da alterao"); row1.getCell(0).setCellStyle(style2); row1.getCell(1).setCellStyle(style2); row1.getCell(2).setCellStyle(style2); row1.getCell(3).setCellStyle(style2); row1.getCell(4).setCellStyle(style2); row1.getCell(5).setCellStyle(style2); row1.getCell(6).setCellStyle(style2); row1.getCell(7).setCellStyle(style2); row1.getCell(8).setCellStyle(style2); row1.getCell(9).setCellStyle(style2); row1.getCell(10).setCellStyle(style2); firstSheet.setColumnWidth(0, 10000); firstSheet.setColumnWidth(1, 9000); firstSheet.setColumnWidth(2, 10000); firstSheet.setColumnWidth(3, 20000); firstSheet.setColumnWidth(4, 10000); firstSheet.setColumnWidth(5, 4000); firstSheet.setColumnWidth(6, 4000); firstSheet.setColumnWidth(7, 4000); firstSheet.setColumnWidth(8, 4000); firstSheet.setColumnWidth(9, 6000); firstSheet.setColumnWidth(10, 10000); HSSFCellStyle style3 = workbook.createCellStyle(); style3.setBorderBottom(HSSFCellStyle.BORDER_THIN); style3.setBorderTop(HSSFCellStyle.BORDER_THIN); style3.setBorderLeft(HSSFCellStyle.BORDER_THIN); style3.setBorderRight(HSSFCellStyle.BORDER_THIN); int i = 3; for (LineMatriz linha : linhastabela) { HSSFRow row = firstSheet.createRow(i); row.createCell(0).setCellValue(linha.getSistema()); row.createCell(1).setCellValue(linha.getModulo()); row.createCell(2).setCellValue(linha.getDiretorio()); row.createCell(3).setCellValue(linha.getArquivo()); row.createCell(4).setCellValue(linha.getAmbiente()); row.createCell(5).setCellValue(linha.getTipoArquivo()); row.createCell(6).setCellValue(linha.getAcao()); row.createCell(7).setCellValue(linha.getData()); row.createCell(8).setCellValue(linha.getRevisao()); row.createCell(9).setCellValue(linha.getAutor()); row.createCell(10).setCellValue(linha.getMotivo()); row.getCell(0).setCellStyle(style3); row.getCell(1).setCellStyle(style3); row.getCell(2).setCellStyle(style3); row.getCell(3).setCellStyle(style3); row.getCell(4).setCellStyle(style3); row.getCell(5).setCellStyle(style3); row.getCell(6).setCellStyle(style3); row.getCell(7).setCellStyle(style3); row.getCell(8).setCellStyle(style3); row.getCell(9).setCellStyle(style3); row.getCell(10).setCellStyle(style3); i++; } // fim do for firstSheet.addMergedRegion(new CellRangeAddress(1, //first row (0-based) 1, //last row (0-based) 0, //first column (0-based) 10 //last column (0-based) )); workbook.write(fos); JOptionPane.showMessageDialog(null, "Arquivo criado em " + nomeArquivo); } catch (Exception e) { e.printStackTrace(); JOptionPane.showMessageDialog(null, e.getMessage()); System.out.println("Erro ao exportar arquivo"); } finally { try { fos.flush(); fos.close(); } catch (Exception e) { JOptionPane.showMessageDialog(null, e.getMessage()); } } }
From source file:modelo.ProcesoVertimientosManagers.Visitas.java
/** * //from w w w . ja va 2 s . co m * Escribe la informacion de la visita en el archivo de Excel. * * @param filaInicio * @param filaFin * @param tipoVisita * @param fechaInicial * @param fechaFinal * @param codigoProceso * @param url * @throws SQLException * @throws IOException */ public void escribirExcel(String filaInicio, String filaFin, String tipoVisita, String fechaInicial, String fechaFinal, String codigoProceso, String url, String estadoVisita, String contrato, String nit, String razonSocial, String motivoVisita) throws SQLException, IOException { //Instanciamos los objetos para el excel HSSFWorkbook workbook = new HSSFWorkbook(); HSSFSheet sheet = workbook.createSheet("Visitas"); //Obtenemos el mapa con la informacion Map datos = organizarInfoExcel(filaInicio, filaFin, tipoVisita, fechaInicial, fechaFinal, codigoProceso, estadoVisita, contrato, nit, razonSocial, motivoVisita); //Informacion de los titulos Map<String, Object[]> data = new HashMap<String, Object[]>(); //Guardamos la cabecera del excel. data.put(String.valueOf(0), new Object[] { "CODIGO", "NOMBRES", "APELLIDOS", "FECHA VISITA", "MOTIVO", "TIPO VISITA", "ESTADO" }); //Escribimos el titulo Font font = workbook.createFont(); CellStyle style = workbook.createCellStyle(); style.setFont(font); font.setBoldweight(Font.BOLDWEIGHT_BOLD); Set<String> keyset2 = data.keySet(); for (String key : keyset2) { Row row = sheet.createRow(0); Object[] objArr = (Object[]) data.get(key); int cellnum = 0; for (Object obj : objArr) { Cell cell = row.createCell(cellnum++); cell.setCellStyle(style); if (obj instanceof Date) cell.setCellValue((Date) obj); else if (obj instanceof Boolean) cell.setCellValue((Boolean) obj); else if (obj instanceof String) cell.setCellValue((String) obj); else if (obj instanceof Double) cell.setCellValue((Double) obj); } } //Obtenemos la informacion del mapa e insertamos la informacion en el excel Set<String> keyset = datos.keySet(); int rownum = 1; for (String key : keyset) { Row row = sheet.createRow(rownum++); Object[] objArr = (Object[]) datos.get(key); int cellnum = 0; for (Object obj : objArr) { Cell cell = row.createCell(cellnum++); if (obj instanceof Date) cell.setCellValue((Date) obj); else if (obj instanceof Boolean) cell.setCellValue((Boolean) obj); else if (obj instanceof String) cell.setCellValue((String) obj); else if (obj instanceof Double) cell.setCellValue((Double) obj); } } //Guardamos el archivo en el disco. FileOutputStream out = new FileOutputStream(new File(url)); workbook.write(out); out.close(); }
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);/*ww w .j av a2s. co 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 om //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();/*from w ww. j a v a 2 s. c om*/ //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:neg.JRViewerComercial.java
License:Open Source License
private void btnExcelActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnExcelActionPerformed String queryInf = this.jasperPrint.getProperty("query"); try {//from ww w. j av a2 s . c o m // Se crea el libro excel HSSFWorkbook libro = new HSSFWorkbook(); //Se crea la hoja HSSFSheet hoja = libro.createSheet("Informe"); //Numero de fila de la hoja Excel int num_fila = 1; crearCabeceraHojaExcel(libro, hoja); HSSFCellStyle cs2 = libro.createCellStyle(); cs2.setAlignment(HSSFCellStyle.ALIGN_LEFT); cs2.setBorderBottom(HSSFCellStyle.BORDER_THIN); cs2.setBottomBorderColor(HSSFColor.BLACK.index); cs2.setBorderLeft(HSSFCellStyle.BORDER_THIN); cs2.setLeftBorderColor(HSSFColor.BLACK.index); cs2.setBorderRight(HSSFCellStyle.BORDER_THIN); cs2.setRightBorderColor(HSSFColor.BLACK.index); cs2.setBorderTop(HSSFCellStyle.BORDER_THIN); cs2.setTopBorderColor(HSSFColor.BLACK.index); HSSFCellStyle cs3 = libro.createCellStyle(); HSSFDataFormat format = libro.createDataFormat(); cs3.setAlignment(HSSFCellStyle.ALIGN_RIGHT); cs3.setBorderBottom(HSSFCellStyle.BORDER_THIN); cs3.setBottomBorderColor(HSSFColor.BLACK.index); cs3.setBorderLeft(HSSFCellStyle.BORDER_THIN); cs3.setLeftBorderColor(HSSFColor.BLACK.index); cs3.setBorderRight(HSSFCellStyle.BORDER_THIN); cs3.setRightBorderColor(HSSFColor.BLACK.index); cs3.setBorderTop(HSSFCellStyle.BORDER_THIN); cs3.setTopBorderColor(HSSFColor.BLACK.index); cs3.setDataFormat(format.getFormat("#,##0")); //Datos ResultSet rs = CSDesktop.datos.select(queryInf); crearFilaHojaExcel(libro, hoja, num_fila, rs, cs2, cs3); FileOutputStream elFichero = null; elFichero = new FileOutputStream("c:\\AplicacionCarSet\\informe_comercial.xls"); libro.write(elFichero); elFichero.close(); elFichero.flush(); String property = "java.io.tmpdir"; String tempDir = System.getProperty(property); System.out.println("OS current temporary directory is " + tempDir); String file = new String("C:\\AplicacionCarSet\\informe_comercial.xls"); Process p = Runtime.getRuntime().exec("rundll32 SHELL32.DLL,ShellExec_RunDLL " + file); } catch (SQLException ex) { Logger.getLogger(CSResultBuscarPedidoNew.class.getName()).log(Level.SEVERE, null, ex); } catch (UnknownHostException ex) { Logger.getLogger(CSResultBuscarPedidoNew.class.getName()).log(Level.SEVERE, null, ex); } catch (IOException ex) { Logger.getLogger(CSResultBuscarPedidoNew.class.getName()).log(Level.SEVERE, null, ex); } //System.out.println("Vamoooooos: "+queryInf); }
From source file:neg.JRViewerComercial.java
License:Open Source License
private static void crearCabeceraHojaExcel(HSSFWorkbook libro, HSSFSheet hoja) { HSSFRow fila = null;//from w ww . j a v a2s . c o m HSSFCell celda = null; // Modificamos la fuente por defecto para que salga en negrita HSSFCellStyle cs = libro.createCellStyle(); HSSFFont f = libro.createFont(); f.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD); f.setColor(HSSFColor.WHITE.index); cs.setFont(f); //cs.setFillBackgroundColor(HSSFColor.GREEN.index); cs.setFillForegroundColor(HSSFColor.GREEN.index); cs.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND); cs.setBorderBottom(HSSFCellStyle.BORDER_MEDIUM); cs.setBottomBorderColor(HSSFColor.BLACK.index); cs.setBorderLeft(HSSFCellStyle.BORDER_MEDIUM); cs.setLeftBorderColor(HSSFColor.BLACK.index); cs.setBorderRight(HSSFCellStyle.BORDER_MEDIUM); cs.setRightBorderColor(HSSFColor.BLACK.index); cs.setBorderTop(HSSFCellStyle.BORDER_MEDIUM); cs.setTopBorderColor(HSSFColor.BLACK.index); cs.setAlignment(HSSFCellStyle.ALIGN_CENTER); // Creamos la cabecera de las columnas fila = hoja.createRow(0); celda = fila.createCell((short) 0); celda.setCellStyle(cs); HSSFRichTextString texto = new HSSFRichTextString("CLIENTE"); celda.setCellValue(texto); hoja.setColumnWidth((short) 0, (short) ((220 * 2) / ((double) 1 / 20))); celda = fila.createCell((short) 1); celda.setCellStyle(cs); texto = new HSSFRichTextString("ENERO"); celda.setCellValue(texto); hoja.setColumnWidth((short) 1, (short) ((70 * 2) / ((double) 1 / 20))); celda = fila.createCell((short) 2); celda.setCellStyle(cs); texto = new HSSFRichTextString("FEBRERO"); celda.setCellValue(texto); hoja.setColumnWidth((short) 2, (short) ((70 * 2) / ((double) 1 / 20))); celda = fila.createCell((short) 3); celda.setCellStyle(cs); texto = new HSSFRichTextString("MARZO"); celda.setCellValue(texto); hoja.setColumnWidth((short) 3, (short) ((70 * 2) / ((double) 1 / 20))); celda = fila.createCell((short) 4); celda.setCellStyle(cs); texto = new HSSFRichTextString("ABRIL"); celda.setCellValue(texto); hoja.setColumnWidth((short) 4, (short) ((70 * 2) / ((double) 1 / 20))); celda = fila.createCell((short) 5); celda.setCellStyle(cs); texto = new HSSFRichTextString("MAYO"); celda.setCellValue(texto); hoja.setColumnWidth((short) 5, (short) ((70 * 2) / ((double) 1 / 20))); celda = fila.createCell((short) 6); celda.setCellStyle(cs); texto = new HSSFRichTextString("JUNIO"); celda.setCellValue(texto); hoja.setColumnWidth((short) 6, (short) ((70 * 2) / ((double) 1 / 20))); celda = fila.createCell((short) 7); celda.setCellStyle(cs); texto = new HSSFRichTextString("JULIO"); celda.setCellValue(texto); hoja.setColumnWidth((short) 7, (short) ((70 * 2) / ((double) 1 / 20))); celda = fila.createCell((short) 8); celda.setCellStyle(cs); texto = new HSSFRichTextString("AGOSTO"); celda.setCellValue(texto); hoja.setColumnWidth((short) 8, (short) ((70 * 2) / ((double) 1 / 20))); celda = fila.createCell((short) 9); celda.setCellStyle(cs); texto = new HSSFRichTextString("SEPTIEMBRE"); celda.setCellValue(texto); hoja.setColumnWidth((short) 9, (short) ((70 * 2) / ((double) 1 / 20))); celda = fila.createCell((short) 10); celda.setCellStyle(cs); texto = new HSSFRichTextString("OCTUBRE"); celda.setCellValue(texto); hoja.setColumnWidth((short) 10, (short) ((70 * 2) / ((double) 1 / 20))); celda = fila.createCell((short) 11); celda.setCellStyle(cs); texto = new HSSFRichTextString("NOVIEMBRE"); celda.setCellValue(texto); hoja.setColumnWidth((short) 11, (short) ((70 * 2) / ((double) 1 / 20))); celda = fila.createCell((short) 12); celda.setCellStyle(cs); texto = new HSSFRichTextString("DICIEMBRE"); celda.setCellValue(texto); hoja.setColumnWidth((short) 12, (short) ((70 * 2) / ((double) 1 / 20))); celda = fila.createCell((short) 13); celda.setCellStyle(cs); texto = new HSSFRichTextString("IMPORTE"); celda.setCellValue(texto); hoja.setColumnWidth((short) 13, (short) ((90 * 2) / ((double) 1 / 20))); celda = fila.createCell((short) 14); celda.setCellStyle(cs); texto = new HSSFRichTextString("MARGEN"); celda.setCellValue(texto); hoja.setColumnWidth((short) 14, (short) ((90 * 2) / ((double) 1 / 20))); celda = fila.createCell((short) 15); celda.setCellStyle(cs); texto = new HSSFRichTextString("MARGEN %"); celda.setCellValue(texto); hoja.setColumnWidth((short) 15, (short) ((90 * 2) / ((double) 1 / 20))); celda = fila.createCell((short) 16); celda.setCellStyle(cs); texto = new HSSFRichTextString("M.G. PEDIDO"); celda.setCellValue(texto); hoja.setColumnWidth((short) 16, (short) ((90 * 2) / ((double) 1 / 20))); celda = fila.createCell((short) 17); celda.setCellStyle(cs); texto = new HSSFRichTextString("NM.PEDIDOS"); celda.setCellValue(texto); hoja.setColumnWidth((short) 17, (short) ((90 * 2) / ((double) 1 / 20))); }
From source file:neg.JRViewerComercial.java
License:Open Source License
private static void crearFilaHojaExcel(HSSFWorkbook libro, HSSFSheet hoja, int num_fila, ResultSet rs, HSSFCellStyle cs2, HSSFCellStyle cs3) throws SQLException, UnknownHostException { HSSFRow fila = null;//from w ww . j ava2 s . c o m HSSFCell celda = null; HSSFRichTextString texto = null; int num_fila_aux = 2; while (rs.next()) { // Se crea una fila dentro de la hoja fila = hoja.createRow(num_fila); //Celda del Tarifa Cliente HSSFDataFormat format = libro.createDataFormat(); HSSFCellStyle style = libro.createCellStyle(); style.setBorderBottom(HSSFCellStyle.BORDER_THIN); style.setBottomBorderColor(HSSFColor.BLACK.index); style.setBorderLeft(HSSFCellStyle.BORDER_THIN); style.setLeftBorderColor(HSSFColor.BLACK.index); style.setBorderRight(HSSFCellStyle.BORDER_THIN); style.setRightBorderColor(HSSFColor.BLACK.index); style.setBorderTop(HSSFCellStyle.BORDER_THIN); style.setTopBorderColor(HSSFColor.BLACK.index); style.setDataFormat(format.getFormat("#,##0")); //Celda de cliente celda = fila.createCell((short) 0); celda.setCellStyle(cs2); String cliente = rs.getString("cl_nombre"); texto = new HSSFRichTextString(cliente); celda.setCellStyle(cs3); celda.setCellValue(texto); celda.setCellStyle(style); //Celda de enero celda = fila.createCell((short) 1); celda.setCellStyle(cs3); double enero = rs.getDouble("enero"); celda.setCellStyle(cs3); celda.setCellValue(enero); style.setDataFormat(format.getFormat("00")); //Celda de febrero celda = fila.createCell((short) 2); double febrero = rs.getDouble("febrero"); celda.setCellStyle(cs3); celda.setCellValue(febrero); style.setDataFormat(format.getFormat("00")); //Celda de marzo celda = fila.createCell((short) 3); celda.setCellStyle(cs2); double marzo = rs.getDouble("marzo"); celda.setCellStyle(cs3); celda.setCellValue(marzo); style.setDataFormat(format.getFormat("00")); //Celda de abril celda = fila.createCell((short) 4); double abril = rs.getDouble("abril"); celda.setCellStyle(cs3); celda.setCellValue(abril); style.setDataFormat(format.getFormat("00")); //Celda de mayo celda = fila.createCell((short) 5); double mayo = rs.getDouble("mayo"); celda.setCellStyle(cs3); celda.setCellValue(mayo); style.setDataFormat(format.getFormat("00")); //Celda de junio celda = fila.createCell((short) 6); double junio = rs.getDouble("junio"); celda.setCellStyle(cs3); celda.setCellValue(junio); //Celda del julio celda = fila.createCell((short) 7); double julio = rs.getDouble("julio"); celda.setCellStyle(cs3); celda.setCellValue(julio); style.setDataFormat(format.getFormat("00")); //Celda de agosto celda = fila.createCell((short) 8); celda.setCellStyle(cs2); double agosto = rs.getDouble("agosto"); celda.setCellStyle(cs3); celda.setCellValue(agosto); style.setDataFormat(format.getFormat("00")); //Celda de septiembre celda = fila.createCell((short) 9); double septiembre = rs.getDouble("septiembre"); celda.setCellStyle(cs3); celda.setCellValue(septiembre); style.setDataFormat(format.getFormat("00")); //Celda de octubre celda = fila.createCell((short) 10); celda.setCellStyle(cs2); double octubre = rs.getDouble("octubre"); celda.setCellStyle(cs3); celda.setCellValue(octubre); style.setDataFormat(format.getFormat("00")); //Celda de noviembre celda = fila.createCell((short) 11); double noviembre = rs.getDouble("noviembre"); celda.setCellStyle(cs3); celda.setCellValue(noviembre); style.setDataFormat(format.getFormat("00")); //Celda de diciembre celda = fila.createCell((short) 12); celda.setCellStyle(cs2); double diciembre = rs.getDouble("diciembre"); celda.setCellStyle(cs3); celda.setCellValue(diciembre); style.setDataFormat(format.getFormat("00")); //Celda de la tarifa de cliente celda = fila.createCell((short) 13); celda.setCellValue(rs.getDouble("ta_cliente")); //Celda de margen celda = fila.createCell((short) 14); double t_cliente = Double.parseDouble(rs.getString("ta_cliente")); double t_proveedor = Double.parseDouble(rs.getString("ta_proveedor")); double margen = t_cliente - t_proveedor; style.setDataFormat(format.getFormat("00.00")); celda.setCellValue(margen); //Celda de MG % celda = fila.createCell((short) 15); String porCientoPedido = (!rs.getString("ta_cliente").equals("0")) ? new java.text.DecimalFormat("#,##0").format(((t_cliente - t_proveedor) / t_cliente) * 100) .concat("% ") : "0% "; texto = new HSSFRichTextString(porCientoPedido); celda.setCellStyle(cs3); celda.setCellValue(texto); //Celda de mg pedido celda = fila.createCell((short) 16); double num_pedidos = Double.parseDouble(rs.getString("num_pedido")); style.setDataFormat(format.getFormat("00")); double mg_pedido = ((t_cliente - t_proveedor) / num_pedidos); celda.setCellStyle(cs3); celda.setCellValue(mg_pedido); //Celda del num. pedido celda = fila.createCell((short) 17); int num_pedido = rs.getInt("num_pedido"); celda.setCellStyle(cs3); celda.setCellValue(num_pedido); //Se incrementa el numero de fila num_fila++; num_fila_aux++; } }
From source file:neg.JRViewerComercialProveedor.java
License:Open Source License
private void btnExcelActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnExcelActionPerformed String queryInf = this.jasperPrint.getProperty("query"); try {// ww w . j a v a 2s.c o m // Se crea el libro excel HSSFWorkbook libro = new HSSFWorkbook(); //Se crea la hoja HSSFSheet hoja = libro.createSheet("Informe"); //Numero de fila de la hoja Excel int num_fila = 1; crearCabeceraHojaExcel(libro, hoja); HSSFCellStyle cs2 = libro.createCellStyle(); cs2.setAlignment(HSSFCellStyle.ALIGN_LEFT); cs2.setBorderBottom(HSSFCellStyle.BORDER_THIN); cs2.setBottomBorderColor(HSSFColor.BLACK.index); cs2.setBorderLeft(HSSFCellStyle.BORDER_THIN); cs2.setLeftBorderColor(HSSFColor.BLACK.index); cs2.setBorderRight(HSSFCellStyle.BORDER_THIN); cs2.setRightBorderColor(HSSFColor.BLACK.index); cs2.setBorderTop(HSSFCellStyle.BORDER_THIN); cs2.setTopBorderColor(HSSFColor.BLACK.index); HSSFCellStyle cs3 = libro.createCellStyle(); HSSFDataFormat format = libro.createDataFormat(); cs3.setAlignment(HSSFCellStyle.ALIGN_RIGHT); cs3.setBorderBottom(HSSFCellStyle.BORDER_THIN); cs3.setBottomBorderColor(HSSFColor.BLACK.index); cs3.setBorderLeft(HSSFCellStyle.BORDER_THIN); cs3.setLeftBorderColor(HSSFColor.BLACK.index); cs3.setBorderRight(HSSFCellStyle.BORDER_THIN); cs3.setRightBorderColor(HSSFColor.BLACK.index); cs3.setBorderTop(HSSFCellStyle.BORDER_THIN); cs3.setTopBorderColor(HSSFColor.BLACK.index); cs3.setDataFormat(format.getFormat("#,##0")); //Datos ResultSet rs = CSDesktop.datos.select(queryInf); crearFilaHojaExcel(libro, hoja, num_fila, rs, cs2, cs3); FileOutputStream elFichero = null; elFichero = new FileOutputStream("c:\\AplicacionCarSet\\informe_comercial_proveedor.xls"); libro.write(elFichero); elFichero.close(); elFichero.flush(); String property = "java.io.tmpdir"; String tempDir = System.getProperty(property); System.out.println("OS current temporary directory is " + tempDir); String file = new String("C:\\AplicacionCarSet\\informe_comercial_proveedor.xls"); Process p = Runtime.getRuntime().exec("rundll32 SHELL32.DLL,ShellExec_RunDLL " + file); } catch (SQLException ex) { Logger.getLogger(CSResultBuscarPedidoNew.class.getName()).log(Level.SEVERE, null, ex); } catch (UnknownHostException ex) { Logger.getLogger(CSResultBuscarPedidoNew.class.getName()).log(Level.SEVERE, null, ex); } catch (IOException ex) { Logger.getLogger(CSResultBuscarPedidoNew.class.getName()).log(Level.SEVERE, null, ex); } //System.out.println("Vamoooooos: "+queryInf); }