Home Forum Nuclos Entwicklung Plugins Paramter Valuelist Provider

Ansicht von 4 Beiträgen - 1 bis 4 (von insgesamt 4)
  • Autor
    Beiträge
  • #3778
    Markus Glitzner
    Teilnehmer

    Hallo!

    Ich benötige einen Parameter Valuelist Provider um bestimmte Werte aus eine Combobox auswählen zu können (z.B. Herr, Frau, Familie, etc.). Die Vorgehensweise zum Erstellen eines solchen Providers ist für mich Anhand des Wiki Eintrages nicht wirklich nachvollziehbar.

    Combobox und List of Values kann ich nicht hinzufügen, da kein passendes Attribut existiert. Bei einer universellen Komponente kann ich zwar einen Parameter Valuelist-Provider definieren, jedoch erscheint im Formular keinen Combobox, sondern lediglich ein normales Textfeld. Und wenn ich Parameter für ein Integerfeld definieren will, erscheint ein Fehler dass der Valuelistprovider nicht valide ist und ich den Wert von showClass auf java.lang.Integer umstellen soll. Mit der Meldung kann ich nur wenig anfangen. Wo setze ich die showClass? Und was hat es mit dem Paramter Namen showValue (laut Wiki) auf sich. Muss der immer gleich sein, muss ich auf den später zugreifen, kann ich den bennen wie ich will, …

    Bite um eine kurze Anleitung, wie ich Werte für eine Combobox definieren kann.

    #3784

    Hallo,

    das einfachste was sie machen können ist eine Entität erstellen die die Anreden zur Verfügung stellt. Dann ist der Valuelistprovider nicht nötig und es kann über eine Referenz auf diese Entität die Auswahl abgebildet werden. Das ist mehr oder weniger der beste Weg.

    Ohne diese Entität muss folgendes gemacht werden:
    Sie erstellen eine universelle Komponente für dieses Feld.
    Dann fügen sie den Valuelistprovider hinzu. Die Werte für die Auswahl wird wie folgt angegeben:
    Parameter Name – Parameter Value
    showValue – Wert 1
    showValue – Wert 2
    Damit werden die Werte gesetzt.
    Wenn sie Integer Werte hinzufügen möchten muss ein Name – Value Eintrag
    showClass – java.lang.Integer
    sein. Damit werden die Werte nicht als String behandelt sondern als Integers. Das setzt aber voraus das das Feld als Datentyp (Ganzzahl) gesetzt hat. Sonst kommen Stringwerte rein und es kommt zu Fehlern.

    Damit die Universelle Komponente als Combobox angezeigt wird müssen sie dann das Layout exportieren und dann die Komponente heraussuchen (am einfachsten geht das über den Feldnamen).
    Die universelle Komponente hat keine Wert controltype. Der ist bei den anderen Feldern gesetzt.
    Um die universelle Komponente in eine Combobox umzuwandeln müssen sie in dem Tag den Wert controltype=“combobox“ hinzufügen.
    Danach das Layout importieren und dann sollte eine Combobox erscheinen mit den Werten aus dem Valuelistprovider.

    Anhand der Beschreibung sehen sie das das letztere sehr aufwändig ist. Einfacher und unproblematischer ist die zusätzliche Wertentität.

    Wenn sie noch Fragen haben stehe ich gerne zur Verfügung.

    #3794
    Markus Glitzner
    Teilnehmer

    schon wieder eine perfekte Beschreibung, danke hat auf Anhieb funktioniert. :woohoo:

    Eine Referenz auf eine eigene Entität ist nicht immer erwünscht, da ich die Werte teilweise direkt zur Weiterverarbeitung in der Tabelle benötige bzw. unnötige Tabellen und damit verbundene Joins vermeiden will.

    P.S.:
    Hab gerade noch was rausgefunden was für mich relevant ist:
    Standardmäßig können neben den Werten in der Kombobox auch beliebige andere Werte eingetragen werden. Soll das verhindert werden, muss das XML-Attribute insertable auf „no“ gesetzt werden.

    #3798

    Hallo,

    das freut mich 🙂 Schön wenn ich helfen konnte.

    Ergänzend zu dem insertable:
    Das stimmt, das Flag ist für manuelle Eintragungen gedacht, wenn die vorhandenen Werte in einer Combobox nicht ausreichen.
    Was mich gerade wundert ist das das Flag bei ihnen gesetzt ist. Ich habe gerade bei mir geschaut und es ist nicht per default auf „yes“ gesetzt.

Ansicht von 4 Beiträgen - 1 bis 4 (von insgesamt 4)