0

Mehrfachauswahl durch Befehl zurücksetzen

Hi liebe Community, 

ich habe eine A mit einer Untertabelle B. 

In Tabelle A gibt es eine Mehrfachauswahl mit verschiedenen Werten, unter anderem mit dem Wert "Bereit". In der Untertabelle gibt es ein Auswahlfeld mit 3 verschiedenen Werten, "offen", "verschickt", "abgeschlossen". 

Ich würde nun gerne, wenn in der Untertabelle B der Wert "abgeschlossen" ausgewählt wird, dass in der Tabelle A der Wert "Bereit" abgewählt wird. 

Ideen hierfür? 

Vorab vielen Dank. 

LG, Andi

9 Antworten

null
    • Leonid_Semik
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Hallo Andi,

    bei dem Auswahlfeld nach Änderung:

    ---

    if Auswahlfeld =3 then

    let myA:=chosen('TABELLE A'.MEHRFACHAUSWAHLFELD);

    let myNewA:=for i in myA do

    if i !="Bereit" then i

    end

    end;

    'TABELLE A'.MEHRFACHAUSWAHLFELD:=myNewA

    end

    ---

     

    Leo

    • Andi_Neumaier
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Hi Leo,

    vielen Dank für die schnelle Antwort. 

    Habe das mal auf meine Tabellen adaptiert. Bekomme aber leider den Fehler "Not a numeric array: myNewA in Zeile 8, Spalte 3"

    if Status =3 then
    let myA :=chosen (Influencer.Status);
    let myNewA := for i in myA do
    if i != "Kampagne" then i
    end
    end;
    Influencer.Status:=myNewA
    end

    LG, Andi

    • Ninox-Professional
    • planoxpro
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Hallo, statt des Textwertes "Bereit" kann man auch die numerische ID nehmen und das Array mit numbers() befüllen:

     

    if Auswahl = 3 then
        let myA := numbers(Haupttabelle.Mehrfachauswahl);
        let myNewA := for i in myA do
                if i != 2 then i end
            end;
        Haupttabelle.(Mehrfachauswahl := myNewA)
    end

    • Andi_Neumaier
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Hi Copytexter,

     

    super, vielen Dank! klappt einwandfrei!

     

    LG, Andi

    • Leonid_Semik
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Stimmt Array sollte nummerisch sein. Asche auf mein Haupt...

    • Stephan_Haumann
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Hallo Zusammen,
    ich habe ein ähnliches Problem. Jedoch befindet sich alles in der gleichen Tabelle und ich bekomme die Bezüge mal wieder nicht hin.
    Ich habe statt eines Auswahlfeldes eine N:1 Verknüpfung (Sichtungstitel). Wenn hier eine Verknüpfung (zur Tabelle "Sichtung") ist, soll das MAF automatisch auf Wert 9 springen.

    Mal wieder habe ich tausende Dinge ausprobiert und hier stehe ich:

    if Sichtungstitel != void or != null then
    let myA := Training;
    let myNewA := for i in myA do
    if i != 9 then i
    end
    end;
    Training :=myNewA
    end

    Wenn ich numbers() einfüge kommt "Die Funktion ist nicht definiert". Und wenn ich es so mache wie oben kommt: "Der Ausdruck liefert mehrere Ergebnisse zurück"

    Danke schon mal und LG

    • Ninox-Professional
    • planoxpro
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Hallo Stephan, oben ging es darum, einen Eintrag ABzuwählen. Du willst, wenn ich es richtig verstehe, einen bestimmten Eintrag AUSwählen. Das geht anders. Einfacher. Versuch's mal so (als Trigger "Nach Änderung" im Verknüpfungsfeld 'Sichtungstitel'):

     

    if Sichtungstitel then
        Training := unique(numbers(Training), 9)
    end

    • Stephan_Haumann
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Danke Dir, jedoch sagt Ninox "numbers(choice) ist nicht definiert". Hast Du noch eine Idee?

    • Ninox-Professional
    • planoxpro
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Ich würde darauf tippen, dass es sich bei 'Training' um ein einfaches Auswahlfeld handelt, nicht um ein Mehrfachauswahlfeld. Das wäre wieder was ganz anderes:

     

    if Sichtungstitel then
       Training := 9
    end