Record verwijderen

  • Onderwerp starter Onderwerp starter cbul
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

cbul

Gebruiker
Lid geworden
5 feb 2015
Berichten
42
Ik heb een formulier met klanten - daarin een subformulier met contactgegevens (telefoon, gsm, website, emailadres....).
een klant toevoegen lukt, geen probleem - maar een klant verwijderen lukt niet, ik moet altijd eerst de contactgegevens verwijderen en dan pas kan ik een klant verwijderen.
op zich is dit wel logisch, maar niet praktisch. Hoe kan ik dit oplossen zodat ik via 1 klik een geselecteerde klant uit het bestand kan halen.
 
ik verwijder meestal niet maar voeg een veld 'buitengebruik' toe. Als je dan vervolgens steeds filterd krijg je toch de mensen die je wilt hebben zonder dat je verwijzingen en alles de mist in gaan.
 
Het verwijderen van records uit een database is een riskante zaak, want daarmee raak je ook je historie kwijt. Bij klanten heb je vaak transacties, (inkoop, verkoop) en je wilt natuurlijk niet dat je die transacties verliest, want dan kloppen de omzetgegevens niet meer. Daarom gebruik je altijd <Referentiële integriteit> om te voorkomen dat je dat wél kan doen. Dat kun je natuurlijk uit zetten, maar dat is het paard achter de wagen spannen! Daarom worden records meestal niet verwijderd maar gearchiveerd, bijvoorbeeld met een selectievakje. Hoe je dat noemt boeit natuurlijk niet. Je kunt dat veld "Actief" noemen, of "Buiten_Gebruik", dat maakt niet zoveel uit, behalve dat de functie van het veld wel de betekenis moet volgen. Als het veld 'Actief' heet, en het is aangevinkt, dan werk je met die klant. Heet datzelfde veld 'Buiten_Gebruik' dan is het precies andersom.

Dat gezegd hebbende: er is in de relatie een optie om records trapsgewijs te verwijderen. Als je die aanvinkt bij de relatie tussen [Klanten] en [Contactgegevens] dan werkt het verwijderen wél. Je kunt dan een klant verwijderen, en Access gooit dan zelf ook de gekoppelde records in [Contactgegevens] weg. Staat het vinkje uit, dan moet je eerst zelf de records in [Contactgegevens] verwijderen voordat je de klant kunt verwijderen.
Maar je moet dus heel erg oppassen met die optie :D.
 
ja dacht wel dat je daarmee moet opletten, maar ik bewaar de facturen nog eens allemaal afzonderlijk buiten mijn access. Anders wordt de database ook snel te groot heb ik de indruk. Mijn bedoeling is om de oude gegevens van 2 jaar oud eruit te halen.
Dus stel dat ik de referentiele integriteit via de relatie uitzet dan worden ze wel zonder probleem verwijderd.
ik probeer het straks al eens uit
 
Slechte zaak, wat je van plan bent. Tenzij je 10.000en facturen per maand eruit gooit, onderschat je de capaciteiten van Access! Tenzij je van alles en nog wat ook nog eens afbeeldingen en bijlages in de database opslaat; dan kan het wat harder gaan. Maar zelfs de meest ervaren Access ontwikkelaars zullen je dit afraden.
 
Heb het uitgetest en inderdaad nu werkt het wel, referentiele integriteit heb ik aan laten staan en trapsgewijs verwijderen geactiveerd.
Klanten die worden verwijderd, zijn klanten die niets hebben gekocht of al heel lang niets hebben gekocht.
Nu ben ik wel even aan het zoeken of de optie: macrogroep nog bestaat bij access, vroeger gebruikte ik dat dikwijls maar nu kan ik nergens nog een macrogroep terugvinden - kijk ik erover?
 
Zal vast nog bestaan, maar waarom zou je? Verdiep je in VBA, en vergeet macro's. Elke leerminuut die je daar in steekt had je ook in het leren van VBA kunnen steken, en daar ga je vroeg of laat tóch op over...
 
Ik heb tot ongeveer 5 jaar terug heel veel met access gewerkt en ook in VBA, ben docent en ik gaf enkele jaren terug heel veel access. Was er heel bekwaam in, maar jaren niet meer gebruiken en ik ben alles blijkbaar vergeten.
Ben meer bezig met webdesign nu, de jeugd gebruikt geen access meer en nu is dat meestal mySQL en VB.net
Dus ik geef nu geen Access meer. Enkele weken terug vroeg een vriendin om voor haar bedrijfje iets snel in elkaar te steken in Access - maar heb er mij een beetje aan mispakt. Het zal wel lukken maar met veel vallen en opstaan.
Gelukkig bestaan er nu forums waar je heel veel info kunt krijgen - hoedje af voor al de medewerkers die daar zo veel tijd insteken.
Indien ik veel tijd zou hebben dan zoek ik wel wat meer in VBA, maar nu hou ik het wel even bij de macro's
 
de jeugd gebruikt geen access meer en nu is dat meestal mySQL en VB.net
Ik denk dat je (of moet ik u zeggen? :) ) je daar een beetje in vergist; kijk maar eens rond in het forum hier. De jeugd is volgens mij goed vertegenwoordigd. Ben zelf ook docent geweest, maar ik had dan de mazzel dat ik de kennis in de praktijk ben gaan brengen. En dan wordt het alleen maar beter :D.
Maar aan macro's had ik vanaf dag 1 de schurft, en dat is alleen maar erger geworden met de jaren. Zeker als je kijkt hoe simpel en uitgebreid je bepaalde dingen met VBA kan doen. Dus met macro's ga/kan ik je niet helpen.
 
Ik ben zeker dat ik wel nog het een en ander hier zal vragen, dus tot binnenkort en bedankt voor de info .........
 
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan