ACCESS Datenbank zu Notariatsurkunden

Hallo!

Nach mehreren Tagen der Verzweiflung habe ich mir ein Herz gefasst und moechte Euch um Eueren Rat bitten :rolleyes: :
Ich bin gerade dabei, auf Access 2003 eine Datenbank fuer mein Dissertationsprojekt „Deutsche Kaufleute in Lissabon im 18. Jh.“ zu erstellen. Da ich hauptsaechlich mit Notariatsurkunden arbeite, habe ich zuerst eine Haupttabelle/Hauptformular entworfen, in welchem jeder Datensatz eine Urkunde darstellt (ID ist die von mir eingetragene Archivnummer; ansonsten gibt es noch weitere Felder wie Bezeichnung, Datum etc.).
Daneben habe ich eine weitere Tabelle/Formular erstellt, die sozusagen den „Pool“ der Beteiligten an den Rechtsgeschaeften erfasst, also Kaufleute und Handelsgesellschaften.
Nun kommen wir zum Problem:
Bei jeder Urkunde gibt es mindestens zwei, manchmal auch drei Parteien im Rechtsgeschaeft, welche sich wiederum zumeist aus verschiedenen Kaufleuten bzw. Gesellschaften zusammensetzen. Ich dachte mir also, 3 Tabellen fuer jede Partei (Ausgangspartei, Gegenpartei, Drittpartei) anzulegen und diese mit der Tabelle der Kaufleute_Gesellschaften zu verbinden. Die jeweiligen „Partei“-Tabellen habe ich via ID (Autokey) mit der Haupttabelle verbunden und mittels der ID der tblKaufleute_Gesellschaften mit eben derselben.
Dann habe ich im Hauptformular (Urkunden) fuer jede Partei ein Unterformular eingerichtet, sprich: dreimal die tblKaufleute_Gesellschaften als Unterformulare im Hauptformular.

Nun ja, das Resultat war nicht sonderlich befriedigend. Die beteiligten Kaufleute/Gesellschaften werden zwar nach der Eingabe in ihrer Tabelle eingetragen, wurden aber nicht im Datensatz des Formulars gespeichert. Auch sonst wird keine Verbindung der tbl Kaufleute mit den Daten der anderen Tabellen ersichtlich.

Wahrscheinlich bin ich das Ganze voellig falsch angegangen. Ich nehme an, fuer Euch hier fallen solche Probleme in die Kategorie „Kindergarten“.
Wenn trotzdem jemand von Euch bereit waere, einem Access-Analfabeten zu helfen, wuerde mich dies sehr freuen!

Vielen Dank im voraus, Gruesse aus Lissabon,

Thomas

Hallo Thomas,
ich habe mir deine Anfrage ein paar mal durchgelesen, kann mir aber keinen Reim draus machen.
Sollte dir noch keiner geholfen haben, dann liste doch mal die Tabellen auf und schick sie mir.

Gruß
Erika

Hallo Thomas

Vielleicht kann ich dir helfen. Ich habe etwas ähnliches gebaut. Bei waren es Firmen die in der Haupttabelle erfasst werden und die Kontaktpersonen die in einer weiteren Tabelle erfasst werden. Die Firmendaten im Hautpformualr die Kontaktpersonen im Unterformular.

War nicht ganz so einfach.

Wenn ich es richtig verstehe, hast du die Tabellen direkt mit den Formularen verbunden. Das sollte immer über Abfragen geschehen. Nicht direkt.

Wenn du vom „Verbinden“ redest, nehme ich an du meinst in den Beziehungen hast du sie verbunden. Das ist ok genügt aber noch nicht.

Die beiden Key’s müssen identisch sein. D.h. der Hauptkey muss identisch sein mit dem Key in den „Untertabellen“. HauptID 4711 = UnterID 4711

Dazu stellst du die Eigenschaften des ID Feldes in den Untertabellen entsprechend ein. Hier kann es ja die ID durchaus mehrmals vorkommen.

Wenn du dein Formular nun angepasst hast mit den Abfragen, kannst du in den „Eigenschaften“ der Unterformulare im Register „Daten“ die „Vernüpfung von“ zu der „Verknüpfung nach“ einstellen. D.h die UnterID mit der HauptID.

Wenn du die Formuale neu kreierst, wird dir der Assistent dabei helfen.

Ich hoffe, ich habe es einigermassen erklären können.

Gruss Jürgen

Ebenso Hallo,

zu dieser Access-Anwendung vermute ich, dass keine Beziehungen festgelegt wurden. Diese kann man wie folgt erstellen:
Auf Extras klicken. Dann Beziehungen …
Tabellen auswählen Ok klicken
Danach mit der Mouse auf den Key der Haupttabelle mit dem Key der Untertabelle eine Beziehung bearbeiten und auf Verknüpfungstyp… klicken. alles weitere ist selbst erklärend. Unter Hilfe F1 gibt es eine detaillierte Beschreibung.

Hallo Thomas,

zuerst mal Entschuldigung, dass ich mich so spät melde.
Außerdem keine Scheu vor Fragen. Wenn sie wirklich einfach sind, sind sie ja schnell beantwortet :wink:)

Zu Deinem Problem. Ich denke eine Fixierung auf drei Vertragsparteien, ist zu eng. Wenn die Firmen z.B. einen Verband gründen, wie die Hanse oder eine IHK oder sowas, dann gibt es viele (Gründungs-)Mitglieder und es würde Deinen Programm-Rahmen sprengen. Ganz generell, denke ich, ist die Anzahl der Vertragsparteien unbestimmt. Für solche Fälle löst man das mit EINER Tabelle, an die man nicht auf Anhieb denkt. Ich würde sie „Vertragspartner“ nennen.

Diese Tabelle hat in etwa folgenden Aufbau.

  • ID
  • Urkunden-Nummer ) beides teil des eindeutigen
  • Fortlaufende Nummer 1,2,3 je Urkunde) Schlüssels
  • Referenz auf Deine Handelspartner-Tabelle
  • und jetzt kommts, einen Parameter für die Vertragspartnerfunktion, z.B. Käufer, Verkäufer, Mitglied, Drittpartner, Erblasser usw. (diese können eventuell in einer weiteren Tabelle hinterlegt sein, sodass man hier nur die Referenz-nr. einträgt. Also 1 = Käufer, 2 = Verkäufer usw.

Um jetzt ein Geschäft umfassend zu beschreiben, brauchst Du einen Datensatz aus der Urkundentabelle und 1 bis viele Datensätze aus der Vertragspartner-Tabelle (ein Testament z.B. hätte nur einen Vertragspartner)

Die Vertragspartner-Tabelle kann darüberhinaus noch
weitere Felder enthalten.

Die Positionen Tabelle einer Rechnung ist so etwas
Ähnliches. Positionen kann es (nahezu) beliebig viele
geben, sie beginnen immer mit 1,2,3 auf jeder Rechnung.
Jede Position enthält einen Artikel, (Menge haben wir
hier nicht, dafür die Funktion). In der Positionentabelle gibt es auch öfter die 1, die 2 und die 3 und der eindeutiges Schlüssel ist deshalb die Rechnungsnr plus Positionsnr., bei Dir Urkundennr. plus
Position.

Ich hoffe, mit diesen Überlegungen kommst Du ein gutes Stück weiter, auch wenn das von Deinem ursprünglichen Denkansatz ein ganzes Stück entfernt ist. Als ich das
erste Mal damit in Berührung gekommen bin, habe ich mich
auch erst gesträubt und dachte, das muss doch anders (und einfacher) gehen. Ist aber die richtige Antwort auf diese Art von Fragestellung :wink:

Herzliche Grüße

Peter

Hallo Peter,

vielen Dank fuer Deine Antwort und Deine Hilfsbereitschaft. Beim Eintreffen Deiner E-Mail war die Datenbank („with a little help of my friends“) bereits in eine Richtung gegangen, die, wie ich denke, Deinem Modell nahekommt: Ich habe in einem Hauptformular „Urkunden“ mittels eines Unterformulars jeder in der Urkunde vorkommenden „Partei“ eine „Rolle“ im Rechtsgeschaeft zugewiesen (zwei Kombinationsfelder). Und zu meinem Erstaunen funktioniert es tatsaechlich…
Entspricht das ungefaehr Deinem Ansatz?
Und Du hast Recht, man muss wirklich lernen „umzudenken“. Aller Anfang ist schwer!

Aber Du koenntest mir vielleicht bei einem anderen Problem helfen, denn ich habe natuerlich erwartungsgemaess etwas Murks in die Datenbank eingebaut:
Die beiden Felder „Rolle“ und „Partei“ haben als Datenherkunft eine Abfrage. Funktioniert prima. Daneben gibt es noch zwei weitere Kombinationsfelder („Ort“ und Land"), die in der Datenherkunft auf einer Tabelle beruhen. (leider)
In allen vier Kombinationsfeldern kam es zu Duplikaten in der aufklappenden Liste. In den beiden ersteren konnte ich dem leicht abhelfen, da diese eben auf einer Abfrage beruhen (Spalte in der Abfrage auf unique aendern und speichern). Bei den auf der Tabelle beruhenden Feldern geht das aber nicht. Was tun, ohne das gesamte Formular nochmal erstellen zu muessen?

Da das Ganze so nicht gravierend ist und ich nach 2589 erstellten Vorlaeufer - Formularen etwas von der Lust verlassen wurde, wuerde ich es einfach so belassen.
Aber vielleicht weisst Du ja Rat…

Danke bereits im voraus!

Beste Gruesse aus Lissabon,

Thomas

Hallo Thomas,

ja, ich denke, das geht in die Richtung, die ich Dir vorgeschlagen habe.

Zu Deinem anderen Problem, weiß ich jetzt nicht, ob ich Dir helfen kann. Ganz klar ist mir nicht, was die beiden Tabellen Ort und Land machen. Könnte man auf beide eventuell einfach eine Abfrage machen und diese mit den Kombinationsfeldern verknüpfen? Natürlich bei beiden die entsprechende Spalte ebenfalls auf Unique.
Oder schreibst Du in die Tabelle zurück, dann hilft
das natürlich nicht.

Viele Grüße und weiterhin frohes Schaffen.

Peter

Hallo Thomas,
habe gerade erst Zeit für eine Antwort gefunden. Am besten legst Du eine weitere Tabelle an-

Da braucht du folgende Felder.
ID
Art der Beteiligung -> „Ausgangspartei, Gegenpartei, Drittpartei“ als Nachschlageliste
Beteiligter -> Nachschlageliste auf „tblKaufleute_Gesellschaften“
Urkunden ID -> auf Haupttabelle

Jetzt verknüpfts Du in der Maske ein Unterformular mit der neuen Tabelle. Jetzt kannst Du soviele Beteiligte verknüfen wie Du brauchst.

Gruß
Thomas