0

Steuerung Verknüpfungsauswahl durch Auswahlfeld

Ich habe zwei Tabellen. Tabelle1 ist mit Tabelle2 verknüpft. In der Tabelle2 habe ich ca. 5 Einträge. Ist es möglich mittels Auswahlfeld (den Nummern dahinter) in Tabelle1 den jeweiligen/zugehörigen Eintrag im Verknüpfungsfeld in Tabelle1 vorzubelegen ? Danke.

15 Antworten

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

    Hallo Renè, verstehe ich das richtig: Du möchtest anhand der numerischen ID des Auswahlfeldes in Tabelle1 auf den Datensatz mit dieser Nummer in Tabelle2 zugreifen? Das ginge mit folgender Formel bei "Nach Änderung ..." in den erweiterten Optionen des Auswahlfeldes:

    TABELLE2 := number(AUSWAHLFELD)

    Allerdings ist das nicht unproblematisch, weil die IDs exakt mit den dazugehörigen Datensatznummern der TABELLE2 übereinstimmen müssen. Ansonsten könnte man die Verknüpfung auch über den Textwert vornehmen, sofern sich in TABELLE2 ein korrespondierendes Feld findet.

    • Rene
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Hallo Copytexter und Danke für die Info. Nein, ich versuche es mal anders: In Tabelle2 sind 5 Werte/Zeilen eingetragen, welche ja mittels Verknüpfung in Tabelle1 durch eine Lupe (bei vorhandenen Einträgen) auswählbar sind. Ich würde nun in Tabelle1 ein Auswahlfeld mittels Switch darstellen ebenfalls 5 Werten in verkürzter Form (Switch sieht im Formular charmanter aus) darstellen. Bei Auswahl eines Feldes in Tabelle1 (Eingabe erforderlich) wird im Feld zu Verknüpfung Tabelle2 die richtige Verknpüpfung dargestellt ggf. kann dieses Feld dann unsichtbar bleiben und in der Tabelle2 sin dennoch die Werte sichtbar. Veständlicher ?

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

    Öhm, ehrlich gesagt verstehe ich die Beschreibung genauso wie beim ersten Mal. Und zwar, an einem Beispiel demonstriert: Tabelle2 enthält die fünf Datensätze

    ID  TEXTFELD
    1   Anna Meier
    2   Klaus Müller
    3   Eva Schulze
    4   Klaus Hinz
    5   Werner Kunz

    Das Auswahlfeld in Tabelle1 enthält ebenfalls fünf Einträge:

    TEXTWERT ID
    Meier    1
    Müller   2
    Schulz   3
    Hinz     4
    Kunz     5

    Mit oben stehender Formel würde dem Verknüpfungsfeld in Tabelle1 anhand der numerischen IDs nun der jeweils entsprechende Datensatz zugeordnet, also eine Verknüpfung von bspw. "Müller" zu "Müller" hergestellt. Und natürlich könnte man das Verknüpfungsfeld ausblenden.

    Wobei ich mich gerade frage: Hast du die Formel überhaupt mal ausprobiert? Oder verstehe ich das Problem tatsächlich immer noch nicht richtig?

    • Rene
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Danke, ich probiere es gleich mal aus. Bedeutet die ID in Tabelle2 = laufende Nummer von Ninox und ID in Tabelle1 die Nummer hinter dem Eintrag im Auswahlfeld ? ;-)

    • Rene
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Ich habe es jetzt so umgesetzt: Im Verknüpfungsfeld bei Tabelle1 habe ich im Feld Nach Änderung eingegeben Tabelle2:=number (Name des Auswahlfeldes). Es funktioniert leider nicht. Die Verknüpfung funktioniert zwar mit dem Auswahlfeld, aber egal was ich im Auswahlfeld auswähle erfolgt der Eintrag in Tabelle2 immer in dem selben Feld.

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

    Ja, genau. In Tabelle2 ist ID die interne Datensatz-Nummer, im Auswahlfeld ist es die laufende Nummer des Eintrags. Beide sind nicht änderbar und müssen für die Verknüpfung übereinstimmen. Die Inhalte von TEXTFELD und TEXWERT spielen rein technisch gesehen dabei überhaupt keine Rolle. Es wird nur über die Nummer verknüpft. Deshalb macht ein solches Vorgehen wie im ersten Posting schon gesagt nur Sinn, wenn sich an den Datensätzen in Tabelle2 langfristig nichts ändert.

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

    Hat sich überschnitten.

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

    Die Verknüpfung in Tabelle2 ist immer das Gegenstück, also zu dem Datensatz in Tabelle1, aus dem heraus du die Verknüpfung vorgenommen hast. Unabhängig davon, auf welche Weise die Verknüpfung hergestellt wurde. 

     

    Ich verstehe immer weniger, was genau du eigentlich machen willst. Lade doch mal Screenshots oder so hoch, die dein Ziel und die beteiligten Felder veranschaulichen.

    • Rene
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Hattest Du auch gelesen: Es funktioniert leider nicht. Die Verknüpfung funktioniert zwar mit dem Auswahlfeld, aber egal was ich im Auswahlfeld auswähle erfolgt der Eintrag in Tabelle2 immer in dem selben Feld.

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

    Okay, dann gebe ich auf. Vielleicht habe ich wirklich ein Brett vor dem Kopf und jemand anderes versteht das Problem.

    • Rene
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Nicht aufgeben. Die Ansteuerung im Verknüpfungsfeld funktioniert ja im wesentlichen, aber es erfolgt aber immer derselbe Eintrag. Komisch nur nicht mal die Nummer 1 wird übertragen sondern Nummer 4.

    • Rene
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Hallo Copytexter. Ich habe jetzt mal einfach einen Eintrag generiert. Bei Anwahl des Auswahlfeldes wird doch nichts in das Verknüfungsfeld geschrieben/vorlegt. Ich müsste wie sonst auch die manuelle Suche vornehmen (zu sehen ist das + und die Lupe. Ich hatte bei dem  ersten Test schon etwas verknüft und daher hat er immer bei dem gleichen Wert etwas eingetragen, da die Änderung nicht geschrieben wurde.

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

    Ich habe das Szenario mal nachgestellt (Ninox Cloud) und zur Veranschalichung in Tabelle 1 noch eine Ansicht mit den fünf Datensätzen aus Tabelle2 gepackt. Wählt man im Feld 'Auswahl' Nummer 2 (Müller), dann wird mit dem Datensatz Nr. 2 der Tabelle2 verknüpft (Klaus Müller). Bei Auswahl Nummer 3 (Schulze) mit Datensatz Nr. 3 (Eva Schulze) und so weiter.

    Die Formel ist wie gesagt unter "Nach Änderungen folgendes Script ausführen" im Feld "Auswahl" untergebracht und lautet  bei dem gezeigten Beispiel:

    Tabelle2 := number(Auswahl)

    Und so sieht das Ergebnis in Tabelle1 aus:

    2020-01-08_ReneTabelle1_1

     

    Und in Tabelle2:

    2020-01-08_ReneTabelle2_1

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

    So hatte ich die Aufgabenstellung verstanden. Ist es das, was du wolltest?

    • Rene
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Ja genau, vielleicht habe ich es vorhin verkehrt umgesetzt. Es funktioniert - SUPER. Vielen vielen Dank Copytexter ;-)

Content aside

  • vor 4 JahrenZuletzt aktiv
  • 15Antworten
  • 2968Ansichten