Hallo zusammen,
ich habe ein großes Problem mit einer selbst entwickelten DB, an der ich bereits seit 1,75 Jahren bastele. Diese soll der Ermittlung von Verkehrswerten von Grundstücken dienen. Ich war fast fertig damit, als mir auffiel, das was fehlt. Diese Änderungen waren allerdings erheblich:
Vorher gab es nur ein Grundstück, auf das sich alles bezog. Nun habe ich noch 3 Ebenen
2. Ebene: Bewertungseinheit (BWE)
3. Ebene: Teilgrundstück (TG)
4. Ebene: Grundstücksteilbereich (GTB))
dem Grundstück untergeordnet. Diese Unterebenen sind dazu da, um das (Gesamt-)Grundstück (1. Ebene) aufzuteilen, um es differenziert bewerten zu können.
Zur Verdeutlichung hier ein komplexes Beispiel der zugehörigen IDs (je 1:n) zur Grundstücks-ID 3:
GST--BWE--TG--GTB
3-----1------8----2
3-----1------8----25
3-----2-----34----26
3-----2-----34----27
3-----2-----56----28
Dabei habe ich entschieden, egal ob ein Grundstück aufgeteilt werden muss oder nicht, programmtechnisch werden immer alle Ebenen angelegt, da z.B. nur der GTB mit einem Eurowert bewertet werden kann. Dem TG sind evtl. Bebauungen zugeordnet und besitzt daher auch einen Teil-Verkehrswert, der zum Gesamt-Verkehrwert führt.
Die Tabellen und Eingabeformulare sind soweit überarbeitet. Nun bin ich bei der Ausgabe in einer Sackgasse. Ich habe einen VBA-Code, der bisher nur das Gesamtgrundstück (GST) behandelt. Ziel des Codes ist es, Word-Serienbrief-Dokumente in Word auszuwerten und zusammenzuführen. Das hat auch bisher funktioniert. Die Pfade werden in der Abfrage qry_GAAufbau2 gesammelt.
Durch die Einfügung der o.g. Ebenen müsste der Code dynamisch reagieren. D.h. es müssten Prozeduren u.U. mehrfach durchlaufen werden. Da stehe ich nun auf dem Schlauch (wahrscheinlich bin ich inzwischen betriebsblind geworden)
Hier der entscheidene Teil des Codes:
Dim Pfad1 As String, Pfad2 As String
Dim ZPfadRtf As String, ZPfadDoc As String, QPfad As String, Makro As Integer
Dim Pfadx As String, Pfady As String, ID As Integer, Endg As String, Uspr As String, Aktual As Integer
Dim Word As Object
Pfad1 = DLookup("[txt_Pfad]", "[tbl_TXTPfadeNeu]", "[TXT_ID] = 1")
Pfad2 = DLookup("[txt_Pfad]", "[tbl_TXTPfadeNeu]", "[TXT_ID] = 2")
Dim db As DAO.Database
Set db = CurrentDb
Dim rs As DAO.Recordset
Set rs = db.OpenRecordset("SELECT * FROM qry_GAAufbau2")
Do Until rs.EOF
Pfadx = rs.Fields("txt_Pfad").Value
Pfady = rs.Fields("txt_Pfad").Value
ID = rs.Fields("Doku").Value
Endg = rs.Fields("TXT_End").Value
Uspr = rs.Fields("TXT_Ursprung").Value
Aktual = rs.Fields("TXT_Aktual").Value
Makro = rs.Fields("TXT_Makro").Value
... 'Hier erfolgt die Portierung der einzelnen Serienbriefe nach Word
rs.MoveNext
Loop
rs.Close
Auf der anderen Seite holen sich die Serienbriefe die Daten aus div. Ausgabe-Abfragen. Diese müssen nun je nach Erfordernis per VBA-Code nach GSt, BWE oder TG gefiltert werden. (Vorher waren sie als Kriterium nur nach GSt gefiltert).
Hat jemand eine grobe Idee, ob und wie ich zum Ziel komme kann? Oder mich auf unüberwindbare Fallstricke hinweisen kann?
Gruß
Max
Hallo,
zeige mal ein Bild des Beziehungsfensters.
Hier die Beziehungenimage486.png
Gruß
Max