Il est possible de créer des modèles utilisant Template Toolkit et du code HTML pour modifier l’affichage des résultats d’un rapport.
Par exemple, au lieu d’avoir les résultats en forme de tableau
nous pouvons les faire afficher sous forme de « cartes ».
Créer un modèle
- Aller dans Outils > Notifications et reçus
- Cliquer sur « Nouvelle notification » et choisir l’option « Rapports »
- Remplir la première partie du formulaire
- Bibliothèque : Laisser à « Toutes les bibliothèques » à moins que ce modèle ne s’applique qu’à une bibliothèque
- Module Koha : devrait déjà être à « Rapports »
- Code : entrer un code unique à ce modèle
Le code doit être au maximum 20 caractères.
Évitez les caractères accentués, les symboles et autres caractères spéciaux. Vous pouvez utiliser le souligné (_).
Par convention, les codes dans Koha sont en lettres majuscules.
Par exemple, RAPPORT_BIBLIO.
- Nom : entrer le nom du modèle, c’est ce nom qui sera affiché dans Koha
- Dans la partie du bas, cliquer sur « Imprimé »
- Remplir le formulaire
- Message HTML : cocher cette case si le modèle contient du code HTML
- Sujet du message : entrer le nom du modèle
Le sujet du message est obligatoire, mais n’est affiché nulle part. Vous pouvez simplement réutiliser le nom du modèle.
- Corps du message : entrer le code du modèle
Le « corps du message » doit être en Template Toolkit et peut contenir du code HTML.
Commencer par une ligne qui dit de faire tout ce qui suit pour chaque résultat du rapport
[% FOREACH d IN data %]
Ensuite, rédiger votre modèle avec le code HTML et tout le texte qui doit apparaître.
Les variables sont les noms de colonnes du rapport précédées de d.
, entourées de [%
et %]
.
Par exemple, dans un rapport qui a les colonnes title
, author
et barcode
, on pourrait avoir un modèle comme ceci
<h2>[% d.title %]</h2>
<p>Auteur : [% d.author %]</p>
<p>Code-barres : [% d.barcode %]</p>
Ce code affichera un titre avec le contenu de la colonne title
, un paragraphe avec « Auteur: » suivi du contenu de la colonne author
et un autre paragraphe avec « Code-barres: » suivi du contenu de la colonne barcode
.
Terminer le modèle avec une ligne pour signifier la fin de la boucle.
[% END %]
Tout ce qui est à l’extérieur de la boucle formée par [% FOREACH b IN data %]
et [% END %]
ne sera affiché qu’une fois. Vous pouvez donc ajouter du contenu avant et après comme entête ou pied de rapport.
Par exemple, le code suivant
<h1>Liste des documents à vérifier</h1>
[% FOREACH d IN data %]
<h2>[% d.title %]</h2>
<p>Auteur : [% d.author %]</p>
<p>Code-barres : [% d.barcode %]</p>
[% END %]
<p>Merci de votre temps!</p>
Affichera un titre « Liste des documents à vérifier », suivi du titre et des informations de chaque résultat du rapport, puis un paragraphe de remerciement à la fin.
Voici le code pour les cartes présentées en exemple au début de l’article, qui utilise des « panneaux » Bootstrap pour la mise en page, et le service d’images de codes-barres de Koha. À noter que le rapport doit contenir les colonnes title
, author
, location
, collection
, et barcode
.
[% FOREACH d IN data %]
<div class="panel panel-success">
<div class="panel-heading">
<h2>[% d.title %]</h2>
</div>
<div class="panel-body">
<p><strong>Auteur :</strong> [% d.author %]</p>
<p><strong>Localisation :</strong> [% d.location %]</p>
<p><strong>Collection :</strong> [% d.collection %]</p>
</div>
<div class="panel-footer">
<img src="/cgi-bin/koha/svc/barcode?barcode=[% d.barcode %]&type='Code39'"</img>
</div>
</div>
[% END %]
- Cliquer sur « Enregistrer »
Exécuter le rapport avec le modèle
- Aller dans Rapports > Rapports sauvegardés
- Cliquer sur « Exécuter » à droite du rapport à exécuter
- Cliquer sur « Exécuter avec le modèle » et choisir le nom du modèle
Télécharger le rapport rendu avec le modèle
Une fois que le rapport a été exécuté avec un modèle, il est possible de télécharger le rendu.
- Aller dans Rapports > Rapports sauvegardés
- Cliquer sur « Exécuter » à droite du rapport à exécuter
- Cliquer sur « Exécuter avec le modèle » et choisir le nom du modèle
- Cliquer sur « Télécharger » et choisir l’option « Modèle rendu »
Le fichier téléchargé sera un fichier HTML simple. Il n’y a pas de mise en page, sauf si celle-ci est incluse dans le modèle.
Voir aussi
Ressources de la communauté Koha
- Koha manual: Running custom reports (anglais)
- Manuel Koha : Exécuter des rapports personnalisés (français)
- Monday Minutes: Creating Customizable Notices with Reports (anglais)
Autres ressources
- Documentation Template Toolkit (anglais)
- HTML Tutorial (anglais)
- Bootstrap 4 Tutorial (anglais)