0

Auswahlfeld Wert zuweisen

Hallo zusammen, 

ich steh mal wieder auf dem Schlauch und finde die Lösung nicht. Vielleicht ist jemand hier, dem es sofort auffällt, wo der Fehler liegt.

Eine einfache Struktur liegt dem Ganzen zugrunde: über drei Auswahlfelder (A, B, C) können jeweils ca. 6 Möglichkeiten (1-6) ausgewählt werden. Je nach Kombination soll ein Ergebnis in einem vierten Auswahlfeld dargestellt werden.

Ich habe also die vier Auswahlfelder angelegt, werte die drei ersten aus, kann aber dem vierten (Lösungs-)Auswahlfeld "Ergebnisfeld" nicht den Wert zuweisen, so dass es im Auswahlfeld "Ergebnis" erscheint. Habt ihr eine Idee?

let Ergebnisfeld := [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
if AuswahlfeldA = 1 and AuswahlfeldB = 1 and AuswahlfeldC = 1 then
   Ergebnisfeld := [1];
end

BG Tom

9 Antworten

null
    • Maurice
    • vor 1 Jahr
    • Gemeldet - anzeigen

    Dein Ergebnisfeld klingt für mich nach einem Funktionsfeld. Du wählst ja nichts aus, sondern berechnest einen Eintrag. Oder möchstest du das Ergebnisfeld auf eine Auswahl setzen, die du ggf. später unabhängig von den Einträgen in A, B oder C noch ändern kannst? Dann besteht aber kein funktionaler Zusammenhang mehr zwischen A,B,C und dem Ergebnisfeld mehr.

    • Th_Schmitz
    • vor 1 Jahr
    • Gemeldet - anzeigen

    Ich habe ja durch die ersten drei Auswahlfelder jeweils 6 verschiedene Möglichkeiten, etwas auszuwählen. Ergibt somit 18 Ergebnisse. Je nach Auswahl ergeben sich unterschiedliche Lösungsansätze, die im vierten Auswahlfeld dargestellt werden sollen. Ninox soll mir dabei helfen, das Ergebnis zu präsentieren. 

    • Th_Schmitz
    • vor 1 Jahr
    • Gemeldet - anzeigen

    • Th_Schmitz
    • vor 1 Jahr
    • Gemeldet - anzeigen

    Zwei Beispiele

    • Maurice
    • vor 1 Jahr
    • Gemeldet - anzeigen

    Wenn jedes der Auswahlfelder A, B, und C 6 unabhängige Möglichkeiten hat, hast du insgesamt 6^3, also 216, Kombinationsmöglichkeiten dieser 3 Auswahlfelder.

    Falls die Bewertung vollautomatisiert stattfinden soll, dann sollte das Feld Bewertung ein Funktionsfeld sein. Falls du jenseits der automatisierten Bewertung noch Einfluss nehmen möchstest auf die Bewertung, dann kann das auch ein Auswahlfeld sein, dessen Eintrag durch eine Änderung von Feld A, B, oder C vorgenommen wird, aber danach noch manuell betätig werden kann.

    Generell scheint es mir beim ersten Blick sinnvoll zu sein, die Bewertungskriterien in Feldern aufzuschlüsseln nach: Zustand, Gerüst, Anzahl WE, Strom, Dachform, Dachfläche

    Im Anhang eine grobe Skizze, wie mit Hilfe der switch-Funktion (wie gesagt 216 Fälle, im Beispiel gilt FeldA=1, FeldB=1 und Feld C variiert ein wenig) so etwas aussehen könnte.

    • Th_Schmitz
    • vor 1 Jahr
    • Gemeldet - anzeigen

    Hi, den Ansatz, das Problem mit switch zu lösen, hatte ich nicht mehr auf dem Schirm. Das probiere ich einmal aus. Danke dir.

    Ich habe aktuell 4*4*7 = 112 Auswahlmöglichkeiten. Immerhin. Eine weitere Aufteilung wird zu kleinteilig. 

      • UweG
      • vor 1 Jahr
      • Gemeldet - anzeigen

      Th. Schmitz 

    • UweG
    • vor 1 Jahr
    • Gemeldet - anzeigen

    Was ist, wenn man bei dieser Anzahl von Möglichkeiten eine Hilfstabelle erstellt und dort die 3 Auswahlen und das Ergebnis hinterlegt. Mit einem select und entsprechender Suche erhält man dann als Ergebnis die Auswahlnummer für das vierte Auswahlfeld. Spart einem vielleicht eine Menge Scriptcode und ist in der Wartung vielleicht übersichtlicher.

    • mirko3
    • vor 1 Jahr
    • Gemeldet - anzeigen

    ...oder einfach die Ergebnisse in einem Funktionsfeld anzeigen lassen und auf die Zuweisung zu einem Auswahlfeld verzichten. Sonst wie Maurice mit swich-case.

    let aw1 := record(TABELLE,this.Nr).number('Alter/Zustand Dachflächen');
    let aw2 := record(TABELLE,this.Nr).number('Auswahl WE / Allgemeinstrom');
    let aw3 := record(TABELLE,this.Nr).number(Dachform);
    let result := aw1 + "" + aw2 + "" + aw3;
    "sind schon 27 Möglichkeiten, die ich hier nicht alle benannt habe";
    switch result do
    case "111":
        "desolat"
    case "112":
        "machbar"
    case "211":
        "vielleicht"
    case "122":
        "herausfordernd"
    case "222":
        "kann nur ich"
    case "233":
        "lehne ab"
    case "333":
        "ein anderes Mal"
    default:
        result
    end
    

Content aside

  • vor 1 JahrZuletzt aktiv
  • 9Antworten
  • 96Ansichten
  • 4 Folge bereits