# Einheiten

> Die Stationen, auf denen ein Modell umgesetzt wird: die Einheitentabelle auf der Seite des Modells, das Hinzufügen und Entfernen einer Einheit, die über die Bildschirme der Definition gewählte Einheit, die Einheit unter Betrieb sowie Alle starten und Alle stoppen.

Eine **Einheit** ist eine Station, auf der ein Modell umgesetzt wird. Jede Einheit führt die ganze Festlegung des Modells aus, mit eigenen Quellen verdrahtet: Ihre Kanäle binden an Tags oder Variablen, sie stempelt die Metadaten des Modells mit einem eigenen Code, und sie folgt den Vorgaben des Modells für Verriegelung, Produktivität und Drucker oder setzt sie außer Kraft. Eine Station zum Prüfstand hinzuzufügen heißt, eine Einheit hinzuzufügen.

Eine Einheit begegnet Ihnen mit Absicht an zwei Stellen. Auf der **eigenen Seite des Modells** ist sie eine Zeile der Tabelle **Einheiten**: was die Einheit ist, neben ihren Geschwistern erklärt (Process verwalten). Unter der Gruppe **Bedienen** des Modells ist sie die Einheit im Einsatz: ob ein Lauf sie besitzt und über welche Einheitenbereiche und Dashboards sie bedient wird (Modelle ansehen, um sie zu öffnen; Abläufe ausführen, um etwas zu starten).

## Die Einheitentabelle auf der Seite des Modells {#the-units-table-on-the-models-page}

Die Karte **Einheiten** steht auf der Seite des Modells zwischen Identität und Struktur, unter der Zeile "Die Stationen, auf denen dieses Modell verwirklicht ist. Jede von ihnen führt die ganze Definition des Modells aus, verdrahtet mit eigenen Quellen." Sie wird nur für Process verwalten gezeichnet: Einer Rolle, die die Struktur nicht ändern darf, wird sie nicht gezeigt, genau wie ihr die Definition nicht gezeigt wird.

Die Karte ist eine Liste mit dem eigenen Bereich der gewählten Einheit daneben (der Trenner dazwischen lässt sich ziehen). Die Liste:

| Spalte | Was sie zeigt |
| --- | --- |
| **Bezeichnung** | Der Name der Einheit, an Ort und Stelle änderbar (ein sicheres Umbenennen, siehe unten). |
| **Kurzzeichen** | Der stabile Kurzcode, an Ort und Stelle änderbar; der Platzhaltertext lautet "keine". |
| **Kanäle** | Wie weit die Einheit verdrahtet ist, am Modell abgelesen: "Noch keine Kanäle", "5 verknüpft, keiner fehlt" oder "4 verknüpft, 1 fehlen" (das letzte in der warnenden Farbe). |
| (Zeilenbefehl) | **Einheit entfernen**, in der Warnfarbe. |

Ein Klick auf eine Zeile öffnet sie in der Spalte **Einheit** rechts. Ohne Auswahl lautet die Spalte "Wählen Sie eine Einheit, und sie öffnet sich hier." oder "Dieses Modell hat noch keine Einheiten. Fügen Sie eine hinzu, und sie öffnet sich hier.", solange das Modell keine hat.

| Feld | Was es ist | Werte / Vorgabe | Wirkung |
| --- | --- | --- | --- |
| **Bezeichnung** | "Der Name, auf den jede Adresse dieser Einheit hört.": der Abschnitt der Einheit in `Process.<Model>.<Unit>`. | Freier Text; "Einheit 1", "Einheit 2", … beim Anlegen. Buchstaben und Ziffern überleben in die Adresse, alles andere wird zu `_`, und einer führenden Ziffer wird `_` vorangestellt. | Das Übernehmen (Eingabetaste oder das Verlassen des Feldes) ist ein abgestimmtes Umbenennen: Die Vorschauzeile sagt, wie viele Stellen die Adresse lesen, und das Übernehmen schreibt sie mit. Ein Name, dessen Abschnitt bereits einer anderen Einheit des Modells zugeordnet ist, wird abgewiesen: "Der Name 'X' bildet auf den Adressabschnitt 'Y' ab, der schon von 'Z' benutzt wird." Ohne Process verwalten und solange die Station gesperrt ist abgeschaltet. |
| **Kurzzeichen** | "Ein stabiles Kurzzeichen, mit dem die sequenziellen Metadaten stempeln, die es enthalten. Die Einheit umzubenennen ändert es nie." | Freier Text, beschnitten; leer heißt keiner. | Jedes fortlaufende Feld, dessen Zusammensetzung einen Teil **Kurzzeichen der Einheit** trägt, druckt ihn, und ein Start, der ein solches Feld abfragt, wird abgewiesen, solange der Code der Einheit leer ist. Dasselbe Feld ist auf dem Bildschirm [Metadaten](process-metadata) änderbar, neben den Zählern, die mit ihm stempeln. |
| **Anmerkungen** | "Alles, was jemand wissen sollte, der an diesem Prüfstand arbeitet. Nur ein Mensch liest es." | Beliebiger Text; leer. | Keine. |

Einheiten werden in der Reihenfolge gelistet, in der sie hinzugefügt wurden; ein Bedienelement zum Umsortieren gibt es nicht.

## Eine Einheit hinzufügen {#adding-a-unit}

**Einheit** am Kopf der Karte Einheiten fügt eine hinzu; ebenso **Einheit hinzufügen** im Rechtsklickmenü der Modellzeile. Beide brauchen Process verwalten und grauen aus, solange die Station gesperrt ist. Die Einheit wird als das erste freie "Einheit N" geboren (das niedrigste N, dessen Name noch keine Einheit des Modells trägt: Sobald die erste Einheit umbenannt ist, ist N wieder 1), in der Liste gewählt, mit offenem Bereich und in den sichtbaren Bereich gerollt, so dass das Benennen das Erste ist, was Sie tun.

Eine neue Einheit bindet noch nichts (ihre Abdeckung lautet "0 verknüpft, 6 fehlen" bei einem Modell mit sechs Kanälen), hat keine Automatik und folgt dem Modell bei ihrem Verriegelungssignal, ihrem Zeitraum und ihren Mengen für die Produktivität und ihren Druckwarteschlangen. Ihre Verknüpfungen werden unter [Kanäle](process-channels) gemacht; ihr Code und ihre Zähler werden unter [Metadaten](process-metadata) gelesen.

## Eine Einheit entfernen {#removing-a-unit}

**Einheit entfernen** reitet auf der Zeile, die es beendet, was geht, ist also die Zeile unter dem Zeiger und nie das, was die Tabelle gerade gewählt hatte. Es bestätigt zuerst: "'X' löschen? Das entfernt die Einheit und alles, was auf ihr konfiguriert ist. Das lässt sich nicht rückgängig machen."

Die Station weist im Aktionsprotokoll ab: "Eine Einheit kann nicht gelöscht werden, solange sie mit einem Laufvorgang beschäftigt ist." und "Eine Einheit kann nicht gelöscht werden, solange ihre Verriegelung gespeichert ist."; das Speichern selbst weist ebenso ab: "Die Einheit 'X' kann nicht entfernt werden, solange sie beschäftigt ist oder eine gespeicherte Verriegelung hat." Eine entfernte Einheit nimmt ihre Verknüpfungen, ihre Automatik, ihre eigenen Mengen und ihre eigenen Druckerplätze mit. Ihre aufgezeichneten Läufe bleiben in den Historien, und ihre Dateien werden nicht angefasst. Nur die gewählte Zeile lässt die Spalte leer, und auch erst, wenn sie wirklich fort ist.

Eine Einheit kann nicht aus Betrieb entfernt werden: Eine Station zu beenden ist Struktur und wohnt dort, wo die Station erklärt wird.

## Eine gewählte Einheit für das ganze Modell {#one-picked-unit-across-the-model}

Welche Einheit gewählt ist, ist eine Antwort für das ganze Modell: Die Einheitentabelle auf der Seite des Modells und die Einheitenliste jedes der fünf Bildschirme der [Definition](process-definition) lesen und schreiben dieselbe Wahl. Der Weg von Kanäle zu Drucker bleibt auf dem Prüfstand, den Sie in der Hand haben. Eine Zeile in der Definitionshälfte eines Bildschirms zu wählen (einen Kanal, ein Feld, die Zeile Externer Stopp, eine Menge, einen Druckerplatz) hebt die gewählte Einheit auf, denn jeder Bildschirm markiert genau eine Zeile. Nichts ist gewählt, bis Sie eine Zeile anklicken, und ein Befund der [Validierung](validation), der Sie zu Kanäle oder Automatik schickt, kommt mit bereits gewählter fehlerhafter Einheit an. Die Wahl gilt je Fenster und wird nicht gespeichert.

## Die Einheit unter Betrieb {#the-unit-under-operate}

Die Auswahl der Gruppe **Bedienen** des Modells öffnet die Einheiten so, wie der Bediener ihnen begegnet, unter "Die Stationen, auf denen dieses Modell läuft. Öffnen Sie eine, um einen Ablauf vorzubereiten, ihn zu starten und einen aufgezeichneten, bewerteten Lauf zu verfolgen.": eine Karte je Einheit mit ihrem laufenden Zustand, in dieser Rangfolge:

| Zustandszeile | Bedeutung |
| --- | --- |
| **Stopp ausgelöst** / **Warten auf Rücksetzung** / **Stoppsignal nicht verfügbar** | Die Stopp-Verriegelung der Einheit, nur gelesen, solange der Externe Stopp des Modells aktiviert ist (siehe [Automatik](process-automation)). |
| **Aufzeichnung** / **Angehalten** / **Wird gespeichert** / **Wird vorbereitet** / **Wird abgeschlossen** | Ein Laufvorgang besitzt die Einheit. |
| **Bereit · Dauerprüfung** / **Bereit · kein Ablauf vorbereitet** | Nichts besitzt sie; die Zeile nennt den vorbereiteten Ablauf, wenn einer vorbereitet ist. |

Ohne Einheit lautet die Wand "Noch keine Einheiten. Fügen Sie eine auf der eigenen Seite des Modells in der Tabelle Einheiten hinzu."

Die Auswahl einer Einheit öffnet ihre eigene Seite: den Kopf "Eine Station, auf der dieses Modell läuft. Öffnen Sie eine Fläche, um einen Ablauf vorzubereiten, ihn zu starten und den Lauf zu verfolgen.", eine Pille mit dem Laufzustand, solange ein Lauf die Einheit besitzt (Aufzeichnung, Angehalten, Wird gespeichert, Wird vorbereitet, Wird abgeschlossen, oder "Wartet darauf, dass die Sollwerte das Gerät erreichen", solange ein auf Warten gestellter Abschnitt eines Rezepts seine Sollwerte noch schuldig ist, wobei die Kopfzeile dann "Noch ausstehend: Furnace, Pump 1" weicht, den Kanälen, die ihre Anlage noch nicht angenommen hat), und eine Karte **Flächen**, "Worüber diese Einheit bedient wird: die Bereiche und Dashboards, die ihr Modell definiert, für diese Einheit gezeichnet. Klicken Sie eines an, um es zu öffnen.", mit einer Kachel je Einheitenbereich und je Dashboard des Modells. Hier wird nichts Konfiguriertes geändert, und die Seite trägt keine Leiste: Das Vorbereiten, Starten und Beobachten eines Laufs geschehen auf den Flächen, beschrieben unter [Betrieb](process-operate).

## Alle starten und Alle stoppen {#start-all-and-stop-all}

Die Leiste der Gruppe Betrieb trägt die zwei Sammelauslöser des Modells. Sie werden nur für Abläufe ausführen gezeichnet.

| Befehl | Was er tut | Ausgegraut, wenn |
| --- | --- | --- |
| **Alle starten** | "Jede Einheit starten, die einen Ablauf vorbereitet hat und jetzt laufen kann. Die anderen werden übersprungen." Eine Einheit kann starten, wenn nichts sie besitzt, die Runtime Vorgänge annimmt, ihre Verriegelung sie nicht sperrt und ein Ablauf auf ihr vorbereitet ist. | Gerade kann keine Einheit des Modells starten; ein Sammelbefehl läuft schon; die Runtime ist gestoppt. |
| **Alle stoppen** | "Jede Einheit stoppen, die gerade läuft. Bereits gestoppte Einheiten bleiben gestoppt." | Keine Einheit läuft; ein Sammelbefehl läuft schon; die Runtime ist gestoppt. |

Die Eignung wird Einheit für Einheit neu gelesen, während der Sammelbefehl läuft, eine Einheit, die ein früherer Start desselben Sammelbefehls ungeeignet gemacht hat (etwa über eine geteilte Schreibquelle), wird also übergangen. Es gibt keinen Gleichlauf, kein gemeinsames Vorbereiten und kein Zurücknehmen: Die Abweisung einer Einheit wird protokolliert und stoppt oder widerruft nie eine andere. Das Protokoll meldet "3 Einheiten gestartet.", "1 Einheit gestoppt." oder "Es konnte keine Einheit gestartet werden." Jeder Lauf, den der Sammelbefehl startet, zeichnet denselben Verantwortlichen auf: den in diesem Fenster angemeldeten Benutzer oder die Station, wenn es niemand ist.

## Was dem Modell folgt, je Einheit {#what-follows-the-model-per-unit}

Drei Themen, die eine Einheit beantwortet, werden auf dem Modell konfiguriert und geerbt, solange die Einheit nicht abweicht. Auf jedem Bildschirm zeigt die gewählte Einheit eine Wahl aus zwei Möglichkeiten, "Folgt der Vorgabe des Modells" oder "Hat eigene …", und daneben die geltende Konfiguration: die eigenen Werte des Modells, schreibgeschützt, solange sie folgt; die eigenen der Einheit, sobald sie sich abgelöst hat.

| Thema | Bildschirm | Was das Ablösen vorbelegt |
| --- | --- | --- |
| Das Signal und die Polarität der Stopp-Verriegelung | [Automatik](process-automation) | Signal und Polarität des Modells, wenn die Einheit nie eigene genannt hat. |
| Der gleitende Zeitraum und die benannten Mengen | [Produktivität](process-productivity) | Der Zeitraum des Modells und eine Kopie seiner Mengen, wenn die Einheit keine eigene Menge hält. |
| Die vier Druckwarteschlangen | [Drucker](process-printers) | Die vier Warteschlangen des Modells, wenn die eigenen vier der Einheit alle leer sind. |

Dem Modell wieder zu folgen löscht nichts, was die Einheit hatte, ein zweites Ablösen gibt es ihr also zurück.

## Was diese Seite nicht tut {#what-this-page-does-not-do}

- Eine Einheit hat keine eigenen Kanäle, Einheitenbereiche oder Dashboards: Sie gehören dem Modell und werden für die Einheit gezeichnet.
- Eine Einheit wird nicht kopiert; kopieren Sie stattdessen das Modell.
- Eine Einheit wird nicht zwischen Modellen verschoben, und ihr Name wird nicht aus dem Baum geändert.
- Alle starten und Alle stoppen sind Auslöser und kein abgestimmter Lauf: Nichts wartet auf etwas anderes.
