Tamil

Réserves de cours

Les réserves de cours sont des regroupements de documents qui permettent de mettre de côté, de mettre en réserve, un ensemble de documents. C'est par exemple, pour les bibliothèques universitaires ou les bibliothèques d'écoles, le moyen de gérer spécifiquement et pour un temps donné l'ensemble des documents correspondant à la liste de lecture qu'un enseignant ou un département donne à ses étudiants en début d'année. D'autres bibliothèques utilisent les réserves de cours à d'autres fins, pour gérer des expositions temporaires, pour disposer des présentoirs des nouveautés ou thématiques, etc.

Synopsis

  • Cours — Un cours a un nom, un numéro, un département et éventuellement une section et une session (semestre, session d'été...).
  • Enseignants — Un cours est associé à un ou plusieurs adhérents Koha. La fonctionnalité vient des universités américaines, où un même cours est souvent assuré à plusieurs : un enseignant responsable et ses chargés de TD (teaching assistants), des enseignants qui partagent un cours, ou un enseignant par section. Pour une exposition, ce peuvent être les bibliothécaires qui l'organisent ensemble. Inversement, un adhérent peut être associé à plusieurs cours. Ce lien est informatif : il sert à l'affichage et à la recherche des cours ; il ne donne aucun droit à l'adhérent. Un enseignant ne reçoit pas de notification et ne gère pas ses cours depuis l'OPAC.
  • Réserves — On place dans un cours des exemplaires, ou des notices entières sans exemplaire (une ressource électronique par exemple). Un même exemplaire peut figurer dans plusieurs cours.
  • Modification des exemplaires — Pendant qu'un cours est actif, ses exemplaires peuvent prendre un autre type de document, une autre collection, une autre localisation, un autre site propriétaire ou site dépositaire. Koha mémorise les valeurs d'origine et les restaure quand le cours est désactivé. Le type de document permet d'appliquer aux exemplaires en réserve des règles de prêt particulières, un prêt de quelques heures par exemple.
  • OPAC — Les lecteurs consultent la liste des cours actifs, y cherchent un cours et voient le détail de chaque cours avec ses documents. Sur la notice détaillée, le tableau des exemplaires indique les cours auxquels chaque exemplaire appartient.

Paramétrage

Préférence — On active la fonctionnalité avec la préférence système UseCourseReserves. Le module Réserves de cours apparaît alors en PRO et un lien Réserves de cours s'affiche à l'OPAC sous la barre de recherche, à côté de Recherche avancée.

Valeurs autorisées — Deux listes de valeurs autorisées décrivent les cours :

  • DEPARTMENT : les départements auxquels appartiennent les cours (UFR, pôle, école, etc.). Le département est obligatoire : il faut créer au moins une valeur avant de pouvoir créer un cours.
  • TERM : les sessions pendant lesquelles les cours ont lieu. Par exemple, le premier semestre, ou bien la session d'été. Cette liste est facultative.

Valeurs des exemplaires en réserve — Si les exemplaires en réserve doivent être identifiés, ou circuler différemment, on crée au préalable :

  • un ou plusieurs types de document spécifiques et les règles de circulation qui leur correspondent (prêt court, pas de réservation...) ;
  • des valeurs dans les listes de valeurs autorisées LOC (localisation, par exemple Présentoir réserve de cours) et CCODE (collection).

Adhérents — Les enseignants doivent exister comme adhérents dans Koha pour être associés à un cours.

Permissions — La permission principale coursereserves regroupe trois sous-permissions. La cocher les donne toutes ; on peut aussi n'en attribuer que certaines :

  • manage_courses : créer, modifier et supprimer des cours.
  • add_reserves : ajouter des documents aux cours.
  • delete_reserves : retirer des documents des cours.

Créer un cours

Dans Réserves de cours > Nouveau cours, on renseigne :

Champ Description
Département Obligatoire, liste DEPARTMENT.
Numéro du cours Obligatoire.
Section de cours Par exemple un groupe de TD.
Nom du cours Obligatoire.
Session Liste TERM.
Enseignants On cherche les adhérents par leur nom et on les ajoute.
Note interne Visible en PRO seulement.
Note publique Affichée à l'OPAC.
Nombre d'étudiants Information.
Activé ? Un cours activé est affiché à l'OPAC et ses exemplaires sont modifiés (voir plus bas).

En PRO, la page Réserves de cours liste tous les cours, actifs ou non. Un champ de recherche filtre le tableau sur toutes ses colonnes : nom, numéro, département, session, enseignants, etc.

Ajouter et retirer des réserves

Une à une — Sur la page d'un cours, Ajouter des réserves de cours demande le code à barres d'un exemplaire, ou le numéro (biblionumber) d'une notice. Pour un exemplaire, on choisit ensuite les champs à modifier et leur valeur pendant la réserve :

  • type de document (items.itype) ;
  • collection (items.ccode, liste CCODE) ;
  • localisation (items.location, liste LOC) ;
  • site propriétaire (items.homebranch) ;
  • site dépositaire (items.holdingbranch).

Seuls les champs cochés sont modifiés. On peut aussi saisir une note interne et une note publique propres à cette réserve.

Ajout par lot — Sur la page d'un cours, Ajouter des réserves de cours par lot accepte une liste de codes à barres (un par ligne), avec les mêmes champs à modifier pour tous les exemplaires, ou bien une liste de biblionumbers.

Suppression par lot — Le bouton Suppression par lot des réserves de cours se trouve sur la page d'accueil du module Réserves de cours (la liste des cours), à côté de Nouveau cours. Il n'apparaît qu'avec la permission delete_reserves. On y colle une liste de codes à barres, un par ligne :

  • chaque exemplaire est retiré de tous les cours où il figure et pas seulement d'un cours : l'outil ne demande d'ailleurs pas de choisir un cours ;
  • un exemplaire qui n'est plus dans aucun cours reprend ses valeurs d'origine (type de document, localisation...), comme lors d'un retrait un par un ;
  • la page de résultat indique, pour chaque exemplaire, de combien de cours il a été retiré et liste les codes à barres inconnus ou absents de toute réserve ;
  • l'outil ne fonctionne qu'avec des codes à barres : une notice mise en réserve sans exemplaire se retire depuis la page de son cours.

Usage typique : en fin de semestre, on scanne les documents qui reviennent du présentoir de réserve pour les sortir de tous les cours d'un coup.

Retrait depuis la page d'un cours — Sur la page d'un cours, le bouton Supprimer de chaque document le retire de ce cours seulement. Le bouton Supprimer toutes les réserves de cours vide le cours de tous ses documents, après confirmation. Dans les deux cas, il faut la permission delete_reserves ; un exemplaire qui reste dans un autre cours actif garde ses valeurs de réserve.

Notice sans exemplaire — Une notice placée en réserve par son biblionumber figure dans la liste du cours, mais aucun champ n'est modifié : il n'y a pas d'exemplaire à modifier.

Activation et modification des exemplaires

C'est le cœur de la fonctionnalité. Pour chaque exemplaire en réserve, Koha conserve trois choses : les champs à modifier, la valeur à leur donner et la valeur d'origine de l'exemplaire.

  • Activation — Quand un cours est activé (ou qu'on ajoute un exemplaire à un cours actif), Koha sauvegarde la valeur actuelle des champs cochés, puis leur donne la valeur de réserve. L'exemplaire circule alors avec son type de document de réserve, apparaît dans sa localisation de réserve, etc.
  • Désactivation — Quand le cours est désactivé, Koha remet dans l'exemplaire les valeurs sauvegardées.
  • Retrait ou suppression — Retirer un exemplaire d'un cours actif, ou supprimer le cours, restaure aussi ses valeurs d'origine.
  • Plusieurs cours — Un exemplaire présent dans plusieurs cours garde ses valeurs de réserve tant qu'au moins un de ces cours est actif. Il n'est restauré que quand le dernier de ses cours actifs est désactivé. Le paramétrage des champs est commun à tous les cours de l'exemplaire : le modifier dans un cours le modifie pour les autres.

Exemple — Une bibliothèque crée un type de document Réserve, prêtable trois heures et une localisation Salle de réserve. Au début du semestre, elle active le cours Histoire du droit. Ses vingt exemplaires passent au type Réserve et à la localisation Salle de réserve : ils ne sont plus prêtés que trois heures. En fin de semestre, la désactivation du cours leur rend leur type de document et leur localisation d'origine.

Attention au site dépositaire — Le site dépositaire (holdingbranch) change à chaque retour dans un autre site. Si ce champ est modifié par la réserve, la désactivation du cours lui rend la valeur sauvegardée à l'activation, même si l'exemplaire se trouve physiquement ailleurs. Il vaut mieux ne modifier ce champ que si les exemplaires restent dans le même site pendant toute la réserve.

Vie d'un exemplaire en réserve — Le diagramme suivant suit un exemplaire dont la réserve modifie le type de document, la localisation et le site dépositaire, de son ajout au cours à la désactivation du cours, en passant par un prêt :

Flux de données d'un exemplaire en réserve de cours

Ce qu'il faut retenir pour le prêt :

  • Pendant la réserve — L'exemplaire a le type de document de réserve : ce sont les règles de circulation de ce type qui s'appliquent au prêt (durée, renouvellements, réservations...).
  • Au prêt et au retour — Koha met à jour le site dépositaire avec le site où a lieu le prêt, puis celui du retour. Si les préférences UpdateItemLocationOnCheckout ou UpdateItemLocationOnCheckin sont utilisées, la localisation peut aussi changer. Ces changements sont écrasés à la désactivation du cours, si la réserve modifie ces champs.
  • Exemplaire en prêt à la désactivation — Le prêt n'est pas interrompu : sa date de retour, calculée au moment du prêt avec les règles du type de réserve, ne change pas. En revanche, l'exemplaire reprend aussitôt son type d'origine : un renouvellement suit alors les règles de ce type.
  • Modification manuelle — Si un bibliothécaire modifie à la main, pendant la réserve, un des champs gérés par la réserve, sa modification est perdue à la désactivation : Koha remet la valeur sauvegardée à l'activation.

OPAC

  • Liste des cours — Le lien Réserves de cours, sous la barre de recherche, mène à la liste des cours actifs : nom, département, numéro, section, session, enseignants, note publique. Un champ de recherche filtre la liste.
  • Détail d'un cours — Un clic sur un cours affiche sa note publique et ses documents, avec pour chacun la localisation, la cote, la disponibilité, la date de retour et la note publique de la réserve.
  • Notice détaillée — Si des exemplaires d'une notice sont dans des cours actifs, le tableau des exemplaires affiche une colonne Réserves de cours avec un lien vers chaque cours.

En PRO, la notice détaillée indique aussi les cours qui ont mis le titre en réserve.

Exemples d'utilisation

Bibliographie d'un cours, à l'université

C'est l'usage pour lequel la fonctionnalité a été conçue. Un semestre se déroule ainsi :

  1. Quelques semaines avant la rentrée, la bibliothèque demande aux enseignants la liste des titres à mettre à disposition de leurs étudiants, par exemple au moyen d'un formulaire.
  2. La bibliothèque crée les cours, sans les activer, puis y place les exemplaires disponibles. Elle commande les titres manquants ou les demande en PEB, puis les ajoute aux cours à leur arrivée. Un document en ligne, sans exemplaire physique, est ajouté à un cours par son numéro de notice (biblionumber) : par exemple un livre numérique ou un article de revue, catalogué avec son lien en 856. Il figure dans la bibliographie du cours à l'OPAC, avec un lien vers la ressource.
  3. À la rentrée, la bibliothèque active les cours. Les exemplaires rejoignent le présentoir de réserve et passent à un type de document prêtable quelques heures, ou consultable sur place seulement. Les étudiants trouvent à l'OPAC la bibliographie de leur cours, avec la cote et la disponibilité de chaque document.
  4. En fin de semestre, elle désactive les cours. Les exemplaires reprennent leurs valeurs d'origine et retournent en rayon. Les cours sont conservés : il suffit de les mettre à jour et de les réactiver l'année suivante.

L'activation joue un double rôle, ce qui demande un peu d'organisation : elle rend le cours visible à l'OPAC et modifie ses exemplaires. On ne peut donc pas montrer à l'OPAC un cours en préparation sans appliquer déjà les règles de réserve à ses exemplaires. Il vaut mieux préparer les cours inactifs et n'échanger avec les enseignants sur leur contenu qu'en dehors de l'OPAC.

Présentoirs et expositions, en bibliothèque publique

Des bibliothèques utilisent les réserves de cours pour gérer leurs présentoirs : nouveautés, coups de cœur, sélection thématique, exposition saisonnière. Les champs du cours sont détournés :

Réserve de cours Présentoir
Cours Présentoir, par exemple Lectures d'été
Département (DEPARTMENT) Type de présentoir : Nouveautés, Coups de cœur, Table thématique...
Session (TERM) Inutilisée, ou la saison
Enseignants Les bibliothécaires responsables du présentoir
Localisation de réserve Présentoir, pour que lecteurs et personnel trouvent les documents
Type de document de réserve Seulement si la durée de prêt doit changer

L'ajout par lot permet de scanner les documents posés sur le présentoir. Pour un présentoir saisonnier, on désactive le cours en fin de saison : les documents retrouvent leur localisation d'origine et le présentoir est conservé pour l'année suivante. Pour une sélection renouvelée régulièrement, on vide le cours avec Supprimer toutes les réserves de cours, puis on scanne la nouvelle sélection.

Les libellés de Koha parlent de cours, d'enseignants et de départements. Pour un usage en présentoirs, on peut les renommer à l'OPAC avec du JavaScript dans OPACUserJS et en PRO dans IntranetUserJS.

Exemple — Ce code, placé dans OPACUserJS, remplace Réserves de cours par Présentoirs à l'OPAC : dans le lien sous la barre de recherche, dans la colonne du tableau des exemplaires de la notice détaillée et sur les pages des cours. Sur ces pages, il renomme aussi Département en Type et Enseignants en Responsables, entre autres :

$(document).ready(function () {
    // Toutes les pages : lien sous la barre de recherche, colonne du
    // tableau des exemplaires de la notice détaillée
    $('#moresearches a[href$="opac-course-reserves.pl"]').text("Présentoirs");
    $("#item_coursereserves").text("Présentoirs");

    // Liste des cours
    if ($("body").is("#opac-course-reserves")) {
        document.title = document.title.replace(/^[^›]*/, "Présentoirs ");
        $("#breadcrumbs .breadcrumb-item.active a").text("Présentoirs");
        $("#courses h1").text("Présentoirs");
        // En-têtes de colonnes, par DataTables : les colonnes masquées
        // ne sont pas dans la page
        if ($.fn.dataTable.isDataTable("#course_reserves_table")) {
            var table = $("#course_reserves_table").DataTable();
            var titre = function (colonne, texte) {
                $(table.column(colonne).header()).find(".dt-column-title").text(texte);
            };
            titre(1, "Type");
            titre(2, "Numéro");
            titre(5, "Responsables");
        }
        $("#course_reserves_table_wrapper input[type=search]").attr("placeholder", "Rechercher un présentoir");
    }

    // Détail d'un cours : le nom du cours, entre apostrophes, est conservé
    if ($("body").is("#opac-course-details")) {
        document.title = document.title.replace(/^[^']*/, "Présentoir ");
        $('#breadcrumbs a[href$="opac-course-reserves.pl"]').text("Présentoirs");
        $("#breadcrumbs .breadcrumb-item.active a, #course_reserves h1").text(function (i, texte) {
            return texte.trim().replace(/^[^']*/, "Présentoir ");
        });
        var libelles = {
            "Département :": "Type :",
            "Numéro du cours :": "Numéro :",
            "Section de cours :": "Section :",
            "Enseignants :": "Responsables :"
        };
        $("#course_reserves .label").text(function (i, texte) {
            texte = texte.replace(/\s+/g, " ").trim();
            return libelles[texte] || texte;
        });
        $("#course-items-table_wrapper input[type=search]").attr("placeholder", "Rechercher dans le présentoir");
    }
});

Quelques explications :

  • Chaque élément à renommer est repéré par son id ou sa classe dans les gabarits de l'OPAC : #moresearches pour les liens sous la barre de recherche, #item_coursereserves pour la colonne de la notice détaillée, #breadcrumbs pour le fil d'Ariane, etc. Les deux pages des réserves de cours sont reconnues à l'id de leur balise <body> : opac-course-reserves (liste) et opac-course-details (détail).
  • Les en-têtes du tableau des cours sont modifiés par l'intermédiaire de DataTables, la bibliothèque qui gère les tableaux de l'OPAC : une colonne masquée dans la configuration des tableaux n'est pas dans la page, ce qui décalerait les numéros de colonnes si on les cherchait directement. Seul le titre de la colonne (.dt-column-title) est remplacé, pour conserver le bouton de tri.
  • Sur la page d'un cours, le titre et le fil d'Ariane contiennent le nom du cours entre apostrophes : le code ne remplace que ce qui précède.
  • Les libellés des informations du cours (Département :...) n'ont ni id ni classe propre : ils sont remplacés d'après leur texte français. Sur un OPAC dans une autre langue, ou si un libellé change d'une version de Koha à l'autre, il faut adapter la liste libelles.
  • Les noms des présentoirs, de leurs types et de leurs responsables sont ceux saisis en PRO : il n'y a rien à remplacer.

Tableaux paramétrables

Les colonnes de quatre tableaux se règlent dans Administration > Configurer les colonnes :

  • Réserves de cours > courses > course_reserves_table : la liste des cours en PRO ;
  • Réserves de cours > reserves > course_reserves_table : les documents d'un cours en PRO ;
  • OPAC > course_list > course_reserves_table : la liste des cours à l'OPAC ;
  • OPAC > course_items > course-items-table : les documents d'un cours à l'OPAC.

Les tableaux des exemplaires de la notice détaillée ont aussi une colonne Réserves de cours que l'on peut masquer : holdings_table et otherholdings_table en PRO, holdingst à l'OPAC.

Tables

Les réserves de cours sont stockées dans quatre tables de la base de données :

  • courses : les cours.
  • course_instructors : les enseignants (adhérents) de chaque cours.
  • course_items : un enregistrement par exemplaire (ou par notice) en réserve, quel que soit le nombre de ses cours. Il contient, pour chacun des cinq champs modifiables, la valeur de réserve (itype...), l'indicateur de modification (itype_enabled...) et la valeur d'origine sauvegardée (itype_storage...), ainsi que enabled, qui vaut yes quand au moins un de ses cours est actif.
  • course_reserves : le lien entre un cours et un course_items, avec la note interne et la note publique de la réserve.

Tables des réserves de cours