showSelectionDialog
Versionshinweise | 13.2 |
---|
Code
boolean DialogUtils.showSelectionDialog(String title, String message, boolean escapeHtml, List values, String callbackMethod)
Beschreibung
Zeigt einen Auswahldialog an, in welchem der Benutzer einen der übergebenen Werte auswählen kann.
Diese Skriptmethode muss als letze Anweisung in einer globalen Einstiegsmethoden aufgerufen werden. Die angegebene Einstiegsmethode muss zwei Parameter vom Typ Integer und List haben und einen Wert vom Typ Boolean zurückgeben. Siehe auch DialogUtils.callbackShowSelectionDialog().
Parameter
title
- Der Dialogtitel.message
- Die Dialogmeldung.escapeHtml
- Gibt an, ob HTML Text unformatiert ausgegeben werden soll.values
- Eine Liste von Objekten zur Auswahl.callbackMethod
- Der Name der Einstiegsmethode zur weiteren Skriptausführung.
Rückgabe
Rückgabewert für die globale Einstiegsmethode.
Diese Skriptmethode muss als letzte Anweisung in einer globalen Einstiegsmethoden aufgerufen werden.
Beispiele
KORREKTE VERWENDUNG
boolean detailViewBeforeSave()
{
//...
List list = new ArrayList();
list.add("Value1");
list.add("Value2");
return DialogUtils.showSelectionDialog("Title", "<html>Message</html>", false, list, "callbackShowSelectionDialog");
}
boolean callbackShowSelectionDialog(int selectionIndex, List values)
{
if(selectionIndex == -1)
{
return false; // no value selected
}
Object selectedValue = values.get(selectionIndex);
//...
return true;
}
Beispiel 1: Fehlerhafte Verwendung
boolean detailViewBeforeSave()
{
...
List list = new ArrayList();
list.add("Value1");
list.add("Value2");
return (DialogUtils.showSelectionDialog("Title", "<html>Message</html>", false, list, "callbackShowSelectionDialog ") && false);
}
Erklärung: Hier ist der Aufruf von DialogUtils.showSelectionDialog
nicht die letzte Anweisung in der Methode. Im Rich Client wird dieser Programmablauf funktionieren, im Web Client kann das Ergebnis der Callback-Methode nicht mehr weiter beachtet werden und liefert den Standardwert true
zurück.
Beispiel 2: Fehlerhafte Verwendung
boolean detailViewBeforeSave()
{
...
...
List list = new ArrayList();
list.add("Value1");
list.add("Value2");
if (!DialogUtils.showSelectionDialog("Title", "<html>Message</html>", false, list, "callbackShowSelectionDialog "))
{
return false;
}
...
}
Erklärung: Hier ist der Aufruf von DialogUtils.showSelectionDialog
nicht die letzte Anweisung in der Methode. Im Rich Client wird dieser Programmablauf funktionieren, im Web Client kann das Ergebnis der Callback-Methode nicht mehr weiter beachtet werden und liefert den Standardwert true
zurück.