Instanzdatenbausteine

Instanz-DB sind einem Funktionsbaustein FB direkt zugeordnet. Anders als Global-DB kann auf Instanz-DB nur aus dem zugehörigen Funktionsbaustein zugegriffen werden. Ein Instanz-DB ist sozusagen das Gedächtnis des FB. Ob ein Datenbaustein als Globaldatenbaustein oder Instanzdatenbaustein angelegt wird, wird bei der Erstellung des Datenbausteins festgelegt. Damit ein Datenbaustein als Instanz-DB angelegt wird, muss der Funktionsbaustein bereits existieren.

Wenn ein Instanzdatenbaustein geöffnet wird, können Sie über den Menüpunkt ANSICHT zwischen Datensicht und Deklarationssicht wechseln.

Datensicht Instanz-DB
Datensicht im Instanzdatenbaustein

Der einzige Unterschied besteht hier, dass bei der Datensicht die Aktualwerte eingesehen und geändert werden können. Ansonsten können die Variablen und auch die Anfangswerte eines Instanz-DB nicht deklariert bzw. geändert werden. Denn diese werden im dazugehörigen Funktionsbaustein deklariert und geändert. Die Daten für die Variablen werden dann im Instanz-DB gespeichert. Hierbei kann es zu Inkonsistenzen kommen. Beispiel:

  • Ein Funktionsbaustein FB1 wird erzeugt
  • Die Variablen in FB1 werden deklariert
  • Ein Instanzdatenbaustein DB1 wird erzeugt
  • Die Variablendeklaration im FB1 wird geändert

In diesem Fall ist im FB1 eine andere, aktuellere Variablendeklaration als im DB1. Die Lösung hier ist denkbar einfach. DB1 löschen und neu erzeugen. Somit wäre die Variablendeklaration in beiden Bausteinen wieder konsistent. Eine andere Möglichkeit ist, bei der Zuordnung des Datenbausteins zu einem FB. Dabei wird erkannt, dass DB und FB unterschiedliche Zeitstempel haben und man wird gefragt, ob der DB neu generiert werden soll. Wenn auf ja geklickt wird, wird der DB neu generiert.

Aktualwerte eines Instanz-DB

Die Aktualwerte eines Instanzdatenbausteins können Sie selbst definieren. So haben Sie die Möglichkeit, für einen Funktionsbaustein mehrere Instanzdatenbausteine anzulegen, diesen mehrfach aufzurufen und dabei mit unterschiedlichen Aktualwerten zu versorgen.

Datenbaustein initialisieren

Die Aktualwerte können sich von den Anfangswerten unterscheiden, die im Funktionsbaustein deklariert werden. Wenn die Aktualwerte auf die Anfangswerte zurückgesetzt werden sollen, können Sie dies über den Menüpunkt BEARBEITEN - DATENBAUSTEIN INITIALISIEREN erreichen.