0

Verständnisfrage zur Addition und %tuale Aufteilung von Feldinhalten

Hallo liebe Gemeinde,

ich bin zwar schon etwas länger bei Ninox dabei, habe es aber nur zur Erfassung und einfachen Verwaltung von berufsbedingten Daten genutzt. Ich stehe vor einer für mich nicht lösbaren Aufgabe, die aber sicher nicht schwer für Euch ist.

Ich habe drei Tabellen.

1. Ort mit den Verknüpfungen auf Straßen und Bewohner

2. Straßen mit den Verknüpfungen auf Ort und Bewohner und

3. Bewohner mit Verknüpfung auf Ort und Straßen

Tabelle Ort beinhaltet nur das Datenfeld "Ort"

Tabelle Straße beinhaltet die Datenfelder "SFWF" mit den Auswahlmöglichkeiten "SF" und "WF" (für schwarze Flecken und weisse Flecken) und natürlich die Hausnummer

Tabelle Bewohner beinhaltet die Datenfelder "Name" und "Stimmung" mit den Auswahlmöglichkeiten N. angetroffen, Sehr schlecht, Schlecht, Mittel, Gut, Kunde und leer.

 

Ich möchte jetzt eine einfache Zahlen-Aufstellung haben, die Folgendes abbildet:

Wieviele erfaßte Bewohner eines ausgewählten Ortes und SFWF (SF oder WF) gibt es insgesamt und wieviel Prozent davon haben die Stimmung "Kunde" inne?

Für Euch sicher eine Lächerlichkeit, für mich ein böhmisches Dorf. Wo starte ich die Berechnung? Wie wird sie programmiert? Habt Ihr vielleicht ein Beispiel. Ich werde alleine nicht schlau und habe schon einiges ausprobiert und gesucht. Ich denke, die Richtung cnt( ist schon nicht verkehrt, komme aber überhaupt nicht klar. Vielen Dank im voraus für Eure Hilfe.

Viele liebe Grüße

Sven

5 Antworten

null
    • Leonid_Semik
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Hallo Sven,

    In der Tabelle Ort kann man es mit f(x) Felder versuchen.

    für SF:
    ---

    cnt('Straßen'[text(SFWF)="SF"].Bewohner)
    ---

    für WF:
    ---

    cnt('Straßen'[text(SFWF)="WF"].Bewohner)

    ---

    Und für Prozent:

    SF:

    ---

    let myV:=cnt('Straßen'[text(SFWF)="SF"].Bewohner);
    let myC:=cnt('Straßen'[text(SFWF)="SF"].Bewohner[text(Stimmung)="Kunde"]);
    myC/myV*100

    ---

    WF:

    ---

    let myV:=cnt('Straßen'[text(SFWF)="WF"].Bewohner);
    let myC:=cnt('Straßen'[text(SFWF)="WF"].Bewohner[text(Stimmung)="Kunde"]);
    myC/myV*100

    ---

    Leo

    • Sven.2
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Hallo Leo,

    vielen Dank für Deine superschnelle Antwort! Ich hatte zunächst Fehlermeldungen. Problem war zum einen "Straßen", welches ich als "Strasse" bezeichnete. Ist mir schnell aufgefallen und habe ich geändert. Das andere war ein fehlendes "select" vor 'Strasse'. Damit funktioniert die Gesamtabfrage über die kompletten Daten prima. Wenn Du mir jetzt noch verrätst, wie ich die Orte X oder Y zu SF und WF mitfiltern kann, wäre das total super.

    Viele liebe Grüße

    Sven

    • Leonid_Semik
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Hallo Sven,

    ich habe bewusst select raus gelassen. Wenn das Funktionsfeld mit der Formel in einem Datensatz der Tabelle "Ort" steht, dann funktioniert die Formel ohne select und es wird auch der Ort des Datensatzen als Filter. In welcher Tabelle schreibst du die Formeln rein?

    Leo

    • Sven.2
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Hallo Leo,

    danke für Deine Antwort. Ja, es scheint mir etwas kompliziert zu sein. Für die Formeln habe ich mir eine eigene Tabelle ohne Verknüpfungen gebastelt. Aber werde ich mal ausprobieren, vielen Dank. Ich gebe Dir dann hier eine Rückmeldung.

    Viele liebe Grüße

    Sven

    • Sven.2
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Hallo Leo,

    ich habe jetzt die Berechnungen in der Tabelle "Ort" durchgeführt und noch eine Bedingung

    if (Ort="X") then

    und das gleiche für "Y" eingefügt, dann paßte alles super. Vielen herzlichen Dank fü Deine Unterstützung.

    Bis denne

    Sven