Acces opdracht

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

52866

Gebruiker
Lid geworden
16 mrt 2010
Berichten
52
Hallo.

Ik heb een oefen opdracht gekregen van een vriend van mij.
Maar ik ben vrij nieuw met access dus ik vroeg me af of jullie mij de goede richting in kunnen schoppen? Smile

Opdracht:

Code:
Een vereniging wil de administratie automatiseren. Op dit moment worden de leden bijgehouden op een oude PC in een Access database. In deze database staat ��n tabel met NAW gegevens van alle leden. Bovendien staat er in een veld een contributiebedrag en een veld �betaald�.

Een keer per jaar (april) krijgen de leden een factuur. Deze wordt in Word opgesteld en afgedrukt (afdruk samenvoegen).
Nadeel: Alle leden krijgen een factuur en dus krijgen familieleden er 2 of meer.

In augustus krijgen alle leden die niet hebben betaald een herinnering.

Aan het eind van het jaar wordt het veld �betaald� leeggemaakt voor het komende jaar.

Nadeel: Leden die dan nog niet hebben betaald moeten met de hand worden bijgehouden!

Men wil toe naar een systeem waaruit ��n factuur per gelijk adres (postcode + huisnummer). Ook dient het systeem de betaling te registreren per jaar. Later moet dus zichtbaar zijn wat de betaling over de afgelopen jaren was.
Vanuit het systeem moet het mogelijk zijn om via een query groepen samen te stellen waarvoor bepaalde brieven worden opgesteld. Deze groepen zijn:
Soort lid     (junior, senior, donateur, overigen)
Wedstrijdlid (ja nee)
Vrijwilliger (bestuur, wedstrijd, commissie, overigen)

Ik heb het invoer formulier gemaakt, en dat werkt.
maar nu het volgende.
1. Als ik de factuur brief wil maken, hoe moet ik dat doen?
Ik dacht dat je dat toch via wordt moet doen?

2. En hoe kan ik het per jaar laten opslaan voor het jaar overzicht?

Bedankt voor de hulp.
Groetjes Mitchel
 
Leuke opdracht. Ik zie dat je gelijk begonnen bent met een formulier. Dat is eigenlijk pas de derde stap.

Allereerst moet je nadenken over de structuur van je database (er zal minimaal 1 tabel bij moeten). Hint. Maak een extra tabel voor de betalingen. Houd rekening met het feit dat mensen soms per gezinslid betalen en soms in 1 keer.

Vervolgens is de truc om de juiste selectiequeries te verzinnen. Het formulier volgt dan eigenlijk vanzelf.

En het maken van de brieven/facturen kun je zowel vanuit word (mergemail) doen als vanuit access.
 
Je moet inderdaad beginnen met je database. aan de hand daarvan kan je beter je formulieren ontwerpen en je queries maken.
Informatie over het normaliseren van je database kan je hier vinden. Doel hiervan is dat je geen dubbele gegevens in je database krijgt(redundantie) en dat je beter omgaat met repeating groups.
 
Ik heb 1 tabel met de volgende velden:
Code:
-voornaam
-tussenvoegels
-achternaam
-postcode
-woonplaats
-huisnummer
-vrijwilliger
+bestuur
+wedstrijd
+commissie
+overigen
-soortlid
+junior
+senior
+donateur
+overigen
-wedstrijdlid
+ja
+nee
-betaald
+betaald

vanuit het systeem moet het mogelijk zijn om via een query groepen samen te stellen waarvoor bepaalde brieven worden opgesteld.

Hoe moet ik dit doen?
ik moet dus een brief(rapport) maken met een filter functie?
maar hoe moet ik zo iets uit voeren?
een nieuwe qeury maken met filter by groep en dat 10x omdat ik 10 opties heb?

SELECT Leden.voornaam, Leden.tussenvoegels, Leden.achternaam, Leden.postcode, Leden.woonplaats, Leden.huisnummer, Leden.vrijwilliger, Leden.soortlid, Leden.wedstrijdlid, Leden.betaald
FROM Leden WHERE soortlid="donateur";

dan moet ik dit 10x doen, maar dan soortlid veranderen en donateur...
ik denk niet dat dat de bedoeling is xD
 
Laatst bewerkt:
Je moet beginnen met het onderscheiden van de gegevensgroepen. Zo heb je aparte velden voor
-soortlid
+junior
+senior
Dit is echter een klassificatie die, vermoed ik, voort komt uit de duur van het lidmaatschap. Oftewel: iemand wordt automatisch na zoveel tijd senior. Dat gegeven bereken je dus in een query op basis van de aanmeldingsdatum.
Om de facturen te systematiseren, en eigenlijk ook de gezinssamenstelling, moet je de gezinsleden aan elkaar koppelen. Je maakt er dan een veld bij (bijvoorbeeld ParentID) waarin je het lidnummer van het hoofdlid neerzet. Om straks te factureren gebruik je dan de Hoofdleden van een familie, en kun je simpel de bedragen erbij optellen voor de leden die bij het hoofdlid horen.
En je hebt een aparte tabel nodig voor de betalingen, want een veldje Betaald zegt natuurlijk helemaal niks, want je bent dan je historie kwijt over vorige betalingen. Maak dus op zijn minst een extra tabel voor de betalingen.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan