# Pannelli di unità su View

> La pila di schede attraverso cui si comanda un'unità di Process, così come appare nella pagina View: come ci arriva, che cosa mostra e permette di fare ogni scheda e quali permessi di Process rispetta.

Un **pannello di unità** è una superficie di Process che sta nella pagina [View](home): le schede che un modello ha disposto per far funzionare le sue unità, disegnate per una sola unità. Non è una dashboard. Nulla in esso è composto su una griglia, nessun editor vi si apre e ogni unità del modello si comanda attraverso le stesse schede, quindi un banco di quattro stazioni identiche si dispone una volta sola. La disposizione si fa sulla riga **Pannelli** del modello nell'area di lavoro di Process ([Pannelli](process-panels)); questa pagina copre il pannello così come lo mostra View.

## Come un pannello arriva su View {#how-a-panel-gets-onto-view}

Ogni pannello di un modello porta un interruttore **Mostra in View** sulla barra della sua riga nell'area di lavoro di Process (richiede il permesso **Gestire Process**). Attivato, il pannello mette una voce per ogni unità del modello nella colonna Visualizzazione, chiamata `Modello · Unità · Pannello` e con l'icona scelta sul pannello, oppure il segno fisso di un pannello quando non ne è stata scelta nessuna. Le voci stanno sotto l'intestazione **Pannelli di unità** dopo le cartelle e i sinottici propri finché non se ne archivia una in una cartella dal menu della sua riga, esattamente come un sinottico proprio; un modello che non ha unità non mette lì nulla. Un **sinottico** di un modello mostrato su View allo stesso modo è un'altra cosa: funziona sull'area di disegno, risolto per la sua unità, ed è trattato in fondo a questa pagina.

La barra del palco nomina la voce con il suo nome intero e offre **Modifica in Process** per un ruolo che può gestire i modelli, che apre la riga propria del pannello nella pagina di Process. **Copia** e **Modifica** non vengono disegnati: non c'è nessun impaginato da prendere. **Espandi** e **Schermo intero** funzionano come su qualsiasi sinottico, e la barra di stato resta attiva.

## Permessi {#permissions}

Per vedere un pannello di unità serve **Consultare i modelli**; la lista di visibilità delle dashboard proprie non si applica. Tutto ciò che comanda l'unità richiede **Eseguire le procedure**, e un ruolo che non lo ha legge l'avviso in cima alla pila: "Qui si può seguire lo stato della prova di questa unità, ma avviarla o condurla richiede il permesso “Eseguire le procedure”." La scheda della prova non disegna allora né la scelta della procedura né i pulsanti del ciclo di vita, la scheda dei comandi singoli non viene disegnata affatto, le voci dei Metadati sono disattivate e un componente di comando dentro una scheda porta il segno del lucchetto con "È richiesto il permesso Eseguire le procedure." nel suo suggerimento. Il permesso **Comandare le dashboard** non ha nessuna parte qui.

Altri due rifiuti vengono dalla stazione invece che dal ruolo, ed entrambi sono detti sulla scheda che ha lanciato il comando: perché la stazione nel suo complesso non accetta operazioni di prova (il runtime fermo: "Runtime fermo") e perché non le accetta questa unità in particolare (una barriera di esecuzione come un interblocco scattato). Chi ha premuto viene registrato a ogni pressione: l'utente connesso su questa connessione, oppure la stazione quando non c'è nessuno.

## La pila {#the-stack}

La voce si apre come una colonna di schede che scorre, nell'ordine in cui il pannello le dispone. Ogni scheda si apre con la stessa testa: il suo nome a sinistra e, a destra, l'unica cosa che la qualifica in questo momento. Una scheda a cui la stazione non dà nulla da mostrare viene lasciata fuori invece di restare vuota: Comandi singoli senza datalog e senza ricetta istantanea da lanciare, Canali su un modello senza nessun canale leggibile, Metadati finché la procedura preparata non chiede nessun campo, la scheda di un sinottico il cui sinottico non c'è più o è ancora vuoto. Un pannello che non disegna nessuna scheda dice: "Questo pannello non disegna alcuna scheda. Scegliere le sue schede nella riga Pannelli del modello, sotto Visualizzazione."

Sopra le schede, e mai tolto dalla disposizione, sta l'**avviso di interblocco** quando l'interblocco di arresto del modello è abilitato: nulla mentre l'unità è normale; un avviso critico mentre è **Scattato**, con il motivo, la sorgente, il suo valore e la sua qualità; un avviso di attenzione mentre è **In attesa di riarmo**, con un pulsante **Riarma** disegnato soltanto per un ruolo che ha Eseguire le procedure. Che cosa sia l'interblocco e come si configuri è in [Automazione](process-automation).

### Prova {#run}

La procedura preparata per il prossimo avvio e i comandi che guidano la prova.

| Elemento | Che cosa mostra o fa |
|---|---|
| Testa, lato destro | Una spia e una parola: **In registrazione** mentre una prova registra, **In preparazione** mentre l'unità è riservata ma non registra ancora, **Non registra** altrimenti. |
| Procedura | Un selettore con "(nessuna)" e ogni procedura del modello. Sceglierne una la prepara per il prossimo Avvia; "(nessuna)" non prepara nulla. Disattivato senza Eseguire le procedure o mentre il runtime è fermo. Una preparazione che la stazione rifiuta (per esempio un insieme di alias che non si può fissare) fa tornare indietro il selettore e dice perché sulla scheda. |
| Avvia, Sospendi, Riprendi, Arresta, Interrompi | I comandi del ciclo di vita, ciascuno in grigio finché la prova non lo può accettare, con un suggerimento che dice che cosa fa: "Avviare su questa unità la procedura preparata", "Congelare la finestra temporale; il datalog continua a registrare", "Togliere la sospensione e far proseguire la finestra", "Terminare la prova in modo pulito e congelarla come storico", "Terminare la prova come interrotta; il blocco di finalizzazione viene comunque eseguito". Sospendi e Riprendi sono disegnati soltanto mentre la procedura preparata è Temporale, perché solo una finestra temporale si può congelare; senza nulla di preparato viene disegnato l'insieme completo. |
| Note sotto i comandi | L'ultimo comando che questa unità ha rifiutato, poi i motivi validi in tutta la stazione e quelli propri dell'unità per cui le operazioni di prova non vengono accettate, finché valgono. |

Che cosa convalida Avvia e che cosa fa ogni comando alla prova sono in [Prove e commenti](process-runs).

### Metadati {#metadata}

Una voce per ogni campo di metadato che la procedura preparata chiede, sotto la riga "Sotto che cosa viene registrata la prossima prova di “Procedura”. Un campo contrassegnato con * è richiesto da ogni procedura." Un campo manuale è un campo di testo, disattivato senza Eseguire le procedure; un campo sequenziale non è mai un campo ma una previsione dell'identificatore che il contatore riserverà all'Avvia (oppure "Riservato all'avvio" finché non si può prevedere), con un suggerimento che dice che un contatore condiviso può muoversi prima di allora. Senza nulla di preparato la scheda legge "Preparare una procedura e qui compaiono i campi che richiede." Ciò che si scrive è preparazione valida per tutta la stazione: un'altra connessione la vede subito.

### Stato della prova {#run-state}

Tre letture: **Stato** (lo stato della prova, oppure "In preparazione" mentre l'unità è riservata, "Inattiva" altrimenti), **Ciclo** ("2 / 10", oppure "Non cicla"), disegnata soltanto mentre la procedura preparata è Temporale, dato che solo una finestra temporale si ripete, e **Esito** (l'esito delle prove raccolte finora, "Nessuno" quando non ce n'è). Finché nessuna prova possiede l'unità, l'esito ancora mostrato è quello dell'ultima prova, e la lettura si chiama allora **Esito dell'ultima prova**, perché non venga mai scambiato per quello della prova che sta per partire. Nulla qui è tinto.

### Commenti {#comments}

La cronologia dei commenti della prova attiva dell'unità, intestata dalla riga che la cronologia scrive di sé (quale prova, oppure che non ce n'è nessuna). Ogni commento mostra la sua ora, la sua fase e il suo testo, con **Modifica** (riscrittura sul posto; Invio salva, Esc annulla) ed **Elimina** (la prima pressione arma la riga con "Eliminare questo commento? L'operazione non è reversibile." e la seconda lo rimuove). La casella **Aggiungere un commento…** e il suo pulsante **Aggiungi** ne accodano uno alla prova attiva. Tutti richiedono Eseguire le procedure; una cronologia bloccata resta leggibile e dice il motivo al gesto. Il comando risponde sulla propria riga di risposta sotto la casella.

### Occorrenze {#occurrences}

Gli episodi di occorrenza attivi e recenti dell'unità, intestati dalla riga propria dell'elenco. Ogni riga porta il nome dell'occorrenza, il suo stato, da quanto tempo è **Attiva**, un orologio di **Perdita di segnale** o **Segnale non disponibile** dove la sorgente è caduta, e il suo messaggio. Un elenco vuoto lo dice. Gli episodi vengono dalle [Occorrenze](process-occurrences) del modello.

### Canali {#channels}

I canali leggibili dell'unità su un unico grafico in tempo reale, ogni serie chiamata come il canale si chiama su questa unità (un alias si vede in tempo reale) e disegnata nel colore e sulle bande che il canale dichiara in [Canali](process-channels). Il grafico porta la fila standard di pulsanti con cui si apre un grafico su un sinottico (ingrandisci un'area, azzera l'ingrandimento, salva e copia un PNG, mostra o nascondi le serie, il suggerimento e lo schermo intero) e una nota sotto il disegno quando la conservazione richiesta non è stata concessa per intero; che cosa fa ogni pulsante è in [Grafici](view-charts).

### Produttività {#productivity}

Le quantità prodotte, i ritmi e il registro degli esiti dell'unità, sotto la riga "Attività di produzione oggi." oppure "Attività di produzione all'interno di N ore." (o giorni). Il lato destro della testa è il periodo: **Oggi** (dalla mezzanotte locale) oppure **Da N h** / **Da N d**, la finestra mobile che il modello dichiara (o che l'unità sostituisce) in [Produttività](process-productivity). Il corpo è composto da tre letture (**Produttività**, **Resa**, **Tempo tipico trascorso**, ciascuna che dice che cosa le manca ancora invece di disegnare un segnaposto: "Nessun riferimento", "Non classificata", "Non misurato"), dal **Registro delle uscite** (una riga per produzione: nome, quantità con la sua unità e il ritmo per ora trascorsa oppure "Nessun tempo trascorso"), dal conteggio degli **Esiti di completamento** (Finalizzate, Conformi, Non conformi, Non concludenti, Non valutate, Interrotte, Non riuscite) e da una sezione a scomparsa **Per procedura** con gli stessi numeri per procedura. Un modello in cui nessuna procedura contribuisce alla produzione dice: "Nessuna procedura contribuisce ancora alla produzione. Abilitare “Uscita di produzione” su una procedura per avviare questi indicatori."; un periodo senza nulla di registrato dice "Nessuna produzione registrata oggi." (o nella finestra).

### Comandi singoli {#single-commands}

"Lanciare un singolo comando isolato su questa unità, fuori da una procedura." Ogni riga è disegnata soltanto dove il modello dichiara la libreria da cui il comando attinge:

| Riga | Controlli | Che cosa fa | In grigio quando |
|---|---|---|---|
| Istantanea | Un selettore di datalog e **Acquisisci** | "Registrare adesso una riga di datalog come prova conclusa negli Storici": una riga del datalog scelto diventa una prova che nasce già conclusa. | Nessun Eseguire le procedure, l'unità è occupata (in preparazione, in prova, sospesa o in salvataggio), l'unità o la stazione rifiuta le operazioni di prova, oppure un'istantanea è già in corso. |
| Valuta adesso | Un selettore di datalog, un selettore di valutazione e **Valuta** | "Acquisire una riga e giudicarla adesso in base alla valutazione"; l'esito viene registrato negli Storici. Disegnata soltanto dove il modello ha sia un datalog sia una valutazione. | Le stesse di Istantanea. |
| Applica una ricetta | Un selettore di ricette istantanee e **Applica** | "Scrivere una volta i setpoint della ricetta attraverso l'unico punto di scrittura (nessuna prova registrata)"; il registro è la traccia. Vengono offerte soltanto le ricette istantanee. | Nessun Eseguire le procedure, l'unità o la stazione rifiuta le operazioni di prova, oppure un'applicazione è in corso. Resta disponibile mentre l'unità è occupata. |

Mentre l'unità è occupata la scheda spiega: "Istantanea e Valuta non sono disponibili mentre questa unità è in preparazione, in marcia, sospesa o in salvataggio. Applica una ricetta resta disponibile durante una prova, ma non mentre l'interblocco tiene l'unità: una catena scattata, una in attesa di riarmo e una la cui lettura non è disponibile lo rifiutano tutte." L'esito di ogni comando arriva nel registro delle azioni della barra di stato ("Istantanea registrata. Vedere gli Storici.", "Valutata. L'esito è registrato negli Storici.", "Ricetta applicata." oppure il rifiuto). I selettori partono dal primo elemento di ogni libreria e conservano la scelta finché la voce resta aperta.

### Un sinottico come scheda {#a-screen-as-a-card}

Un pannello può anche portare uno dei sinottici del modello come scheda, all'altezza scelta sul pannello (da 120 a 1200 px, 320 per impostazione predefinita), intestata dal nome del sinottico. La scheda esegue l'unica definizione di sinottico del modello risolta per questa unità: ogni canale astratto risolto con la sorgente collegata dell'unità. Si scala per riempire la scheda e non scorre mai; scorre la pagina. I suoi comandi seguono la regola di Process detta sopra (soltanto Eseguire le procedure), e un sinottico su cui non c'è nulla viene lasciato fuori.

## Il sinottico di un'unità su View {#a-units-screen-on-view}

Un sinottico di un modello contrassegnato **Mostra in View** sulla sua riga Dashboard mette una voce per unità nello stesso elenco, chiamata `Modello · Unità · Sinottico`. Non è una pila di schede: il palco lo esegue sull'area di disegno come qualsiasi dashboard, risolto per la sua unità, con la preferenza sulla barra di stato e l'icona scelte sul sinottico del modello. I suoi comandi richiedono soltanto Eseguire le procedure, per vederlo serve Consultare i modelli, e si modifica sulla riga Dashboard del modello ([Dashboard di un modello](process-dashboards)), dove si apre lo stesso editor con i canali astratti del modello in testa a ogni elenco di indirizzi.

## Ciò che un pannello di unità non fa {#what-a-unit-panel-does-not-do}

Non viene mai modificato, copiato o riordinato su View, non viene mai archiviato dal modello (soltanto dall'operatore, una voce di unità alla volta) e non porta mai la lista Visibile a. Non registra nulla da solo: un'istantanea, una valutazione o una prova sono registrate attraverso i servizi di Process e si rileggono negli [Storici](histories). E non disegna mai una scheda per cui la stazione non ha nulla, quindi una scheda che manca dalla pila è una scheda senza nulla da mostrare, non una scheda disattivata.
