Beispiel: Bibliothek mit Bausteinen inkl. Hilfe-Dateien erstellen

Falls Sie eine eigene Bibliothek mit Bausteinen erstellen, wollen Sie möglicherweise auch eine externe HTML-Bausteinhilfe in die Bibliothek inkludieren. Falls sich der Anwender über den Baustein aus der Bibliothek informieren will, kann der Anwender somit die lokale HTML-Hilfe für den Baustein öffnen, um sich über den Baustein zu informieren. Bedingungen für das erfolgreiche Öffnen der Bausteinhilfe sind:

  1. das Erzeugen der externen Bausteinhilfe
  2. die Definition der Dateien für die externe Bausteinhilfen in der Bibliothekskonfiguration – mit Hilfe der Anweisung FILE := ...
  3. die korrekte Ablage dieser Hilfedateien in der Bibliothek – Diese korrekte Ablage wird durch das Schlüsselwort SOURCEPATH in der Bibliothekskonfiguration erreicht. Siehe "Deklaration des Inhalts für die Bibliothek", falls Sie Informationen zu diesem Schlüsselwort benötigen.

Das folgende Beispiel einer Bibliothekskonfiguration illustriert die erforderliche Ablage der Dateien für die externe Bausteinhilfe.

Beispiel einer Bibliothekskonfiguration mit externer Bausteinhilfe

Das folgende Beispiel bewirkt, dass die erzeugte Bibliothek:

LIBRARY com.Musterfirma.Controller   (* Die komprimierte Bibliothek wird mit dem Namen 'com.Musterfirma.Controller__1.1.0-SNAPSHOT.zip' erstellt. *)
  VERSION := 1.1.0-SNAPSHOT;
  PACKAGETYPE := zip;
  FOLDER "Motors"   (* Die komprimierte Bibliothek enthält den Ordner 'Motors' und den Unterordner 'Testing'. In der ZIP-Datei existiert also: FOLDER\Motors\Testing *)
    IEC := com.Musterfirma.Controller.Motor1;  (* Unter 'Motors" werden die Dateien 'com.Musterfirma.Controller.Motor1' und 'com.Musterfirma.Controller.Motor2' enthalten sein. *)
    IEC := com.Musterfirma.Controller.Motor2;  
    FILE := ".olh\com.Musterfirma.Controller.Motor1.DE.html", SOURCEPATH := "src/";     (* Die Dateien für die externe Bausteinhilfen zu 'Motor1' und 'Motor2' - in Deutsch. *)
    FILE := ".olh\Motor1.png", SOURCEPATH := "src/";
    FILE := ".olh\com.Musterfirma.Controller.Motor2.DE.html", SOURCEPATH := "src/";
    FILE := ".olh\Motor2.png", SOURCEPATH := "src/";
    FILE := ".olh\style.css", SOURCEPATH := "src/";
    FOLDER "Testing"                           (* Unter 'Testing" werden die Dateien 'com.Musterfirma.Controller.Test1' und 'com.Musterfirma.Controller.Testr2' enthalten sein. *)
      IEC := com.Musterfirma.Controller.Test1; 
      IEC := com.Musterfirma.Controller.Test2;
      FILE := ".olh\com.Musterfirma.Controller.Test1.DE.html", SOURCEPATH := "src/";     (* Die Dateien für die externe Bausteinhilfen zu 'Test1' und 'Test2' - in Deutsch. *)
      FILE := ".olh\Test1.png", SOURCEPATH := "src/";
      FILE := ".olh\com.Musterfirma.Controller.Test2.DE.html", SOURCEPATH := "src/";
      FILE := ".olh\Test2.png", SOURCEPATH := "src/";
      FILE := ".olh\style.css", SOURCEPATH := "src/";
    END_FOLDER
  END_FOLDER
  BINARY_LIBRARIES FOR BuiltInPlc    (* Die Bibliothek wird außerdem noch einige Binaries, Include- und Source-Dateien enthalten. *)
    FILE := "libs\mathlib.lib";
  END_BINARY_LIBRARIES
  BINARY_OBJECTS FOR BuiltInPlc
    FILE := "libs\mathlib.o";
  END_BINARY_OBJECTS
  INCLUDES
    FILE := "h\mathlib.h";
  END_INCLUDES
  SOURCES
    FILE := "code.c" , SOURCEPATH := "c";
  END_SOURCES
END_LIBRARY

Details, warum die Dateien für die externe Bausteinhilfe so angegeben werden:

  • Jede Anweisung FILE := ..., die im obigen Beispiel einer der Anweisungen IEC := ... nachfolgt, nennt eine Datei für die externe Bausteinhilfe. Dies sind jene HTML-Dateien, PNG-Dateien und CSS-Dateien, die beim Erzeugen der externe Bausteinhilfe entstanden sind.
  • Diese Dateien wurden im Projekt in einem Ordner .olh erzeugt, der parallel zum ST- oder FBS-Objekt liegt und standardmäßig nicht im Projektexplorer sichtbar ist.
    Beispiel: Liegt das ST-/FBS-Objekt im Ordner src des Projekts, wurden die Dateien im Ordner src\.olh des Projekts erzeugt. Wenn die Bibliothek erzeugt wird, sollen also die Dateien aus diesem Ordner src\.olh verwendet werden.
  • Die Dateien für die externe Bausteinhilfe dürfen in der erzeugten Bibliothek aber nicht im Ordner Motors\src\.olh abgelegt werden, sondern im Ordner Motors\.olh\ – Daher wird das Schlüsselwort SOURCEPATH mit dem zusätzlichen Pfad src verwendet. Nun wird die jeweilige Datei zwar im Ordner src\.olh  des aktuellen Projekts gesucht, aber im Ordner .olh parallel zum ST-/FBS-Objekt in der Bibliothek abgelegt. 

    Gut zu wissen

    (grey lightbulb) Aufgrund einer Anweisung FILE := "src\.olh\com.Musterfirma.Controller.Motor1.DE.html"; würde die HTML-Datei zwar im Ordner src\.olh\ des Projekts gesucht/gefunden, aber dann im Ordner Motors\src\.olh\ für die Bibliothek abgelegt. Da das ST-/FBS-Objekt im Ordner Motors liegt, würden die Dateien für die externe Bausteinhilfe nicht in einem Ordner .olh vorhanden sein, der parallel zum ST-/FBS-Objekt liegt. In Folge wäre das Öffnen der Bausteinhilfe nicht erfolgreich.