Durchsuchbare Dokumentation aufrufen

Zurück zur Dokumentationsübersicht

agorum.composite.form.element.objectPicker

Dieses Element stellt ein Text-Eingabefeld mit einer Schaltfläche zur Auswahl eines agorum core-Objekts dar. Sie können dabei entweder eine Ordnerauswahl oder die Suche verwenden. Der Benutzer kann ein Objekt durch Doppelklick oder durch Markieren und Klicken auf OK auswählen. 

agorum.composite.form.element.objectPicker erbt alle Grundeigenschaften von element.

Beispiel


Beispiel für ein Such-/Objektauswahlfeld

Skript zur Oberfläche

let aguila = require('common/aguila');

let form = aguila.create({
  width: 500,
  height: 300,
  type: 'agorum.composite.form.basic',
  elements: [
    {
      type: 'agorum.composite.form.element.objectPicker',
      // value: '/agorum/roi/Files/Demo',
      name: 'picker1',
      label: 'Objektauswahl',
      // displayProperty: 'anyFolderPath',  // UUID, name, ID, anyFolderPath
      // valueProperty: 'ID',               // UUID, name, ID, anyFolderPath
      pickerType: 'search',                 // search, folder
      // baseFolder: '/agorum',             // start folder
      // searchParameters: {}               // parameters for search
      pickerWidth: 1000,                    // width of picker window
      pickerHeight: 1000                    // height of picker window
    }
  ]
});
form;

Parameter


Alle Parameter in element gelten. Zusätzlich gelten die folgenden Parameter.

pickerType

Wert Beschreibung
folder Öffnet eine Ordnerübersicht zur Auswahl.
search Öffnet die Suche zur Auswahl.


Beispiel

form.down('picker1').pickerType = 'search';

pickerWidth, pickerHeight

Definiert optional die Breite und Höhe des Explorer-/Suchfensters, wenn ein Benutzer auf die Schaltfläche zum Auswählen klickt.


Beispiel

form.down('picker1').pickerWidth = 800;
form.down('picker1').pickerHeight = 600;

valueProperty

Definiert das Attribut, das das System zurückgibt, wenn ein Benutzer ein Objekt wählt.


Beispiele

form.down('picker1').valueProperty = 'UUID';

displayProperty

Definiert das Attribut, das das System zur Anzeige verwendet.


Beispiele

form.down('picker1').displayProperty = 'anyFolderPath';

Wenn displayProperty kein ID-Attribut ist, deaktiviert sich die Eingabe des Felds. Der Benutzer kann dann nur noch über den Picker ein Objekt wählen.

ID-Attribute sind:

Die Anzeige bei anyFolderPath ist abhängig von der Einstellung baseFolder.

baseFolder

Definiert optional den Startordner, ab dem der Baum der Ordnerauswahl erscheint.

Hinweise:

  • Das System mischt den baseFolder mit der grundlegenden Suchkonfiguration. D. h. die Suchkonfiguration muss so eingestellt sein, dass der in baseFolder angegebene Startordner in der Suchkonfiguration enthalten ist.

  • Der zuletzt gewählte Name gilt (aus der Suche), wenn Sie bei searchParameters keinen settingName mitgeben.

  • Definieren Sie entweder settingName, etwa mit ac_all, oder geben Sie eine eigene Konfiguration per settings mit (siehe agorum.composite.search.filterResultDetails).


Beispiel

form.down('picker1').baseFolder = '/agorum/roi/workspace';

searchParameters

Definiert optional und nur bei pickerType=search die komplette Konfiguration der Suche und gibt sie mit, um die Suche zu steuern.


Beispiel

form.down('picker1').searchParameters = {
  query: 'hallo',
  additionalBaseQuery: 'isfolder:true',
  filterCollapsed: true,
  settingName: 'inbox-all',
  detailsWidget:  {
    type: 'agorum.composite.details',
    width: 600
  }
};


Eigenen Filter mitgeben

form.down('picker1').searchParameters = {
  type: 'agorum.composite.search.filterResultDetails',
  filter: [ ... jetzt kann ein Filter definiert werden ... ],
  // ... weitere Parameter für filterResultDetails
};

selectors

Definiert Selektoren, die prüfen, ob das gewählte Objekt mit dem definierten Selektor übereinstimmt.

Die Schaltfläche Ok zur Übernahme des Objekts aktiviert sich erst, wenn einer der Selektoren greift (Beispiele für Selektoren siehe Selektoren).


Beispiel

// Entweder es ist ein Ordner oder der Name lautet Demo:
form.down('picker1').selectors = [
  '[isFolder=true]',
  '[name=Demo]'
];

Events


Alle Events in element gelten.