Besoin d'un conseil pour impression de facture

Signaler
Messages postés
58
Date d'inscription
mardi 16 janvier 2007
Statut
Membre
Dernière intervention
10 mars 2008
-
Messages postés
1
Date d'inscription
mercredi 12 mai 2010
Statut
Membre
Dernière intervention
27 mars 2012
-
Bonsoir,

je suis actuellement sur un projet de gestion de garderie d'une école.

en fonction du nombre de jour de garde et du nombre d'enfant à charge, mon programme calcule le montant que la famille devra payer.

il ne me reste plus qu'à coder l'impression des factures.

Que me conseillez vous à savoir, qu'il y a environ 100 factures par mois et qu'elles doivent toutes être imprimées 2 fois (compta).

Au début j'ai pensé à un bouton qui lancerait une séquence d'export grâce à iText et ensuite la personne n'aurait plus qu'à selectionner tous les fichiers et les imprimer.

Ensuite je me suis demandé s'il n'était pas possible d'exporter les données (nom, prenom, montant) vers un publipostage word. La personne n'aurait plus qu'a ouvrir le modèle et lancer l'impression.

Je voulais avoir votre avis. Que choisiriez vous ? Avez vous une autre idée ? Est ce réalisable et si oui pouvez vous me diriger vers un tuto ?

Merci d'avance pour votre aide

A+
A voir également:

11 réponses

Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
96
utilise plutôt un système de reporting qui sont fait pour cà : tu créer un modèle d'impression (où est situé tel champ ou tel champ, imprimer une photo ici, etc), et tu n'as plus qu'à lancer l'impression comme cà.

Il existe plusieurs projets de reporting sur sourceforge, je suis sûr que t'y trouvera ton bonheur.

Perso, j'utilise Report Manager (qui est développé sous forme d'ocx, donc plutôt orienté pour vb, mais au vu des newsgroup de report manager, il y en a certains qui ont réussi à l'utiliser en java).
Messages postés
58
Date d'inscription
mardi 16 janvier 2007
Statut
Membre
Dernière intervention
10 mars 2008

oulà, moi je suis débutant, que me conseille tu comme système de report.
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
96
Je sais pas, j'ai jamais fait de report pour java (j'en fait uniquement pour vb pour l'instant), cependant, en voilà qui me semble pas trop mal à première vue :
http://sourceforge.net/projects/aster/
http://sourceforge.net/projects/frb/
http://sourceforge.net/projects/fjreport/
Messages postés
58
Date d'inscription
mardi 16 janvier 2007
Statut
Membre
Dernière intervention
10 mars 2008

et je pourrai pas le faire avec iText ? Sa serait pas plus simple ?

qu'est ce qu'un report exactement ? cela a un rapport avec Jasper report ?
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
96
Un report c'est tout simplement un modèle d'impression : tu définit ce que tu doit imprimer et où l'imprimer, puis tu n'as plus qu'à lancer l'impression en lui envoyant les données à imprimer (bien souvent, il s'agit d'une simple requête SQL).

Tu n'as donc quasiment aucun code a faire : juste à faire le report en lui-même (et si l'outil utilisé est pratique, ca se fait presque de la même façon que taper du texte sous Excel !).

Exemple : tu pose un champ texte sur une grille, tu lui dit qu'il s'agit du champ "nom" de la table "personne", et c'est tout. Pour l'imprimer, tu lui passe une requête SQL avec le champ nom de la table personne avec les enregistrements qu'il faut que tu imprime, et il se débrouille.

C'est toute la puissance des reports, mais si tu ne connais pas du tout, documente toi dessus, ce sera plus simple.

Je ne connais pas iText, mais apparement, ca te permet juste de créer des pdf par programmation, donc tu sera sûrement moins limité, mais par contre, tu aura tout à coder !
Messages postés
58
Date d'inscription
mardi 16 janvier 2007
Statut
Membre
Dernière intervention
10 mars 2008

je vais me renseigner sur les report, ça a l'air interessant et plus approprié surtout s'il fait tout tout seul
Messages postés
58
Date d'inscription
mardi 16 janvier 2007
Statut
Membre
Dernière intervention
10 mars 2008

alors je me suis renseigné sur les report et j'ai pris JasperReport ou plutot IReport.

J'ai donc créer mon fichier XLM et paramêtrer ma connexion pour tester avec la base. Tout marche bien.

Maintenant je cherche à relier mon fichier xlm avec mon programme java et surtout lancer l'impression des x factures.

Quelqu'un peut il m'aider ?

Merci d'avance
Messages postés
58
Date d'inscription
mardi 16 janvier 2007
Statut
Membre
Dernière intervention
10 mars 2008

personne ne peux m'aider à utiliser ce logiciel barbare ???
Messages postés
58
Date d'inscription
mardi 16 janvier 2007
Statut
Membre
Dernière intervention
10 mars 2008

si quelqu'un connait, qu'il n'hésite pas car je n'ai toujours pas trouvé !!!
Messages postés
2
Date d'inscription
jeudi 21 février 2008
Statut
Membre
Dernière intervention
8 avril 2009

package presentation.jfrm;
import java.io.File;
import java.util.HashMap;
import java.util.Map;

import net.sf.jasperreports.engine.JasperCompileManager;
import net.sf.jasperreports.engine.JasperExportManager;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.JasperReport;
import net.sf.jasperreports.engine.design.JasperDesign;
import net.sf.jasperreports.engine.xml.JRXmlLoader;
import java.sql.Connection;
import java.sql.DriverManager;

import javax.swing.JDialog;
import javax.swing.JFileChooser;

public class GenererPlacePDF {
   
    public Connection getConnection(){
        Connection con = null;
        try {
            Class.forName("com.mysql.jdbc.Driver").newInstance();
            con = DriverManager.getConnection("jdbc:mysql://localhost/tache", "root","");
            if(!con.isClosed()){
                System.out.println("Successfully connected to " + "MySQL server using TCP/IP...");
                return con;
            }
               
            } catch(Exception e) {
                return con;
            }
            return con;
                       
    }
   
    @SuppressWarnings("unchecked")
    public void getPDF(Connection connection,String requete, String titre){
        try{
        // - Chargement et compilation du rapport
        JasperDesign jasperDesign = JRXmlLoader.load("E:\\Salima\"+requete+".jrxml");
        //JasperDesign jasperDesign = JRXmlLoader.load("report\"+requete+".jrxml");
        JasperReport jasperReport = JasperCompileManager.compileReport(jasperDesign);
       
        // - Param�tres � envoyer au rapport
        Map parameters = new HashMap();
        parameters.put("annee", 1990);
        parameters.put("Titre", "Titre");
       
        // - Execution du rapport
        JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, parameters,connection);
       
        // - Cr�ation du rapport au format PDF
        File file;
        file = selectDirectory(null, null); // selection de l'emplacement
        JasperExportManager.exportReportToPdfFile(jasperPrint,file+"\"+titre+".pdf");       
       
        }
        catch (Exception e) {
           
        }
    }
   
    public static File selectDirectory(JDialog dialog, File dir) {
        File f = dir;
        JFileChooser chooser = new JFileChooser();
        if (f == null)
            chooser.setCurrentDirectory(new File("c:\"));
        else
            chooser.setCurrentDirectory(f);
        chooser.setDialogTitle("Selectionnez un répertoire d'enregistrement ");
        chooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
        chooser.setAcceptAllFileFilterUsed(false);
        chooser.setApproveButtonText("Accepter");
        chooser.setApproveButtonToolTipText("Accepter le r�pertoire selectionn�");
        if (chooser.showOpenDialog(dialog) == JFileChooser.APPROVE_OPTION) {
            f = chooser.getSelectedFile();
        }
        return f;
    }
   
    public static void main(String args[]) {
        GenererPlacePDF genererPDF = new GenererPlacePDF();
        genererPDF.getPDF(genererPDF.getConnection(),"requete1","la liste des X selon Y");
       
    }
}
Messages postés
1
Date d'inscription
mercredi 12 mai 2010
Statut
Membre
Dernière intervention
27 mars 2012

Bonjour,
je suis une nouvelle : si quelqu'un peut m'aider :
j'essaye de créer et imprimer un fichier facture sous un modèle précis
comment faire ça en java ? respecter le modèle et imprimer???
Merci d'avance pour tout aide
Léna Sabri