iReport permet de faire des extensions : Exemple pour créer un sommaire à un rapport.
Ces extensions se font via des Scriptlets en java. Je suis en train d’essayer de créer un sommaire. D’ailleurs pour nous aider JasperSoft a mis à disposition des samples que vous trouverez ici :
tableOfcontentsRaport.jrxml et HeadingsReport.jrxml
HeadingsScriptlet.java
En tout cas il a fallu se familiariser avec ANT car iReport ne compile le code Java. Il faut le faire à part puis insérer notre code compilé : nos .class dans le classpath de iReport ( options > chemin de classe)
Pour ANT il y a une version fournie directement avec JasperServer 3.0 voir dans le dossier ANT. Pour utiliser ce logiciel, voici les étapes à respecter :
- bien paramétrer vos variables d’environnement :
JAVA_HOME : C:\…\java\jdk1.6.0_03 indiquer l’emplacement de votre jdk
ANT_HOME :C:\…\ant indiquer l’emplacement de votre ant
PATH : %PATH; %ANT_HOME\bin%; %JAVA_HOME\bin%
CLASSPATH : mettre les répertoire de vos lib et les .jar dont vous pourrez avoir besoin.
- Construire son fichier build.xml à mettre à la racine de votre répertoire ANT
——————————————————————————————
<project name= »sommaire_scriptlet » default= »compileProject »>
<echo> JE COMMENCE LA COMPILATION </echo>
<target name= »init »>
<property name= »sourceDir » value= »C:/Program Files/jasperserver-3.0/ant/src » />
<property name= »outputDir » value= »C:/Program Files/jasperserver-3.0/ant/classes » />
<!–si vous voulez utiliser les variable d’environnement de windows –>
<property environment= »env » />
<property name= »classpathenv » value= »${env.CLASSPATH} » />
</target>
<path id = « monclasspath »>
<fileset dir = « lib »>
<include name = « *.jar » />
</fileset>
<!–pathelement location= »../ireport/lib/jasperreports-3.0.0.jar » /–>
<!–pathelement location= »../java/lib/tools.jar » /–>
<pathelement location= »../java/lib/ » />
<pathelement location= »../ireport/lib/ » />
</path>
<target name= »cleanUpOutputDir » depends= »init »>
<deltree dir= »${outputDir} » />
</target>
<target name= »makeOutputDir » depends= »cleanUpOutputDir »>
<mkdir dir= »${outputDir} » />
</target>
<echo> JE COMPILE MON PROJET</echo>
<target name= »compileProject » depends= »makeOutputDir »>
<!–j’affiche mon classpath pour voir si tout va bien –>
<pathconvert targetos= »windows » property= »monclasspathwin » refid= »monclasspath »> </pathconvert>
<echo> monclasspathwin : ${monclasspathwin} </echo>
<!– compilation des sources Java –>
<javac srcdir= »${sourceDir} » destdir= »${outputDir} » >
<classpath refid= »monclasspath » />
</javac>
</target>
</project>
——————————————————————–
Et ensuite avec la console « cmd » de windows mettez vous dans le répertoire ANT et taper : « ant » et normalement votre build.xml s’exécutera.
- Puis prenez vos .class générer et collez à la racine du répertoire iReport.
J’espère que ça pourra en aider quelques personnes.
Je travaille toujours sur mon sommaire. Vu qu’il n’y a pas beaucoup de documentation j’avance assez doucement. Si des gens s’y connaissent n’hésitez pas à vous manifester.
Dès que le fonctionnement de iReport sera clair sur la création du sommaire je ferai un post pour expliquer la démarche.