Versionen im Vergleich

Schlüssel

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

Inhalt
maxLevel2

Definition

...

Manchmal benötigt man in Auswahlfeldern (Combobox/List of Values) nur eine bestimmte Menge aller Daten, die zur Auswahl angeboten werden sollen. Diese sollen sich dann abhängig eines anderen ausgewählten Wertes zusammensetzen.

Konfiguration

Anwendungsbeispiele:

  • Auswahl

...

  • von Ansprechpartnern. In einer Combobox sollen die entsprechend

...

  • Ansprechpartner eines Kunden zur Auswahl stehen.
  • Auswahl eines Gebäudes. In einer Combobox sollen alle dazugehörigen Räume zur Auswahl stehen.
  • etc

...

  • .

Fallbeispiel:

...

Ansprechpartner je Kunde

In den Stammdaten einer Anwendung gibt es

...

Ansprechpartner, die

...

Valuelistprovider 1.gifImage Removed

...

bestimmten Kunden zugeordnet sind. 

 

Im Auftrag wird nun ein

...

Kunde ausgewählt.

...

Danach soll der Ansprechpartner des Kunden ausgewählt werden. Dabei sollen in der Combobox für die Auswahl des

...

Ansprechpartners nur

...

Ansprechpartner auswählbar sein, die auch zu diesem

...

Kunden gehören.

Valuelistprovider 2.gifImage Removed

...

 


Image Added

Schritt 1:

...

Anlegen der Datenquelle

Menüaufruf: (Administration) - (Datenquellen) - (Valuelist Provider)

Folgende Spaltendefinitionen können unterschieden werden

Intid

Referenz bzw. interne Id des Datensatzes. Wird benötigt um beim Abspeichern des Datensatzes die interne Verknüpfung herzustellen. Der Benutzer sieht diese interne Id nicht.

Anzeige

...


Es muss zunächst ein Übergabeparameter angegeben werden z.B. intid_kunde welcher die interne ID des Datensatzes übermittelt, welche unseren Valuelist Provider aktualisiert. Im Falle der Ansprechpartner eines Kunden wäre dies z.B. die interne Id eines Kunden

Tipp

Wenn dieser Übergabeparameter intid heißt, dann übernimmt Nuclos hier automatisch die intid des Hauptdatensatzes (hier wäre das die des Kunden).


Folgende Spaltendefinitionen können unterschieden werden







Image Added

Schritt 2: Layouteditor

 -> Valuelist Provider im Layout einfügen.

Im Layout wird der Valuelist Provider über die Palette(linke Seite siehe Mauszeiger) an des gewünscht Feld, in diesem Fall Ansprechpartner, gehängt.

 

Default (optional)

Wenn in der Datenquelle des Valuelist Provider ein Standardflag gesetzt wurde (z.B. Standardadresse), so kann das hier angegeben werden.

Ein Ja/Nein Feld mit dem Bestimmte Datensätze als Standard gekennzeichnet werden. Im Layout kann dies Verwendet werden um beim Durchsuchen der Liste automatisch einen Standard wie z.B. die Standardadresse auswählen zu lassen.

Tipp
titleSystemseitige Parameter

$username kann in Bedingung oder Ihrem SQL Quelltext verwendet werden und gibt den aktuell angemeldeten Benutzer aus z.B. 'nuclos'

Info
titleAb Nuclos 4.3
  • Mandant steht je nach Konfiguration zur Verfügung
  • intid (Systemseitig wird die Id des Hauptformulars verwendet. In diesem Beispiel wird der Wert überschrieben. TODO: Besser Parameter für dieses Beispiel umbenennen. )

 

Image Removed

 Schritt 2: Layouteditor -> Valuelist Provider im Zielfeld einrichten

In den Eigenschaften des Zielfeldes (im Beispiel das Feld Artikel) müssen Sie nun folgende Einstellungen vornehmen:

Image Removed Achtung: Stellen Sie das Layout auf Expertenmodus um den Valuelist Provider eintragen zu können.

  • Komponenten Typ muss auf combobox stehen
  • Valuelist-Provider: Tragen Sie hier die Eigenschaften des eben angelegten Valuelist Providers ein. Name des Valuelistprovider: in der Auswahlliste stehen alle verfügbaren Valuelist Provider zur Auswahl. ID Feld: die INTID des Ergebniswertes der Abfrage. Anzeigename: die als Anzeigename definierte Spalte des Abfrageergebnisses. Parameter Name/Wert: hier können Sie bei Bedarf einen festen Wert an die Abfrage übergeben.

Im Beispiel sieht das dann so aus:

Valuelistprovider 4.gifImage Removed

Image Added

Schritt 3: Layoutregel anlegen

Definieren Sie nun auf dem Ausgangsfeld eine

...

Rege (hier Kunde)l:

Ereignis: Wenn Wert sich ändert

Aktionstyp: Werteliste aktualisieren

Businessobjekt: Businessobjekt der Zielkomponente, falls es sich um ein Unterformular handelt. Wenn sich das Zielfeld im gleichen Businessobjekt befindet, bleibt dieses Feld leer.

Zielkomponente: Feld (Combobox), dessen Werte aktualisiert werden sollen.

Parameter: Parametername, der in der Datenquelle definiert wurde als Bedingung definiert wurde.

Im Beispiel sieht diese Einstellung so aus:

Valuelistprovider 5.gifImage Removed

Nun haben Sie die Werte in der Combobox entsprechend eingeschränkt.




Image Added

Vordefinierte Valuelist Provider

...

Status

Dieser ValuelistProvider wird verwendet, um die Werteliste (Attribut für Status) des Statusfeldes auf bestimmte Businessobjekte einzugrenzen.

...


Tipp
titleSystemseitige Parameter

$username kann in Bedingung oder Ihrem SQL Quelltext verwendet werden und gibt den aktuell angemeldeten Benutzer aus z.B. 'nuclos'

$mandator gibt die UID des aktuellen Mandanten, welchen der Benutzer ausgewählt hat, aus, z.B. 'UFJNBNUH4UpFqcDEDzt0'

$locale gibt die Datensprache der Session des aktuell angemeldeten Benutzers aus, z.B. 'de_DE'.

$searchmode (boolean) wird vom System auf true gesetzt, wenn sich der VLP in einer Suchmaske befindet, ansonsten false. Der Parameter muss in der Abfrage in Hochkommata gesetzt werden, also  '$searchmode'.

Die Parameter können erst verwendet werden, wenn sie im VLP unter Parameter deklariert worden sind

...


Eigenschaften der Komponente bearbeiten:

Parameter NameParameter Value
BusinessobjekteName der Businessobjekt(interner Name)

Image Added

...










Process


Dieser ValuelistProvider wird verwendet, um die Werteliste (Attribut für Aktion) des Aktionsfeldes auf bestimmte Businessobjekten einzugrenzen.

...

Dies funktioniert nur auf dem Feld 'NuclosProcess' 


Eigenschaften der Komponente bearbeiten:

Parameter NameParameter Value
BusinessobjektenName der Businessobjekt (interner Name)

Image Added

...



Parameters

In Spaltendefinitioinen von Unterformulardaten lassen sich mit diesem ValuelistProvider Wertelisten hinterlegen.

...


Parameter NameParameter Value
showValueWert, der angezeigt werden soll

...

 

Ergebnis:

...


Ergebnis:

Image Added



Image Added

Valuelist Provider für Attribute vom Typ "Text"

Um der Nutzerin eine definierte Menge von möglichen Werten für ein Attribut vom Typ "Text" zu ermöglichen (und wenn eine Referenz ausdrücklich nicht gewünscht ist [bspw für Feld "Anrede"]), bietet der Layouteditor die Möglichkeit eine Combobox-Komponente mit einem Valuelist Provider für dieses Attribut auszuwählen.

Dafür müssen zunächst bei der Auswahl des Attributs der Combobox-Komponente der Haken "Zeige alle Attribute" gesetzt werden und dann das gewünschte Text-Attribut ausgewählt werden:

Image Added


Daraufhin muss ein Valuelist Provider für die Komponente hinterlegt werden. Dabei darf das ID Feld nicht gesetzt sein:


Image Added

Image Added

Die Werte aus der Liste können dann wie gewohnt bei der Bearbeitung des Datensatzes ausgewählt werden

Image Added





Wenn dem Nutzer zusätzlich die Möglichkeit gegeben werden soll nicht vordefinierte Werte in das Feld einzutragen, muss im Layouteditor die Eigenschaft "Werteliste editierbar" der Combobox-Komponente angehakt werden:


Somit kann nun ein beliebiger Wert in das Feld geschrieben werden:


Image Added


Image Added