Betrifft: V5.5.20
Mit Hilfe der DLL multiselect.dll kann gleichzeitig auf die Daten eines oder mehrerer Ordner und/oder Elemente zugegriffen werden. Diese DLL kann man als eine Erweiterung der vio_eingabe.dll verstehen. Die multiselect.dll bietet jedoch eine große Menge weiterer Möglichkeiten.
Anlegen:
Über den Formular-Designer im Administrator kann der DLL-Button auf einem beliebigen Formular hinzugefügt werden
Integration:
Der Aufruf des Formularvariablennamens (z.B. #INSERT_OR_VAR_multi! ) gibt die Ordner- und/oder Elementenamen der im Manager ausgewählten Ordner/Elemente in dem im Manager festgelegten Format aus. Der Aufbau der auf diesem Weg ausgegebenen Daten ist dabei abhängig von den Einstellungen der DLL im Manager.
Alternativ kann auch auf die IDs der ausgewählten Ordner oder Elemente (nicht "und"!) zugegriffen werden. Mit #INSERT_OR_VAR_multi*id! erhält man eine Liste der IDs in einem vorgegebenen XML-Format (Beispielausgabe für eine Liste von OrdnerIDs: <itemlist><orid>2</orid><orid>7</orid></itemlist>, bei Elementen steht analog <elid> statt <orid> etc.). Diese Art der Ausgabe lässt nur einen Typen zur Auswahl im DLL-Button zu (entweder Ordner oder Elemente), ist allerdings was die Zugriffe auf Daten der gelisteten Ordner oder Elemente angeht deutlich performanter. Die Konfiguration der multiselect.dll erfolgt im Contentmanager.
Um die Liste des XML-Formats in eine Ausgabe umzuwandeln benötigt man #SPLIT.
Manager:
Vor Benutzung des DLL-Buttons im Manager und Nutzung der dort gespeicherten Daten auf der Webseite, muss der DLL-Button konfiguriert werden (Rechtsklick auf Button -> Einstellungen). Hierbei gibt es folgende Einstellmöglichkeiten:
Vortext, Nachtext und Trenntext sind ebenso wie die Angabe eines Startordners und die Auswahl, ob Ordner oder Elemente ausgewählt werden sollen, Pflichtfelder!
Beispielintegration:
In der Ordner-Variable "multi" sind multiselect.dll-Daten gespeichert.
#SPLIT
split_id = "1"
splittext = "</orid><orid>"
splitcontent = "#INSERT_OR_VAR_multi*id!"
pretext = "<idlist><orid>"
posttext = "</orid></idlist>"
emptytext = ""
#ENDSPLIT
Anzeige der Liste:<br />
#INSERT_ST_#1_ZEILE
Detailzeile:
Ich habe die ID #INSERT_ST_NAME und heiße #INSERT_OR_#{#INSERT_ST_NAME}_NAME.<br />
Ausgabe:
Anzeige der Liste:
Ich habe die ID 2 und heiße Birne.
Ich habe die ID 7 und heiße Apfel.