0

Augabe Mehrfachauswahlfeld

Im folgenden Code ist Attribute ein Mehrfachauswahlfeld (nicht dynaimsch).

Beim Output wird item(thisAtt;i-1) ignoriert. Habe auch schon number(i-1) oder statt i eine Zahl eingesetzt. Alles ohne Erfolg.In einem Funktionsfeld wird typeof(thisAtt) aber als [string] ausgegeben.

let thisAtt := chosen(Attribute);
for i in numbers(Attribute) do
    if i = 3 then
            item(thisAtt, i - 1) + " (" + 'ausgeschieden am' + ")"
    else
            item(thisAtt, i - 1)
    end
end

Grüße Maurice

2 Antworten

null
    • mirko3
    • vor 1 Monat
    • Gemeldet - anzeigen

    Hi Maurice. chosen(Attribute) gibt ein [String]-Array wieder, in dem die gewählten Auswahlen als Text stehen. numbers(Attribute) gibt ein [Numbers]-Array wieder, in dem die Indexe! der gewählten Auswahlen des multi als Number stehen.

    Also. Wenn die Pos 1,3,5 angewählt sind iterierst Du über das Array [1,3,5]. Demzufolge ist der Iterator i unter Umständen 5, während Du in thisAtt nur 3 gewählte Pos hast und die Indices dieses Arrays von 0 bis 2 gehen. item() benutzt aber die Indices eines Arrays und nicht die Positionsnummer des multi.

    Iteriere doch gleich über chosen(multi) und vergleiche mit dem Textwert.

    for i in chosen(multi) do

    if i = "Fred Feuerstein" then ...

      • Maurice
      • vor 1 Monat
      • Gemeldet - anzeigen

       Danke. Klar: die Index-Nr entsprechen nicht der Stelle im Array. Manchmal checkt man es einfach nicht. Weil ich aber den Code nicht in Abhängigkeit vom Text der Einträge des Attribut-Feldes haben möchte, um dort ggf. noch etwas ändern zu können, wurde es jetzt dieser Code (das concat benötige ich, um die Einträge durch Komma getrennt geschrieben zu bekommen):

      let thisAtt := chosen(Attribute);
      let thisNum := numbers(Attribute);
      concat(for i in thisNum do
                if i = 3 then
                      item(thisAtt, index(thisNum, i)) + " (" + 'ausgeschieden am' + ")"
                else
                      item(thisAtt, index(thisNum, i))
                end
             end)
      
      

Content aside

  • Status Answered
  • vor 1 MonatZuletzt aktiv
  • 2Antworten
  • 32Ansichten
  • 3 Folge bereits