Gelinkte tabellen automatisch bijwerken

Status
Niet open voor verdere reacties.

lunatic95

Gebruiker
Lid geworden
29 aug 2013
Berichten
36
test.png

Bovenstaand formulier bevat een subformulier, en voor iedere record (ieder bedrijf) in het hoofdformulier worden de bijbehorende contactpersonen in het subformulier getoond dankzij de rechtstreekse relatie tussen de kolommen "Bedrijfsnaam" uit beide tabellen (in het subformulier is deze kolom verborgen). Echter, zodra ik de bedrijfsnaam verander, worden de contactpersonen niet meer getoond, omdat in die tabel de oude bedrijfsnaam blijft staan. Hoe zorg ik ervoor dat de nieuwe bedrijfsnaam ook in de 'subtabel' wordt overgenomen?
 
Wat is eigenlijk probleem? Als het goed is heb je de tabel gekoppeld op basis van een (niet zichtbaar?) sleutelveld BedrijfsID. De bedrijfsnaam hoef je in het subformulier dan niet te zien, en hoort daar ook niet in te zitten.
Een ander verhaal is als je met die keuzelijst het hoofdformulier wilt filteren. Of een record wilt opzoeken (standaard functionaliteit van de wizard). Dat zou prima moeten werken, en dan loopt het subformulier ook mee. Maar ik vermoed dus dat je met de keuzelijst het actieve record wijzigt, en dat zou je niet moeten doen.
 
Het probleem is vreemd genoeg opgelost door het subformulier op de datasheet-weergave te zetten. Bedankt voor het meedenken!
 
er mist een sleutelveld

Je hebt de relatie tussen de bedrijfsnaam gelegd als sleutelveld, daardoor kan je dat niet wijzigen zonder consequenties voor de gekoppelde tabel.
Je mist een numeriek veld bij contactpersonen, deze neem je op in het subformulier en koppel je aan het ID van de klanten (dat is de - heen en weer - relatie). Die doet het zo wie zo, ook als je verder geen relatie zou leggen.

Je kunt hier zien wat er precies gebeurd (er zijn overigens meer manieren maar dan doet Access dat voor je en zie je niet wat je eigenlijk doet).

Bekijk bijlage Testbestand.zip
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan