Recherche BPU
Pour savoir ce dont vous disposez, ouvrez Paramètres → Modules : la liste des modules activés y figure. Les activations sont faites par l'équipe Stratt selon votre abonnement ; une demande d'extension passe par le support.
C’est le cas d’usage premier du module. Avant de lancer un marché, l’acheteur vérifie ici si un accord-cadre couvre déjà le besoin — et chaque résultat porte de quoi décider sans ouvrir la fiche : le prix et sa date de valeur, le titulaire, l’échéance, la capacité restante.
L’écran est accessible sous Conformité → Recherche BPU, à l’adresse
/bpu/recherche, et depuis le bouton Rechercher une prestation de la liste
des accords-cadres.
Ce qui est cherché
La recherche porte sur la désignation des lignes de bordereau. Pas sur la référence du marché, pas sur le nom du titulaire, pas sur l’objet de l’accord-cadre : ces critères-là se traitent depuis la liste des accords-cadres, dont le champ de recherche accepte « Référence, intitulé ou titulaire… ».
La saisie part d’elle-même après une courte pause de frappe, sans qu’il faille valider. Deux comportements à connaître :
- deux caractères minimum. Une seule lettre remonterait la moitié du catalogue pour une réponse que personne ne lit ; l’écran affiche alors « encore une lettre » plutôt que de rester muet ;
- la touche Entrée force la recherche sans attendre la pause.
Pluriels, formes fléchies, préfixes
Deux mécanismes sont combinés, parce qu’aucun ne suffit seul.
Le premier est une recherche plein texte en français : elle ramène les formes fléchies d’un même mot à une racine commune. « allée » trouve « allées », « tonte » trouve « tontes ». Le second est une correspondance sur fragment de mot, que le plein texte ignore et qu’un utilisateur tape volontiers dans une barre de recherche. Le classement privilégie le premier, plus pertinent.
La dérivation n’est pas franchie. « désherbage » et « désherber » ne se rencontrent pas : leurs racines diffèrent. Et surtout, la recherche ne rapproche pas encore « désherbage » de « entretien des espaces verts » — deux façons de nommer la même prestation, dont une seule figure au bordereau. C’est la moitié du besoin qu’une recherche sémantique couvrira ; en l’état, il faut essayer une formulation voisine, et l’écran le dit quand il ne trouve rien.
Les filtres
| Filtre | Valeurs | Par défaut |
|---|---|---|
| Statut | Tous sauf résiliés · Actifs uniquement · Échus · Suspendus | Tous sauf résiliés |
| Inclure les lignes désactivées | oui / non | non |
| Unité | Toutes, puis les unités présentes dans les résultats | Toutes |
| Trier par | voir ci-dessous | Pertinence |
Par défaut, la recherche ne montre donc que ce sur quoi on peut effectivement commander : les lignes actives des accords non résiliés. Les deux premiers filtres servent à demander explicitement l’inverse — vérifier un prix ancien, retrouver une ligne retirée du catalogue.
Le filtre Unité n’apparaît que s’il y a matière à choisir, et sa liste est calculée sur l’ensemble des résultats, pas sur la page affichée : un filtre qui s’appauvrirait à mesure qu’on charge la suite serait trompeur.
Trier
| Choix | Effet |
|---|---|
| Pertinence | les meilleures correspondances d’abord, puis l’ordre alphabétique |
| Prix croissant / Prix décroissant | par prix unitaire HT |
| Prix le plus récent | par date de valeur décroissante |
| Échéance la plus proche | par date de fin de l’accord-cadre |
Trier par prix suppose une unité fixée. Comparer 4,80 €/m² à 118,50 €/tonne n’a aucun sens : dès que le catalogue grossit, un classement par prix sur plusieurs unités produit un ordre qui ne veut rien dire. L’écran s’en aperçoit et le signale — il nomme les unités mélangées et invite à en choisir une. Le même raisonnement explique le badge moins cher décrit plus bas.
Lire un résultat
Le tableau porte six colonnes : Prestation, Prix HT, Accord-cadre, Titulaire, Échéance, Consommé.
- Prestation — la désignation, et le numéro de lot en dessous quand il y en a un.
- Prix HT — le prix unitaire, l’unité, et la date de valeur sur la ligne suivante. Les prix unitaires sont affichés jusqu’à quatre décimales : certains bordereaux cotent au dixième de centime.
- Échéance — le statut de l’accord-cadre, remplacé par « Expire dans N j » lorsque la fin est à moins de quatre-vingt-dix jours, et par « Échu depuis N j » au-delà du terme.
- Consommé — le taux d’engagement de l’accord-cadre, ou « sans plafond » quand il n’a pas de montant maximum. C’est un signal utile : une ligne au bon prix sur un marché consommé à 98 % n’est pas une ligne sur laquelle on peut commander.
Le badge moins cher signale le prix le plus bas parmi les résultats affichés de la même unité — ce n’est pas « le meilleur prix du catalogue », et l’infobulle le précise. Il n’apparaît pas quand une seule ligne porte cette unité : désigner comme meilleure une offre qui n’est comparée à rien serait une information vide.
Le panneau de comparaison
Cliquer une ligne ouvre à droite un panneau qui répond à la question suivante : ce prix est-il bon ? Il porte :
- le prix en grand, l’unité, la date de valeur et le taux de TVA ;
- l’écart relatif avec la meilleure offre affichée dans la même unité, quand la ligne n’est pas elle-même la meilleure ;
- la référence de l’accord-cadre, son intitulé, son titulaire, son statut, son échéance et son taux de consommation ;
- le classement de tous les prix affichés dans cette unité, du plus bas au plus haut, chacun avec sa référence de marché et sa date de valeur. Chaque entrée est cliquable : on passe d’une offre à l’autre sans fermer le panneau.
Une mention rappelle ce que le classement ne fait pas : « Les prix sont comparés bruts, sans actualisation : vérifiez les dates de valeur avant de conclure qu’une offre est meilleure. » Deux prix séparés de quatre ans peuvent ne différer que de l’inflation.
Le bouton Ouvrir le bordereau mène à la fiche de l’accord-cadre, onglet Bordereau déjà ouvert et ligne mise en évidence. Sans ce lien, repérer une prestation dans un bordereau de deux cents entrées revient à la chercher à la main.
Sélectionner pour estimer
Les cases à cocher de la première colonne alimentent une sélection. Cocher n’ouvre pas le panneau : ce sont deux gestes différents.
Dès qu’une ligne est cochée, une barre flottante apparaît en bas de l’écran. Elle annonce le nombre de lignes retenues, un total en prix unitaires — la somme des prix, sans quantités, et l’infobulle insiste sur le mot — et propose Ajouter à une estimation.
Deux choses en découlent :
- la case d’en-tête Tout cocher porte sur les résultats affichés, jamais sur le catalogue entier ;
- la sélection survit au changement de page. On peut cocher deux lignes ici, en cocher trois autres dans le bordereau d’un marché, et verser le tout dans la même estimation. C’est le cas normal : une estimation mélange couramment plusieurs accords-cadres.
En revanche la sélection n’est pas conservée d’une session à l’autre. C’est un panier avant validation : le retrouver trois jours plus tard, à moitié constitué sur un catalogue qui a bougé, poserait plus de questions qu’il n’en résoudrait. Ce qui doit durer est l’estimation, qui vit en base.
La suite est décrite dans Estimations.
Chercher par famille d’achat
Les lignes de bordereau rattachées à un code de nomenclature sont aussi interrogeables par ce code, sans terme de recherche. C’est ce qui alimente l’encart Prix déjà négociés sur cette famille d’une fiche de code : il répond à la question qu’on se pose devant un code d’achat — a-t-on déjà un prix négocié là-dessus ?
L’encart ne s’affiche que si au moins une ligne y est rattachée. Une section vide sur chaque fiche serait du bruit permanent. Le rattachement se fait à l’import, par la colonne du code de nomenclature, ou ligne à ligne.
Quand il n’y a rien
Le vide est une réponse utile, et l’écran la formule comme telle : « Aucun accord-cadre ne couvre « le terme saisi » ». Aucun prix déjà négocié ne répond au besoin, donc une procédure se justifie — et un raccourci est proposé vers la création d’un marché.
Avant de conclure, il reste à écarter les deux fausses absences : une formulation voisine que la recherche ne rapproche pas, et un filtre resté actif d’une recherche précédente.
Cloisonnement
La recherche traverse tout le catalogue de l’organisation, et jamais au-delà. Lorsqu’un rôle restreint la portée d’un agent à certains services, la recherche applique cette restriction : sans quoi elle serait la porte de sortie du cloisonnement — un agent restreint y lirait les prix négociés des autres directions, et la référence de leurs marchés avec. Les accords-cadres sans service porteur restent visibles de tous, comme dans les listes.
Permissions requises
procurement.read suffit : l’écran ne modifie rien. Verser une sélection dans
une estimation demande procurement.write.
Limites connues
- Pas de recherche sémantique. Voir l’encart plus haut : c’est la limite qui se remarque le plus à l’usage.
- La désignation seule est indexée. Un terme présent uniquement dans l’intitulé du lot, la référence de la ligne ou l’objet du marché ne ressort pas.
- Deux cents résultats au maximum. Les résultats se chargent par tranches de cinquante, et le bouton Afficher N résultats de plus cesse d’en apporter au-delà de deux cents lignes pour une même recherche : au-delà, il faut resserrer le terme ou poser un filtre.
- Aucune actualisation des prix. Les écarts affichés sont des écarts bruts entre des prix qui peuvent porter des dates de valeur éloignées.
- Les lignes d’un accord-cadre résilié sont invisibles par défaut et par le filtre de statut, qui ne propose pas « Résilié ». Elles restent lisibles depuis la fiche de l’accord-cadre.