> For the complete documentation index, see [llms.txt](https://docs.augelab.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.augelab.com/german/funktionsblocke/blocks-reference/data-logic/referencing/data-write-global.md).

# Data Write Global

Dieser Funktionsblock speichert eingehende Daten in einem globalen Datenspeicher, auf den das gesamte Szenario zugreifen kann. Verwenden Sie ihn, um Werte, Bilder oder strukturierte Daten zwischen verschiedenen Teilen Ihres Systems zu teilen oder einen einfachen globalen Zustand zu erstellen.

## 📥 Eingänge

`Generic` — Eingangssteckdose, die beliebige Daten akzeptiert, die in den globalen Speicher geschrieben werden sollen.

## 📤 Ausgänge

Dieser Funktionsblock liefert keine Ausgänge.

## 🕹️ Steuerungen

`Data Key` — Textfeld, in das Sie den Schlüssel (Key) eingeben, unter dem die Daten im globalen Speicher abgelegt werden. Die Steuerung bietet Vorschläge basierend auf vorhandenen globalen Schlüsseln, sodass Sie Schlüssel wiederverwenden oder überschreiben können.

## ⚙️ Ausführungs‑mechanismus

* Beim Ausführen liest der Block den Wert am Eingang `Generic` und den Text im Feld `Data Key`.
* Ist ein Eingabewert vorhanden, schreibt der Block diesen Wert im globalen Speicher unter dem gewählten `Data Key` weg.
* Der globale Speicher ist szenarioübergreifend sichtbar. Wegen dieser globalen Sichtbarkeit kann die Verwendung dieses Blocks implizite Schleifen oder Abhängigkeiten erzeugen; der Block garantiert keine strikte Datenflussreihenfolge.

## 🎯 Funktionen

* Persistentes, szenarioweites Teilen von Werten, Bildern oder komplexen Daten.
* Key-Autocomplete hilft Tippfehler zu vermeiden und ermutigt zur Wiederverwendung vorhandener Schlüssel.
* Einfache Möglichkeit, Informationen zwischen weit auseinanderliegenden Teilen eines Flows zu übertragen, ohne direkte Verbindungen.

## 📝 Nutzungshinweise

1. Geben Sie den Wert, den Sie speichern möchten, an die Eingangssteckdose `Generic`.
2. Geben Sie im Feld `Data Key` einen Namen ein oder wählen Sie einen vorhandenen Schlüssel aus, um das gespeicherte Element zu identifizieren.
3. Führen Sie das Szenario aus. Der Wert ist für jeden anderen Block verfügbar, der denselben Schlüssel aus dem globalen Speicher liest.

## 💡 Tipps und Tricks

* Rufen Sie den gespeicherten Wert später mit dem Block `Data Read Global` ab.
* Für kurzlebige oder schleifenlokale Freigaben verwenden Sie stattdessen `Data Write Local` und `Data Read Local`.
* Um zu vermeiden, dass leere Werte geschrieben werden, kombinieren Sie mit `Is None` oder `Replace None` vor dem Schreiben.
* Fügen Sie Zeitstempel hinzu, indem Sie mit `Date-Time` oder `Date-Time List` arbeiten, wenn Sie protokollierte Werte benötigen.
* Für Protokollierung oder Export-Workflows koppeln Sie mit `Data to JSON` und `CSV Export`, um Daten zu serialisieren und zu speichern.
* Bei Bilddaten erwägen Sie zusätzlich `Image Logger` oder `Image Write`, um Bilder auf Datenträger zu persistieren.
* Nutzen Sie `Logic Input`, um zu steuern, wann geschrieben wird (z. B. nur bei einem Trigger), und `Debug Input`, um Werte während der Entwicklung zu inspizieren.
* Wenn ein Wert eingefroren werden soll, damit er sich nicht bei jedem Lauf ändert, verwenden Sie `Data Memory`, um zu steuern, wann Aktualisierungen stattfinden.

## ⚠️ Vorsichtsmaßnahmen

* Globaler Speicher kann implizite Abhängigkeiten erzeugen. Vermeiden Sie exzessive globale Schreibvorgänge für häufig aktualisierte Daten in leistungs- oder zeitkritischen Abläufen.
* Namenskollisionen können auftreten, wenn mehrere Blöcke versehentlich denselben Schlüssel verwenden. Verwenden Sie konsistente, beschreibende Schlüssel und verlassen Sie sich auf die Autocomplete-Funktion, um Fehler zu minimieren.
