IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

NetBeans Java Discussion :

Jasper Report : error executing sql statement for null


Sujet :

NetBeans Java

  1. #1
    Membre éclairé Avatar de sondo
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Août 2004
    Messages
    540
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Burkina Faso

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : Service public

    Informations forums :
    Inscription : Août 2004
    Messages : 540
    Par défaut Jasper Report : error executing sql statement for null
    Bonjour,

    Je suis en train de concevoir un état en Jasper report. La prévisualisation se passe bien, mais à l'exécution du programme,
    quand je clique sur le bouton pour afficher l'état, l'erreur error executing sql statement for null est retournée.
    Ci-dessus le code du bouton:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
     
           try{            
                JasperDesign jdesign; 
                jdesign = JRXmlLoader.load("D:\\NetBeansProjects\\DEMANDE\\src\\main\\java\\sonabel\\demande\\RportDemande.jrxml");            
     
                String num;
                num = jTextNumero.getText();
                String query;
                query = "Select demande.dm_numero, demande.dm_date, demande.dm_just, demande.dm_benef, demande.dm_imp, "
                        + "signataires.sig_signat_1, signataires.sig_signat_2, signataires.sig_signat_3, materiel.ma_qte, centre.c_libelle, "
                        + "materiel.ma_pu, materiel.ma_desig, materiel.ma_obs, materiel.ma_num, Round(sum(ma_qte * ma_pu)) as ma_montant, "
                        + "fournis.fr_nom"
                        + "from demande, materiel, centre, signataires, fournis"
                        + "where trim(demande.dm_numero) ='" + num + "'"
                        + "and trim(materiel.dm_numero) ='" + num + "'"
                        + "and demande.dm_numero = materiel.dm_numero"
                        + "And demande.sig_option = signataires.sig_option"
                        + "And demande.fr_code = fournis.fr_code"
                        + "and centre.c_type'" + "A" + "'"
                        + "Group by demande.dm_numero, dm_date, dm_just, dm_benef, dm_imp, c_libelle, sig_signat_1, sig_signat_2, sig_signat_3, "
                        + "ma_qte, ma_pu, ma_desig, ma_obs, ma_num, fr_nom"
                        + "Order by ma_num"; 
     
                JRDesignQuery updateQuery = new JRDesignQuery();
                updateQuery.setText(query);            
                jdesign.setQuery(updateQuery);
     
                JasperReport ireport = JasperCompileManager.compileReport(jdesign);
                JasperPrint jprint = JasperFillManager.fillReport(ireport,null,getOracleConnection());
                JasperViewer.viewReport(jprint, false); 
     
            }catch(ClassNotFoundException | SQLException | JRException e){
                JOptionPane.showMessageDialog(this, e.getMessage());
     
        }
    --- exec-maven-plugin:3.0.0:exec (default-cli) @ DEMANDE ---
    WARNING: An illegal reflective access operation has occurred
    WARNING: Illegal reflective access by net.sf.jasperreports.engine.util.ClassUtils (file:/C:/Users/emmanuel.sondo/.m2/repository/net/sf/jasperreports/jasperreports/6.20.0/jasperreports-6.20.0.jar) to constructor com.sun.org.apache.xerces.internal.util.XMLGrammarPoolImpl()
    WARNING: Please consider reporting this to the maintainers of net.sf.jasperreports.engine.util.ClassUtils
    WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
    WARNING: All illegal access operations will be denied in a future release

    La requête ci-dessus fonctionne bien sous sql. Merci de me guider.

  2. #2
    Membre très actif

    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    486
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 486
    Billets dans le blog
    5
    Par défaut
    J'ai fait du Jasper Report il y a fort longtemps, donc j'ai un peu (voir beaucoup) oublié.

    Néanmoins, si on regarde côté Java, la String est construit dynamiquement.

    Ce n'est absolument pas une bonne approche.

    Il faut préférer les PreparedStatment au Statment tout court.

    https://java.developpez.com/faq/jdbc...paredStatement

    https://community.jaspersoft.com/doc...meters-queries

  3. #3
    Membre éclairé Avatar de sondo
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Août 2004
    Messages
    540
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Burkina Faso

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : Service public

    Informations forums :
    Inscription : Août 2004
    Messages : 540
    Par défaut
    Merci beaucoup PhilippeGibault, mon problème est résolu de par ton conseil.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 02/07/2019, 19h03
  2. Réponses: 7
    Dernier message: 02/09/2013, 01h12
  3. invalid SQL statement sur un 'execute nom_procedure' ?
    Par jamesleouf dans le forum PL/SQL
    Réponses: 2
    Dernier message: 27/10/2011, 13h27
  4. ERROR = SQL Statement ignored
    Par amirovisch dans le forum PL/SQL
    Réponses: 16
    Dernier message: 26/05/2011, 09h20
  5. Réponses: 0
    Dernier message: 04/11/2008, 07h41

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo