Example usage for org.apache.poi.ss.usermodel Sheet autoSizeColumn

List of usage examples for org.apache.poi.ss.usermodel Sheet autoSizeColumn

Introduction

In this page you can find the example usage for org.apache.poi.ss.usermodel Sheet autoSizeColumn.

Prototype

void autoSizeColumn(int column);

Source Link

Document

Adjusts the column width to fit the contents.

Usage

From source file:ExcelView.ClientesExcelView.java

@Override
protected void buildExcelDocument(Map<String, Object> model, Workbook workbook, HttpServletRequest request,
        HttpServletResponse response) throws Exception {

    response.setHeader("Content-Disposition", "attachment; filename=\"datos Clientes.xls\"");

    Sheet sheet = workbook.createSheet("Datos_Clientes");
    List<Cliente> clientes = (List) model.get("clientes");

    Row header = sheet.createRow(0);//w w w.ja  v  a2s. c o  m
    header.createCell(0).setCellValue("Correo");
    header.createCell(1).setCellValue("Nombre");
    header.createCell(2).setCellValue("Apellido Paterno");
    header.createCell(3).setCellValue("Apellido Materno");
    header.createCell(4).setCellValue("Telefono Local");
    header.createCell(5).setCellValue("Telefono Movil");
    header.createCell(6).setCellValue("Area");
    header.createCell(7).setCellValue("Puesto");
    header.createCell(8).setCellValue("Nombre Empresa");

    int contador = 1;

    for (Cliente cliente : clientes) {

        Row courseRow = sheet.createRow(contador);
        courseRow.createCell(0).setCellValue(cliente.getCorreo());
        courseRow.createCell(1).setCellValue(cliente.getNombre_cliente());
        courseRow.createCell(2).setCellValue(cliente.getApellido_paterno_cliente());
        courseRow.createCell(3).setCellValue(cliente.getApellido_materno_cliente());
        courseRow.createCell(4).setCellValue(cliente.getTelefono_local());
        courseRow.createCell(5).setCellValue(cliente.getTelefono_movil());
        courseRow.createCell(6).setCellValue(cliente.getArea());
        courseRow.createCell(7).setCellValue(cliente.getPuesto());
        courseRow.createCell(8).setCellValue(cliente.getNombre_empresa());

        contador++;

    }
    // Hace que el ancho de la comlumna sea lo suficientemente grande
    // para que la informacin sea desplegada adecuadamente.
    sheet.autoSizeColumn(0);
    sheet.autoSizeColumn(1);
    sheet.autoSizeColumn(2);
    sheet.autoSizeColumn(3);
    sheet.autoSizeColumn(4);
    sheet.autoSizeColumn(5);
    sheet.autoSizeColumn(6);
    sheet.autoSizeColumn(7);
    sheet.autoSizeColumn(8);

}

From source file:fr.openwide.core.export.excel.AbstractExcelTableExport.java

License:Apache License

/**
 * Finalise la cration de la feuille de calcul, notamment en demandant le
 * redimensionnement automatique des colonnes.
 * /*from   ww  w  . j a va 2 s .c  o  m*/
 * @param sheet feuilles de calcul
 * @param headers en-ttes
 * @param landscapePrintSetup dfinit si la feuille est imprime en paysage ou non
 */
protected void finalizeSheet(Sheet sheet, List<String> headers, boolean landscapePrintSetup) {
    int nbColumns = headers.size();
    for (int i = 0; i < nbColumns; i++) {
        sheet.autoSizeColumn(i);
        int columnWidth = (int) (sheet.getColumnWidth(i) * COLUMN_RESIZE_RATIO);
        sheet.setColumnWidth(i,
                columnWidth < ABSOLUTE_MAX_COLUMN_WIDTH ? columnWidth : ABSOLUTE_MAX_COLUMN_WIDTH);
    }

    finalizeSheet(sheet, landscapePrintSetup);
}

From source file:fr.openwide.core.export.excel.AbstractExcelTableExport.java

License:Apache License

/**
 * Finalise la cration de la feuille de calcul, notamment en demandant le
 * redimensionnement automatique des colonnes.
 * /*ww w. j  av  a 2  s.c o m*/
 * @param sheet feuilles de calcul
 * @param columnInfos map contenant l'en-tte et les informations d'une colonne
 * @param landscapePrintSetup dfinit si la feuille est imprime en paysage ou non
 */
protected void finalizeSheet(Sheet sheet, RangeMap<Integer, ColumnInformation> columnInfos,
        boolean landscapePrintSetup) {
    for (Map.Entry<Range<Integer>, ColumnInformation> entry : columnInfos.asMapOfRanges().entrySet()) {
        ColumnInformation columnInformation = entry.getValue();
        Range<Integer> range = entry.getKey();
        int beginIndex = range.lowerEndpoint();
        int endIndex = range.upperEndpoint();

        // Dtermination de la taille maximum de cette colonne
        int maxColumnWidth;
        if (columnInformation.getColumnMaxWidth() != -1) {
            maxColumnWidth = columnInformation.getColumnMaxWidth();
        } else {
            maxColumnWidth = ABSOLUTE_MAX_COLUMN_WIDTH;
        }

        // Dtermination de la taille souhaite pour la colonne
        if (columnInformation.getColumnWidth() != -1) {
            // On force la taille des colonnes en fonction de la columnInformation

            int columnWidth = columnInformation.getColumnWidth();
            columnWidth = Math.min(columnWidth, maxColumnWidth);

            // On prend en compte le fait que la "colonne" peut s'tendre en fait sur plusieurs colonnes (fusion de cellules au niveau du header)
            int columnSpan = endIndex - beginIndex + 1;
            columnWidth = columnWidth / columnSpan;

            // On redimmensionne les colonnes
            for (int columnIndex = beginIndex; columnIndex <= endIndex; ++columnIndex) {
                sheet.setColumnWidth(columnIndex, columnWidth);
            }
        } else {
            // On redimmensionne les colonnes une  une en prennant leur taille actuelle et en les augmentant un petit peu
            for (int columnIndex = beginIndex; columnIndex <= endIndex; ++columnIndex) {
                sheet.autoSizeColumn(columnIndex);
                int columnWidth = (int) (sheet.getColumnWidth(beginIndex) * COLUMN_RESIZE_RATIO);
                columnWidth = Math.min(columnWidth, maxColumnWidth);
                sheet.setColumnWidth(columnIndex, columnWidth);
            }
        }
    }

    finalizeSheet(sheet, landscapePrintSetup);
}

From source file:functions.excels.exports.CarteSommeBiodiversiteExcel.java

License:Apache License

public CarteSommeBiodiversiteExcel(Map<String, String> info, CarteSommeBiodiversite csb) {
    super();//from  w w  w  .j a va  2s.c  om
    Sheet sheet = wb.createSheet("Carte somme de la biodiversit");
    Espece espece = Espece.find.byId(Integer.parseInt(info.get("espece")));
    SousGroupe sous_groupe = SousGroupe.find.byId(Integer.parseInt(info.get("sous_groupe")));
    Groupe groupe = Groupe.find.byId(Integer.parseInt(info.get("groupe")));
    StadeSexe stade_sexe = StadeSexe.find.byId(Integer.parseInt(info.get("stade")));
    String date1 = info.get("jour1") + "/" + info.get("mois1") + "/" + info.get("annee1");
    String date2 = info.get("jour2") + "/" + info.get("mois2") + "/" + info.get("annee2");
    String titre = "Carte indiquant les premires observations ";
    if (espece != null)
        titre += "de " + espece.espece_nom;
    else if (sous_groupe != null)
        titre += "de " + sous_groupe;
    else if (groupe != null)
        titre += "de " + groupe;
    if (stade_sexe != null)
        titre += " au stade " + stade_sexe;
    titre += " du " + date1 + " au " + date2;
    sheet.createRow(0).createCell(0).setCellValue(titre);
    sheet.addMergedRegion(new CellRangeAddress(0, //first row (0-based)
            0, //last row  (0-based)
            0, //first column (0-based)
            12 //last column  (0-based)
    ));
    Row rowHead = sheet.createRow(1);
    rowHead.createCell(0).setCellValue("UTM");
    rowHead.createCell(1).setCellValue("Fiche ID");
    rowHead.createCell(2).setCellValue("Espce");
    rowHead.createCell(3).setCellValue("Date");
    rowHead.createCell(4).setCellValue("Tmoin(s)");
    CellStyle cellStyleDate = wb.createCellStyle();
    CreationHelper creationHelper = wb.getCreationHelper();
    cellStyleDate.setDataFormat(creationHelper.createDataFormat().getFormat("dd/mm/yyyy"));
    int i = 2;
    for (UTMS utm : UTMS.findAll()) {
        List<List<InformationsComplementaires>> observationsDansCetteMaille = csb.carte.get(utm);
        for (List<InformationsComplementaires> observationsPourCetteEspece : observationsDansCetteMaille) {
            for (InformationsComplementaires complements : observationsPourCetteEspece) {
                Row row = sheet.createRow(i);
                row.createCell(0).setCellValue(utm.utm);
                row.createCell(1).setCellValue(
                        complements.informations_complementaires_observation.observation_fiche.fiche_id);
                row.createCell(2).setCellValue(
                        complements.informations_complementaires_observation.observation_espece.espece_nom);
                Cell cellDate = row.createCell(3);
                cellDate.setCellValue(
                        complements.informations_complementaires_observation.observation_fiche.fiche_date);
                cellDate.setCellStyle(cellStyleDate);
                StringBuilder membres = new StringBuilder();
                List<FicheHasMembre> fhms = complements.informations_complementaires_observation.observation_fiche
                        .getFicheHasMembre();
                for (int j = 0; j < fhms.size() - 1; j++) {
                    membres.append(fhms.get(j).membre);
                    membres.append(", ");
                }
                if (!fhms.isEmpty())
                    membres.append(fhms.get(fhms.size() - 1).membre);
                else
                    membres.append("et al.");
                row.createCell(4).setCellValue(membres.toString());
                i++;
            }
        }
    }
    sheet.autoSizeColumn(0);
    sheet.autoSizeColumn(1);
    sheet.autoSizeColumn(2);
    sheet.autoSizeColumn(3);
    for (int k = 1; k <= 20; k++) {
        if (sheet.getRow(k) == null)
            sheet.createRow(k);
    }
    CellStyle redBackGround = wb.createCellStyle();
    redBackGround.setFillBackgroundColor(IndexedColors.RED.getIndex());
    redBackGround.setFillPattern(CellStyle.BIG_SPOTS);
    for (UTMS utm : csb.carte.keySet()) {
        int xy[] = UTMtoXY.convert10x10(utm.utm);
        Row row = sheet.getRow(xy[1] + 1);
        Cell cell = row.createCell(xy[0] + 5);
        int nombreDEspeces = csb.getNombreDEspecesDansMaille(utm);
        cell.setCellValue(nombreDEspeces);
        if (nombreDEspeces != 0)
            cell.setCellStyle(redBackGround);
    }
    for (int k = 5; k < 25; k++) {
        sheet.autoSizeColumn(k);
    }
    Row rowUniteMailleEspece;
    if ((rowUniteMailleEspece = sheet.getRow(23)) == null)
        rowUniteMailleEspece = sheet.createRow(23);
    rowUniteMailleEspece.createCell(6).setCellValue("Units maille-espce : " + csb.getUnitesMailleEspece());
}

From source file:functions.excels.exports.CarteSommeExcel.java

License:Apache License

public CarteSommeExcel(Map<String, String> info, CarteSomme cs) {
    super();/*  w w w .  j av  a2  s  . co  m*/
    Sheet sheet = wb.createSheet("Carte somme");
    Espece espece = Espece.find.byId(Integer.parseInt(info.get("espece")));
    SousGroupe sous_groupe = SousGroupe.find.byId(Integer.parseInt(info.get("sous_groupe")));
    Groupe groupe = Groupe.find.byId(Integer.parseInt(info.get("groupe")));
    StadeSexe stade_sexe = StadeSexe.find.byId(Integer.parseInt(info.get("stade")));
    String date1 = info.get("jour1") + "/" + info.get("mois1") + "/" + info.get("annee1");
    String date2 = info.get("jour2") + "/" + info.get("mois2") + "/" + info.get("annee2");
    String titre = "Carte indiquant le nombre d'observations ";
    if (espece != null)
        titre += "de " + espece.espece_nom;
    else if (sous_groupe != null)
        titre += "de " + sous_groupe;
    else if (groupe != null)
        titre += "de " + groupe;
    if (stade_sexe != null)
        titre += " au stade " + stade_sexe;
    titre += " du " + date1 + " au " + date2;
    titre += " (" + cs.getSomme() + " tmoignages)";
    sheet.createRow(0).createCell(0).setCellValue(titre);
    sheet.addMergedRegion(new CellRangeAddress(0, //first row (0-based)
            0, //last row  (0-based)
            0, //first column (0-based)
            12 //last column  (0-based)
    ));
    for (int i = 1; i <= 20; i++) {
        sheet.createRow(i);
    }
    CellStyle redBackGround = wb.createCellStyle();
    redBackGround.setFillBackgroundColor(IndexedColors.RED.getIndex());
    redBackGround.setFillPattern(CellStyle.BIG_SPOTS);
    for (UTMS utm : cs.carte.keySet()) {
        int xy[] = UTMtoXY.convert10x10(utm.utm);
        Row row = sheet.getRow(xy[1] + 1);
        Cell cell = row.createCell(xy[0]);
        int nombre = cs.carte.get(utm);
        cell.setCellValue(nombre);
        if (nombre != 0)
            cell.setCellStyle(redBackGround);
    }
    for (int k = 1; k <= 20; k++) {
        sheet.autoSizeColumn(k);
    }
}

From source file:functions.excels.exports.ChronologieDUnTemoinExcel.java

License:Apache License

public ChronologieDUnTemoinExcel(Map<String, String> info, ChronologieDUnTemoin cdut) {
    super();//from  ww w .  j av a  2s  . c  o m
    Sheet sheet = wb.createSheet("Chronologie d'un tmoin");
    Espece espece = Espece.find.byId(Integer.parseInt(info.get("espece")));
    SousGroupe sous_groupe = SousGroupe.find.byId(Integer.parseInt(info.get("sous_groupe")));
    Groupe groupe = Groupe.find.byId(Integer.parseInt(info.get("groupe")));
    StadeSexe stade_sexe = StadeSexe.find.byId(Integer.parseInt(info.get("stade")));
    String maille = info.get("maille");
    String temoin = info.get("temoin");
    String date1 = info.get("jour1") + "/" + info.get("mois1") + "/" + info.get("annee1");
    String date2 = info.get("jour2") + "/" + info.get("mois2") + "/" + info.get("annee2");
    String titre = "Chronologie des tmoignages ";
    if (espece != null)
        titre += "de " + espece.espece_nom;
    else if (sous_groupe != null)
        titre += "de " + sous_groupe;
    else if (groupe != null)
        titre += "de " + groupe;
    if (stade_sexe != null)
        titre += " au stade " + stade_sexe;
    if (!maille.equals(""))
        titre += " dans la maille " + maille;
    titre += " faits par " + temoin;
    titre += " du " + date1 + " au " + date2;
    sheet.createRow(0).createCell(0).setCellValue(titre);
    sheet.addMergedRegion(new CellRangeAddress(0, //first row (0-based)
            0, //last row  (0-based)
            0, //first column (0-based)
            12 //last column  (0-based)
    ));
    Row rowHead = sheet.createRow(1);
    rowHead.createCell(0).setCellValue("Fiche ID");
    rowHead.createCell(1).setCellValue("UTM");
    rowHead.createCell(2).setCellValue("Lieu-dit");
    rowHead.createCell(3).setCellValue("Commune");
    rowHead.createCell(4).setCellValue("Dp.");
    rowHead.createCell(5).setCellValue("Date min");
    rowHead.createCell(6).setCellValue("Date");
    rowHead.createCell(7).setCellValue("Espce");
    rowHead.createCell(8).setCellValue("Nombre");
    rowHead.createCell(9).setCellValue("Stade/Sexe");
    rowHead.createCell(10).setCellValue("Tmoins");
    rowHead.createCell(11).setCellValue("Mmo");
    rowHead.createCell(12).setCellValue("Groupe");
    CellStyle cellStyleDate = wb.createCellStyle();
    CreationHelper creationHelper = wb.getCreationHelper();
    cellStyleDate.setDataFormat(creationHelper.createDataFormat().getFormat("dd/mm/yyyy"));
    int i = 2;
    for (InformationsComplementaires complements : cdut.chronologie) {
        Row row = sheet.createRow(i);
        Observation observation = complements.informations_complementaires_observation;
        Fiche fiche = observation.observation_fiche;
        row.createCell(0).setCellValue(fiche.fiche_id);
        row.createCell(1).setCellValue(fiche.fiche_utm.utm);
        row.createCell(2).setCellValue(fiche.fiche_lieudit);
        if (fiche.fiche_commune != null) {
            row.createCell(3).setCellValue(fiche.fiche_commune.ville_nom_aer);
            row.createCell(4).setCellValue(fiche.fiche_commune.ville_departement.departement_code);
        }
        if (fiche.fiche_date_min != null) {
            Cell cell = row.createCell(5);
            cell.setCellValue(fiche.fiche_date_min.getTime());
            cell.setCellStyle(cellStyleDate);
        }
        Cell cell = row.createCell(6);
        cell.setCellValue(fiche.fiche_date.getTime());
        cell.setCellStyle(cellStyleDate);
        row.createCell(7).setCellValue(observation.observation_espece.espece_nom);
        Integer nombre = complements.informations_complementaires_nombre_de_specimens;
        if (nombre == null)
            row.createCell(8).setCellValue("?");
        else
            row.createCell(8).setCellValue(nombre);
        row.createCell(9).setCellValue(complements.informations_complementaires_stade_sexe.stade_sexe_intitule);
        StringBuilder membres = new StringBuilder();
        List<FicheHasMembre> fhms = fiche.getFicheHasMembre();
        for (int j = 0; j < fhms.size() - 1; j++) {
            membres.append(fhms.get(j).membre);
            membres.append(", ");
        }
        if (!fhms.isEmpty())
            membres.append(fhms.get(fhms.size() - 1).membre);
        else
            membres.append("et al.");
        row.createCell(10).setCellValue(membres.toString());
        row.createCell(11).setCellValue(fiche.fiche_memo);
        row.createCell(12)
                .setCellValue(observation.observation_espece.espece_sous_groupe.sous_groupe_groupe.groupe_nom);
        i++;
    }
    for (int j = 0; j < 11; j++)
        sheet.autoSizeColumn(j);
}

From source file:functions.excels.exports.ExportExcelEdit.java

License:Apache License

public ExportExcelEdit(Groupe groupe, int contenu) {
    StadeSexe stade_sexe = StadeSexe.find.where().eq("stade_sexe_intitule", "Indtermin").findUnique();
    ExpressionList<InformationsComplementaires> query = InformationsComplementaires.find.where().eq(
            "informations_complementaires_observation.observation_espece.espece_sous_groupe.sous_groupe_groupe",
            groupe);/*from  www .  j av a  2 s .co m*/
    if (contenu == 1)
        query = query.eq("informations_complementaires_stade_sexe", stade_sexe);
    else if (contenu == 2)
        query = query.eq("informations_complementaires_observation.observation_fiche.fiche_commune", null);
    else if (contenu == 3)
        query = query.or(
                Expr.eq("informations_complementaires_observation.observation_fiche.fiche_commune", null),
                Expr.eq("informations_complementaires_stade_sexe", stade_sexe));
    donnees = query.orderBy("informations_complementaires_observation.observation_fiche.fiche_date desc,"
            + "informations_complementaires_observation.observation_fiche.fiche_id,"
            + "informations_complementaires_observation.observation_id," + "informations_complementaires_id")
            .findList();
    Sheet sheet = wb.createSheet("Export des " + groupe + ", " + donnees.size() + " lignes");
    Row row = sheet.createRow(0);
    row.createCell(0).setCellValue("InfoCompl.ID");
    row.createCell(1).setCellValue("Obs.ID");
    row.createCell(2).setCellValue("Fiche.ID");
    row.createCell(3).setCellValue("UTM");
    row.createCell(4).setCellValue("Lieu-dit");
    row.createCell(5).setCellValue("Commune");
    row.createCell(6).setCellValue("Date min");
    row.createCell(7).setCellValue("Date");
    row.createCell(8).setCellValue("Espce");
    row.createCell(9).setCellValue("Nbr");
    row.createCell(10).setCellValue("Stade");
    row.createCell(11).setCellValue("Tmoin(s)");
    row.createCell(12).setCellValue("Dterminateur");
    row.createCell(13).setCellValue("Mmo");
    int i = 1;
    for (InformationsComplementaires info : donnees) {
        Observation o = info.informations_complementaires_observation;
        Fiche f = o.observation_fiche;
        row = sheet.createRow(i);
        row.createCell(0).setCellValue(info.informations_complementaires_id);
        row.createCell(1).setCellValue(o.observation_id);
        row.createCell(2).setCellValue(f.fiche_id);
        row.createCell(3).setCellValue(f.fiche_utm.utm);
        row.createCell(4).setCellValue(f.fiche_lieudit);
        if (f.fiche_commune != null)
            row.createCell(5).setCellValue(f.fiche_commune.ville_nom_reel);
        if (f.fiche_date_min != null) {
            Cell cell = row.createCell(6);
            cell.setCellValue(DateUtil.toStringExcel(f.fiche_date_min));
        }
        Cell cell = row.createCell(7);
        cell.setCellValue(DateUtil.toStringExcel(f.fiche_date));
        row.createCell(8).setCellValue(o.observation_espece.espece_nom);
        if (info.informations_complementaires_nombre_de_specimens == null)
            row.createCell(9).setCellValue("?");
        else
            row.createCell(9).setCellValue(info.informations_complementaires_nombre_de_specimens);
        row.createCell(10).setCellValue(info.informations_complementaires_stade_sexe.stade_sexe_intitule);
        row.createCell(11).setCellValue(f.getTemoinsToString());
        row.createCell(12).setCellValue(o.observation_determinateur);
        row.createCell(13).setCellValue(f.fiche_memo);
        i++;
    }
    for (i = 0; i < 14; i++)
        sheet.autoSizeColumn(i);
}

From source file:functions.excels.exports.HistogrammeDesImagosExcel.java

License:Apache License

public HistogrammeDesImagosExcel(Map<String, String> info, HistogrammeDesImagos hdi) throws IOException {
    super();/*from w  w  w.j ava  2  s  . c o  m*/
    Sheet sheet = wb.createSheet("Histogramme des imagos");
    Espece espece = Espece.find.byId(Integer.parseInt(info.get("espece")));
    SousGroupe sous_groupe = SousGroupe.find.byId(Integer.parseInt(info.get("sous_groupe")));
    Groupe groupe = Groupe.find.byId(Integer.parseInt(info.get("groupe")));
    String maille = info.get("maille");
    String date1 = info.get("jour1") + "/" + info.get("mois1") + "/" + info.get("annee1");
    String date2 = info.get("jour2") + "/" + info.get("mois2") + "/" + info.get("annee2");
    String titre = "Diagramme reprsentant les imagos en fonction de la priode de l'anne ";
    if (espece != null)
        titre += "de " + espece.espece_nom;
    else if (sous_groupe != null)
        titre += "de " + sous_groupe;
    else if (groupe != null)
        titre += "de " + groupe;
    if (!maille.equals(""))
        titre += " dans la maille " + maille;
    titre += " du " + date1 + " au " + date2;
    titre += " (" + hdi.getSomme() + " tmoignages)";
    sheet.createRow(0).createCell(0).setCellValue(titre);
    sheet.addMergedRegion(new CellRangeAddress(0, //first row (0-based)
            0, //last row  (0-based)
            0, //first column (0-based)
            12 //last column  (0-based)
    ));
    Row row = sheet.createRow(1);
    row.createCell(0).setCellValue("Priode");
    row.createCell(1).setCellValue("Nbr. Obs.");
    int i = 0;
    while (i < hdi.histogramme.length) {
        row = sheet.createRow(i + 2);
        row.createCell(0);
        row.createCell(1);
        sheet.getRow(i + 2).getCell(0).setCellValue(hdi.legende.get(i));
        sheet.getRow(i + 2).getCell(1).setCellValue(hdi.histogramme[i]);
        i++;
    }
    sheet.autoSizeColumn(0);
    sheet.autoSizeColumn(1);
}

From source file:functions.excels.exports.HistoriqueDesEspecesExcel.java

License:Apache License

public HistoriqueDesEspecesExcel(Map<String, String> info, HistoriqueDesEspeces hde) throws IOException {
    super();/*w ww  . j ava  2 s . co  m*/
    Sheet sheet = wb.createSheet("Historique des espces");
    Espece espece = Espece.find.byId(Integer.parseInt(info.get("espece")));
    SousGroupe sous_groupe = SousGroupe.find.byId(Integer.parseInt(info.get("sous_groupe")));
    Groupe groupe = Groupe.find.byId(Integer.parseInt(info.get("groupe")));
    String maille = info.get("maille");
    String titre = "Historie des espces ";
    if (espece != null)
        titre += "de " + espece.espece_nom;
    else if (sous_groupe != null)
        titre += "de " + sous_groupe;
    else if (groupe != null)
        titre += "de " + groupe;
    if (!maille.equals(""))
        titre += " dans la maille " + maille;
    titre += " (" + hde.getSomme() + " tmoignages, " + hde.nbTemoignagesRejetes + " tmoignages rejets)";
    sheet.createRow(0).createCell(0).setCellValue(titre);
    sheet.addMergedRegion(new CellRangeAddress(0, //first row (0-based)
            0, //last row  (0-based)
            0, //first column (0-based)
            12 //last column  (0-based)
    ));
    Row row = sheet.createRow(1);
    row.createCell(0).setCellValue("Priode");
    row.createCell(1).setCellValue("Nbr. Obs.");
    int i = 0;
    while (i < hde.histogramme.length) {
        row = sheet.createRow(i + 2);
        row.createCell(0);
        row.createCell(1);
        sheet.getRow(i + 2).getCell(0).setCellValue(hde.legende.get(i));
        sheet.getRow(i + 2).getCell(1).setCellValue(hde.histogramme[i]);
        i++;
    }
    sheet.autoSizeColumn(0);
    sheet.autoSizeColumn(1);
}

From source file:functions.excels.exports.MaChronologieExcel.java

License:Apache License

public MaChronologieExcel(Map<String, String> info, MaChronologie maChronologie) {
    super();//www.  ja v  a  2  s .  co m
    Sheet sheet = wb.createSheet("Ma chronologie");
    String temoin = info.get("temoin");
    String titre = "Chronologie des tmoignages ";
    titre += " dposs par " + temoin;
    sheet.createRow(0).createCell(0).setCellValue(titre);
    sheet.addMergedRegion(new CellRangeAddress(0, //first row (0-based)
            0, //last row  (0-based)
            0, //first column (0-based)
            12 //last column  (0-based)
    ));
    Row rowHead = sheet.createRow(1);
    rowHead.createCell(0).setCellValue("Fiche ID");
    rowHead.createCell(1).setCellValue("UTM");
    rowHead.createCell(2).setCellValue("Lieu-dit");
    rowHead.createCell(3).setCellValue("Commune");
    rowHead.createCell(4).setCellValue("Dp.");
    rowHead.createCell(5).setCellValue("Date min");
    rowHead.createCell(6).setCellValue("Date");
    rowHead.createCell(7).setCellValue("Espce");
    rowHead.createCell(8).setCellValue("Nombre");
    rowHead.createCell(9).setCellValue("Stade/Sexe");
    rowHead.createCell(10).setCellValue("Tmoins");
    rowHead.createCell(11).setCellValue("Mmo");
    rowHead.createCell(12).setCellValue("Groupe");
    CellStyle cellStyleDate = wb.createCellStyle();
    CreationHelper creationHelper = wb.getCreationHelper();
    cellStyleDate.setDataFormat(creationHelper.createDataFormat().getFormat("dd/mm/yyyy"));
    int i = 2;
    for (Observation observation : maChronologie.chronologie) {
        for (InformationsComplementaires complement : observation.getInfos()) {
            Row row = sheet.createRow(i);
            Fiche fiche = observation.observation_fiche;
            row.createCell(0).setCellValue(fiche.fiche_id);
            row.createCell(1).setCellValue(fiche.fiche_utm.utm);
            row.createCell(2).setCellValue(fiche.fiche_lieudit);
            if (fiche.fiche_commune != null) {
                row.createCell(3).setCellValue(fiche.fiche_commune.ville_nom_aer);
                row.createCell(4).setCellValue(fiche.fiche_commune.ville_departement.departement_code);
            }
            if (fiche.fiche_date_min != null) {
                Cell cell = row.createCell(5);
                cell.setCellValue(fiche.fiche_date_min.getTime());
                cell.setCellStyle(cellStyleDate);
            }
            Cell cell = row.createCell(6);
            cell.setCellValue(fiche.fiche_date.getTime());
            cell.setCellStyle(cellStyleDate);
            row.createCell(7).setCellValue(observation.observation_espece.espece_nom);
            Integer nombre = complement.informations_complementaires_nombre_de_specimens;
            if (nombre == null)
                row.createCell(8).setCellValue("?");
            else
                row.createCell(8).setCellValue(nombre);
            row.createCell(9)
                    .setCellValue(complement.informations_complementaires_stade_sexe.stade_sexe_intitule);
            StringBuilder membres = new StringBuilder();
            List<FicheHasMembre> fhms = fiche.getFicheHasMembre();
            for (int j = 0; j < fhms.size() - 1; j++) {
                membres.append(fhms.get(j).membre);
                membres.append(", ");
            }
            if (!fhms.isEmpty())
                membres.append(fhms.get(fhms.size() - 1).membre);
            else
                membres.append("et al.");
            row.createCell(10).setCellValue(membres.toString());
            row.createCell(11).setCellValue(fiche.fiche_memo);
            row.createCell(12).setCellValue(
                    observation.observation_espece.espece_sous_groupe.sous_groupe_groupe.groupe_nom);
            i++;
        }
    }
    for (int j = 0; j < 11; j++)
        sheet.autoSizeColumn(j);
}