Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.

...

Um Einstellungen zu definieren, sollte parallel zu der config.json des Views auch eine Datei liegen, die "StructureDefinition.json" benannt ist. Beispiel: View/PrintParagraph/views/paragraph/StructureDefinition.json. Die Struktur der Datei sollte dem Schema der structur.json folgen.

Es ist mmöglich, einen Quelldatensatz in der StructureDefinition.json zu definieren. Falls ein Quelldatensatz definiert wurde, wird in der Bearbeitenansich des Elements in den Einstellungen ein Auswahlfeld dargestellt, mit dem es möglich ist einen Datensatz auszuwählen, zu erstellen oder zu bearbeiten.

Quelldatensätze werden für die Verarbeitung im View mit den Settings zusammengeführt. Der Quelldatensatz überschreibt die Felder der Einstellungen, bei denen der Identifier in der widget.json und der StructureDefinition.json gleich sind. Das wird technisch mit einem array_merge gemacht.

Um einen Quelldatensatz zu definieren, erstellt man zuerst eine neue Datenbanktabelle und legt entsprechend auch eine widget.json an. Danach fügt man in der StructurDefinition.json ein Feld mit dem Identifier source an und definiert es als Input/ForeignKey aus die neu angelegte Tabelle. Das Feld source wird nun automatisiert mit den Einstellungen und dem Element verarbeitet.

Codeblock
languagejs
themeRDark
titleBeispiel
{
    "identifier": "source",
    "label": "i18n:View/MyViewPackage.TranslationKey",
    "type": "Select",
    "configuration": {
        "source": "Input/ForeignKey.editable",
        "relation": {
            "repository": "MyRepositoryIdentifier"
        }
    }
}


...