m:n Beziehungen in Notes realisieren

  • Hallo zusammen
    Ich bin noch realativ neu in Notes und habe da noch ein paar Grundsatzfragen. Ich habe bisher nur mit relationalen Datenbanken gearbeitet, deshalb habe ich ein wenig Problem mit dem Abbilden gewisser Sachen.


    Wenn ich eine 1:n Verbindung machen will, dann nehme ich Antwortdokumente. An diese Antwortdokumente kann ich weitere Dokumente (Rückantworten) hängen. Die sind ja dann mit der DocID beziehungsweise $REF miteinander verknüpft. Soweit so gut oder ist das schon falsch ?...


    Jedoch wenn ich eine m:n Beziehung abbilden möchte, verstehe ich nicht ganz, wie ich das machen soll.


    Bespiel.
    Ich habe mehrere Personen. Diese Personen sind in mehreren Projekten.


    Bei relationalen Datenbanken nimmt man ja dann eine Hilfstabelle und schreibt die ID's hinein. Jedoch was macht man mit Notes ?


    nimmt man dazu 2 Felder und schreibt in das Dokument die Personen-DocID und die Projekte-DocID. Oder schreibt man Fix die Personennamen hinein ?


    Ich hoffe Ihr könnt mir Tipps geben. Bin auf jeden Fall für jeden Ratschlag sehr dankbar.


    Mit einem Gruss
    yukaro

  • Mal ganz einfach gesagt: Notes kannst du nicht mit einer relationalen Datenbank vergleichen und was du da machen willst ist zwar möglich, aber recht aufwendig und umständlich, weil eben Notes nicht dafür gedacht ist.


    Die Frage ist vor allem wie du nachher die Beziehungen nutzen willst:


    Nur zur Verbindung der Dokumente, dann schreib die jeweiligen Schlüssel ins entsprechende andere Dokument.
    Willst du Werte in Ansichten anzeigen dann musst du diese ebenfalls übernehmen, denn Notes kann eben nur Werte eines Dokumentes in einer Ansichtszeile anzeigen

  • Ein wichtiger Hinweis denn du gerade genannt hast.
    Notes kann also in einer View quasi pro Linie nur aus einem Dokument lesen. Ein zusammensetzen wie bei relationalen Datenbanken ist also nicht möglich. Das wusste ich nicht.


    Heisst das, dass ich in jedem Dokument die Namen und alle dazugehörige felder wie Adresse usw. nochmals fix (also ausgeschrieben) speichern muss ?

  • Hallo yukaro,


    ich kann deine Gedanken nachvollziehen, weil ich auch jahrelang mit den relationalen Datenbanken gearbeitet habe.
    Mittlerweile mag ich meine Notes-DBn mehr als die rel. DBn, weil man in Notes gerade die m:n Beziehungen flexibel (bzw. dynamisch) abbilden kann.
    Allerdings geht's nur mit dem Lotus Script gaaaanz flexibel, bei der Formel-Sprache muss man halt einige Einschränkungen berücksichtigen.


    Du musst nicht zwingend die Antwort-Dokumente nutzen. Die sind nur dann gut, wenn man die nie vom Hauptdokument trennen möchte oder dann, wenn die Felder im Antwort-Doc die Werte aus dem Hauptdoc erben sollen.


    Mach' für die Personen eine Maske Person vom Typ Dokument und erfasse die Leute damit. Eine Ansicht mit diesen einzelnen Personen-Dokumenten ist der Ersatz für die entsprechende Hilfstabelle in der rel. DB.
    (Wenn nur Name, Vorname notwendig sind, dann reicht evtl. das Adressbuch als Info-Quelle.
    Oder ihr habt eine Orga-DB, wo die Leute mit allen Daten schon drin stehen, dann kann man die verknüpfen.)


    Plus eine Maske Projekt (ebenfalls vom Typ Dokument ) zum Projekte erfassen.
    In der Projekt-Maske erstelle ein Dialogliste-Feld (mehrere Werte, Formel für Auswahl verwenden oder Adressdialog ), wo man die Personen auswählen kann.


    In den Ansichten kannst du mit kategorisierten Spalten und "Mehfachwerte getrennt anzeigen" - Option die Projekte sehr übersichtlich - auch nach Person - anzeigen.


    Zitat

    Heisst das, dass ich in jedem Dokument die Namen und alle dazugehörige felder wie Adresse usw. nochmals fix (also ausgeschrieben) speichern muss ?


    Nicht unbedingt, man kann die Daten (Adresse usw.) zur Anzeige dynamisch verknüpfen.
    Aber wenn du die Projekt-Docs drucken willst (mit allen Daten), dann musst du diese Daten in der Projekt-Maske speichern.


    ...oder du machst für Druck eine Extra-Maske, aber das kann ich jetzt mit wenigen Worten nicht erklären...