alle (sub)formulieren Vernieuwen

Status
Niet open voor verdere reacties.

Bospeen

Gebruiker
Lid geworden
23 aug 2005
Berichten
150
Beste forumleden,

Ik heb een formulier met meerdere sub-formulieren.
Als ik invoervelden in een sub-formulier bewerk, wil ik dat hierna alle (sub)formulieren automatisch worden ververst.

Ik heb het geprobeerd met macro's en VB-code (gebeurtenisproc. AfterUpdate) voor het veld in het sub-formulier, maar ik krijg niks werkend. Mijn VB-kennis is hiervoor niet toereikend.
Dus graag hulp!

Met vriendelijke groet,
Peter Boissevain
 
Dan zou ik een voorbeeldje posten, want als je te weinig van VBA weet (en dat heb je toch echt nodig) dan denk ik niet dat je de code in de db krijgt.
 
Alle (sub)formulieren Vernieuwen (aanvullende info)

OctaFish, ik heb wel iets kennis van VBA, maar niet genoeg om de code samen te stellen.
Als het voor jou makkelijker is dat ik een voorbeeld bijvoeg, dan moet ik de db wel eerst "uitkleden" vanwege privacy. Wat moet er dan precies in het voorbeeldje zitten?

Of heb je aan het volgende genoeg...

Mijn hoofdformulier heet "Frm_medewerker"
Het "Subformulier Tabel_medewerker_producten" bevat een invoerveld "product"
Het "Subformulier Tabel_medewerker_opleidingen" bevat een invoerveld "opleiding_nr"

Bij muteren van deze velden, moet in beide gevallen het "Subformulier Qu_opleidingen_bij_producten_en_niveau" automatisch worden ververst.
 
Een voorbeeld bestandje is makkelijker, en er hoeven ook weinig records in te staan. Een paar dummy gegevens is genoeg. Zolang alle formulieren er maar in zitten.
 
Ik snap eerlijk gezegd niet zoveel van je db. Ik hoop dat je in je productie omgeving wél met sleutelvelden werkt, want in deze db zit geen enkel sleutelveld. Niet alleen niet gedefinieerd als sleutel, maar ook niet als zodanig aanwezig. Dus dat zou ik in ieder geval regelen voordat je überhaupt (te laat.....) met formulieren aan de slag gaat. Verder heb je (althans: in je voorbeeld) geen relaties gelegd. Dat laatste kán ook helemaal niet als je geen sleutelvelden gebruikt maar zoals ik al zei: dat is de eerste stap :). En gebruik numerieke velden als sleutel als het even kan. Dus in de tabel [Niveau] voeg je een veld [NiveauID] toe, in [Producten] een veld [ProductID] etc. Vervolgens moet je in de gekoppelde tabellen de tekstvelden vervangen door numerieke velden, dus in [Medewerkers] maak je van [functie1] een numeriek veld (gegevens worden dan gewist) en je vervangt de tekst "toezicht binnen" door het getal 2. Dit kun je allemaal wel met bijwerk queries doen overigens, want als je veel records hebt ben je wel even bezig. Maar het is belangrijk dat je structuur goed is, en dat is hij nu bepaald niet.
Als dat allemaal is geregeld, kun je naar de formulieren kijken. En wat doet overigens de tabel [Tabel_budgetjaar] in je db? Dat is echt een overbodige tabel...
 
Dat is mij allemaal bekend, dit is nog geen productieversie.
Waar ik naar op zoek ben is de manier (code) waarop ik een knop (met macro vernieuwen) op het hoofdformulier, kan laten uitvoeren na het bijwerken van een veld op een sub-formulier.
 
Ik heb intussen een Function (me.refresh) aangemaakt die wordt aangeroepen en alle (sub)formulieren netjes ververst na het bijwerken van een veld op één sub-formulier.
Echter... als ik een record verwijder, worden de (sub)formulieren NIET bijgewerkt... dit ziet Access blijkbaar niet als een (After)Update.....

Ik sta open voor suggesties...
 
geen oplossing?

Niemand hier op het forum die een oplossing weet??
 
Doe eens een recente versie van je db bij je bericht :).
 
een recente db-versie heeft alleen uitbreidingen, voegt niets toe aan het principe.
Mijn vraag is eigenlijk heel simpel: neem bijvoorbeeld één hoofdformulier met 2 sub-formulieren, een record op het 1e subformulier bepaalt (querymatig) de waarden in de records op het 2e sub-formulier.
Als het veld/record op het 1e sub-formulier wordt bewerkt of verwijderd, moeten de records op het 2e sub-formulier automatisch ververst worden.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan