Vérification
La page de santé de la configuration : ce que la station analyse dans les procédures, la logique et les tableaux de bord, chaque constat qu'elle peut rapporter et sa formulation, ce qu'une ligne ouvre, le badge de la barre de navigation, et pourquoi rien ne se répare ici.
La page Vérification liste ce sur quoi la station ne peut pas s'appuyer : une liaison de voie, un
verrouillage, un champ d'automatisme, une expression, un script ou une condition de Logic, ou un
composant de tableau de bord qui désigne un tag, une variable, une procédure ou une adresse que la
station n'a plus, une action de Process dont un essai n'a pas pu émettre la paperasse telle qu'elle est configurée, et une procédure que le démarrage d'un essai refuserait. C'est l'entrée Vérification au pied de la barre de navigation, elle
s'ouvre pour une identité qui détient la permission Voir la vérification, et elle répond à
/validation. C'est une page qui défile, dessinée sur toute la largeur parce que chaque constat est
une phrase. Elle est la sœur de l'état de santé du runtime dans la barre d'état : celui-là dit si la
station lit, celle-ci dit si la configuration se résout encore.
La page rapporte; elle ne répare jamais. Une ligne ouvre l'éditeur auquel appartient le défaut, sur l'entité qui le porte, et la réparation est votre modification là-bas.
La carte d'état
La carte du haut est toute la réponse de la page sur la configuration, et le seul endroit où une station saine est annoncée :
| État | Point | Titre | Détail |
|---|---|---|---|
| Saine | Vert | Rien à réparer | Chaque référence des procédures, de la logique et des tableaux de bord se résout, chaque procédure démarrerait, et chaque action a ce qu'il lui faut pour sortir. |
| Constats | Ambre | N éléments à réparer (« 1 élément » pour un seul) | Rien ne se répare ici. Une ligne ouvre l'éditeur auquel appartient le défaut, sur l'entité qui le porte. |
La carte porte la seule commande de la page, Relancer le contrôle (infobulle : « Contrôler de nouveau toute la configuration maintenant. La liste s'actualise aussi d'elle-même dès que quelque chose change. »). Elle est grisée pendant qu'un contrôle est en cours. Comme un contrôle qui trouve la même chose laisse la liste exactement telle qu'elle était, le résultat est rapporté dans le journal des actions de la barre d'état : « Contrôle terminé : rien à réparer. », « Contrôle terminé : N éléments à réparer. », ou « Échec du contrôle : raison ».
Vous avez rarement besoin de Relancer le contrôle. Le vérificateur est toujours actif, sur la station, et refait le contrôle de lui-même 750 millisecondes après toute rafale de modifications sur l'une des surfaces qu'il lit : les équipements, les lignes et les tags de Connector; les modèles de Process; les ressources; les variables, les actions et les alarmes de Logic; les tableaux de bord; les modèles d'étiquette; les mises en page de rapport. La page et le badge de la barre de navigation suivent le résultat. Un contrôle que Connector traverse pendant qu'il fait entrer ou sortir des équipements (une actualisation de pilote, un équipement en cours d'ajout) est repris une fois Connector stabilisé, pour qu'une référence ne soit jamais dite brisée simplement parce que son équipement est en vol.
Les groupes
Les constats sont groupés par la surface à laquelle ils appartiennent, dans un ordre fixe. Un groupe qui ne contient rien n'est pas dessiné, donc une station qui a un seul défaut de tableau de bord montre un seul groupe.
| Groupe | Genres de constat | La ligne sous le titre |
|---|---|---|
| Process | Les liaisons (liaisons de voie, verrouillages, automatisme), les procédures et les occurrences qu'elles arment, et la paperasse des actions | N éléments. Des liaisons de voie, des verrouillages et des automatismes d'unité qui nomment un tag, une variable ou une procédure que la station n'a plus, des procédures qu'un démarrage refuserait, et des actions dont un essai n'a pas pu émettre la paperasse telle qu'elle est configurée. |
| Logic | Variables d'expression, actions, alarmes | N éléments. Des expressions, des scripts d'action et des conditions d'alarme qui lisent une adresse qui ne se résout plus. |
| Tableaux de bord | Composants | N éléments. Des composants dont les propriétés désignent une adresse qui ne se résout plus. Ils se dessinent, mais ne lisent rien. |
Une ligne
Chaque ligne est un constat, et elle dit de quoi elle parle sans rien ouvrir :
- Un glyphe pour le genre : une unité pour une liaison de Process, une marque d'impression pour la paperasse d'une action, la marque de composition écrite pour une procédure, un drapeau pour une occurrence, les marques de variable, d'action et d'alarme de l'arbre de Logic, la marque de tableau de bord pour un composant.
- Le nom de l'entité, puis son type quand le type dit quelque chose que le nom ne dit pas (un composant que l'intégrateur n'a jamais nommé retombe sur son genre, et la ligne n'indique pas « Cadran Cadran »), puis « dans emplacement » quand il y en a un.
- Le constat : pour un champ qui nomme une cible, « Champ désigne
référence, qui n'existe plus. » avec la référence en chasse fixe; pour un champ que le runtime ne peut pas employer, « Champ : ce qui ne va pas. » - Un chevron à droite : la ligne ouvre quelque chose. L'infobulle de la ligne et son nom accessible sont la phrase entière plus l'endroit où le clic aboutit (« Ouvrir l'unité dans Process. », « Ouvrir l'action dans Process. », « Ouvrir la procédure dans Process. », « Ouvrir l'occurrence dans Process. », « Ouvrir le composant dans l'éditeur. », « Ouvrir la variable dans Logic. », « Ouvrir l'action dans Logic. », « Ouvrir l'alarme dans Logic. »).
Chaque constat que le contrôle peut produire
La formulation ci-dessous est celle de la page. Une référence montrée sous la forme tag:… ou
var:… est l'identité stockée d'un tag ou d'une variable qui n'existe plus; une clé montrée en
texte est la clé stockée d'une liaison.
Process : liaisons de voie
Type « Liaison de voie »; nom : le nom de la voie (ou « (voie supprimée) »); emplacement : « Modèle · Unité ». Ouvre l'écran Voies du modèle sur l'unité.
| Champ | Formulation |
|---|---|
| Tag | désigne la clé de tag stockée, qui n'existe plus |
| Variable | désigne la clé de variable stockée, qui n'existe plus |
Process : verrouillages
Type « Verrouillage »; nom : le nom de l'unité; emplacement : « Modèle · Unité ». Une unité est jugée sur ce qu'elle observe réellement : sa propre source, ou celle du modèle par défaut quand elle suit le modèle. Ouvre l'écran Automatisme du modèle sur l'unité.
| Champ | Formulation |
|---|---|
| Source | elle suit le modèle, dont le réglage par défaut ne nomme aucune source booléenne. |
| Source | aucune source booléenne n'est configurée. |
| Source | un Tag et une Variable sont tous deux sélectionnés. |
| Tag | désigne tag:…, qui n'existe plus |
| Tag | un tag DateTime n'est pas convertible en booléen. (également les tags Guid et ByteString) |
| Variable | désigne var:…, qui n'existe plus |
| Variable | une variable DateTime n'est pas convertible en booléen. (également les variables Image, Icône et Couleur) |
Les trois premiers ne sont rapportés que tant que le verrouillage d'arrêt du modèle est activé.
Process : automatisme
Type « Automatisme »; nom : le nom de l'unité; emplacement : « Modèle · Unité ». Seul un automatisme activé est jugé : un automatisme désactivé ne pilote rien et se retire de la liste. Ouvre l'écran Automatisme du modèle sur l'unité.
| Champ | Formulation |
|---|---|
| Commandes | aucune source de démarrage n'est configurée. |
| Procédure | la Procédure fixe n'est pas disponible. (sélection fixe) |
| Sélecteur | un constat de source (plus bas), pour une source entière |
| Code de sélecteur n | il sélectionne une Procédure qui a été supprimée. |
| Source Démarrer, source Arrêter, et ainsi de suite, une par source de commande | un constat de source, pour une source booléenne |
| Métadonnées | une correspondance remplit une Procédure ou un champ qui a été supprimé. |
| Métadonnées « champ » | un constat de source (numérique pour un champ numérique; booléen, entier, réel, texte ou date pour les autres), ou : ce champ ne prend pas en charge la génération automatique. |
| Retour Ready, retour Active, retour SelectedCode, retour CommandResult | désigne tag:…, qui n'existe plus; ou : le Tag dans lequel il écrit n'est pas inscriptible. / il exige un Tag booléen. (Ready, Active) / il exige un Tag entier. (SelectedCode, CommandResult) |
Un constat de source est l'un de ceux-ci : « aucune source n'est configurée. », « un Tag et une Variable sont tous deux sélectionnés. », « le Tag qu'il lit a été retiré (tag:…). », « le Tag qu'il lit n'est pas lisible. » (le tag est désactivé ou en écriture seule), « un tag type n'est pas compatible ici. », « la Variable qu'il lit a été retirée (var:…). », « une variable type n'est pas compatible ici. ». La compatibilité suit le rôle du champ : une source booléenne a besoin d'un tag ou d'une variable booléenne; une source entière d'un type entier; une source numérique d'un type entier ou réel; une source de métadonnées de n'importe quel type booléen, entier, réel, texte ou date.
Process : procédures
Type « Procédure »; nom : le nom de la procédure; emplacement : le nom du modèle. Le jugement passe par le portail même que franchit le démarrage d'un essai, donc une procédure que cette liste dit exécutable est une procédure que le banc accepte. Ouvre la page propre à la procédure.
Le portail rédige ces refus en anglais, et la ligne les cite tels quels, quelle que soit la langue de la station.
| Champ | Formulation |
|---|---|
| La composition | An evaluation judges over recorded rows. This procedure carries one but no datalog. |
| La composition | Occurrence 'name' watches recorded samples. This procedure arms it but has no datalog. |
| La composition | Nothing to run: this procedure references neither a datalog nor a recipe. |
| La composition | Instant mode needs an instant recipe (or none). A temporal profile has no single tick. |
| La composition | Controlled mode needs an instant recipe (or none). Setpoints apply at Start, safe-state at Stop. |
| La composition | Temporal mode needs a duration. Set one. |
| La composition | Temporal mode needs a temporal recipe (or none). An instant set has no timeline. |
| La composition | The recipe profile (N ms) is longer than the temporal window (M ms). |
| La composition | Occurrence 'name' watches 'Channels.channel', which this procedure's datalog does not record. |
| La composition | Un refus portant sur ce qu'un essai terminé apporte à la production, ou sur une valeur de recette qui n'atteint pas la voie qu'elle vise, dans les mots de l'éditeur qui en est propriétaire. |
Process : occurrences
Type « Occurrence »; nom : le nom de l'occurrence; emplacement : le nom du modèle. Seule une occurrence armée par une procédure est lue, et elle l'est une seule fois quel que soit le nombre de procédures qui l'arment, car la condition est unique et la correction aussi. Ouvre la page propre à l'occurrence.
| Champ | Formulation |
|---|---|
| La condition | Le refus de la condition elle-même, dans les mots de l'éditeur d'occurrences : une référence de voie que ce modèle n'a pas, une condition illisible, une condition qui renvoie autre chose qu'un Bool, ou deux voies qui aboutissent au même nom. Il est écrit en anglais lui aussi. |
Une condition qui tient toute seule et qui ne peut pourtant pas être jugée, parce que le datalog de la procédure laisse de côté la voie qu'elle surveille, est un constat sur cette procédure : le datalog est le choix de la procédure.
Process : paperasse des actions
Type « Action »; nom : le nom de l'action; emplacement : le nom du modèle. Le jugement est le même que celui dont la page propre à l'action tire son avis « À revoir », donc une action dite prête là-bas est prête ici. Ouvre la page propre à l'action.
| Champ | Formulation |
|---|---|
| Commandes | Ajoutez une commande : cette action n'émet encore rien. |
| Commande n · Étiquette au démarrage, Commande n · Rapport à la fin, et ainsi de suite | La première remarque à propos de cette commande, puis « (k de plus sur cette commande) » quand il y en a d'autres. Une commande qui porte plusieurs remarques demeure une seule réparation, faite sur une seule page, donc c'est une seule ligne. |
Les remarques qu'une commande peut porter, dans l'ordre où elles se réparent :
- Sélectionnez au moins un verdict de fin. (une commande à la fin sans aucun verdict coché)
- Choisissez un rapport. / Le rapport sélectionné n'existe plus.
- Choisissez un modèle d'étiquette. / Le modèle a été effacé ou supprimé; les correspondances stockées sont conservées. / Le modèle global sélectionné n'existe plus.
- Le modèle sélectionné n'a pas encore de commandes d'imprimante; écrivez-les ou importez-les avant qu'un essai n'atteigne cette commande.
- Les marqueurs du modèle ne peuvent pas être lus : erreur
{{marker}}a besoin d'une source. /{{marker}}est mis en correspondance plus d'une fois.{{marker}}: choisissez une source / cette source n'est pas disponible au démarrage / sélectionnez un champ du catalogue de métadonnées de ce modèle / sélectionnez un critère dans l'une des évaluations de ce modèle / fixez un cycle explicite à partir de zéro, de 0 à n / retirez les décimales de cette source de date et d'heure / employez le format par défaut pour cette source numérique / les décimales doivent être entre 0 et 9 / retirez le formatage numérique ou de date de cette source de texte{{marker}}a été retiré du modèle actuel; retirez sa correspondance stockée.
Logic
Aucun emplacement : les genres de Logic sont au premier niveau. Une ligne par adresse distincte qui ne se résout pas, avec l'adresse écrite comme l'expression l'écrit. Seules les variables d'expression sont analysées; une variable de mémoire n'a aucune expression à lire.
| Type | Champ | Formulation |
|---|---|---|
| Variable d'expression | Expression | désigne address, qui n'existe plus |
| Action | Script | désigne address, qui n'existe plus |
| Alarme | Condition | désigne address, qui n'existe plus |
Tableaux de bord
Type : le genre du composant tel que l'éditeur le nomme (Cadran, Graphique linéaire, Valeur…); nom : le nom saisi pour le composant, sinon sa légende, sinon ce que l'éditeur en dérive; emplacement : le nom du tableau de bord. Une ligne par champ d'adresse, donc un composant dont la valeur et dont la couleur lisent deux points retirés compte deux réparations.
| Champ | Formulation |
|---|---|
| Adresse, Adresse d'accent, Série n° 2 › Adresse, et tout autre champ d'adresse du genre (une liste imbriquée se lit comme son chemin) | désigne address, qui n'existe plus |
Seuls les champs d'adresse sont lus, et seulement une valeur qui s'analyse comme une adresse enracinée comptant au moins un segment : un libellé qui contient « Process.Presse 1.Température » est du texte, pas une référence, et n'est jamais rapporté. La même adresse dans le même champ est un seul constat. Les vues définies sur un modèle de Process sont écartées : elles lient des voies par un substitut d'unité, et aucun point ne répond à ces adresses tant qu'une unité n'ouvre pas la vue.
Ce qu'une ligne ouvre
| Genre | Ouvre | Où cela aboutit |
|---|---|---|
| Composant | Le tableau de bord en mode édition (/d/{dashboard}?edit=true&focus={component}) |
Avec le composant sélectionné et ses propriétés affichées, là où l'adresse se retape. Modifier demande la permission Modifier les tableaux de bord; sans elle, le tableau de bord s'ouvre en consultation. |
| Liaison de voie | L'espace de travail Process (/process?focus={unit}&screen=channels) |
L'écran Voies du modèle, avec la ligne de cette unité choisie et chaque dossier au-dessus déplié. |
| Verrouillage, Automatisme | L'espace de travail Process (/process?focus={unit}&screen=automation) |
L'écran Automatisme du modèle, avec la ligne de cette unité choisie. |
| Paperasse d'action | L'espace de travail Process (/process?focus={action}&screen=action) |
La page propre à l'action dans la colonne. |
| Procédure | L'espace de travail Process (/process?focus={procedure}&screen=procedure) |
La page propre à la procédure dans la colonne. |
| Occurrence | L'espace de travail Process (/process?focus={occurrence}&screen=occurrence) |
La page propre à l'occurrence dans la colonne. |
| Variable d'expression, Action, Alarme | La page Logic (/logic?focus={id}) |
L'entité sélectionnée dans son éditeur, avec sa section de l'espace d'adressage dépliée. |
Ouvrir vous dépose sur le défaut; la page de destination applique ensuite ses propres permissions à la modification (Gérer Process sur les écrans de Process, Configurer Logic dans Logic). Une entité qui ne se résout plus quand la page arrive (supprimée entretemps) est ignorée, et la page s'ouvre là où elle s'ouvrirait normalement.
Le badge de la barre de navigation
L'entrée Vérification de la barre de navigation porte une pastille de prudence avec le nombre d'éléments à réparer, « 99+ » au-delà de quatre-vingt-dix-neuf, et aucune pastille tant que la configuration est saine. Le compte est celui du vérificateur, tenu à jour en arrière-plan par le même contrôle que la page suit, donc il bouge à mesure que vous modifiez sur n'importe quelle page, sans que cette page soit ouverte.
Ce que la page ne fait jamais
- Elle ne répare rien : aucune reliaison, aucune suppression, aucun changement de nom. Chaque ligne est une ouverture; il n'y a pas d'autre action sur une ligne, et aucune action de lot.
- Elle ne juge jamais le runtime : un équipement qui ne communique pas relève de l'état de santé de la barre d'état, pas d'un constat ici. Une référence à un tag qui existe mais qui lit une mauvaise qualité se résout.
- Elle ne rapporte jamais un automatisme désactivé, une vue définie sur un modèle, du texte libre qui ressemble à une adresse, une variable de mémoire, ni une deuxième remarque et les suivantes d'une même commande d'action (le compte dit combien d'autres attendent sur cette page).
- Elle ne lit jamais une occurrence qu'aucune procédure n'arme, et ne liste jamais deux fois la même occurrence armée, quel que soit le nombre de procédures qui l'arment : une condition est une correction.
- Elle n'analyse jamais pendant que Connector est en pleine transition; elle attend et mesure une seule fois.
- C'est la même liste sur chaque écran, dans la fenêtre de la station comme dans un navigateur, et la même pour toute identité qui peut l'ouvrir : la permission contrôle la page, pas ses lignes.
- Tant que le runtime est arrêté, la page cède la place à l'avis de mise en pause comme toute page; le badge garde son dernier compte.