Select Feld im Konfigurationsformular

Hallo,

ich habe im Konfigurationsformular im Actions Bereich ein Select Element mit entsprechenden Optionen.

Nun möchte ich gerne, dass das Element beim Öffnen des Formulars zunächst leer bleibt. Der Anwender soll explizit eine Option auswählen. Wie erreiche ich das? Momentan wird bei mir immer die erste Option angezeigt.

Gruß

Burkhard

Es ist leider nicht möglich die initialen Werte vorzugeben. Initial kommt der Standardwert und bei Select ist das nun einmal das erste Element. Du könntest ein erstes Element mit „Keine Auswahl“ machen, aber sonst geht das leider nicht.

Hi Burkhard!

Behelfe mir da auch immer mit einem 1. Element „—-„ oder „bitte auswählen“ oder sowas in der Art.
Im Code prüfe ich dann einfach, ob etwas anderes ausgewählt ist - wenn nicht, dann Status der Instanz auf einen „Custom-Fehler“ mit der Info, dass da noch etwas ausgewählt werden muss.

Viele Grüße,
Chris

Das entspricht nicht ganz meinem Eindruck. Ich kann sehr wohl mit ‚value‘ einen initialen Wert vorgeben. Wenn der initiale Wert in der ‚options‘ Liste ist, dann wird er auch ausgewählt (fett dargestellt). Wird aber ein nicht enthaltener Wert (z.B. -1) vorgegeben, so wird der Wert geändert und auf den Wert des ersten Elements gesetzt:eek:, ohne das der Wert als ausgewählt dargestellt wird. Das ist nach meinem Verständnis nicht konsequent.

Ich fände es deutlich besser, wenn es einheitlich zu Assoziationen gehandhabt würde: wenn der vorgegebene Wert in der Liste enthalten ist, dann wird er dargestellt, wenn nicht, dann sollte das erkennbar sein (z.B. ‚-‘) und er sollte auch nicht geändert werden.

Das wäre dann einheitlich zu Assoziationen.

Ja, so muss man es dann wohl machen. Schön ist es aber nicht :slight_smile:

Gruß

Burkhard

In der legacy Konsole stand dann immer etwas wie ‚der aktuelle Wert ist nicht verfügbar‘ oder so.
Und das Feld war dann ‚leer‘ also ohne Auswahl.

Michael

In der Tat, die Legacy arbeitet da ganz anders:eek::

  • man kann einen Wert der Liste nicht vorbelegen
  • es erscheint immer zunächst ein leerer Eintrag (damit macht der Workaround mit „bitte auswählen“ hier keinen Sinn)
  • wählt man den leeren Eintrag aus, so enthält die Variable NULL

Fazit: ich bleibe bei meinem Vorschlag (für beide Konsolen) :slight_smile:

Gruß

Burkhard

Wir reden vom actions-Bereich, oder? Denn dort sollte es meines Wissens nach nicht möglich sein einen initialen Wert vorzugeben. Dies ist auch nicht dokumentiert: Select — IP-Symcon :: Automatisierungssoftware

Im elements-Bereich sieht das natürlich ganz anders aus. Dort kommt der Wert aus der Property. Und wenn diese leer ist, dann sollte auch ein Auswahlfeld ohne Auswahl da stehen. Wenn ein Wert in der Property steht, der nicht leer ist, aber auch nicht in den Optionen steht, dann kommt eine Fehlermeldung rechts vom Feld und es ist nichts ausgewählt.

Ja, es geht um den Action Bereich.

Meinen in Post #1 genannten Wunsch erfüllt die Legacy Console. Die hatte ich zunächst nicht betrachtet.

Somit ist es wohl ein Fehler in der WebKonsole:

  • es kann ein Value vorgegeben werden
  • der initiale Eintrag ist nicht leer
  • falls kein Wert ausgewählt wird, enthält die Variable den Wert des ersten Eintrags und nicht NULL

Gruß

Burkhard

Hast du in einem deiner Module ein Beispiel dafür?

Es könnte auch ein zufälliger Implementation-Bug der Legacy Konsole sein. Denn für Elemente im Action-Bereich kann man bisher keine Werte vorgeben.

paresy

Man sieht es im Modul ‚Blind Control‘ (Beta).

In der WebKonsole wird im neuen ‚Blind Control Group Master‘ der vorgegebene Wert (-1) akzeptiert und fett dargestellt (‚Bitte wählen‘).

In der Legacy Console ist alles in Ordnung (keine Vorgabe, NULL als Wert wenn nichts ausgewählt wird). Die WebKonsole jedoch verhält sich nicht korrekt und lässt das Feld nicht leer.

Erreichen möchte ich momentan nur, dass initial kein Wert vorbelegt ist und value ignoriert wird.

Sollte man (später mal?) Werte vorgeben können, dann sollte es sich so verhalten wie bei Assoziationen: wenn der vorgegeben Wert nicht in der Liste ist, dann keine Vorbelegung.

Gruß

Burkhard

In deinem Beispiel wählt, wie beschrieben, die webbasierte Konsole den ersten Eintrag und die Legacy-Konsole gar keinen Eintrag aus. Das ist zugegebenerweise eine Differenz zwischen den beiden Konsolen, sieht aber in beiden Fällen nicht nach einem vorgegebenem Wert aus. Was meinst du also mit Vorbelegung? Rufst du vielleicht einfach mal an? Dann können wir den Knoten hier hoffentlich besser auflösen.

In der Tat, da habe ich mich vertan. Es sieht nur so aus wie eine Vorbelegung, da das erste Element markiert dargestellt wird.:slight_smile:

Es bleibt letztendlich die unterschiedliche Handhabung und der Wunsch, auch in der WebKonsole eine Möglichkeit zu haben einen leeren Wert vorzubelegen.

Gruß

Burkhard