Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.
Kommentar: http://support.nuclos.de/browse/NUCLOS-6235

...

Wird ein Valuelistprovider angegeben, so erscheint dem Benutzer eine Auswahlliste in einem Dropdown, mit den vom VLP gelieferten Werten. Über den angezeigten Textwert kann ganz Normal per ’$parametername’ zugegriffen werden. Die ID des ausgewählten Wertes erhält man mittels ’$parameternameId’. Achtung, diese Funktion funktioniert erst ab 4.8.3 wieder!

Ab 4.19: Interne Parameter Typen Text Liste, Integer Liste und SQL

Parameter diesen Typs werden den Benutzer nicht zur Angabe angeboten, sie dienen der internen Verwendung in Regeln.

Image Added

Codeblock
languagesql
titleBeispiel Datenquelle
SELECT 
	T1.INTID "<primaryKey>",
	T1.INTARTICLENUMBER "articleNumber",
	T1.STRNAME "name"
FROM 
	V594_ARTICLE T1
WHERE
	$pSql
	  OR
	T1.INTARTICLENUMBER in $pListOfInteger
	  OR
	T1.STRNAME in $pListOfText
Codeblock
languagejava
titleBeispiel Regel
List<Number> listOfInteger = new ArrayList<>();
listOfInteger.add(4711L); // Test with Long
List<String> listOfStrings = new ArrayList<>();
listOfStrings.add("4711");

Map<String, Object> params = new HashMap<>();
params.put("pListOfInteger", listOfInteger);
params.put("pListOfText", listOfStrings);
params.put("pSql", "T1.INTARTICLENUMBER > 4000");
 
DatasourceProvider.run(TestDS.class, params);
Besonderheit des SQL Typs

Parameter vom Typ SQL müssen einen VLP definieren, der die erlaubten SQL "Erweiterungen" zurückliefert (Whitelist). Der Nuclos Server wird einen Wert gegen diese Liste prüfen und bei einer Verletzung einen Fehler werfen. Zur Validierung der Datenquelle setzt Nuclos für solch einen Parameter einfach den Wert "false" ein. Ist das für die Verwendung ungünstig, kann über einen kleinen Trick ein eigener Validierungsausdruck hinterlegt werden: Geben Sie im Anzeigenamen den gewünschten Ausdruck ein. Da diese Art von Parametern einem Benutzer nicht zur Eingabe angeboten werden, kann ein beliebiger Ausdruck verwendet werden.

Beispiele für Bedingungen in Datenquellen

...