vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
vb@rchiv Offline-Reader - exklusiv auf der vb@rchiv CD Vol.4  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB & Datenbanken
Verknüpfungen / Beziehungen per VBA bzw. Makro setzten 
Autor: vba_noob
Datum: 14.08.15 12:01

Hallo ihr Lieben!

Ich hab da eine Abfrage die mir 5 Parameter zueinander filtert.

Kunde /-/ Projekt /-/ Typ /-/ Art.Nr. /-/ Ausführung

Als Grundlage für hab ich eine RIESIGE Datenbank in der für jeden einzelenen Artikel in jedem Projekt ein Datensatz existiert, ich hab eine Tabelle (Zusammenfürhung) mithilfe einer Erstellungsabfrage gemacht, die eben nur diese Informationen drinnen haben (Kunde, Projekt,....). Außerdem Hab ich jeweils eine Abfrage für die Parameter gemacht, die mir sozusagen eine Liste der Kunden(bzw. Projekt,...) macht. Die Tabelle habe ich mit diesen Abfragen verknüpft (Typ 2 ist glaub ich 1:n)

So weit so gut, ich hab ein Auswahlfeld und einen Filterbutton, wenn ich z.B. einen Kunden anklicke und dann den button, zeigt es mir nur noch die Projekte, Typen, Art.Nr. und Ausführungen an die dieser Kunde auch hat.
Es funktioniert also hervorragend, genau so soll es sein.

Das Problem jetzt, wenn Neue Daten dazu kommen. Es kommt ein neuer Kunde dazu. in der Kundenabfrage ist er gleich drinnen (eh klar) aber in meiner Tabelle (Zusammenführung) natürlich nicht, wenn ich aber meine Erstellungsabfrage ausführe, sind ja die Verknüpfungen mit den Listenabfragen weg... Dann geht das filtern logischwerweise nichtmehr...

Kann ich iwie die Verknüpfungen als Makro bzw. VBA automatisch setzen?

Beitrag wurde zuletzt am 14.08.15 um 12:03:57 editiert.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Verknüpfungen / Beziehungen per VBA bzw. Makro setzten 
Autor: vba_noob
Datum: 18.08.15 10:56

Hab mir da sowas in die Richtung vorgestellt...

Public Function fcBeziehungen()
    Dim DB As DAO.Database
 
    Dim newRelK As Ralation
    Dim newRelP As Ralation
    Dim newRelT As Ralation
    Dim newRelA As Ralation
    Dim newRelAs As Ralation
 
    Set DB = CurrentDb
 
    Relations.DelateRelations (0)'wie geht das?
 
    DB.Execute "Zusammenführung_Abfrage"
 
    Set newRelK = DB.CreateRelation("ZusammenführungKunde", "Zusammenführung", _
      "Kunde")'Wo lege ich den Verknüpfungstyp 1:n fest ???
    Set newRelP = DB.CreateRelation("ZusammenführungProjekt", _
    "Zusammenführung", "Projekt")
    Set newRelT = DB.CreateRelation("ZusammenführungTyp", "Zusammenführung", _
    "Typ")
    Set newRelA = DB.CreateRelation("ZusammenführungArt", "Zusammenführung", _
    "Artikel_Nr")
    Set newRelAs = DB.CreateRelation("ZusammenführungAusführung", _
    "Zusammenführung", "Ausführung")
 
    Set DB = Nothing
 
End Function
Leider weiß ich aber auch nicht, wie ich die Beziehungen lösche....
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Verknüpfungen / Beziehungen per VBA bzw. Makro setzten 
Autor: vba_noob
Datum: 18.08.15 11:52

Weiß nicht genau wie das ganze funktioniert, aber.... es funktioniert^^

Public Function fcBeziehungen()
    Dim DB As DAO.Database
 
    Dim REL As DAO.Relation
 
    Dim newRelK As Relation
    Dim newRelP As Relation
    Dim newRelT As Relation
    Dim newRelA As Relation
    Dim newRelAs As Relation
 
    Set DB = CurrentDb
 
    For Each REL In DB.Relations
        DB.Relations.Delete REL.Name
    Next REL
 
    DoCmd.DeleteObject acTable, "Zusammenführung"
    DB.Execute "Zusammenführung_Abfrage"
 
    Set newRelK = DB.CreateRelation("ZusammenführungKunde", "Zusammenführung", _
      "Kunde")
    Set newRelP = DB.CreateRelation("ZusammenführungProjekt", _
    "Zusammenführung", "Projekt")
    Set newRelM = DB.CreateRelation("ZusammenführungTyp", "Zusammenführung", _
    "Typ")
    Set newRelE = DB.CreateRelation("ZusammenführungArt_Nr", "Zusammenführung", _
    "Art_Nr")
    Set newRelps = DB.CreateRelation("ZusammenführungAusführung", _
    "Zusammenführung", "Ausführung")
 
    Set DB = Nothing
 
End Function
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel