0

Verknüpfte Tabellen

Hallo,

wie muss ich denn bei der N:M Beziehung in dem Beispiel die Tabelle Mitarbeiter mit Datenfeldern bestücken? Ich kann ja einem Datenfeld nicht zwei andere Tabellen zuordnen.

236 Antworten

null
        • Alexander_Koenig
        • vor 9 JahrenWed, January 27, 2016 at 12:37 PM UTC
        • Gemeldet - anzeigen
        Hallo, wenn Sie die Tabelle drucken möchten geht das mit Hilfe von Ansichten.
        In der Ansicht können Sie nach dem Zeitraum filtern.

        Vergleichende Filter unterstützt Ninox an dieser Stelle noch nicht, über einen kleinen Umweg ist aber auch dies möglich: Ändern Sie die Spalte mit der Funktion “Spalten einblenden…” aus dem Ansichtsmenü. Setzen Sie die Formel auf
        formatieren(Datum, YYYY-MM-DD)
        Dann können Sie mit Vergleichen wie
        >=”2015-03-01″ and <=”2015-03-31″
        arbeiten.
        • ddraht
        • vor 9 JahrenThu, January 28, 2016 at 5:35 AM UTC
        • Gemeldet - anzeigen
        Vielen Dank für die schnelle Hilfe;)

        dass hat schon mal geklappt.
        Hier fehlt mir ein Handbuch mit Beschreibung der Syntaxen mit Beispielen...

        besten Gruß
        Dieter
        • Alexander_Koenig
        • vor 9 JahrenThu, January 28, 2016 at 7:58 AM UTC
        • Gemeldet - anzeigen
        Hallo, Wir nehmen den Hinweis gerne auf.
        Die Ninox Sprachbefehle werden hier aufgezeigt: http://manual.ninoxdb.de/de/funktion-und-sprache/
        Dort ist auch eine Beispieldatenbank zum download, die unterschiedliche Anwendungen verdeutlicht.
        VG, Alex
        • zemann
        • vor 9 JahrenSat, January 30, 2016 at 10:54 AM UTC
        • Gemeldet - anzeigen
        Hallo Leute,
        Hab da ein Problem, mit dem ich mich schon lange herumschlage. Ich kapier es einfach nicht.
        Wie schaffe ich es, dass ich aus einer Tabelle mit 4 Spalten: Fahrzeugnummer,Datum, Anfangszeit und Endzeit eine Neue Tabelle2 anlegen kann, welche mir nur eine Fahrzeugnummer, Datum,Anfangszeit, Endzeit und Dauer angibt. Insgesamt habe ich 7 Fahrzeugnummern.
        Es soll die Auslastung berechnet werden. Gruß Ulf
        • Leonid_Semik
        • vor 9 JahrenSun, January 31, 2016 at 5:30 AM UTC
        • Gemeldet - anzeigen
        Hallo Ulf,

        Normalerweise legst du neuen Ansicht an (+ oben rechts in der Zeile, wo (Alle) steht). Dann gehst du auf Spalte "Fahrzeugnummer" und legst Die Nummer als Filter an. Dann fügst du noch eine Spalte " Funktion" an, benennst diese in "Dauer" um und schreibst darin die Formel :
        If Endzeit=null then Anfangzeit-Anfangzeit else Endzeit-Anfangzet

        Ohne diese Formel wir dir bei Fahrzeugen, die noch nicht zurück sind eine negative Zahl rein geschrieben.
        Da wir aber mit der datenbankarbeiten und in der Spalte "Fahrzeugnummer" die Werte sich wiederholen, werde ich die Tabelle normalisieren und daraus zwei Tabellen machen: Fahrzeuge und Zeiterfassung.
        Ich habe dir eine einfache Vorlage gebastelt mit Erfassung für 3 Fahrzeuge. Dort kannst du pro Fahrzeug eine neue Zeit mit + erfassen und Dauer wird noch nach Datum gruppiert.
        https://www.dropbox.com/s/fbyk8xwyse7su8o/Fahrzeuge.ninox?dl=0

        Ich hoffe, ich habe dein Anliegen richtig verstanden

        Gruß
        Leo
        • Frank_Schafer
        • vor 9 JahrenMon, February 1, 2016 at 12:05 PM UTC
        • Gemeldet - anzeigen
        Hallo,

        ich habe eine Tabelle "Adressen" mit einer Untertabelle "Spenden". Die Senden-Tabelle hat die Felder "Datum", "Betrag" und "Gedruckt" (Auswahlfeld Leer/Ja/Nein). In der Adress-Tabelle habe ich ein Feld "Summe Spenden" dass die Summe des Feldes "Betrag" der Spenden-Tabelle anzeigen soll. Soweit funktioniert das gut.

        Jetzt möchte ich aber diese Summe auf die Datensätze einschränken, die in dem Feld "Gedruckt" = Nein sind. Wie mache ich das?

        Ebenso möchte ich in einem Ausdruck der Adresse eine Liste aufführen, die nur Datensätze anzeigt, die das Feld "Gedruckt" = Nein haben, dabei soll das Feld aber nicht gedruckt werden. Wie stelle ich diesen Filter ein?
        • Alexander_Koenig
        • vor 9 JahrenMon, February 1, 2016 at 3:23 PM UTC
        • Gemeldet - anzeigen
        Hallo Frank,
        Filtern sie in der Druckansicht. Klicken sie auf die Tabelle. Klicken sie auf “Anzuzeigende Spalten festlegen”.
        Wählen Sie das "Gedruckt" Feld aus und nehmen "Nein" als Filter.

        Zur Berechnung der Summe der "nicht Gedruckten":
        Das geht mit einem Filter in der Ninox Sprache:
        sum(Spenden[Gedruckt = 0].Betrag)
        Die 0 steht für Nein.
        VG, Alex
        • zemann
        • vor 9 JahrenTue, February 2, 2016 at 12:22 PM UTC
        • Gemeldet - anzeigen
        Ja, vielen Dank. Ist ja prima und hilft mir sehr weiter.
        Nun das nächste Problem.
        Anfangszeit ist 23:00 Endzeit 00:34
        Man erhält einen negativen Wert. Wird aber 01:34 gearbeitet ( Nachtschicht)
        Die Auswertung ist für den Rettungsdienst, wir arbeiten im 2 Schichtsysrem mit jeweils 12 Stunden. (7:00 bis 19:00 und 19:00 bis 7:00)
        Dies nur zur Erklärung.
        • Leonid_Semik
        • vor 9 JahrenTue, February 2, 2016 at 2:59 PM UTC
        • Gemeldet - anzeigen
        Hallo Ulf,

        Die Felder "Anfang" und "Ende" sind als Uhrzeit angelegt. Wenn du diese stattdessen als "Datum + Uhrzeit" anlegst, rechnet Ninox die Differenz auch nach Mitternacht korrekt. Das Feld Datum brauchst du dann nicht.
        In der Ansicht kannst du dann ein Feld Datum anlegen mit Formel:

        if format(Anfang, "DD.MM.YY") = format(Ende, "DD.MM.YY") then
        format(Anfang, "DD.MM.YY")
        else
        format(Anfang, "DD.MM.YY") + "/" + format(Ende, "DD.MM.YY")

        Und Die Felder "Anfang" und "Ende" umformatieren

        format(Anfang, "HH:mm")

        format(Ende, "HH:mm")

        So kriegst du wieder Spalten mit Datum und Uhrzeit, wobei bei Mitternacht Einsatz zwei Datums erscheinen.

        Gruß Leo
        • zemann
        • vor 9 JahrenTue, February 2, 2016 at 8:37 PM UTC
        • Gemeldet - anzeigen
        Doch,
        Du hast mir sehr geholfen. Danke.

        Bist du in der Nähe von Bargteheide?
        • Leonid_Semik
        • vor 9 JahrenWed, February 3, 2016 at 3:42 AM UTC
        • Gemeldet - anzeigen
        354 km.
        Da hier keine Benachrichtigungsfunktion gibt, ist es schwer die Kommunikation zu führen. Die Seite ist als Support von Entwickler an Anwender und nicht als Forum zwischen Anwender gedacht. Ich würde dir gerne bei deinem Projekt weiter helfen. Solange wir kein Forum haben schreib mir an leo.semik@gmail.com.

        Gruß Leo
        • Frank_Schafer
        • vor 9 JahrenWed, February 3, 2016 at 6:57 AM UTC
        • Gemeldet - anzeigen
        Hallo Alex,

        vielen Dank für diese Info. Die gefilterte Summierung funktioniert schon mal. :)

        Zur Filterung der Druckansicht: Geht das auch ohne die Spalte "Gedruckt" in die Ansicht zu übernehmen? Die hat da nämlich eigentlich nichts zu suchen... ;) Ich kann mir bisher eigentlich nur damit behelfen, diese Spalte einzublenden und dann die Weite auf 1 zu setzen. Je nach Rahmen-Art bleibt dann aber eine kleine umrahmte Spalte
        • Alexander_Koenig
        • vor 9 JahrenWed, February 3, 2016 at 9:02 AM UTC
        • Gemeldet - anzeigen
        Hallo Frank,

        über einen workaround könnte man das erreichen.

        Man fügt ein Formel Feld ein "zu zahlen":

        if Gedruckt = 1 then
        0
        else
        Betrag


        Dieses Feld wird gedruckt. Im Filter der Druckansicht dann dieses Feld nach >0 filtern.
        VG, Alex
        • weisewol
        • vor 9 JahrenFri, February 19, 2016 at 5:09 PM UTC
        • Gemeldet - anzeigen
        Hallo Miteinander,
        als Neueinsteiger eine vielleicht simple Frage zum Datenmodel. Ich möchte gern die Kunden jeweils einer Firma zuordnen (Beispiel: Kunde Meier ist Kunde der Fa. X, Kunde Müller ist Kunde der Fa. Y.)
        Wie kann ich bei einer Neuanlage eines Kunden ein Auswahlfeld zur Festung der Fa. X oder Y einfügen ?
        Danke für jeden Tipp !
        • Frank_Bohmer
        • vor 9 JahrenSat, February 20, 2016 at 12:40 PM UTC
        • Gemeldet - anzeigen
        Hallo weisewol,
        dazu müssen zuerst die zwei Tabellen Kunde und Firma angelegt werden. Im Datenmodell der Tabelle Kunde kann man dann (unten rechts) auf "Mit einer Tabelle verknüpfen" klicken. Wenn man nun die Firma in die Liste der Felder zieht, hat das zwei Effekte:
        1. Es entsteht im Kunden ein Feld zur Auswahl der Firma.
        2. In der Firma entsteht eine Untertabelle mit allen zugeordneten Kunden.
        Viele Grüße, Frank
        • Claus.3
        • vor 9 JahrenTue, March 8, 2016 at 10:45 PM UTC
        • Gemeldet - anzeigen
        Hallo, ich möchte eine DB erstellen wo ich einen Strukturvertrieb abbilden kann.
        Ergebnis soll sein, dass, wenn ich bei einem Geschäftspartner (GP) ein Umsatzvolumen eingebe dies zum Volumen des GPs zählt, aber auch zu seiner Upline und dessen Upline, usw.
        Bei 2 Ebenen ist das kein Problem, aber sobald ich eine 3. eingebe geht der Umsatz nicht mehr auf die 1. Ebene weiter.

        Meine DB schaut so aus:
        Tabellen: Upline, Umsatz, Geschäftspartner

        Verbindungen:
        Geschäftspartner:Umsatz = 1:n (Komp:ja)
        Upline:Umsatz = 1:n (Komp:nein)
        Upline:Geschäftspartner = 1:n (Komp:nein)

        habt ihr eine zündende Idee dazu?

        Danke.
        • Leonid_Semik
        • vor 9 JahrenWed, March 9, 2016 at 8:36 AM UTC
        • Gemeldet - anzeigen
        Hallo Claus,
        deiner Logik nach gibt es nur eine Ebene Upline-GP. Die Uplines sind eigentlich auch Geshäftspartner oder? Ich würde einfach die Tabelle GP mit sich selbst verknüpfen. Dann hast du bei jedem GP einen GP als Übergeordnet und eine Reihe von Uplines-GP einzutragen. So hast du die Möglichkeit einen Umsatz einzutragen und eine Summe von Uplines-Umsätzen zu berechnen.

        Hier Beispiel. https://www.dropbox.com/s/0oddx1l51ga63z1/NetzVertrieb.ninox?dl=0

        Hoffe das hilft

        Leo
        • Leonid_Semik
        • vor 9 JahrenWed, March 9, 2016 at 10:29 AM UTC
        • Gemeldet - anzeigen
        Korrektur,
        habe in der Datenbank Uplines und Underlines verwechselt. Kannst aber problemlos umbenennen.

        Leo
        • Claus.3
        • vor 9 JahrenWed, March 9, 2016 at 10:53 AM UTC
        • Gemeldet - anzeigen
        Hallo Leo, danke für deine Idee! - ein sehr guter Ansatz! - Da ich allerdings das Ganze monatsabgegrenzt haben will (also z.B: im Feb.16 hat die Upline mit ihren Downlines folgenden Umsatz gemacht) werde ich vermutlich noch eine Tabelle Umsatz (nach Monat) benötigen. Dabei bin ich gerade am Basteln, scheitere aber daran, dass ich immer die Summe der gesamten Umsätze, also nicht monatsrein bekomme. ... Irgendwie ist das bei mir mit den Datenbanken schon eine Weile aus :-/ ... vor ein paar Jahren hätte ich mich damit wahrscheinlich gespielt ;-)
        • Leonid_Semik
        • vor 9 JahrenWed, March 9, 2016 at 2:28 PM UTC
        • Gemeldet - anzeigen
        Hallo Claus,
        Ich gucke heute Abend wie ich dir helfen kann. Eine Frage: werden die Umsätze tagesaktuell oder monatlich eingetragen?
        • Claus.3
        • vor 9 JahrenWed, March 9, 2016 at 2:42 PM UTC
        • Gemeldet - anzeigen
        Super! - herzlichen Dank Leo.
        Die Umsätze werden monatlich eingetragen.
        LG Claus
        • Leonid_Semik
        • vor 9 JahrenWed, March 9, 2016 at 8:27 PM UTC
        • Gemeldet - anzeigen
        Hallo Claus,
        ich komme leider hier auch nicht weiter. Habe jetzt 3 Tabellen
        Abrechnungstermine, Geschäftspartner und Umsatz.
        Geschäftspartner ist mit sich selbst verknüpft. Die Umsätze und Geschäftspartner sind mit Abrechnngstermine verknüpft.
        Mit Berechnungen klappt momentan nicht, vielleicht können die Herren von Ninox helfen?

        https://www.dropbox.com/s/pmthbg7cbaajdio/Netzmarketing1.ninox?dl=0
        Leo
        • Claus.3
        • vor 9 JahrenThu, March 10, 2016 at 5:31 AM UTC
        • Gemeldet - anzeigen
        Hallo Leo, nochmals herzlichen Dank für deine Bemühungen. ... Ich werd' heute einfach weitertüfteln. ... Ja wäre toll, wenn die Jungs von Ninox hier eine Lösung parat hätten. :-)
        LG Claus
        • Leonid_Semik
        • vor 9 JahrenThu, March 10, 2016 at 7:52 AM UTC
        • Gemeldet - anzeigen
        Hallo Claus,
        habe jetzt eine Idee. Die Downlines kann man in der Formel Ebene für Ebene manuell ansprechen. Schleifen wird Ninox erst ab dem Update unterstützen. Die Formel sind in der Tabelle Umsatz - Spalte "inkl. Downlines" Ich habe jetzt bis zu 10 Ebenen nach unten reingeschrieben. Wenn du mehr Ebenen hast, muss man dann die Variablen line1, line2 ...... ergänzen.
        Beim Geschäftspartner sieht man direkt nur die erste Downlines Ebene. Alle weiteren Ebenen muss man manuell als Spalten einfügen.
        Arbeitsweise: am besten zuerst einen Termin wählen, dann die Umsätze rein Schreiben. Hier die Datenbank.
        https://www.dropbox.com/s/v628qr3gzi5zis5/Netzvertrieb.ninox?dl=0

        Bei Fragen fragen :-)

        Gruß Leo
        • schocki
        • vor 9 JahrenFri, March 18, 2016 at 11:35 AM UTC
        • Gemeldet - anzeigen
        Ist geplant in der Formularansicht Zeilen von verknüpften Tabellen mehrzeilig darzustellen und wenn von welchem Zeitraum bis zur Implementierung kann man ausgehen? MfG schocki

                    Content aside

                    • vor 7 JahrenMon, March 26, 2018 at 11:46 AM UTCZuletzt aktiv
                    • 236Antworten
                    • 72531Ansichten