Zum Ende der Metadaten springen
Zum Anfang der Metadaten

Sie zeigen eine alte Version dieser Seite an. Zeigen Sie die aktuelle Version an.

Unterschiede anzeigen Seitenhistorie anzeigen

« Vorherige Version anzeigen Version 8 Nächste Version anzeigen »

Mithilfe der Datensatzvorlagen können Datensätze auf Basis einer Strukturdefinition, Formularmaske oder auch anderen Tabelle erstellt werden. Sobald eine Datensatzvorlage für eine Datenbanktabelle definiert wurde, erscheint in der Toolbar der Datensatzliste die neue Schaltfläche Mit Vorlage anlegen. Ein Klick auf diese Schaltfläche öffnet einen Modal mit den innerhalb der Vorlage definierten Eingabefeldern.

Zuordnen einer Datensatzvorlage

Eine Datensatzvorlage muss der gewünschten Zieltabelle über die Tabellenkonfiguration zugeordnet werden. Diese Konfiguration wird innerhalb der widget.json des Pakets hinterlegt.

Konfiguration in widget.json
{
  "name": "Example/Package",
  "tables": [
    {
      "identifier": "ExampleEntityIdentifier",
      // [...]
      "configuration": {
        // Einer der folgenden Angaben
        "FrameworkTemplateTemplate": "definition:[Pfad zur Strukturdefinition]",
        "FrameworkTemplateTemplate": "repository:[Identifikator der Tabelle]",
        "FrameworkTemplateTemplate": "mask:[ID der Formularmaske]"
      }
    }
  ],
  "relations": []
}

Zuordnen mehrere Datensatzvorlagen

Es können auch mehrere Datensatzvorlagen in einer Zieltabelle definiert werden. Bei mehreren Datensatzvorlagen wird die Schaltfläche in der Toolbar in ein Dropdown umgewandelt um alle Datensatzvorlagen für die Zieltabelle anzuzeigen.

Konfiguration in widget.json
{
  "name": "Example/Package",
  "tables": [
    {
      "identifier": "ExampleEntityIdentifier",
      // [...]
      "configuration": {
        "FrameworkTemplateTemplate": {
          "[Identifikator]": "definition:[Pfad zur Strukturdefinition]",
          "[Identifikator]": "repository:[Identifikator der Tabelle]",
          "[Identifikator]": "mask:[ID der Formularmaske]"
        }  
      }
    }
  ],
  "relations": []
}

Jeder Datensatzvorlage muss ein eindeutiger Identifikator zugeordnet werden welcher innerhalb des Codes und für die Übersetzung der Datensatzvorlage genutzt wird. Der anzuzeigende Name der Datensatzvorlage wird aus den Übersetzungen für das Paket der Zieltabelle bezogen. Hierbei wird als ID der Übersetzung das Schema FrameworkTemplate[Identifikator] genutzt.

Definition einer Datensatzvorlage

Eine Datensatzvorlage kann eine Strukturdefinition, eine Formularmaske oder auch eine Datenbanktabelle sein. In allen Fällen muss allerdings den Eingabefeldern der Vorlage vorgegeben werden, wie diese sich in die Zieltabelle einfügen. Diese Konfiguration findet pro Eingabefeld in der entsprechend Feldkonfiguration statt.

Direkte Zuordnung von Eingabefeld aus Vorlage zu Eingabefeld in Zieltabelle
{
  "FrameworkTemplateTarget": "[Identifikator des Eingabefeldes in Zieltabelle]"
}
Zuordnung von Feldern einer Datensatzauswahl (ForeignKey) zu Feldern in Zieltabelle
{
  "FrameworkTemplateMapping": {
    "[Feld in Tabelle der Datensatzauswahl]": "[Feld in Zieltabelle]"
  }
}

Programmatische Eingriffsstellen (Events)

KlassennameBeschreibung
\Brandbox\FrameworkTemplate\Template\Template\Lib\Event\OnExecuteCreateErmöglicht den Eingriff in das Erstellen des Zieldatensatzes durch die Datensatzvorlage. Hier können bspw. weitere Werte in den zu erstellenden Zieldatensatz geschrieben werden.
\Brandbox\FrameworkTemplate\Template\Template\Lib\Event\OnPopulateCreateErmöglicht den Eingriff in das Formular der Datensatzvorlage. Hier können bspw. Werte von Eingabefeldern gesetzt werden oder Eingabefelder hinzugefügt werden.

Rollenschemata

NameBeschreibungDatenzugriffeFunktionsrechte
Template Operator (TemplateOperatorScheme)Gibt die notwendigen Funktionsrechte für die Datensatzvorlagen frei.keineDie Engine-Methoden von Template/Template
  • Keine Stichwörter