Partage
  • Partager sur Facebook
  • Partager sur Twitter

pdftable problème de boucle

Sujet résolu
    28 avril 2016 à 14:48:05

    Bonjour, j'ai fais une boucle pour mettre plusieurs tableau sur mon pdf mais a chaque fois dans le tableau suivant les résultats du tableau d'avant son aussi dedans. Merci d'avance pour l'aide

    try {
                con = DriverManager
    		.getConnection(connexioninfo);
                st = con.createStatement();
                PdfWriter.getInstance(classement10, new FileOutputStream(path_classement));
                classement10.open();
                PdfPCell table_cell;
                c=1;
                sql = "SELECT COUNT(*) FROM course"; 
    	    		  rs = st.executeQuery(sql);
                              rs.next(); 
                     v = rs.getInt(1);
                     v++;
                while(c!=v){ 
                    table_cell=new PdfPCell(new Phrase("Nom de l'élève"));
                    pdf_classement.addCell(table_cell);
                    table_cell=new PdfPCell(new Phrase("Prénom de l'élève"));
                    pdf_classement.addCell(table_cell);
                    table_cell=new PdfPCell(new Phrase("Nom de l'école"));
                    pdf_classement.addCell(table_cell);
                    table_cell=new PdfPCell(new Phrase("Classement"));
                    pdf_classement.addCell(table_cell);
                    st = con.createStatement();
                   sql = "SELECT nom_eleve AS 'Nom de l''élève' ,prenom_eleve AS 'Prenom de l''élève' ,nom_ecole AS 'Nom de l''école' ,position_course AS 'Classement' FROM eleve,jonction,ecole WHERE id_course= ("+c+") AND eleve.id_eleve = jonction.id_eleve AND ecole.id_ecole = jonction.id_ecole AND jonction.position_course BETWEEN 1 AND 10 ORDER BY position_course";  
                    rs = st.executeQuery(sql);
                  while (rs.next()) {                
                                    String dept_id = rs.getString("Nom de l'élève");
                                    table_cell=new PdfPCell(new Phrase(dept_id));
                                    pdf_classement.addCell(table_cell);
                                    String dept_name=rs.getString("Prenom de l'élève");
                                    table_cell=new PdfPCell(new Phrase(dept_name));
                                    pdf_classement.addCell(table_cell);
                                    String manager_id=rs.getString("Nom de l'école");
                                    table_cell=new PdfPCell(new Phrase(manager_id));
                                    pdf_classement.addCell(table_cell);
                                    String location_id=rs.getString("Classement");
                                    table_cell=new PdfPCell(new Phrase(location_id));
                                    pdf_classement.addCell(table_cell);
                                    }
                   para = new Paragraph("Course "+c,FontFactory.getFont(FontFactory.TIMES_BOLD,45));
                    para.setAlignment(Element.ALIGN_CENTER);
                    classement10.add(para);
                    para = new Paragraph(Newligne);
                    classement10.add(para);
                    classement10.add(pdf_classement);
                    c++;
                }
               classement10.close();
                       
    	}catch (SQLException e) {
    		e.printStackTrace();
    		return;
    	}   catch (DocumentException ex) {
                    Logger.getLogger(Main_fenetre.class.getName()).log(Level.SEVERE, null, ex);
                }   catch (FileNotFoundException ex) {
                        Logger.getLogger(Main_fenetre.class.getName()).log(Level.SEVERE, null, ex);
                    }
    
    
    	if (con != null) {
                
    	} else {
    		System.out.println("Impossible de faire la connexion!");
    	}

    Voici mon fichier 

    -
    Edité par Diffyx 28 avril 2016 à 14:50:38

    • Partager sur Facebook
    • Partager sur Twitter
      28 avril 2016 à 15:31:01

      Salut,

      Il te faut reinitialiser ton classement (pdf_classement), sinon il garde en memoire ce que tu lui a deja rentre. Je ne sais pas quel est son type, mais si tu fais au debut de boucle pdf_classement = new ...() ca devrait suffire ;) (sauf si il existe une methode removeAll() ou dans ce genre)

      • Partager sur Facebook
      • Partager sur Twitter
        28 avril 2016 à 16:58:01

        Oui en effet cela fonctionne merci beaucoup :D
        • Partager sur Facebook
        • Partager sur Twitter

        pdftable problème de boucle

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown