Datensätze selektieren

Datensätze selektieren

Hinweis: Diese Features sind Teil der Visforms Subscription und in der freien Visforms Version nicht enthalten.

Für ein besseres Verständnis empfehlen wir die Dokumentation vollständig durchzulesen und mit dem Abschnitt Einleitung zu beginnen.
Zusammenhänge, die in früheren Abschnitten der Dokumentation erklärt wurden, werden hier nicht wiederholt.

Das Plugin ermöglicht es Ihnen spezifische Datensätze für die Anzeige zu selektieren.
Die konkrete Datensatzauswahl erfolgt allein mithilfe des Plugin-Parameters fieldselect.

Dies erfolgt anhand der folgenden Werte:

  • Werte von Formular-Feldern, die der Benutzer für ein beliebiges Formular-Feld übermittelt hat,
  • Werte von Overhead-Feldern, die als zusätzliche Meta-Informationen in der Daten-Tabelle des Formulars gespeichert werden.

Formular-Felder

Sie benötigen im Formular Felder, die eindeutige Werte enthalten. Mit diesen eindeutigen Werten können Sie dann für die Daten-Selektion verwenden.

Dazu gehören etwa:

Anders als alle anderen Plugin-Parameter erwartet der Parameter fieldselect selbst wieder eine Auflistung von Name-Wert Paaren. Die Auflistung von Name-Wert Paaren muss ebenfalls den Syntaxregeln für Plugin-String entsprechen. Mehr dazu in: Formulardaten im Beitrag.

Als Name verwenden Sie die ID des Feldes über dessen Werte selektiert wird. Als Wert können Sie entweder einen eindeutigen Feldwert angeben, etwa gruen oder 3. Oder Sie können ausgewählte Variablen verwenden, etwa für die URL der aktuellen Seite oder den Benutzernamen des angemeldeten Benutzers.

Der folgende fieldselect Parameter ist Teil des Plugin-Strings und bewirkt das Folgende.
Es werden nur Datensätze angezeigt, die die Zahl 1 im Formular-Feld mit der ID 1 stehen haben und den Wert gruen im Formular-Feld mit der ID 5.

"fieldselect":{"1":"1","5":"gruen"}

Hinweis: Für ein im Parameter fieldselect verwendetes Formular-Feld muss die Anzeige des Formular-Feldes im Frontend in der Feld-Konfiguration auf dem Reiter Datennutzung im Frontend erlaubt sein.

Mehr zur Anzeige des Formular-Feldes im Frontend in der Feld-Konfiguration der Datenanzeige .

Für das im Parameter fieldselect verwendete Formular-Feld ist eine der folgenden Anzeige-Optionen notwendig:

  • Feld-Konfiguration » Reiter: Datennutzung im Frontend

    Gruppe: Frontend-Datenanzeige-Einstellungen » Parameter: Datenanzeige im Frontend = “Liste und Details”.
    Gruppe: Frontend-Datenanzeige-Einstellungen » Parameter: Datenanzeige im Frontend = “Nur in Liste”.
    Gruppe: Frontend-Datenanzeige-Einstellungen » Parameter: Datenanzeige im Frontend = “Nur in Details”.

Durchsuchbarkeit und Sichtbarkeit des Feldes

Das ist selbst dann der Fall, wenn Sie das Formular-Feld in der Datenansicht nicht anzeigen und es nur als Steuerfeld für die Daten-Selektion im Parameter fieldselect verwenden. Das Formular-Feld selbst wäre also in diesem Fall gar nicht enthalten im Parameter fieldlist. Ist die Anzeige des Formular-Feldes im Frontend nicht erlaubt, wird es im Parameter fieldselect ignoriert und für die Daten-Selektion nicht ausgewertet.

Overhead-Felder

Folgende Overhead-Felder der Daten-Tabelle des Formulars können ebenfalls im Plugin-Parameters fieldselect genutzt werden:

  • created,
  • published,
  • created_by,
  • ipaddress,
  • modified_by,
  • ismfd

Von den Tabellen-Feldern vom Typ DateTime ist allein das DateTime-Feld created erlaubt.
Das DateTime-Feld created kann nur mit dem festen Literal currentdate verglichen werden, um auf das aktuelle Tages-Datum zu filtern:

"fieldselect":{"created":"currentdate"}

Hinweis: Das Overhead-Feld created wird immer ausgewertet und ausgeführt, selbst wenn die Anzeige-Option Erstellt anzeigen im Formular auf den Reiter Datenanzeige im Frontend auf Nein steht. Das ist ein Unterschied zum echten Formular-Feld (siehe oben).

Einbettung des Parameters fieldselect in die Plugin-Zeichenkette

{vfdataview}{"formid":"6","fieldselect":{"1":"1","5":"gruen"},"fieldlist":"1,2,3,5","layout":"list"}{/vfdataview}

Verwendung von Variablen

Neben konkreten Werten können Sie auch eine Reihe von Variablen in der Datensatzauswahl verwenden. Der folgende Parameter fieldselect sorgt dafür, dass nur Datensätze angezeigt werden, die im Feld mit der ID 1 die URL der aktuellen Seite stehen haben.

"fieldselect”:{“1”:"[_url]"}

Das Plugin unterstützt folgende Variablen:

  • [_url]: URL der aktuellen Seite.
  • [_name]: Name des angemeldeten Benutzers.
  • [_username]: Benutzername des angemeldeten Benutzers.
  • [_email]: E-Mail des angemeldeten Benutzers.

Mit dem Content Plugin - Visforms Form View können Sie ein Formularfeld mit der URL der aktuellen Seite füllen. Das gilt auch für versteckte Formularfelder.

Sie können die Defaultwert-Einstellungen der Felder vom Typ “Text” und “E-Mail” verwenden, um Felder anzulegen, die als Default mit Informationen des angemeldeten Benutzers gefüllt sind. Zu den Informationen gehören:

  • der Benutzernamen und
  • der E-Mail des angemeldeten Benutzers.

Durch die Option “Readonly” sperren Sie diese Felder zusätzlich vor Veränderungen. Dadurch stehen die entsprechenden Werte dem Plugin für die Datensatzauswahl zur Verfügung stehen.

Verwendung der Visforms Platzhalter-Ersetzung

Der gesamte Plugin-String wird auf Visforms Platzhalter durchsucht und die Platzhalter ersetzt.
Im Prinzip können alle Platzhalter für alle Feld-Typen verwendet werden.
Sinnvoll funktioniert die Nutzung von Platzhaltern nicht bei allen Feld-Typen, etwa auf keinen Fall für die beiden Feld-Typen Signatur und Location.

Durch die Nutzung der Platzhalter-Ersetzung insbesondere im Plugin-String-Parameter fieldselect wird es möglich, etwa in einem zusätzlichen Modul in der Daten-Detail-Ansicht nur die Daten anzuzeigen, die auf Informationen des aktuellen Detail-Datensatzes gefiltert sind.
Mehr dazu im Abschnitt: Beispiel mit Parameter-Ersetzung im Plugin-String-Parameter “fieldselect” .