où les clés dans la parametersMap devraient être excatly les mêmes que les paramètres définis dans votre modèle de rapport.
Donc, Déclarer le paramètre dans votre modèle de rapport (jrxml):
<parameter name="id"class="java.lang.Integer"/>
Passer des paramètres à une requête en Jaspe Rapport
select * from personal where id= $P{id}
merci. le problème est maintenant résolu. je voulais juste vous demander une chose de plus. Supposons que je veux imprimer le paramètre-je.e $P{id} jasper rapport. (actuellement, nous sommes à l'utiliser dans une requête.). Je veux simplement imprimer le paramètre dans le rapport. Est-il possible.. est oui .s'il vous plaît aider . Vous devez marquer la question Répondu si votre problème est résolu. I-Rapport de Choisir la Section que vous souhaitez imprimer.Définir un champ $F{id}.BTW c'est une autre question. 🙂
vous ne pouvez pas sélectionner *, vous devez indiquer le nom de la colonne que vous souhaitez obtenir les données. utilisation
commDB.requête pour exécuter la requête, puis passer résultat à commDBResult, exécuter la boucle, placer chaque ligne d'enregistrement dans un tableau la liste, puis utilisez jasper pour générer le rapport
Merci. J'ai réussi à générer le rapport. Le problème, je suis confronté est mon rapport est statique. Je veux un rapport dynamique. Signifie je veux entrer la valeur de l'id (par exemple) à partir de jsp/java qui change de la requête et de rapport correspondant est généré.
<%@pageimport="net.sf.jasperreports.engine.JasperExportManager"%><%@pageimport="net.sf.jasperreports.engine.JasperExportManager"%><%@pageimport="net.sf.jasperreports.view.JasperViewer"%><%@pageimport="net.sf.jasperreports.engine.JasperPrint"%><%@pageimport="net.sf.jasperreports.engine.JasperReport"%><%@pageimport="net.sf.jasperreports.engine.JasperFillManager"%><%@pageimport="net.sf.jasperreports.engine.JRResultSetDataSource"%><%@pageimport="net.sf.jasperreports.engine.JasperCompileManager"%><%@pageimport="net.sf.jasperreports.*"%><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>JSP Page</title></head><body><%try{JasperReport jasperReport=JasperCompileManager.compileReport("PASS LOCATION TO YOUR .JRXML FILE");Class.forName("com.mysql.jdbc.Driver");Connection conn =DriverManager.getConnection("jdbc:mysql://localhost:3306/t_fleet","root","root");Integer inv_no=0;Statement stmt =null;ResultSet rset =null;Statement st2=conn.createStatement();String queryString ="PASS YOUR QUERY HERE";
stmt = conn.createStatement();
rset = stmt.executeQuery(queryString);JRResultSetDataSource jasperReports =newJRResultSetDataSource(rset);JasperPrint jasperPrint =JasperFillManager.fillReport(jasperReport,null, jasperReports);//JasperViewer.viewReport(jasperPrint); String filename=null;
filename="SET NAME TO YOUR FILE NAME AND APPEND.pdf TO IT";//Report saved in specified pathJasperExportManager.exportReportToPdfFile(jasperPrint,filename);//Report open in RuntimeRuntime.getRuntime().exec("rundll32 url.dll,FileProtocolHandler "+filename);}catch(Exception e){
out.println(e);}%></body><script></script></html>
Peut-être que l'appel d'une couche de service avec le paramètre nécessaire pour mettre à jour le jasperreport rapport est préférable de programmation de modèle, c'est pourquoi j'ai downvoted votre post.
Créer une Carte contenant des paramètres et mettre les paramètres en tant que valeur de la clé de paire.
Lors de la génération de Jasper Rapport de JSP:
où les clés dans la
parametersMap
devraient être excatly les mêmes que les paramètres définis dans votre modèle de rapport.Donc, Déclarer le paramètre dans votre modèle de rapport (jrxml):
Passer des paramètres à une requête en Jaspe Rapport
Vous devez marquer la question Répondu si votre problème est résolu. I-Rapport de Choisir la Section que vous souhaitez imprimer.Définir un champ $F{id}.BTW c'est une autre question. 🙂
OriginalL'auteur Hardik Mishra
vous ne pouvez pas sélectionner *, vous devez indiquer le nom de la colonne que vous souhaitez obtenir les données. utilisation
commDB.requête pour exécuter la requête, puis passer résultat à commDBResult, exécuter la boucle, placer chaque ligne d'enregistrement dans un tableau la liste, puis utilisez jasper pour générer le rapport
OriginalL'auteur Chi Nguyen
Ce sera votre code jsp.
OriginalL'auteur Aditya Ekbote