FORMATION GEDIWEB SUPPORT GEDIWEB : LES EDITIONS 2010 AVERTISSEMENT GEDIDOC et GEDIWEB sont des marques déposées MEDIAL : produits commercialisés sous licence d'utilisation. Ce document est la propriété intellectuelle de MEDIAL ; il ne peut être reproduit partiellement ou totalement et par quelque procédé que ce soit, sans l'autorisation expresse de l'auteur. Pour tous renseignements complémentaires, écrire à : MEDIAL, 74 rue Maurice Flandin, BP 3042, 69395 LYON CEDEX 03 PORTAIL GEDIWEB : SERVICES AVANCES 1
FORMATION GEDIWEB GEDIWEB : LES EDITIONS 1 EDITIONS DANS GEDIWEB : PRINCIPE DE FONCTIONNEMENT... 2 2 CREATION DES EDITIONS SPECIFIQUES... 4 2.1 GENERALITES... 4 2.2 MODIFICATION DES RAPPORTS D'EDITIONS AVEC JASPER IREPORT... 5 2.3 STRUCTURE DU RAPPORT JASPER... 6 2.4 UTILISATION DE JASPER IREPORT... 9 2.4.1 Généralités sur l'interface Jasper ireport... 9 2.4.2 Requête du rapport... 10 2.4.3 Propriétés d'une zone de texte statique ou dynamique... 11 2.4.4 Contenu d'une zone de texte dynamique... 14 2.4.5 Les images... 16 2.4.6 Les sous-rapports... 17 3 PUBLICATION DES EDITIONS SPECIFIQUES...19 PORTAIL GEDIWEB : SERVICES AVANCES 2
1 EDITIONS DANS GEDIWEB : PRINCIPE DE FONCTIONNEMENT Gediweb propose des éditions basées sur l'outil Jasper ireport, qui permet une mise en forme sophistiquée du résultat. Dans chaque module, affichage de la liste des réponses ou détail d'une fiche, l'édition Jasper est proposée derrière le bouton ou selon qu'il y a l'édition standard seulement ou des éditions personnalisées spécifiques. L'édition standard : Au minimum, l' "Edition standard" fournie par Gediweb permet d'obtenir un résultat : - sous forme de tableau dans les listes de réponses, avec les champs sélectionnés pour l'affichage de la liste - sous forme détaillée, avec tous les champs de la fiche, au niveau de l l'affichage du détail d'une fiche Les éditions spécifiques : Elles sont créées pour répondre à un usage bien précis : édition d'une commande, lettre de relance, un état statistique La mise en forme est entièrement libre et permet d'obtenir des résultats très différents à partir d'un même ensemble de données. PORTAIL GEDIWEB : SERVICES AVANCES 2
Dans les 2 cas, le résultat peut être généré dans les formats suivants : - PDF - HTML - RTF - XLS - CSV PORTAIL GEDIWEB : SERVICES AVANCES 3
2 CREATION DES EDITIONS SPECIFIQUES 2.1 Généralités Les rapports d'éditions Jasper spécifiques sont créés à partir du logiciel Jasper ireport. Les fichiers obtenus doivent être placés sur le serveur, dans l arborescence Gediweb, dossier \export\exportjasper (éditions spécifiques fournies par Medial) ou \export\exportjasper\exportjasperclient (éditions personnalisées pour le client). Les types de fichiers suivants se trouvent dans ces dossiers : *.jrxml *.properties *.jasper Source du fichier d édition. Contient la requête SQL permettant de récolter les informations, la mise en page, etc Fichier texte contenant des ressources utilisées par l édition Jasper. Permet d adapter les libellés dans les différentes langues gérées. Exemple de paramètre : titre=bon de commande Fichier Jasper compilé Les nouveaux rapports d'édition doivent être déclarés dans Gediweb (voir le chapitre "3 - PUBLICATION DES EDITIONS SPECIFIQUES") PORTAIL GEDIWEB : SERVICES AVANCES 4
2.2 Modification des rapports d'éditions avec Jasper ireport Pour créer ou modifier un fichier jrxml, il faut utiliser JasperSoft ireport (v 1.3.1 minimum) qui doit être installé sur un poste et doit pouvoir accéder à l arborescence \export\exportjasper sur le serveur. Les fichiers à modifier doivent être préalablement copiés dans \export\exportjasper\exportjasperclient ATTENTION! Toujours faire une copie de sauvegarde du fichier avant modification. Une fois modifié, un rapport Jasper doit être compilé. Le fichier compilé (.jasper) doit être généré dans ce même dossier. Le dossier de compilation est défini dans le menu Options, Paramètres, Compiler PORTAIL GEDIWEB : SERVICES AVANCES 5
2.3 Structure du rapport Jasper Le principe du rapport Jasper JRXML est similaire à un document de fusion ou publipostage. Le document prend en entrée des données, des fiches, et pour chacune effectue une mise en forme. Les éléments principaux d'un rapport Jasper JRXML sont les suivants : Elément Source de données La requête du rapport Les groupes Champs Variables Paramètres Explication Il est possible, mais facultatif, de se connecter directement à une base de données afin de générer des états sans passer par Gediweb. menu Données, Connexions / sources de données Ceci implique de fournir tous les paramètres nécessaires au fonctionnement du rapport Il s'agit de la requête SQL servant à récupérer les données de la base menu Données, Requête du rapport Si le document doit extraire des informations qui ne doivent pas être répétées à chaque ligne, on crée le ou les groupes correspondants. Exemples : - les relances de prêts : on n'affiche qu'une seule fois les informations de l'emprunteur même s'il a plusieurs prêts en retard - bulletin thématique : on affiche le thème à chaque changement de thème, pas au niveau de chaque ligne. Plusieurs groupes peuvent être créés et imbriqués : thème, sous-thème, menu Affichage, Groupes Liste des champs récupérés par la requête menu Affichage, Champs Liste de variables exploitables par le rapport menu Affichage, Variables Variables ou valeurs qui peuvent être transmises au rapport. Gediweb transmet les paramètres suivants : - CheminContext : chemin racine de Gediweb - ClauseWhere : clause Where de la requête SQL, c'est-à-dire le filtre permettant de récupérer le bon ensemble de réponses - FormatExport : le format demandé par Gediweb ("FORMAT_HTML", "FORMAT_PDF", ) - menu Affichage, Paramètres PORTAIL GEDIWEB : SERVICES AVANCES 6
Fichiers de ressources En fonction de la langue, utilisation d'un fichier de ressources différent (fichiers.properties) menu Editer, Internationalisation A supprimer si inutile Les sections Les différentes zones du document : - background : le fond - title : titre du document - pageheader : entête de chaque page - columnheader : entête de chaque fiche - "group"header : entête d'un groupe. Autant de fois qu'il y a de groupes - Detail : détail de chaque fiche - "group"footer : pied/fin d'un groupe. Autant de fois qu'il y a de groupes - columnfooter : entête de chaque fiche - pagefooter : bas de chaque page - lastpagefooter : bas de la dernière page - summary : fin du document Chaque section a une hauteur (0 si invisible), peut être coupée ou pas si fin de page (split), et peut contenir des éléments graphiques (zones de texte, images, etc ) menu Affichage, Sections PORTAIL GEDIWEB : SERVICES AVANCES 7
Eléments graphiques Les éléments visuels constituant le rapport : - Formes graphiques : lignes, rectangles, ellipses - Les zones de texte : Texte statique Texte dynamique : valeurs des champs des données récupérées, formules de concaténation, - Image - Sous-rapport : 2 nd rapport Jasper inséré dans le rapport en cours - menu Editer, Insérer un élément ou clic-droit + propriétés d'un élément du rapport directement PORTAIL GEDIWEB : SERVICES AVANCES 8
2.4 Utilisation de Jasper ireport 2.4.1 Généralités sur l'interface Jasper ireport L'accès aux zones se fait de préférence par clic-droit, Propriétés Insertion d'un Texte statique / Champ dynamique Icônes d'alignement des zones entre elles Les sections Rapport de compilation Pour sélectionner plusieurs zones en vue de l'alignement ou toute opération à faire sur plusieurs zones : - cliquer sur la zone de référence - Maj + clic sur les autres zones PORTAIL GEDIWEB : SERVICES AVANCES 9
2.4.2 Requête du rapport Filtre transmis par Gediweb PORTAIL GEDIWEB : SERVICES AVANCES 10
2.4.3 Propriétés d'une zone de texte statique ou dynamique Position type : choisir "flottante" si la zone doit se décaler vers le bas du fait des précédentes Print when expression : formule "Java" permettant d'afficher ou pas la zone PORTAIL GEDIWEB : SERVICES AVANCES 11
Cocher si la zone doit s'agrandir pour s'adapter au texte Cocher pour ne pas voir apparaître "null" le cas échéant Sélection d'un champ, variable ou paramètre Sélection d'une méthode Java sur un champ, variable ou paramètre Text field expression class : - java.lang.string : chaîne de caractères - java.lang.date : date - Pattern : format de la zone (format date, numérique ) PORTAIL GEDIWEB : SERVICES AVANCES 12
PORTAIL GEDIWEB : SERVICES AVANCES 13
2.4.4 Contenu d'une zone de texte dynamique Il est conseillé d'utiliser l'outil "Expression editor " montré plus haut pour insérer des champs ou paramètres avec la bonne syntaxe. Sinon, les codes couramment utilisés sont les suivant : Code " " + " " Explications Le + sert à la concaténation de zone de texte, valeurs de type "String", etc ( condition? " " : " ") Si alors sinon Permet par exemple un affichage conditionnel en fonction de la valeur d'un champ. Exemple : ( $F{dnu_volume}!=null? "Vol. " + $F{dnu_volume} + " " : "" ) Si le volume n'est pas nul, affiche son contenu (ici 123) précédé de "Vol. ". Sinon rien (new SimpleDateFormat("dd/MM/yyyy", $P{REPORT_LOCALE})).format($F{dnu_date}) Insertion d'une date dans un texte, au format choisi. Exemple : (new SimpleDateFormat("dd/MM/yyyy", $P{REPORT_LOCALE})).format($F{dnu_date}) Met la date d'un n de périodique au format jj/mm/aaaa new Date() Date du jour, type java.lang.date. Si elle doit être incluse dans une zone de texte type java.lang.string, il faut utiliser le code précédent pour la mettre au format texte souhaité : (new SimpleDateFormat("dd/MM/yyyy", $P{REPORT_LOCALE})).format(new Date()) $V{PAGE_NUMBER} N de page PORTAIL GEDIWEB : SERVICES AVANCES 14
Nombre total de pages La zone doit avoir le paramètre "Evaluation time" positionné à "Rapport" $V{REPORT_COUNT} N d'enregistrement ou fiche en cours ATTENTION! Respect des majuscules / minuscules important. PORTAIL GEDIWEB : SERVICES AVANCES 15
2.4.5 Les images $P{CheminContext} correspond à la racine de Gediweb. PORTAIL GEDIWEB : SERVICES AVANCES 16
2.4.6 Les sous-rapports Un rapport Jasper peut être inséré dans un autre rapport Jasper. Par exemple, les mots-clés d'un document dans un rapport d'édition des documents. L'idée est de créer un rapport de manière habituel, mais ce sous-rapport doit accepter en entrée un paramètre, l'identifiant du document dans notre exemple, lui-même inclus au niveau de la requête du rapport : Paramètre DocId = identifiant du document (transmis par le rapport appelant) Paramètre DocId au niveau de la requête du sous-rapport PORTAIL GEDIWEB : SERVICES AVANCES 17
Au niveau du rapport appelant, on insère un élément "Sous-rapport" (menu Editer, Insérer un élément ) avec les caractéristiques suivantes : $P(SUBREPORT_DIR) est un paramètre transmis par Gediweb. Il correspond au dossier où se trouvent les fichiers Jasper. PORTAIL GEDIWEB : SERVICES AVANCES 18
3 PUBLICATION DES EDITIONS SPECIFIQUES Depuis la version 4.03, il est possible de créer de nouvelles éditions (rapports Jasper), de les lier à un rôle, une vue, un service fonctionnel (vue générique). Menu Administrateur, Configuration des vues, "Les éditions" ou "Les éditions d'un rôle" ou "Les éditions d'un service fonctionnel" L'édition peut être proposée "par défaut" à la place de l'édition standard. Si plusieurs éditions sont proposées par défaut pour une même vue, la 1 ère est prise en compte (il est possible de jouer sur l'ordre des éditions). PORTAIL GEDIWEB : SERVICES AVANCES 19