# Dossiers d'équipements

> Les dossiers sous un pilote : les créer, les renommer et les retirer, y ranger des équipements, la limite de deux niveaux, la page d'un dossier, et comment un dossier devient un niveau de l'adresse Logic.

Un **dossier** regroupe des équipements sous un même pilote dans la colonne Communications, sur deux niveaux au plus. Sur le bus, il ne change rien : la scrutation, les liaisons Process et l'espace de noms OPC UA public ne le voient jamais. C'est en revanche un niveau de l'**adresse** qu'emploient Logic et les tableaux de bord, si bien que ranger un équipement est un changement d'adresse, et l'application réécrit chaque référence à votre place. Les dossiers existent pour tous les pilotes sauf Modbus RTU et MQTT, dont les équipements sont rangés par leur ligne série ou leur broker ; sous Generic serial and TCP et SCPI instruments, seuls les équipements hors ligne série prennent des dossiers, un équipement sur une ligne série étant rangé par sa ligne. Voir les dossiers demande Voir Connector ; chaque commande de dossier demande Configurer Connector.

## Créer un dossier {#creating-a-folder}

| Geste | Où il atterrit |
| --- | --- |
| **Nouveau…** > `<Pilote>` > **Nouveau dossier** dans le pied de colonne | Au niveau du pilote lui-même. Proposé sous chaque pilote ajouté dont les équipements prennent des dossiers, donc chaque pilote sauf Modbus RTU et MQTT. |
| **Nouveau…** > `<Pilote>` > `<Dossier>` > **Nouveau sous-dossier** dans le pied de colonne | Dans ce dossier, comme second niveau. Proposé sur un dossier du premier niveau seulement. |
| **Nouveau dossier** sur la barre d'un dossier ouvert, ou dans son menu du clic droit | À l'intérieur de ce dossier, en deuxième niveau. Sur un dossier de deuxième niveau, la barre le grise (« Ce dossier est déjà aussi profond que les dossiers s'imbriquent. ») et le menu le grise de la même façon. |
| Clic droit sur un équipement > **Déplacer vers** > **Un nouveau dossier** | Au niveau du pilote, et l'équipement y entre dans le même geste. |
| Clic droit sur un équipement > **Déplacer vers** > **Un nouveau sous-dossier ici** | Proposé seulement pour un équipement déjà dans un dossier de premier niveau ; crée le sous-dossier et y déplace l'équipement. |

Un nouveau dossier s'appelle « Nouveau dossier » (puis « Nouveau dossier 2 », et ainsi de suite), la branche au-dessus s'ouvre, et sa ligne se change aussitôt en champ de nom : tapez le nom et pressez Entrée pour valider ; quitter le champ conserve le nom « Nouveau dossier ». Le dossier reste là, vide, jusqu'à ce qu'on y range quelque chose. Il est enregistré comme créé, si bien qu'il survit aux rechargements et au départ de son dernier équipement, et tant qu'il existe, son pilote ne peut pas être retiré. Le journal des actions indique « Dossier « Nouveau dossier » créé. »

## La page d'un dossier {#the-folder-page}

L'en-tête porte le nom du dossier et, pour un dossier vide, « Un dossier organise la liste et rien d'autre. Ajoutez un équipement ici, ou déplacez-en un depuis l'arborescence. » ; sinon « Regroupe 3 équipements dans cette arborescence. Un dossier organise la liste et rien d'autre. Sélectionnez un équipement à l'intérieur pour l'examiner et le modifier. » Le tableau liste les équipements rangés **directement** ici (les sous-dossiers sont des lignes de l'arborescence, pas de ce tableau) : **Équipement**, **Endpoint** (l'URI de base), **Tags**, et une action **Ouvrir**. Vide : « Aucun équipement n'est rangé directement ici. Ajoutez-en un, ou déplacez-en un depuis l'arborescence. »

### La barre de commandes {#the-command-bar}

| Commande | Ce qu'elle fait | Grisée quand (situation) | Non dessinée quand (rôle) |
| --- | --- | --- | --- |
| **Nouveau dossier** | Crée un sous-dossier ici et ouvre son champ de nom. | Un essai retient la station, le runtime est arrêté, un balayage ou un appairage est en cours (« Terminez le balayage ou l'appairage en cours avant d'ajouter quoi que ce soit. »), ou ce dossier est déjà au deuxième niveau. | Sans Configurer Connector. |
| **Renommer le dossier** | Change la ligne du dossier en champ de nom. | Un essai retient la station ou le runtime est arrêté. | Sans Configurer Connector. |
| **Retirer le dossier** (encre de danger, à droite) | Vide le dossier vers le niveau du pilote et le retire. | Les mêmes. | Sans Configurer Connector. |

### Sur la page {#on-the-page}

Ce qui fait grandir le tableau du dossier se trouve à droite du titre de ce tableau, au-dessus des lignes qu'il ajoute.

| Commande | Emplacement | Ce qu'elle fait | Grisée quand (situation) | Non dessinée quand (rôle) |
| --- | --- | --- | --- | --- |
| **Nouvel équipement** | À droite du titre **Équipements**. | Crée « Nouvel équipement » dans ce dossier, mis en évidence dans ce tableau et amené dans la zone visible. Sous Matter, il ouvre à la place le formulaire d'appairage sur la page du pilote, et l'équipement appairé est rangé dans ce dossier. | Un essai retient la station, le runtime est arrêté, ou un balayage ou un appairage est en cours (« Terminez le balayage ou l'appairage en cours avant d'ajouter quoi que ce soit. »). Sous Matter, aussi tant qu'aucun réseau ne sert à l'appairage (« Ajoutez d'abord le réseau que l'équipement doit rejoindre. »). | Sans Configurer Connector. |

Le menu du clic droit sur une ligne de dossier propose Nouvel équipement, Nouveau dossier, Renommer le dossier et Retirer le dossier ; sur un dossier de deuxième niveau, Nouveau dossier reste là, grisé avec la même raison que sur la barre.

## Renommer un dossier {#renaming-a-folder}

Le renommage range de nouveau chaque équipement à l'intérieur, sous-dossiers compris, par la même réécriture de références qu'emploie le renommage d'un équipement, puis déplace l'enregistrement du dossier lui-même ; le journal des actions indique « Dossier « Meters » renommé en « Utilities ». 4 références mises à jour. » Un nom est refusé quand il est vide ou contient `/` (« Un dossier doit porter un nom, et un nom ne peut pas contenir « / ». »), quand un dossier voisin le porte déjà (« Il existe déjà un dossier nommé « Meters » ici. » : fusionner deux dossiers est un déplacement, et cela se demande comme tel), ou quand un équipement de même niveau possède le segment d'adresse vers lequel le nom pointe (« Le nom de dossier « Pump 1 » correspond au segment d'adresse « Pump_1 », déjà utilisé par l'équipement « Pump-1 » à côté. »). Les noms de dossiers se comparent sans tenir compte de la casse, et la première orthographe vue est celle que montre l'arborescence ; ne changer que la casse reste un vrai renommage, parce que l'adresse change.

Si un équipement à l'intérieur ne peut pas être déplacé (une modification en attente qui ne s'enregistre pas, une réécriture refusée), le renommage s'arrête là et dit jusqu'où il est allé : « Le renommage du dossier « Meters » s'est arrêté après 2 sur 5 équipements : … Les équipements déjà déplacés restent dans « Utilities ». »

## Retirer un dossier {#removing-a-folder}

Retirer le dossier demande d'abord. Pour un dossier vide : « Retirer le dossier « Meters » ? ». Sinon : « Retirer le dossier « Meters » ? Ses 3 équipements reviennent sous Simulated. Rien n'est supprimé ; chaque référence suit automatiquement les nouvelles adresses. » Chaque équipement à l'intérieur, sous-dossiers compris, revient au niveau du pilote lui-même par la réécriture des références, et l'enregistrement du dossier s'en va avec : « Dossier « Meters » retiré. 3 équipements sont revenus au niveau du pilote. 4 références mises à jour. » Retirer ne supprime jamais un équipement.

## Déplacer un équipement {#moving-a-device}

Faites un clic droit sur un équipement et ouvrez **Déplacer vers**. Le sous-menu liste **Un nouveau dossier**, **Un nouveau sous-dossier ici** (quand l'équipement est au premier niveau), puis, après un séparateur, **Sous `<Pilote>`** (grisé quand l'équipement est déjà au niveau du pilote) et chaque chemin de dossier existant de ce pilote sauf celui de l'équipement. Le déplacement enregistre d'abord toute modification en attente sur l'équipement, réécrit chaque référence aux anciennes adresses de ses tags, et rapporte « « Pump » a été déplacé dans « Utilities/Meters » ; 4 références mises à jour. » ou « « Pump » a été sorti de son dossier. » Un équipement sur une ligne série, quel que soit son pilote, ne reçoit aucun Déplacer vers. Copier l'équipement pose toujours la copie au niveau du pilote lui-même, quel que soit le dossier de l'original. La page de l'équipement n'a pas de champ de dossier : le rangement est une commande de l'arborescence.

## Le dossier dans l'adresse {#the-folder-in-the-address}

Un équipement rangé sous `Utilities/Meters` adresse ses tags par `Connector.<Pilote>.Utilities.Meters.<Équipement>.<Tag>` ; chaque segment de dossier est assaini comme tous les autres (les caractères qui ne sont ni des lettres ni des chiffres deviennent des tirets bas, et un chiffre en tête en reçoit un devant). La clé de bus `<Pilote>.<Équipement>:<Tag>` reste exactement ce qu'elle était, si bien que le serveur intégré, une liaison Process en cours et un client OPC UA externe ne remarquent rien quand un équipement est rangé. Comme l'adresse est le chemin de l'arborescence, un équipement déplacé dans un dossier dont l'orthographe ne diffère que par la casse rejoint le dossier déjà dessiné au lieu d'en ouvrir un second. Les deux identités sont expliquées sur [Connector](connector#wire-key-and-address-the-two-identities-of-a-tag).

## Les dossiers dans l'arborescence {#folders-in-the-tree}

Une ligne de dossier montre son nombre d'équipements (« 2 équipements », ou « vide ») et un point d'état de santé récapitulé sur chaque équipement en dessous, sous-dossiers compris ; un équipement désactivé est neutre et ne fait jamais passer le dossier à l'orange ni au rouge. La zone de recherche correspond aussi aux noms de dossiers, et un dossier qui correspond garde visible tout ce qui est dessous. Sous les pastilles Sains, Anomalies et Arrêt, un dossier est dessiné quand quelque chose à l'intérieur passe. Un dossier vide n'a rien à l'intérieur qui puisse passer : la zone de recherche vide, il n'est dessiné que sous Tous, et avec une recherche saisie il est dessiné sous n'importe quelle pastille quand le texte correspond à son propre nom ou au nom du dossier ou du pilote au-dessus de lui. Les dossiers viennent d'abord sous leur pilote, dans l'ordre des noms, avant les équipements rangés au niveau du pilote lui-même.

## Ce que les dossiers ne font pas {#what-folders-do-not-do}

Un dossier n'a aucun réglage propre : pas de description, pas d'icône, pas de règle de scrutation ni d'état de santé par dossier. Rien n'adresse un dossier lui-même ; un dossier vide ne publie aucune adresse. Les dossiers ne s'imbriquent pas au-delà de deux niveaux, ne se partagent pas entre pilotes, et n'existent pas sous Modbus RTU ni sous MQTT, ni sur une ligne série.
