Aantal velden berekenen in rapport

Status
Niet open voor verdere reacties.

Laika007

Gebruiker
Lid geworden
4 jan 2013
Berichten
23
Hallo,

Mijn probleem is hetvolgende :

Ik heb net een database gemaakt die een overzicht geeft van themawandelingen en workshops. Het was de bedoeling dat ik voor elke deelnemer 1 rapport afzonderlijk zou maken wat me gelukt is. Dit is me gevraagd om het overzichtelijker te maken voor de administratie zelf.

Nu is het zo dat ik graag een totaal overzicht zou hebben hoeveel mensen hebben deelgenomen bij ELKE themawandeling en ELKE workshop.
Dit had ik graag op een afzonderlijk rapportje gehad. Bijvoorbeeld :

THEMAWANDELINGEN :
Themawandeling 1 : 16 deelnemers
Themawandeling 2 : 4 deelnemers
....
WORKSHOPS :Workshop 1 : 8 deelnemers
Workshop 2 : 12 deelnemers
....

LOCATIE EN UUR WORKSHOPS :
1. van 10.15 tot 10.45 Workshop Prezi Lokaal : Heylewighenkamer : 6 deelnemers
....

De bedoeling is om uiteindelijk op elk moment te kijken naar de capaciteit omdat er slechts een maximum aantal deelnemers per themawandeling of workshop
kunnen meedoen.

http://www.mijnbestand.nl/Bestand-DGQAYHGVV6Z4.accdb
 
Denk dat opbouw van DB anders moet (ACCESS <> EXCEL):

Maak een aparte tabel met :
deelnemers (Id,naam,voornaam,...)
activiteit (Id,Naam,Type (Themawandeling of Workshop),...

en dan eentje (vb Inschijvingen) waar je bijhoudt welke deelnemer (ID) zich voor welke activiteit (ID) ingeschreven heeft
Via een totalenquery kan je dan uit deze laatste tabel de totalen halen.

Groet,

Stijn
 
Ik sluit me aan bij de vorige spreker; je tabellenstructuur is op dit moment niet goed. Je hebt nu een tabel [Inschrijvingen] die noch geschikt is voor de inschrijvingen, noch voor de deelnemers. Bovendien zijn ze op volslagen verkeerde velden aan elkaar gekoppeld, en dat gaat ook alleen maar problemen opleveren. Denk eerst goed na over de brongegevens, zoals de deelnemers (aparte tabel) en activiteiten. Ook je tabel [Themawandelingen] zit vreemd in elkaar, met vier velden [Keuze]. Dus eerst goed nadenken over wat je nu eigenlijk wilt. Ik zie je deelnemer rapporten er niet bij zitten, maar ik hoop dat je met één rapport werkt, en niet voor iedereen een eigen rapport hebt gemaakt (die indruk wek je namelijk).
 
Bedankt voor de reacties. Ik wist tevoren dat de structuur verre van juist zat want heb nog op het laatste moment snel zaken negatief zitten wijzigen.
Octafish, m'n rapport is 'na sectie' ingesteld zodat ik één deelnemer per record kan zien (rpt_inschrijvingen). Er is dus maar 1 rapport.
Als ik het goed begrijp zal ik heel wat primaire en vreemde sleutels moeten inpassen...
 
En tabellen samenvoegen; waarom zou je twee tabellen hebben voor de toelichtingen? Dat is toch één onderwerp? Maak daar dan ook één tabel van.
 
Hallo,

Ik heb besloten om helemaal opnieuw te beginnen en heb enkele tabellen proberen te koppelen.
Ik weet niet of dit volledig op de juiste manier is gebeurd en daarom deze 'oproep'. Ook temeer omdat ik nog niet zo lang bezig ben met access.
Verder blijf ik zitten met de tabel locatie die ik voorlopig nog niet weet te koppelen aan de andere tabellen.

Het is hier de bedoeling van dat bij het invullen van de type activiteit 'workshop' een relatie wordt gelegd naar deze tabel om aan te duiden
wanneer een deelnemer de workshop kan bijwonen.

http://www.mijnbestand.nl/Bestand-76AFLSKTCYUV.accdb
 
Zou er iemand naar m'n tabellen kunnen kijken en eventueel corrigeren waar de primaire sleutel fout zit?
 
Je hebt in ieder geval een foutje gemaakt met de tabellen Inschrijvingen en Activiteiten; in beide heb je het veld ActiviteitID als sleutelveld. Dat kan in ieder geval niet in de tabel Inschrijvingen; daar zou ik InschrijvingID als sleutel verwachten. Bovendien is het veld DeelnemerID ook niet goed te koppelen, want je kunt Referentiële integriteit niet aanvinken. En dat maakt de relatie volkomen waardeloos. Bovendien heb je in Inschrijvingen ook een veld Naam deelnemer, en die hoort daar niet.
 
Octafish,

Zou je, bij wijze van voorbeeld, in m'n bestand even de juiste relaties kunnen aanleggen? Ik had graag tegen het weekend de database afgekregen en momenteel lukt het me nog niet helemaal om ze exact te koppelen. Je ziet maar wanneer het beste voor je past.
Alvast bedankt!
 
De basis koppelingen zijn gelegd; kun je weer even verder.
 

Bijlagen

Octafish,

Alvast bedankt voor het leggen van de nodige koppelingen. Kan je me soms zeggen hoe ik het beste de query gebruik met het uitroepteken voor?
Hij voegt blijkbaar telkens 4 rijen toe.

Tenslotte zou het nog de bedoeling zijn dat men kan zien hoeveel activiteiten telkens werden gekozen. Ik las dat dit kan met een totalenquery?
Of is daar een andere oplossing misschien voor?
 
De toevoegquery kan weg, die heb ik gebruikt om de namen van de deelnemers naar de juiste tabel te verplaatsen. Ook moet het veld [Naam deelnemer] weg uit tblInschrijvingen. Want die hoort daar niet.
 
Ok ik ga dit aanpassen. Zou ik nu m'n totalenquery kunnen opbouwen met het aantal activiteiten (dus zowel themawandelingen als workshops)?
Is dit niet vrij omslachtig op te stellen?
 
Je bent anders nog lang niet klaar met je tabellen; als je een veld als [Locatie naam] in [tblLokaties] bekijkt, dan zie je daar waarden als: "4. van 12.30 tot 13.00 Workshop Facebook Lokaal : Mechtildenkamer" en "2. van 11.00 tot 11.30 Workshop Prezi Lokaal : Heylewighenkamer". Dat riekt naar problemen! Splits die gegevens in ieder geval op in verschillende deelvelden, want dit gaat zo niet werken. Elk gegevenstype moet in een eigen veld. Dus een begin- en eindtijd is een apart veld, het type Workshop is een apart veld en de lokatie uiteraard ook. Maak daar desnoods aparte tabellen van, want herhalende gegevens kun je op die manier beter beheren.
 
Hallo,

Ik heb ondertussen enkele tabellen bijgemaakt zoals 'Wandelingen', 'Workshops', 'Kamer', 'Begintijd' en 'Eindtijd'. Ik ga er nu vanuit dat m'n oorspronkelijke tabellen 'Activiteiten' en 'Locatie' niet meer van toepassing zijn? Voorlopig heb ik ze er wel nog laten bijstaan maar de andere tabellen werden dus zoveel mogelijk opgesplitst.

Momenteel blijf ik wel nog problemen ondervinden met het koppelen van de velden omdat ik vermoed dat het fout loopt bij de tabel inschrijvingen. Ook de begin-en eindtijd koppelen is me nog niet zo duidelijk.

Uiteindelijk zou het de bedoeling moeten zijn om op m'n inschrijvingsformulier zoveel mogelijk gebruik te maken van invoerlijsten met keuzevak.
Alvast m'n excuses maar probeer elke dag wel bij te leren.

http://www.mijnbestand.nl/Bestand-V4NUL8M4ASZS.accdb
 
Ik zal vanavond weer een blik op je db werpen. Tot die tijd kun je misschien nog eens uitleggen wat de bedoeling van de db is, en hoe de procedures etc er nu uit zou moeten zien. Want ik snap nog steeds niet helemaal wat je nu eigenlijk wilt. Behalve dat je workshops hebt, wandelingen en deelnemers. Daar zit nu blijkbaar ook een tabel Kamer bij, en Begintijd en eindtijd?

Begin eens bij het begin, en leg zo duidelijk mogelijk uit wat dus de bedoeling is van je db :)
 
Octafish,

Ik wil dus een database opzetten waarin ik aan de hand van een inschrijvingsformulier allereerst de naam van de deelnemer ingeef (gewoon tekstveld). Hierbij maak ik dan de keuze via invoerlijst welke workshop en/of wandeling hij zal volgen. Elke deelnemer dient zowel voor wandelingen als voor workshop steeds 4 keuzes aan te duiden naargelang zijn voorkeur. Deze tabellen heb ik reeds klaar (dus zowel workshop als wandeling standaard ingegeven).

Nu is het verder de bedoeling dat wanneer de deelnemer een workshop facebook of prezi kiest deze zou moeten gelinkt worden aan een bepaalde kamer (voor facebook is dat Mechtildenkamer en voor prezi is dat Heylewighenkamer). Voor de andere kamers is er momenteel nog geen locatie voorzien en blijft dus blanco.

Ook de velden begin-en eindtijd zijn van belang en deze worden in m'n inschrijvingsformulier ook manueel via keuzelijst met invoervak ingevuld. Dit is belangrijk omdat er moet nagegaan worden dat er geen overcapaciteit plaatsvindt in een bepaalde kamer (maximum 20 deelnemers per workshop). Wanneer bijvoorbeeld deelnemer x kiest voor Facebook Mechtildenkamer van 10.00 (begintijd) tot 10.45 (eindtijd) zou op m'n formulier het aantal deelnemers voor die welbepaalde workshop te zien moeten zijn. Is deze groter dan 20 dient hij een ander tijdstip uit te kiezen.

Tenslotte zou hiervan een definitief rapport moeten worden afgedrukt met een alfabetische lijst van de deelnemers en hun gekozen activiteit (workshop of wandeling). Voor workshop geldt natuurlijk de gekozen tijd en kamer die ook zichtbaar moet zijn.

Ik heb het vooral moeilijk met het leggen van de juiste relaties. Het opbouwen van het formulier en rapport zou in principe minder problemen moeten opleveren.
 
Ik heb het vooral moeilijk met het leggen van de juiste relaties. Het opbouwen van het formulier en rapport zou in principe minder problemen moeten opleveren.
Wat mij betreft ligt de moeilijkheidsgraad precies andersom :) Relaties zijn namelijk niet zo moeilijk, maar afhankelijkheden bouwen in een formulier: da's andere koek!
Ik snap nog steeds niet helemaal het verband tussen workshops en wandelingen. Bestaat een workshop uit een aantal wandelingen, dan moet je de tabel Wandelingen koppelen aan Workshops. Maar voor hetzelfde geld is het andersom, of is er geen enkele relatie tussen de twee. Ik haal het er in ieder geval niet uit.

Zowiezo lijkt het er op dat een workshop uit een aantal vaste onderdelen bestaat, wat mij ook logisch lijkt. En dus blijkbaar een vaste lokatie. Dat staat verder ook los van de tabel met Inschrijvingen. Maar je lokatie leg je dus vast in de tabel Workshop, als de lokatie tenminste nooit verandert. In dat geval zou je het veld beter kunnen verplaatsen naar Inschrijvingen.
Mensen verplichten om op 4 workshops in te tekenen vind ik overigens ook dubieus; dan moet je er op zijn minst voor zorgen dat er te allen tijde ook 4 workshops te kiezen zijn. Hetzelfde geldt uiteraard ook voor wandelingen.

Als je werkt met een vast (week of maand)programma aan workshops, dan heb je ook een aantal vaste gegevens zoals lokatie en aantal deelnemers. Hoewel dat laatste doorgaans afhankelijk is van de lokatie. Maar begin- en eindtijd zou je dus per workshop kunnen vastleggen. Je krijgt dan in de tabel Workshops een record voor elke workshop met daarin de tijden, de lokatie en het aantal maximale deelnemers. Bij het inschrijfformulier maak je dan een keuzelijst die op basis van een telling in de tabel Inschrijvingen kijkt hoeveel personen zich voor een bepaalde workshop op een bepaalde dag hebben ingeschreven.
 
Even snelle reactie : zowel wandelingen als workshops zijn 2 verschillende activiteiten. Als men bijvoorbeeld enkel kiest voor wandelingen dan valt de keuze van de workshops weg (blijft dus blanco). Kiest men voor een welbepaalde workshop is het de bedoeling dat men geen wandeling heeft aangeduid.
 
Ik zou toch echt Wandelingen en Workshops samenvoegen in één tabel. Het heeft geen enkele zin om daar twee tabellen van te maken, en dan ook nog eens twee velden in Inschrijvingen. Zeker niet als er of één wandeling, of éen workshop in één inschrijving mag worden geboekt. Dan zijn twee aparte velden helemaal fout. Dus één tabel met activiteiten, en één veld met een koppeling naar de gekozen activiteit. En als je mensen meer activiteiten wilt laten kiezen, zodat je wat in te delen hebt, dan moeten die inschrijfdetails dus in een aparte tabel InschrijfDetails.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan