0

Verknüpfungsfeld und Rückverknüpfungsfeld

Hallo zusammen,

 

über eine Befehlsschaltfläche lässt sich der Wert eines Verknüpfungsfeldes ändern. Das ganze funktioniert m.E entweder direkt über die nid oder die Nr.

 

Kann man über eine Befehlsschaltfläche auch mehrere Verknüpfungen in ein Rückverknüpfungsfeld hinzufügen? Wenn ich 

Rückverküpfungsfeld := 

eingebe, kommt promt "Die Tabellenspalte ist kein einfaches Datenbeld".

 

Gibt es hier Lösungsansätze?

 

VG

Johannes

2 Antworten

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

    Hallo Johannes, nein, so funktioniert das nicht. Die Zuordnung erfolgt immer über die N-Seite. Was in der Praxis kein Problem ist, weil man ja sowieso auf beide Tabellen zugreifen muss. Normalerweise ermittelt man die zu verknüpfenden Datensätze über ein "select" auf die verknüpfte Tabelle und weist den passenden Datensätzen den aktuellen Datensatz zu. 

    let me := this;
    for i in select Tabelle_N where Ort = "Berlin" do
        i.(Tabelle_1 := me)
    end

    In diesem Beispiel würden alle Datensätze mit dem Ort "Berlin" aus der Tabelle_N mit dem aktuellen aus Tabelle_1 verknüpft.

    Welche Idee steckt denn hinter der Frage?

    • john_eans
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Die ursprüngliche Idee war das automatische Verknüpfen ... und ich habe irgendwie falsch herum gedacht. Ich hab jetzt folgenden Code der mich zum Ziel bringt:

    while cnt(select Testtabelle where 'Verknüpfung' = null) > 1 do 
        let F1 := item(select Testtabelle where 'Verknüpfung' = null, 0);
        let F2 := item(select Testtabelle where 'Verknüpfung' = null, 1);
        let newR := (create Testtabelle);
        F1.('Verknüpfung' := newR);
        F2.('Verknüpfung' := newR);
        newR.(
            'automatisch erstellt' := true;
            Wert := sum('Rückverknüpfung'.Wert)
        )
    end

     

    ...ich dachte zunächst es irgendwie so abkürzen zu können.

     

    while cnt(select Testtabelle where 'Verknüpfung' = null) > 1 do 
        let F1 := item(select Testtabelle where 'Verknüpfung' = null, 0);
        let F2 := item(select Testtabelle where 'Verknüpfung' = null, 1);
        let newR := (create Testtabelle);
        newR.(
            'automatisch erstellt' := true;
            'Rückverknüpfung' := [F1,F2]
            Wert := sum('Rückverknüpfung'.Wert)
    )
    end

     

    Vielen Dank übrigens für die vielen Anregungen und Lösungsansätze in letzter Zeit ;-)

     

    VG