0

Select selectet nix, das ist eins zu wenig

Es gibt eine Tabelle Projekte. Es gibt eine n:m Tabelle Projektbeteiligte, in denen Rollen zugewiesen werden (Klient, Gegenseite, Steuerberater usw).

In einer Tabelle Inkasso erfasse ich Forderungen bei Inkassoprojekten. Diese Inkasso-Tabelle hat eine Inkasso n : Projekte 1 Verknüpfung mit der Mutter aller Tabellen, der Projekte-Tabelle.

Jetzt brauch ich eine select-Abfrage, die mir aus der Projektbeteiligten-Tabelle einmal den Klienten rauszwiebelt und einmal den Schuldner... Über diese Adressnummern gehts dann geschmeidig zu den Adressdaten in der Tabelle Adressen.

Ich: let a := number(Projekte);
let Gl := (select Projektbeteiligte where count(select Projektbeteiligte where Rolle = "Gegner") = 1 and Projekt = a); 

Ninox: Nix

Rolle mit dem Zahlenwert des Auswahlfeldes 2 hilft auch nicht weiter.

Danke für jedweden Code-Zauber

2 Antworten

null
    • Ninox-Professional
    • planoxpro
    • vor 1 Jahr
    • Gemeldet - anzeigen

    Hallo Frank, danke für die launige Problembeschreibung. So ganz gehen das Datenmodell und die Aufgabenstellung daraus aber leider nicht hervor. In welcher Tabelle soll das das Script laufen und was genau soll es anzeigen? Geht es um eine Ansicht?

    Da in der ersten Zeile die Datensatznummer des Projektes ausgelesen wird, sollte eine N:1 Verknüpfung zu 'Projekte' existieren. Auf dieser Basis versuche ich zum Einstieg mal einen Schuss ins Blaue:

    first(Projekte.Projektbeteiligte[text(Rolle) = "Gegner"])
    
      • Rechtsanwalt
      • Frank_DIPO2
      • vor 1 Jahr
      • Gemeldet - anzeigen

      planox. pro Granate - das wars schon. für alle Interessierten hier die Gesamtlösung als Text:

      let a := Projekte;
      let Gl := (select Projektbeteiligte where first([text(Rolle) = "Gegner"]) and Projekt = a);

      Vielen Dank!

Content aside

  • Status Answered
  • vor 1 JahrZuletzt aktiv
  • 2Antworten
  • 61Ansichten
  • 2 Folge bereits