0

Ein Hauptkontakt bei Kontakte in Untertabelle

Hallo, ich habe eine Tabelle Adressen und dazu eine Untertabelle 1-N Kontaktmöglichkeiten mit Name , Telefon, E-Mail und Hauptkontakt (ja/nein). In der Tabelle Kontaktmöglichkeiten soll es immer nur einen Hauptkontakt zu jeder Adresse geben.

Ändere oder lege ich eine neue Kontaktmöglichkeit an und diese wird zum Hauptkontakt, sollen alle anderen Kontakte im Feld Hauptkontakt ,die in Beziehung zu dieser Adresse stehen, auf nein gesetzt werden. 

Wie muss ich das machen?

5 Antworten

null
    • Torsten_Stang.1
    • vor 2 Jahren
    • Gemeldet - anzeigen

    als Änderungstrigger von Hauptkontakt sowas wie:

    if Hauptkontakt then
      let me := this;
      for i in Adressen.'Kontaktmöglichkeit' [number(Nr) != number(me.Nr)] do
        i.Hauptkontakt := false
      end
    end

     

    ggfls. anzupassen an tatsächliche Tabellen- und Verknüpfungsbezeichnungen.

    • Dominic_Eichstadt
    • vor 2 Jahren
    • Gemeldet - anzeigen

    Vielen Dank, funktioniert...

    • + Maßanzug statt Massenware +
    • RonaldP
    • vor 2 Jahren
    • Gemeldet - anzeigen

    Hi Dominic Eichstädt ,

    ich habe mir für so einen Fall noch eine Prüfung eingebaut, ob auch in einem Datensatz ein Hauptkontakt ausgewählt ist (Bei vielen Kontakten ist das ggf. mühselig und unnötige Arbeit die durchzuscrollen).
    Hierzu mache ich ein FX-Feld in ADRESSEN mit diesen Skript:
    Leider funtkioniert der Alert nur, wenn das FX-Feld sichtbar ist. Deswegen zeige ich mir dann da noch Infos an.

    if 'Kontaktmöglichkeiten' and count('Kontaktmöglichkeiten'[Hauptkontakt = true]) = 0 then
        "Kein Hauptkontakt!" + alert("Bitte einen Hauptkontakt auswählen")
    else
        let mydata := 'Kontaktmöglichkeiten'[Hauptkontakt = true];
        text(mydata.Name + " / " + mydata.'E-Mail')
    end
    

    Damit und mit Torstens Skript macht Ninox bzw. Digitalisierung richtig Spaß und Sinn ;-)

    Viele Grüße
    Ronald

    • Dominic_Eichstadt
    • vor 2 Jahren
    • Gemeldet - anzeigen

    Hallo,

    ja vielen Dank. Aber alert() funktioniert ja leider nicht im Webbrowser bei mir.

    • + Maßanzug statt Massenware +
    • RonaldP
    • vor 2 Jahren
    • Gemeldet - anzeigen

    Hi Dominic Eichstädt ,

    ich arbeite auch im Browser und da funktioniert obiges Skript im FX-Feld! auch mit alert... habs vorhin nochmal getestet.